OPC客户端数据下发问题,急!

lyshuai2006 2012-12-05 11:25:38
我做了一个OPC客户端,是跟PLC连接的,数据能拿上来,能连接,添加组,数据项都已经OK了,但是我现在想往PLC里面下发数据,我自己也弄了下hr = m_pIOPCSync->Write(1,hServer,Val,&pErrors);Val是一个VARIANT数组,我不知道为什么hr的返回值是1,但是下面做保护的时候hr == S_FALSE的,所以它总是报错,我不知道我的数据到底是写进去了,还是没有写进去,PLC也没有“滴”的声响!求各位大神们,帮忙解解惑!在线等待中.
...全文
187 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyshuai2006 2012-12-21
  • 打赏
  • 举报
回复
找到错了,是句柄没有赋值,为0,所以失败了!,谢谢了!
孤客天涯 2012-12-05
  • 打赏
  • 举报
回复
if (SUCCEEDED (hr)才是写成功
孤客天涯 2012-12-05
  • 打赏
  • 举报
回复
S_OK的值也是0,你返回的是1,就是写失败了,hr = m_pIOPCSync->Write(1,hServer,Val,&pErrors);Var是一个VARIANT数组,里面有几个值?而你第一个参数为1?
lyshuai2006 2012-12-05
  • 打赏
  • 举报
回复
可是SUCCEEDED这个宏包含两种情况啊,一种是S_OK,还有一种是S_FALSE!
c#工业自动化通信开发库,工业自动软件必备的基本程序。包括串口通信,TCP客户端,tcp服务器端,高并发物联网接收服务器端,udp通信,can总线通信,profinet,modbus tcp/rtu/dtu等,各大品牌plc通信,opc ua,opc da,http通信,mysql常规库,ef6+mysql,ef6+sqlite,firebird数据库,ini配置文件操作,excel表格操作(包括模版化导出),rabbitmq消息队列管理库,Rabiitmq消息队列操作库,常用的数据转换(高低字节排序,转换,取位设位,校验和等),功能可拆分。不懂的,不明白的,包教会。做项目的做服务的,包能用。拥有技术公共群共同探讨技术难题,使用技巧和问题,详细的使用说明文档。 update 2021.7.26----优化消息队列出队缓存,读取更快捷更稳定。 update 2021.7.26----新增加rabbitmq消息队列管理类,可以嵌入到用户界面中管理rabbitmq服务器 update 2021.8.3---新增应用于物联网及mes系统中远程读取modbus rtu协议。 update 2021.8.10---新增加ef6+mssql数据库功能,实现自动创建表,以及存储过程。完善及提高了efmssql,efsqlite,efmysql等安全。 update 2021.08.19---根据行业设备通信现状需要,增加通过dcom组件与opc服务器通信功能,去除原来复杂的操作过程,使用接口式更方便稳定 update-2021-08-30-----新增加dtu服务器,pc做为服务器,远程4G Dtu模块作为客户端主动连接服务器,服务器根据模块注册信息下发modbus rtu指令至远端,终端回复数据服务器自动解析。主要应用于物联网平台.mes系统

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧