现场需要语音报警,大概有五十多个,用horn实现不了那么多,西门子客服让我用c脚本做,playsound函数做,可总实现不了,那位用过的帮帮我啊…
最佳答案
Wincc组件Horn,报警时会使一个变量置1,确认报警后会置0。
然后全局脚本添加C,判断当变量为1时执行以下代码。
#pragma code(\"Winmm.dll\")
void WINAPI PlaySoundA(char *pszSound,char *hmode,DWORD dwflay);
#pragma code()
if(GetTagBit(\"TAG\"))
PlaySoundA("\"d:\\\\\\\\winnt\\\\\\\\media\\\\\\\\Mircosoft sound.wav\",NULL,8);
TAG是变量,wav声音文件路径自己设置。
全局脚本可以设置每两秒执行一次。
---------------------------------------------------------------------------------------------
2
如何触发计算机扬声器的声音?
C-Action:
#pragma code("kernel32.dll");
BOOL Beep(DWORD dwFreq,DWORD dwDuration);
#pragma code();
Beep(500,500);
提问者对于答案的评价:
多谢
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc266808.html