最近一个项目需要用到OPC,有n个C#开发的OPC Client连接1个OPC Server,用的是 AB的RSLinx。在网上查了很多资料,编写了OPC Client的代码,在本地调试成功,但是客户端远程连接服务器总是报“对COM 组件的调用返回了错误 HRESULT E_FAIL”异常。
我一开始装的是 RSLinx lite版,查到资料必须使用GateWay版才能使用远程连接功能,但是升级到GateWay版本后一样还是报“对COM 组件的调用返回了错误 HRESULT E_FAIL”异常。
我又在其它电脑测试只安装 “OPC_Remote_Client_Setup”就能成功连接服务器。这个软件只有7M多一点,安装也很快。耗时两天终于找到了令自己满意的解决方案。在此记录,希望对遇到同样问题的人有所帮助
我一开始装的是 RSLinx lite版,查到资料必须使用GateWay版才能使用远程连接功能,但是升级到GateWay版本后一样还是报“对COM 组件的调用返回了错误 HRESULT E_FAIL”异常。
又查资料说是OPC 服务器客户端都需要配置于是按照 《OPC服务器与客户端详细配置》 对服务器和客户端进行了配置但还是不行。
又查资料看到说是客户端和服务器都需要安装RSLinx软件,但RSLinx软件有1G多,而且安装很耗时,这是我不能接受的,因为这样部署就太麻烦了!
于是我就想有没有其它的方法呢?在查找资料的过程中我留意到有一个软件可以用于测试客户端与服务器的连接叫“OPC Test Client”是RSLinx的一个工具,
于是我就到RSLinx的安装包中查找,在“RSLogix5000-Lite\RSLinxLite\Redist\RSLinx”目录下发现了“OPC_Remote_Client_Setup” 这个软件,我安装后成功解决了问题。我又在其它电脑测试只安装 “OPC_Remote_Client_Setup”就能成功连接服务器。这个软件只有7M多一点,安装也很快。耗时两天终于找到了令自己满意的解决方案。在此记录,希望对遇到同样问题的人有所帮助