如何在vb6中将C#COM Interopt DLL作为参数传递
我有一个C#DLL,它被用作一个类,包含一个文件属性列表。如何在vb6中将C#COM Interopt DLL作为参数传递,c#,.net,c#-4.0,vb6,vb6-migration,C#,.net,C# 4.0,Vb6,Vb6 Migration,我有一个C#DLL,它被用作一个类,包含一个文件属性列表。 C#DLL是COM可见的,可以在VB6中声明和实例化。 在创建对象的vb6函数中 Dim fileObj As New MyCSharpClass.FileProperties 我可以立即看到我的C#FileProperties对象可访问的所有不同属性。 fileObj.(intellisense)向我显示对象中任何可用内容的下拉列表 但是当我把我的对象传递给一个函数 GetProperties(fileObj) 当我在GetPro
C#DLL是COM可见的,可以在VB6中声明和实例化。
在创建对象的vb6函数中
Dim fileObj As New MyCSharpClass.FileProperties
我可以立即看到我的C#FileProperties对象可访问的所有不同属性。fileObj.(intellisense)向我显示对象中任何可用内容的下拉列表
但是当我把我的对象传递给一个函数
GetProperties(fileObj)
当我在GetProperties内时
Public Function GetProperties(ByRef pfileObj As MyCSharpClass.FileProperties)
当我尝试让intellisense向我显示哪些选项可用时。它现在确实将pfileObj识别为我可以使用的变量,它不会在intellisense中显示
如果我尝试手动输入,intellisense将不会再次显示任何选项
pfileObj.
是否有一种特殊的方法将COM Interopt对象传递给VB6中未包含的函数?这根本不可能吗?
我试图避免创建返回字符串的函数,然后一次分配一个对象属性。原因是需要.NET创建一个TypeLib文件,然后可以从VB6中引用该文件。VB6将使用它来显示intellisense,并帮助VB6调用C#对象。您需要执行以下操作: