问题详情
- 项目中需要实现通过Wincc输入输出域来改变海康威视的视频服务器IP、用户名、密码等参数的输入。实现的思路是建立输入输出域并新建内部变量,将输入输出域与内部变量关联,再新建一个按钮,并在按钮点击脚本中读入内部变量,将读入值写进登录函数的参数中。
- Wincc支持C和VB脚本,C脚本中通常有现成的函数GetTagWord(),SetTagWord()等来对变量进行读和写操作,VB中则使用Read和Write,示例如下。
示例
-
'写法1 Dim userTag,temp_Read '定义变量 Set userTag=HMIRunTime.Tags("变量名") '读取Wincc内部变量或者AS变量 temp_Read=userTag.Read '将读取值赋给temp userTag.Write "字符串" '将字符串写入变量中
-
'写法2 Dim temp temp=HMIRunTime.Tags("变量").Read HMIRunTime.Tags("变量").Write "字符串"
总结
- 本人在实际应用过程中需要读取多个“内部变量”,开始使用了写法1,实际并没有成功,后来使用写法2成功获取内部变量;
- 亲测,写法2靠谱。