3. 运行info上TwinCAT C++例子后出现TCOM Server'(10):Error loading repository driver报错的解决方法

现象描述:在C++info例子下载:https://infosys.beckhoff.com/content/1033/tc3_c/2407126539.html?id=253450185781233922,出现如下图所示报错。

1

解决方法:

1.需要一个TC0008OEM-key,需要tmx权限。(OEM-Key需要购买,详见链接:https://tr.beckhoff.com.cn/mod/resource/view.php?id=2254
2

2.官网的例子都是新建TwinCAT Versioned C++ Project,所以都是需要用oemkey认证后发布的。

3

3.添加认证,先把证书放到路径中C:\TwinCAT\3.1\CustomConfig\Certificates。

4

4. 添加环境变量 TcSignTwinCatCertName : jackfeng(证书名字) (注意这个环境变量有时候重启就会丢失,所以每次都去检查一下)。
5

5.移动到C:\TwinCAT\3.1\sdk\Bin 使用CMD指令 输入tcsigntool grant /f "C:\TwinCAT\3.1\CustomConfig\Certificates\jackfeng.tccert" /p ------(实际密码)

6

6.到C:\TwinCAT\3.1\Target\OemCertificates运行注册表

7

7.检查注册表内容\HKEYLOCALMACHINE\SOFTWARE\WOW6432Node\Beckhoff\TwinCAT3\TrustedOemCertificates\

8

8.打开twincat C++项目程序之前,先选择用OEMKEY生成的DB打开加载用户,再打开项目

9

9.项目连接到userdb.此处如果连接好了,以后激活配置都需要先登录DB的,不然激活配置是个灰色的。

10

10.选择C++项目的Properties。

11

11.选择TwinCAT signing 为yes,其余为no,输入证书的名字和密码,最后点确定。

12

12.一定要重新生成tmc文件,重新publish module. 在output窗口中能明显看到有用到证书进行签名,说明成功了。

13

13.重新添加Cmodule,并分配task,激活配置即可运行。


2022.11.16 冯国城 供稿