【报错】检索 COM 类工厂中 CLSID 为 {28E68F9A-8D75-11D1-8DC3-3C302A000000} 的组件失败错误

【报错】检索 COM 类工厂中 CLSID 为 {28E68F9A-8D75-11D1-8DC3-3C302A000000} 的组件失败错误

  • 情况描述
  • 解决方法
    • 修改目标平台CPU类型
    • 下载组件文件
    • 复制到指定路径
    • 运行指定命令行程序

情况描述

在使用C#进行工控软件开发,需要连接通过OPC连接DCS系统时,需要通过visual studio的NuGet包管理器添加OpcAutomation,如下图所示:
NuGet添加的组件

这样便可以实现通过C#连接读取数据。但是在通过C#连接OPC server时,会出现错误“检索 COM 类工厂中 CLSID 为 {28E68F9A-8D75-11D1-8DC3-3C302A000000} 的组件失败错误”。

解决方法

修改目标平台CPU类型

首先要在VS项目中右击属性-生成-常规-目标平台,查看是否为X64,如果是,修改为X86或者Any CPU,保证组件可以正常运行。
其次,需要在电脑中注册opcdaauto.dll组件。

下载组件文件

首先需要下载opcdaauto.dll组件
【报错】检索 COM 类工厂中 CLSID 为 {28E68F9A-8D75-11D1-8DC3-3C302A000000} 的组件失败错误_第1张图片
下载地址:
链接:https://pan.baidu.com/s/1v6ddTeHdtpA5zUm15Pmiqg?pwd=1fdi
提取码:1fdi

复制到指定路径

下载完之后,将该组件复制到以下两个指定路径:
1:C:\Windows\System32
2:C:\Windows\SysWOW64

运行指定命令行程序

复制完之后,在系统程序内找到命令提示符程序并以管理员身份运行。
【报错】检索 COM 类工厂中 CLSID 为 {28E68F9A-8D75-11D1-8DC3-3C302A000000} 的组件失败错误_第2张图片
分别执行以下代码。
1:

REGSVR32 C:\Windows\System32\OPCDAAuto.dll

然后得到下面的运行结果
【报错】检索 COM 类工厂中 CLSID 为 {28E68F9A-8D75-11D1-8DC3-3C302A000000} 的组件失败错误_第3张图片
2:

REGSVR32 C:\Windows\SysWOW64\OPCDAAuto.dll

得到下面的运行结果
【报错】检索 COM 类工厂中 CLSID 为 {28E68F9A-8D75-11D1-8DC3-3C302A000000} 的组件失败错误_第4张图片

完成以上步骤即可完成所有的配置工作。

你可能感兴趣的:(C#,OPC,c#,开发语言)