签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
第一次用wincc做报警发声,由于要做60个报警,用C脚本编写,参考了以下代码:
#pragma code("Winmm.dll") void WINAPI PlaySoundA(char* pszSound ,char* hmode,DWORD dwFlag); #pragma code()
A1=GetTagDWord("stat1"); B1=GetTagDWord("stat1_save"); if((A1^B1)&A1)
SetTagBit("ok_1",1); if(GetTagBit("ok_1")) PlaySoundA("C:\\winnt\\music\\06.wav",NULL,1); SetTagDWord("stat1_save",A1);
在以上代码中,stat、stat1_save和ok_1变量含义是什么?(A1^B1)&A1含义是什么?在wincc全局脚本编译时,#pragma code("Winmm.dll")编译出现如下错误:
emply char constant is not allowed;
missing ")'' in #pragma code
请教各位老师,这是哪出错了吗?求解
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1249848&b_id=5&s_id=0&num=2
怎么感觉你是抄袭的我的脚本呢?
stat1:报警变量
stat1_save:报警变量的保存值,要做边沿触发的功能,否出现报警就要一直报警了,这里实现的就是出现报警后开始语音报警,确认后就不再报警了。
ok_1:出现报警后在画面上弹出一个报警窗口,这个变量链接报警窗口的确认按钮,出现报警后这个变量置位,然后报警窗口的显示链接这个变量,同事报警小窗口的确认按钮复位这个变量后,报警窗口消失,语音报警停止。
(A1^B1)&A1:A1和B1不同,且A1为1即A1=1,B1=0的时候出现置位ok_1。
出现错误说明你的这个脚本有问题,参考:
http://www.52plc.net/read.php?tid=212
这个代码是在论坛里复制的,想在wincc运行中测试一下的,多谢楼主的讲解!
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录