的ActiveX无法创建对象
问题描述:
在我的VB6的dll我不断收到此错误的ActiveX无法创建对象
代码:429
的ActiveX不能创建对象
这是我的表单代码
Dim objAS400Price As New ReportTester.clsAS400PriceDiscr
Set objAS400Price = New ReportTester.clsAS400PriceDiscr
lngRetVal = objAS400Price.Report("AS400 Price Discrepancy Report", "AS400 Price Discrepancy Report", "C:\Temp", "Excel", "MASTERYY", "tschock", "NONE", "Local", True, "[email protected]")
这是从dll连接对象
Set objDBConn = CreateObject("DBConnections2.DataAccess")
我用regsvr32在我的本地机器上注册了“DBConnections2.dll”,但错误仍在发生。有什么建议为什么发生这种情况?
答
我会建议您通过菜单项Project-> References暂时添加一个对“DBConnections2.dll”的硬引用。您应该在引用列表中看到DLL并能够选择它。如果你不这样做,请点击“浏览”按钮并添加它。
现在创建一个早期绑定引用,而不是使用“CreateObject”。通过进入调用这个DLL的函数,你可能能够辨别哪个对象没有被引用。
但是,如果您仍然无法到达错误引用的底部,则可能是“DBConnections2.dll”引用了一个或多个依赖的DLL,但您缺少或没有注册。在这种情况下,您可以使用Dependency Walker应用程序打开DLL并确定将哪些DLL引用列为缺失。
Dependency Walker可作为Visual Basic 6的可选工具安装。如果您愿意,也可以单独下载。
因为你注册了一个错误的DLL?或者你的CreateObject代码错误(或错误输入)?它可以是很多事情。查看ActiveX组件的工作示例,以查看您做错了什么。无法访问您的系统很难给您一个很好的答案。 – Martin 2012-04-04 07:27:36