尝试创建 ActiveX 组件时出现运行时错误 429

Posted

技术标签:

【中文标题】尝试创建 ActiveX 组件时出现运行时错误 429【英文标题】:Runtime error 429 When trying to create ActiveX component 【发布时间】:2016-02-06 01:48:09 【问题描述】:

运行时错误 429 -ActiveX 组件无法创建对象

当我的程序执行以下行时出现此错误。

Private WithEvents CommClient As XXcommClient

Private Sub Class_Initialize()
    'Initializes the CommClient object.
    Set CommClient = CreateObject("COMMLIBXLibCtl.XXcommClient") 'errors here

缺少什么? >_

我在 win8.1 上运行它。我已经更改了 mmc comexp.msc /32 中“XXCom.XxInfo”(包含上述代码)的访问权限和内容。顺便说一句,设置是无,每个人都可以编辑,和交互式用户。

有人可以指点我正确的方向吗?这几天我一直在兜圈子huhuhuhuhu

【问题讨论】:

如果这是一个 DLL,那么 DCOM 设置就无关紧要了,你是在找错误的树。 VB6 文档列出了导致此异常的一系列原因,我的猜测是您 (a.) 没有正确注册 DLL,(b.) 正在尝试使用不正确的 ProgId 字符串,或者 (c.) 没有拥有使用此 DLL 的许可。你为什么还要在这里使用CreateObject() @Bob77 可能是 b)。在使用 CreateObject 之前,我使用了 Set CommClient = new XXcommClient 但仍然遇到相同的错误。如何正确注册 dll? >. 【参考方案1】:

@Bob77 说得对。 实际上是 a) 我没有正确注册 dll。

XXCommLibX.dll 实际上依赖于其他三个 .dll 和两个 .exe。这个细节实际上在手册中提到过。真的很尴尬。

正确注册 dll 后,我又回到了使用这一行:

Set CommClient = new XXcommClient

... 它奏效了。 >.

【讨论】:

以上是关于尝试创建 ActiveX 组件时出现运行时错误 429的主要内容,如果未能解决你的问题,请参考以下文章

尝试在 C# 中使用 ActiveX 控件加载 PDF 文件时出现 COMException 错误

使用Windows运行时组件与Javascript UWP应用程序时出现“未知运行时错误”

ASP.NET Core 依赖注入错误:尝试激活时无法解析服务类型 - 调用视图组件时出现错误 [重复]

将输入字段聚焦在React组件中 - 尝试创建ref时出现类型错误

在运行时创建 WCF 服务时出现 ActionNotSupported 错误

尝试在 Nuxt 中将数据从组件传递到页面时出现错误消息