当前位置: 主页 > PLC控制

关于Getlink的使用

#definePropeRTyName"ControlValue"

LINKINFOlinkinfo

GetLink(lpszPictureName,lpszObjectName,PropertyName,&linkinfo);
if(STrlen(linkinfo.szLinkName)>0)
SetTagWord(linkinfo.szLinkName,(WORD)value);
else
SeTPropDouble(lpszPictureName,lpszObjectName,PropertyName,value);
请教这段程序意义。

问题补充:
为什么要声明#definePropertyName"ControlValue",而不是直接写作GetLink(lpszPictureName,lpszObjectName,“controlvalue”,&linkinfo)呢?

最佳答案

GetLink的功能是获取某个画面中指定对象其属性的动态连接特性。
连接属性包括动态连接类型、更新方式及连接的变量名称。
函数原型如下:
BOOLGetLink(
LPCTSTRlpszPictureName,//画面名称
LPCTSTRlpszObjectName,//对象名称
LPCTSTRlpszPropertyName,//属性名称
LPLINKINFO*pLink);//连接特性结构指针
其中,LINKINFO是结构体。定义如下:
typedefstruct{
LINKTYPELinkType;
DWORDdwCycle;
TCHARszLinkName[256];
}LINKINFO;
说明:
LinkType:连接类型,
dwCycle:更新方式
szLinkName[256]:变量名称
程序的意思参见youhm的回答。
define是C语言中的预处理命令,可以提高源代码的可读性。详细的需要查一下C语言的资料了。
wincc的帮助中搜索“WinCC编码规则”能查到一些信息

提问者对于答案的评价:
谢谢指教

专家置评

已阅,最佳答案正确。

  • 关注微信
下一篇:cpu226输出问题

猜你喜欢

微信公众号