如果WinCC 中的锁定组合键无效该怎么办?
显示订货号
西门子链接:
https://www.wendangku.net/doc/8f4364800.html,/CN/llisapi.dll?
func=cslib.csinfo&objId=22326550&ehbid=24074628&load=treecontent&lang=zh&siteid=cseus&aktpri
m=0&objaction=csview&extranet=standard&viewreg=CN
描述
当WinCC 中的锁定组合键无效时有几种解决方案。本文将告诉您取消组合键功能。要取消组合键功能必须激活"AlmXpmgr.exe"进程。我们使用以下解决方案。
1.如果WinCC 中的锁定组合键无效该怎么办?
2.如何在运行系统中使用事件触发来使能/锁定Windows组合键?
3.在WinCC V6中如何锁定Windows组合键?
注意
使用Windows 7 或Windows Server 2008 系统时请遵照条目44027453中的说明来锁定组合键。
1. 如果WinCC 中的锁定组合键无效该怎么办?
说明
WinCC_SetXGinaValue_c.txt
#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); 下载注意
本例中,用户权限"操作系统" 通过使用数字19 创建用于使能Windows 组合键。
您还可以使用其它的或已存在的权限(如“高级过程控制”,数字6).
以下为在全局脚本“动作中”实例添加的:
int gscAction( void )
{
#pragma option(mbcs)
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END
#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 ));
return 0;
}
图. 01: WinCC用户管理中的权限分配
为了在用户登录/取消登陆时来使能/锁定组合键,您可以在全局 C 动作中使用本例中提供的 C 脚本。您可以使用系统内部变量"@Current_User" 作为触发变量。
3. 如何在WinCC V6 中锁定Windows 组合键?
说明
您可以通过进入"WinCC Explorer > 计算机> 计算机属性> 属性" 并选择对应的复选框来锁定组合键"Ctrl + Alt + DEL", "Alt + TAB", "Ctrl + ESC" 和"Alt + ESC"。
图. 02: 使能/锁定Windows 组合键的设置
组合键"Alt + F4" 可以在WinCC 浏览器中计算机“属性”中锁定。通过进入"WinCC Explorer > 计算机> 计算机属性> 属性" 并选择对应的复选框来设置。
图. 03: 使能/锁定Windows 组合键"Alt+F4"的设置
为了确保在WinCC运行时及您调用独立应用程序(如"Screen selection by name", "Screen selection by measuring point", "User Authorization" 或"SFC Visualization")时不显示Windows 工具栏,您应该在“任务栏和启动菜单属性”对话框中进行以下设置。复选框“保持任务栏在其它窗口之上”必须被取消。
图. 04: 任务栏的设置对话框
关键词
27068495, 22326881, 取消使能按键, 取消按键, 按键功能, 特殊按键, 锁定按键, Kiosk模式