我正在做一个项目,用WINCC做OPC的服务器,连接VB的客户端,我试过用我的笔记本上的WINCC和服务器上的WINCC用OPC连接是通的,但客户机上是不装WINCC的,在上面安装了VB6.0和OPC DATA 2.0,写了一段连接的程序,始终连不上,这段程序我在笔记本上试验过,是可以用的,DCOM也都配置好了,在DCOM的配置里面能找到OPCENUM,但在系统的服务里面找不到OPCENUM。
问题补充:
VB的脚本程序如下,我只是写了一段连接程序,并且已经引用了OPC DATA 2.0
Option explicit
option base 1
dim withevents opcmyserver as OPCServer
dim withevents opcmygroups as OPCGroups
Private sub command1_click()
set opcmyserver=new opcserver
opcmyserver.connect "opcserver.wincc","192.168.42.100"
msgbox "ok"
end sub
组态了一个连接按钮,一连就报错:
runtime error '-2147467259(80004004)';
method'connect'of object 'IOPCAutoServer' failed
然后显示错误的地方是:opcmyserver.connect "opcserver.wincc","192.168.42.100"
个人对VB不是太熟,希望哪位朋友帮帮忙,谢谢!
最佳答案
楼主安装了WinCC的笔记本上的OPC客户端程序之所以能够连接WinCC的OPC服务器,是因为笔记本上已经安装了WinCC的OPC动态链接库;而不安装WinCC的OPC客户机是没有这些库文件的,所以无法连接。
楼主可以把安装了WinCC的PC上的相关.dll拷贝到未安装WinCC的PC上,注册之后应该就可以连接了。
具体的.dll名称和注册方法可以参考以下链接:
http://support.automation.siemens.com/CN/view/zh/12019019
(注册命令regsrv32.exe可以加问号看看帮助)
提问者对于答案的评价:
谢谢!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc273345.html