我有一个VB6 Active DLL,我试图从C#调用。
我使用tblimp将其转换并将其导入VS 2010。
然后我使用:
实例化它AppWebActiveX.Users appWebActiveX = new appWebActiveX.Users();
当我查看对象浏览器时,有一个Users接口和一个UsersClass类。
然后我打电话给:
bool isExistingUser = appWebActiveX.IsExistingUser("cat");
根据对象浏览器, bool IsExisting(string)
是一种有效的方法。
然而,这会返回:
无法将“AppWebActiveX.UsersClass”类型的COM对象转换为接口类型“AppWebActiveX._Users”。 ......没有支持这样的界面...
最新的堆栈调用是System.StubHelpers.StubHelpers.GetCOMIPFromRCW。
我在Windows Server 2003标准版(x86 - 32位)上运行该应用程序,它是一个32位DLL。我正在使用C#控制台应用程序拨打电话。
有什么建议吗?
答案 0 :(得分:1)
原来我省略了main方法的[STAThread]属性。