wicc中弹出的报警画面怎么做

请教wicc中弹出的报警画面怎么做

最佳答案

同意1楼的说法,我来说详细点,你打开全局脚本C脚本编辑器
 然后找到标准函数里的Alarm这个组里的GMsgFunction函数
 把它改成下面这样
 BOOL GMsgFunction( char* pszMsgData)
 {
 #pragma code("Winmm.dll")
 void WINAPI PlaySoundA(char*pszSound,char*hmode,DWORD dwflay);
 #pragma code()
 MSG_RTDATA_STRUCT mRT;
 memset( &mRT, 0, sizeof( MSG_RTDATA_STRUCT ) );
   if( pszMsgData != NULL )
   {
      printf( "Meldung : %s \r\n", pszMsgData );

     // Meldungsdaten einlesen
      sscanf( pszMsgData,  "%ld,%ld,%04d.%02d.%02d,%02d:%02d:%02d:%03d,%ld, %ld, %ld, %d,%d",
  &mRT.dwMsgNr,    // Meldungsnummer
  &mRT.dwMsgState,     // Status MSG_STATE_COME, .._GO, .._QUIT, .._QUIT_SYSTEM
  &mRT.stMsgTime.wYear,   // Tag
  &mRT.stMsgTime.wMonth,   // Monat
  &mRT.stMsgTime.wDay,  // Jahr
  &mRT.stMsgTime.wHour,   // Stunde
  &mRT.stMsgTime.wMinute,  // Minute
  &mRT.stMsgTime.wSecond,   // Sekunde
  &mRT.stMsgTime.wMilliseconds, // Millisekunde
  &mRT.dwTimeDiff,   // Zeitdauer der anstehenden Meldung
  &mRT.dwCounter,   // Interner Meldungsz?hler
  &mRT.dwFlags,   // Flags( intern )
  &mRT.wPValueUsed,
  &mRT.wTextValueUsed );
  
       // Prozesswerte lesen, falls gewünscht
     } 

 if (mRT.dwMsgState==MSG_STATE_COME)
 {
 SetPictureName("背景画面","画面窗口名","报警弹出画面名称");
 //或者在这里做一个MESSAGEBOX也可以,如下面的
 //MessageBox(NULL,"有报警发生","alarm",MB_OK);
 }
   printf("Nr : %d, St: %x, %d-%d-%d %d:%d:%d.%d, Dur: %d, Cnt %d, Fl %d\r\n" , 
   mRT.dwMsgNr, mRT.dwMsgState, mRT.stMsgTime.wDay, mRT.stMsgTime.wMonth, mRT.stMsgTime.wYear, 
   mRT.stMsgTime.wHour, mRT.stMsgTime.wMinute, mRT.stMsgTime.wSecond, mRT.stMsgTime.wMilliseconds, mRT.dwTimeDiff,
   mRT.dwCounter, mRT.dwFlags ) ;

    return( TRUE );
 }

提问者对于答案的评价:
很祥细 谢谢

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

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

相关推荐

  • C#访问Wincc变量

    如何通过C#读写WINCC的变量,或者通过OPCServer.WinCC访问PLC变量 最佳答案 参考文档:如何在C#中实现OPC数据访问https://support.indus…

    SIMATIC WinCC 2021年7月5日
  • 2台WINCC+CPU224XP 远距离

    项目改造:CPU224XP柜(3楼)距离1号工控机(1楼)100米,然后1号工控机再和实验室工控机通讯(距离1号工控机200多米),数据配方在实验室工控机传送!请教:1.PLC和1…

    SIMATIC WinCC 2018年3月6日
  • WINCC能仿真吗?

    WINCC能像STEP7SIM那样仿真吗?我想试试我编辑的画面效果咋样,尤其是按钮能否将相应的点(M0.0)置1或者置0.因为生产情况不允许我有太多时间在线修改,必须保证修改后就马…

    SIMATIC WinCC 2019年6月11日
  • wicc flexible怎么不能启动模拟程序

    我写了个简单的程序,在启动模拟运行的时候无法运行,其他程序可以,请问怎么处理? 最佳答案 检查有没有编译错误 提问者对于答案的评价:OK 

    SIMATIC WinCC 2019年6月11日
  • 怎样做画中画

    在主画面中显示设备的小画面来控制设备,需要的时候点击设备图形弹出小画面,不用的时候退出不显示。请问老大应该怎样做啊,不用脚本。我刚入行,谢谢 问题补充:画面模板太复杂,有简单的吗。…

    SIMATIC WinCC 2019年6月11日
  • 多个阀门或泵的操作面板

    项目中有多套开关阀,为了少做该阀门的操作面板,想只做一个操作面板,然后在工艺流程图中点击相应的阀门,弹出该阀门的操作信息(包括设备号,工艺描述及开,关操作)。泵和风机一样也使此要求…

    SIMATIC WinCC 2019年6月11日
  • WINCC变量 3

    各位老师我想问下我做个试验:用的PLCIM151-8 PN/DP CPU的PN-IO的IP是192.168.1.18wincc这边变量管理里面SIMATIC&n…

    SIMATIC WinCC 2017年12月2日
  • wincc 组态

    我的现场CPU315-2DP做冗余,通过光纤以太网连接上位机,请教上位WINCC如何做冗余组态? 问题补充:谢谢阿瑟斯,续问:是每个图形画面都要这样操作吗?还是做一次就可以?我的1…

    SIMATIC WinCC 2019年6月11日
  • wincc V7.3 与s7-300通讯问题

    今天遇到一件很妖很不科学的事情。wincc V7.3 与s7-300通讯时,连接不上,我选择驱动是s7的驱动下的TCP/IP,参数的具体设置看下面图片。网线的接…

    2021年7月5日
  • 1200仿真与wincc通讯不上

    求大神解答:我用1200仿真,与wincc通讯。连接不上。我把过程说明一下,求解惑。我TIA15.1    wincc7.5首先我TIA启用…

    SIMATIC WinCC 2021年7月5日