关于Getlink的使用

#define  PropertyName   "Control Value"

LINKINFO  linkinfo

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

问题补充:
为什么要声明#define  PropertyName   "Control Value",而不是直接写作GetLink(lpszPictureName, lpszObjectName, “control value”, &linkinfo)呢?

最佳答案

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

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

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc221701.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年12月9日 下午11:42
下一篇 2017年12月9日 下午11:42

相关推荐

  • 博途v13的wincc能组态上位机吗

    请问博途v13的wincc与wincc v7.3的区别在哪儿 最佳答案 可以的博图WINCC分三个版本,其中Professional版本可以组态上位机运行系统comfor…

    SIMATIC WinCC 2017年5月31日
  • wincc报表打印

    wincc报表,在组态布局时,组态动态对象ODBC数据库>数据库表时,打印的结果,可以通过SQL语句来来输出. 问题:在SQL语句中,如何引用wincc内部变量的值.请举…

    SIMATIC WinCC 2019年6月11日
  • wincc归档的字段含义

    通过OLEDB访问归档数据,得到的查询结果字段中,valueID,Timestamp,realvalue,quality,flags分别是什么含意阿?为什么有的Quality是76…

    SIMATIC WinCC 2019年6月11日
  • 用户归档打不开

    我的WINCC中用户归档打不开,提示“Fehler beim Laden der angeforderten Sprache”是怎…

    SIMATIC WinCC 2019年6月11日
  • WINCC的二级菜单是如何实现的

    如附件,其中的一个一级按钮,点开后,就出现本系统内的多项二级菜单,当点击其它一级按钮时,上述的二级菜单就隐藏了,至显示一级菜单,是怎么实现的呢? 图片说明:  &nbsp…

    2017年11月23日
  • HMI-TP1200离散量报警不能选择BOOL型变量?

    各位,我在博图V15里打算使用离散量报警实现PLC运动模块的报警显示。我选择变量时,发现默认只能选择WORD类型的变量,我需要选择图片上的M100.2这个BOOL型的变量,只有勾上…

    2021年7月5日
  • 无效的动态对象名

    保存画面时提示画面中有无效的动态对象名。无效的动态对象名是什么?怎么解决这个问题? 最佳答案 可能是画面对象的某属性中写的脚本有问题,即脚本中指向的对象名不存在。保存画面时应该有诊…

    SIMATIC WinCC 2019年6月11日
  • 动态动画怎么组态,用状态显示可以

    用动态显示做动画时,我看demo里面是用变量连接的不同的画面,那么得需要动态过程的所有画面,是这样吗?要是没有各个画面怎么弄,或者用什么其他的方法没?还请各位指导谢谢了,邮箱:zh…

    SIMATIC WinCC 2019年6月11日
  • 请教一个VBS的问题

    应该是个小问题吧,都不好意思问。以前没用过VB。是这样,我在全局动作中,定义如下程序:DIM T1 T1 = HMI……..&quo…

    SIMATIC WinCC 2019年6月11日
  • 如何在wincc7.0版本的图形编辑器画面添加滚动条?

    如何在wincc7.0版本的图形编辑器画面添加滚动条?找到一个滚动条需要添加变量,不明白 最佳答案 wincc/计算机/属性/图形运行系统/窗口属性–勾选-滚动条. 提问者对于答…

    SIMATIC WinCC 2021年7月5日