我有VB6 ActiveXDLL,名为A.dll,我将这个DLL引用到我的VB.Net应用程序中。 现在我在这个项目中调用A.dll的函数。 A.dll函数指的是B.dll,C.dll,C.dll的功能,进一步引用Z.dll等。
当我执行应用程序时,它会从B.dll中发出一个错误,即ActiveX组件无法创建对象。
请帮我解决这个问题 等待你宝贵的想法
感谢你
答案 0 :(得分:0)
我的第一个想法是确保所有dll都已注册。
答案 1 :(得分:0)
假设ActiveX DLL是VB6并且您可以访问VB6 IDE,请确保该类的Instancing
属性设置为Multiuse
。
答案 2 :(得分:0)
使用OLE视图(随visual studio一起)浏览其TypeLib条目,并检查它是否具有正确的GUID,并且只有一个注册。您可以使用CreateObject从DLL创建对象实例吗?如果没有,则没有正确注册。
答案 3 :(得分:0)
同时检查A.dll使用的任何依赖关系/引用。如果找不到任何东西,那么它就会失败。
这是导致错误的四个常见原因:
1.您没有必需的TLB或ActiveX DLL / OCX文件
2.项目所需的TLB或ActiveX DLL / OCX存在但未在您的系统上注册
3. VB运行时是早于运行项目所需的版本
4.所需的TLB或ActiveX DLL / OCX文件已损坏。