Vb6 尝试创建ActiveX组件时出现运行时错误429
运行时错误429-ActiveX组件无法创建对象 当我的程序执行以下行时,会出现此错误Vb6 尝试创建ActiveX组件时出现运行时错误429,vb6,windows-8.1,activex,dcom,Vb6,Windows 8.1,Activex,Dcom,运行时错误429-ActiveX组件无法创建对象 当我的程序执行以下行时,会出现此错误 Private WithEvents CommClient As XXcommClient Private Sub Class_Initialize() 'Initializes the CommClient object. Set CommClient = CreateObject("COMMLIBXLibCtl.XXcommClient") 'errors here 缺少什么?>_<
Private WithEvents CommClient As XXcommClient
Private Sub Class_Initialize()
'Initializes the CommClient object.
Set CommClient = CreateObject("COMMLIBXLibCtl.XXcommClient") 'errors here
缺少什么?>_<
我已经在这个项目中添加了XXCommLibX.dll作为引用(它包含XXcommClient和XXcommServer的类定义(我想这就是它们的名称))
我在win8.1上运行这个。我已经在mmc comexp.msc/32中为“XXCom.XxInfo”(包含上述代码)更改了访问权限和内容。顺便说一句,设置为无,每个人都可以编辑,并与用户交互
有人能给我指一下正确的方向吗?过去几天我一直在兜圈子,呼呼呼呼@Bob77做对了。
实际上是a)我没有正确注册dll
XXCommLibX.dll实际上依赖于另外三个.dll和两个.exe。这个细节实际上在手册中提到过。真的很尴尬
正确注册dll后,我返回使用这一行:
Set CommClient = new XXcommClient
。。。它成功了 @Bob77是对的。
实际上是a)我没有正确注册dll
XXCommLibX.dll实际上依赖于另外三个.dll和两个.exe。这个细节实际上在手册中提到过。真的很尴尬
正确注册dll后,我返回使用这一行:
Set CommClient = new XXcommClient
。。。它成功了。如果这是一个动态链接库,那么DCOM设置就无关紧要了,你找错了方向。VB6文档列出了导致此异常的一系列原因,我猜您(a.)没有正确注册DLL,(b.)试图使用错误的ProgId字符串,或者(c.)没有使用此DLL的许可证。你为什么还要在这里使用
CreateObject()
?@Bob77可能是b)。在使用CreateObject之前,我使用Set CommClient=new XXcommClient,但仍然得到相同的错误。如何正确注册DLL?>。如果这是一个动态链接库,那么DCOM设置就无关紧要了,你找错了方向。VB6文档列出了导致此异常的一系列原因,我猜您(a.)没有正确注册DLL,(b.)试图使用错误的ProgId字符串,或者(c.)没有使用此DLL的许可证。你为什么还要在这里使用CreateObject()
?@Bob77可能是b)。在使用CreateObject之前,我使用Set CommClient=new XXcommClient,但仍然得到相同的错误。如何正确注册DLL?>。