我最近嘗試將傳統的VB6應用程序移植到.NET。這不是一個完整的端口,但我只關注應用層。我仍然會使用少量的VB6 COM組件。如何將自定義集合類從VB.NET傳遞到VB6?
到目前爲止好,但我最近打了一堵牆。
我需要將.NET自定義集合傳遞給VB6。這可能嗎?
我在.NET端調用的COM方法期望使用泛型對象,但是應用程序立即崩潰:InvalidCastException - 指定的Cast無效。
我偶然發現了一些關於如何將VB6集合傳遞給.NET的文章,但沒有其他方法。我已經嘗試從.NET中繼承/利用幾種不同的集合類型,但迄今爲止都無濟於事。任何幫助表示讚賞。
試試這個http://stackoverflow.com/questions/6231995/accessing-net-collection-in-vb6? – MarkJ
@MarkJ我看着這個問題,它似乎並不重複。有一種方法可以讓VB6相信它正在看到一個VBA.Collection,並在我的回答中描述了它。適用於C#。 – Markus
這就是爲什麼這些問題是不同的 - 我相信@RyanMac希望保留他正在談論的VB6組件的二進制兼容性,可能還有二進制文件本身。 6231995的問題和答案似乎不希望保持兼容性。 – Markus