我从制造商那里得到了两个.NET DLL,必须在VB6项目中实现。为此,我开始在VB.net based on a Microsoft tutorial中为其编写包装。
我不想只包装函数...我想在VB6项目中使用dll的类。我在VB.net Wrapper DLL中构建了一个COM类,VB6项目的确很好地识别了它。
问题是,当我创建嵌套类时,VB6项目只能识别顶级类,而不能识别该类中的类...
该DLL已注册,我使用了REGASM给我的TLB文件。
这是我做过的一些尝试:
尝试1:
<ComClass(CHRABer.ClassId, CHRABer.InterfaceId, CHRABer.EventsId)>
Public Class CHRABer
'"Here are the COM-GUIDs"
Public Sub New()
MyBase.New()
End Sub
Public Structure Test245
Dim a As Integer
End Structure
<ComClass(Volta_Test.ClassId, Volta_Test.InterfaceId, Volta_Test.EventsId)>
Public Class Volta_Test
'"Here are the COM-GUIDs"
Public Sub New()
MyBase.New()
End Sub
Dim a As Integer, b As String, c As Integer
<ComClass(KD_Test.ClassId, KD_Test.InterfaceId, KD_Test.EventsId)>
Public Class KD_Test
'"Here are the COM-GUIDs"
Public Sub New()
MyBase.New()
End Sub
Sub test()
End Sub
End Class
Sub test()
End Sub
End Class
Sub test()
End Sub
End Class
尝试2:
在第二次尝试中,我只创建了没有任何COM-GUID的类,依此类推。刚刚创建了一个公共课程,并在该课程中创建了另一个课程。