运行了一段程序造成 无法正常从开始菜单中关机 重启 注销

在WINCC中用C语言写了一段代码以一分钟周期运行之后,点击开始中的关机...出现对话框后再点击关机 重启 注销都没有反应.关闭了这段代码的运行,问题依旧出现.

 

 

 代码如下 

 #pragma code ("UseAdmin.DLL")

 #include "pwrt_api.h"

 #pragma code()

 #pragma code ("ALMXGINA.DLL")

 BOOL SetXGinaValue(unsigned int uiKey, BOOL *pbEnable, DWORD dwSize);

 #pragma code()

 

 BOOL  bEnable;

 BOOL bOK;

 #define XGINA_ALLOW_SHUTDOWN       1

 #define XGINA_ALLOW_LOGOUT               2

 #define XGINA_ALLOW_CTL_ALT_DEL    3

 #define XGINA_ALLOW_CTL_ESC               4

 #define XGINA_ALLOW_ALT_ESC               5

 #define XGINA_ALLOW_ALT_TAB               6

 

 bEnable = PWRTCheckPermission(19, TRUE);

 bOK = SetXGinaValue(XGINA_ALLOW_SHUTDOWN       , &bEnable , sizeof(bEnable ));

 bOK = SetXGinaValue(XGINA_ALLOW_LOGOUT               , &bEnable , sizeof(bEnable ));

 bOK = SetXGinaValue(XGINA_ALLOW_CTL_ALT_DEL    , &bEnable , sizeof(bEnable ));

 bOK = SetXGinaValue(XGINA_ALLOW_CTL_ESC               , &bEnable , sizeof(bEnable ));

 bOK = SetXGinaValue(XGINA_ALLOW_ALT_ESC               , &bEnable , sizeof(bEnable ));

 bOK = SetXGinaValue(XGINA_ALLOW_ALT_TAB               , &bEnable , sizeof(bEnable ));

 printf("#I101: SetXGinaValue() - bEnable=%d  bOK=%d   (lock/unlock windows keys)\r\n", bEnable, bOK);

 

 

 请教高手是何原因引起,如何补救. 
 

最佳答案

可能是由于脚本中将XGINA_ALLOW_SHUTDOWN、XGINA_ALLOW_LOGOUT 、XGINA_ALLOW_CTL_ALT_DEL 等锁住后,造成无法正常关机、注销等系统操作。

 此代码可以改为根据@CurrentUser变化而执行,当有权限的用户登陆后 bEnable=TRUE;将热键解锁。或者在退出WinCC按钮处调用一次进行解锁。

提问者对于答案的评价:
感谢dcount107 的解答,问题已得到解决

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

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

相关推荐

  • TP1200触摸屏,做HMI报警,离散型报警,触发变量:怎么不能选择Bool位变量呢?

    TP1200触摸屏,做HMI报警,离散型报警,触发变量:怎么不能选择Bool位变量呢?提示指定值无效,将触发变量改为整型就没有错误了,这是为什么? 钻石用户推荐最佳答案 西门子触摸…

    SIMATIC WinCC 2021年7月5日
  • wicc安装问题

    在安装WICC时出现microsoft messange Queuing5.0没有安装,请问这个是怎么解决,在那里可以下载这个安装程序   …

    SIMATIC WinCC 2019年6月11日
  • wincc7.4安装硬件要求

    wincc7.4安装硬件要求是什么?对系统要求还有硬件有什么要求吗?请教各位大神 最佳答案 查看图片 图片说明:      &nb…

    2021年7月5日
  • wincc6.2 sp2的趋势控件问题

    wincc6.2 sp2的趋势控件问题变量的时间轴是否可以公用啊变量的数据轴是否可以公用呢???谢谢!!!7.3的可以 问题补充:变量记录里面的归档变量是否可以导入和导出…

    2021年7月5日
  • wincc 7.4 rc授权 512归档点用完

    各位大神,如图,是否需要购买归档点授权,如:6AV6371-1DQ17-4BX0,授权是否将license 传入即可? 最佳答案 Wincc 7.4 …

    SIMATIC WinCC 2021年7月5日
  • wincc监控定时器状态

    WINCC如何监控300PLC里面的定时器当前状态。在建立变量的时候,无法创建T型的二进制变量。由于用到的定时器较多,有100多个,不想一个一个的将它们转成M型的二进制变量。有没有…

    SIMATIC WinCC 2019年6月11日
  • WinCC三维画面问题?

    看过别人做的一些项目,请问那些三位立体画面是通过什么方法画的啊,图库里面的画面和有限,可以通过什么途径画出那些三位画面然后弄到WinCC里面去,需要学习什么软件啊 最佳答案 你还是…

    SIMATIC WinCC 2019年6月11日
  • TP277通过网线编程问题

    白板一个,请教如何将PC里的程序通过网线下载到TP277里面。具体设置哪些环节?谢谢 最佳答案 参考::<<MP277西门子面板下载手册 >>ht…

    SIMATIC WinCC 2021年7月5日
  • wincc中输入输出域,如何弹出输入框

    把一个输入输出域,设置成输入,当我用鼠标点击的时候,弹出一个数字输入框,按下确认后,数字就付给相应地变量,求c脚本。本人新手,谢谢给位大神 最佳答案 参考https://suppo…

    SIMATIC WinCC 2020年11月1日
  • 清除Function Trend Control数据

    我在一个Function Trend Control里定义了两条趋势,趋势一的“数据连接”选择“无”,即是由API接口提供的数值,可以在瞬间显示出曲线;趋势二的…

    SIMATIC WinCC 2019年6月11日