请教各位,在WinCC中我组态了2个变量a和b,其中a连接于输入输出域1,我需要实现当点击一个按钮时,将b将连接于输入输出域1,而a将不连接于输入输出域1,请高手赐教!
问题补充:
谢谢各位的回答,我用了城外之人的脚本,我是在按钮中编写的,代码如下:
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
char TagName[20];
LINKINFO linkinfo;
strcpy(TagName,"b");
strcpy(linkinfo.szLinkName,TagName);
SetLink(lpszPictureName,"IO1","OutputValue",&linkinfo);
}
其中"IO1"是输入输出域的名称,可是我点击按钮时,IO1 中显示的数值并不是对应变量"b"的数值,且退出运行后,IO1 连接的变量也不是"b",我用的是WinCC6.0 的版本,请问各位高手,问题究竟出在哪里,谢谢!
最佳答案
正确的方式是使用SetLink函数,即如<城外之人>的脚本。
VBS脚本无法实现此功能,除非将SetLink函数封装成DLL供VBS调用。
---------------------------------------------------------
试试这个:
#define C_250ms 1
LINKINFO linkinfo;
linkinfo.LinkType=1;
linkinfo.dwCycle=C_250ms;
sprintf(linkinfo.szLinkName,"b");
SetLink(lpszPictureName,"IO1","OutputValue",&linkinfo);
提问者对于答案的评价:
謝謝!
专家置评
http://support.automation.siemens.com/CN/view/en/34602491
可以参考上边的链接,使用间接寻址。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc274220.html