求DMGetValue的用法

求DMGetValue的用法,请举个例子吧,用C++写~谢谢谢谢!!!!

最佳答案

转帖:SetTagValue/GetTagValue函数的使用。急! 
SetTagValue/GetTagValue函数的使用方法。。请详细。最好举个例子。
SetTagValue/GetTagValue源自于ODK函数DMGetValue/DMSetValue,其操作对象类型主要是VARIANT,使用起来的确比较困难,以下是个举例,详细用法请参考ODK帮助:
//给BOOL型变量赋值
#define TagName "bRet2"
CMN_ERROR Error;
BOOL ret = FALSE;
DM_VARKEY VarKey;
VARIANT VarValue;
DWORD dwState;
memset(&VarValue, 0, sizeof(VARIANT) );
memset(&VarKey,0, sizeof(DM_VARKEY));
memset(&Error,0,sizeof(Error));
//初始化VarKey并设置变量名
VarKey.dwKeyType = DM_VARKEY_NAME;
VarKey.dwID = 0;
strcpy( VarKey.szName, TagName);
VarKey.lpvUserData = (void*)0;
//初始化VarValue并赋值
VariantInit(&VarValue);
VarValue.vt= VT_BOOL;
VarValue.u.boolVal=TRUE;
ret=SetTagValue(&VarKey,&VarValue,&dwState,&Error);
if(FALSE == ret)
printf("Error in DMGetValue: E1= 0x%08lx ; E2= 0x%08lx ; %s", Error.dwError1,
Error.dwError2, Error.szErrorText);
VariantClear(&VarValue );

http://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_ID=45650&cid=1032
http://www2.ad.siemens.com.cn/Download/Upload/AS/Application/DemoV60SP3HF2_01.zip 
2,见讨论:
http://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=5&a_id=565036

提问者对于答案的评价:
谢谢,很有帮助~

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午2:57
下一篇 2019年6月11日 上午2:57

相关推荐

  • 如何在SIMATIC Manager中建立新的wincc项目

    各位好,请问如何在SIMATIC Manager中建立新的wincc项目?我用的是step7 V5.4版本插入对象中怎么没有OS啊? 问题补充:我用的是winc…

    SIMATIC WinCC 2019年6月11日
  • 数据归档的重复记录

    我的wincc数据记录设定的是当数据改变时归档。 但wincc上电运行时,会首先记录一次(可能上电时wincc认为此时数据发生了改变),怎样才能避免此类重复记录。 最佳答…

    SIMATIC WinCC 2019年6月11日
  • wincc 疑问请高手解答

    曾看到过一个项目是这样做的,在PLC里对模拟量只进行了接收操作,即是0-32768之间的数,然后在WINCC的画面输入量程就把数显示在画面上了,请问这个WINCC画面是怎么做的。 …

    SIMATIC WinCC 2018年3月6日
  • wincc7.0 单用户 与多用户

    现有项目:两台S7-300PLC 两台电脑,组态用wincc 。通过CP343-1以太网通讯,中间加一台交换机。实现两台电脑,都可以访问两台PLC的数据。WIN…

    SIMATIC WinCC 2017年11月16日
  • WINCC里面曲线记录范围(时间与容量)是多少?

    如果有一个范围,那么我的一些比较重要的历史记录是不是要定期备份啊?因为我这里采集的电流和电压曲线比较重要,以后要进行分析的,那么如果是WINCC控制的话,那么随时要将这个曲线归档及…

    SIMATIC WinCC 2019年6月11日
  • wincc中的数据位的问题

    我是一个新手,刚接触到WINCC,现有一个问题想请教一下,我有个数据需要累计流量 ,但是这个流量只会累积到16777216就停止了,不会再往上加了,好像是24位的样子,这…

    SIMATIC WinCC 2017年11月29日
  • 读取三菱plc变量,与三菱plc通讯不上

    触摸屏里面要如何设置变量才能读取三菱的xy 钻石用户推荐最佳答案 什么触摸屏?参考:与PLC时钟同步(概述、S7-200、Smart 200、三菱、欧姆龙)http://…

    SIMATIC WinCC 2021年7月5日
  • 关于WINCC与Excel报表若干问题

    通过WINCC的脚本将需要做报表的数据写到指定的Excel文件里面。现在想查询这些保存的数据怎么弄呢?是直接通过按钮写脚本跳到按照时间保存名字的EXCEL文件上还是怎么?如果这样怎…

    SIMATIC WinCC 2019年6月11日
  • 打印用户归档选择时间范围

    我的项目里面创建了一个用户归档,然后在报表编辑器的布局里面插入了一个用户归档表格,但是这个表格只有选择表格和时基两个选项,我应该怎么样才能选择一个打印的时间范围呢?比如我要打印20…

    SIMATIC WinCC 2019年6月11日
  • wincc 监控软件

    当采用wincc监控软件时,触摸屏是否可以选择其他品牌 最佳答案 什么意思呢?是WINCC和触摸屏同时使用吗?如果是的话,是可以的,只要别的品牌的触摸屏支持与你所用的PLC进行通讯…

    SIMATIC WinCC 2021年7月5日