|
Beschreibung
Es gibt mehrere Situationen, in denen die Sperre der Windows üblichen Tastenkombinationen nicht funktioniert. In diesem FAQ wird Ihnen gezeigt, was Sie tun müssen, dass die Sperre der Tastenkombinationen ordnungsgemäß funktioniert. Für das Sperren von Tastenkombinationen muss der Prozess "AlmXpmgr.exe" im Taskmanager von Windows aktiv sein.
Hinweis Setzen Sie Windows 7 oder Windows Server 2008 als Betriebssystem ein, folgen Sie bitte den Anweisungen im Beitrag unter der Beitrags-ID 44027453 um Tastenkombinationen wirksam zu sperren.
Es handelt sich um folgende Situationen:
- Wie ist vorzugehen, wenn die Sperre der Tastenkombinationen unter WinCC ohne Wirkung bleibt?
- Wie können die Windows Tastenkombinationen zur Runtime ereignisgesteuert gesperrt bzw. freigegeben werden?
- Wie werden Windows-typische Tastenkombinationen in WinCC gesperrt?
1. Wie ist vorzugehen, wenn die Sperre der Tastenkombinationen unter WinCC ohne Wirkung bleibt?
Anleitung
Führen Sie folgende Schritte durch:
| Nr. |
Vorgehensweise |
| 1 |
Neues Projekt anlegen (keine weiteren Einstellungen vornehmen) |
| 2 |
WinCC beenden |
| 3 |
WinCC starten (neues Projekt) |
| 4 |
Runtime ohne Graphics starten |
| 5 |
Runtime beenden |
| 6 |
WinCC beenden |
| 7 |
WinCC starten |
| 8 |
Ursprüngliches Projekt wieder öffnen |
| 9 |
Runtime starten |
Tabelle 01
Falls diese Vorgehensweise nicht funktioniert, kontrollieren Sie bitte folgende Registry-Einträge:
| Nr. |
Vorgehensweise |
| 1 |
Startmenü > Ausführen, "regedit" eingeben |
| 2 |
Suchen Sie den Schlüssel:
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows NT/Current Version/Winlogon |
| 3 |
Prüfen Sie, ob folgende Einträge vorhanden sind:
GinaDLL = "almxgina.dll" und
Userinit = "userinit,ALMXPMGR.EXE,nddeagnt.exe"
Nur wenn diese beiden Einträge vorhanden sind, kann die Sperrung der Tasten funktionieren. |
Tabelle 02
Anschließend kann noch kontrolliert werden, ob die Sperrung tatsächlich eingetragen wurde:
| Nr. |
Vorgehensweise |
| 1 |
Startmenü > Ausführen, "regedit" eingeben |
| 2 |
Suchen Sie den Schlüssel:
HKEY_LOCAL_MACHINE/SOFTWARE/SIEMENS/WinCC/WinLogon/Permissions |
| 3 |
Unter diesem Pfad sind alle verfügbaren Tastenkombinationen eingetragen.
Nachfolgend finden Sie eine Abbildung mit der Registrierung aller verfügbaren Tastenkombinationen.

Bild 01
Sind die Werte der gewünschten Tastenkombinationen auf "0" gesetzt, dann bleiben die jeweiligen Tastenkombinationen ohne Funktion.
Für die Freischaltung der Tastenkombinationen gehen Sie wie folgt vor:
- Name der gewünschten Tastenkombination auswählen.
- Selektieren Sie mit der rechten Maustaste " Ändern ".
- Ändern Sie den Wert von "0" auf "1".
- Anschließend drücken Sie auf "OK". |
Tabelle 03
WICHTIG! Grundsätzlich kann für direkte Änderungen in der Registrierdatenbank keine Gewähr übernommen werden, da dies in der Hand des Anwenders liegt. Es ist auf jeden Fall empfehlenswert, vor den beschriebenen Zugriffen eine Sicherung der Registry anzulegen. Diese Einstellungen sind zudem rechnerspezifisch. Das bedeutet, dass die Einstellungen erneut gemacht werden müssen, wenn das Projekt auf einen anderen Rechner kopiert wird.
2. Wie können die Windows Tastenkombinationen zur Runtime ereignisgesteuert gesperrt bzw. freigegeben werden?
Anleitung Im WinCC Explorer können Sie im Dialog "Rechnereigenschaften" im Register "Parameter" Windows Tastenkombinationen für Runtime sperren bzw. freigegeben.
Änderungen an den Einstellungen im Dialog "Rechnereigenschaften" werden dabei erst nach einem Neustart der Runtime wirksam. Im Folgenden wird beschrieben, wie Sie einige Windows Tastenkombinationen zur Runtime freigeben bzw. sperren können. Die Berechtigungsstufen des WinCC User Administrators werden bei dieser Methode berücksichtigt.
Verwendet wird die C-Funktion "SetXGinaValue()". Diese Funktion wird mit der DLL "ALMXGINA.DLL" zur Verfügung gestellt.
| Funktion |
BOOL SetXGinaValue(unsigned int uiKey, BOOL *pbEnable, DWORD dwSize); |
| Funktionsweise |
Die Funktion sperrt eine durch "uiKey" angegebene Windows Tastenkombination bzw. gibt diese Tastenkombination frei. Die Information, ob die Tastenkombination freigegeben oder gesperrt wird, wird im Parameter "pbEnable" als Zeiger übergeben. |
| Rückgabe |
Die Funktion liefert den Wert TRUE, oder den Wert FALSE zurück. |
| Beispiel |
Ist der Parameter "pbEnable" kein Zeiger auf eine Variable vom Typ "BOOL" bzw. Typ "DWORD" (32 Bit), so wird die Funktion nicht erfolgreich durchlaufen. Die angegebene Tastenkombination wird nicht gesperrt bzw. freigegeben. Die Funktion liefert den Wert "FALSE" zurück. |
| Parameter |
- uiKey (unsigned int)
Mit dem Parameter "uiKey" legen Sie fest, welche Tastenkombination gesperrt bzw. freigegeben werden soll. Sie können folgende Konstanten verwenden:
#define XGINA_ALLOW_SHUTDOWN 1
#define XGINA_ALLOW_LOGOUT 2
#define XGINA_ALLOW_CTL_ALT_DEL 3
//Windows-Key+E, /Windows-Key+R
#define XGINA_ALLOW_CTL_ESC 4
#define XGINA_ALLOW_ALT_ESC 5
#define XGINA_ALLOW_ALT_TAB 6
Hinweis Das Sperren/Freigeben der Tastenkombination CTRL+ESC steuert gleichzeitig die Freigabe/Sperre der Windowstaste (z.B. "Windowstaste+E" für den Aufruf des Windows Explorer oder "Windowstaste+R" zum Ausführen eines Programms).
- pbEnable (BOOL*)
Der Parameter "pbEnable" ist die Adresse einer Variablen vom Typ BOOL bzw. DWORD, die die Information enthält, ob die im Parameter "uiKey" angegebene Tastenkombination gesperrt oder freigegeben werden soll. Enthält die Variable, auf die der Zeiger "pbEnable" zeigt, den Wert "TRUE", so wird die angegebene Tastenkombination freigegeben, sonst gesperrt.
- dwSize (DWORD)
Im Parameter "dwSize" geben Sie die Größe der Variablen in Byte an, auf die der Zeiger "pbEnable" zeigt. |
Tabelle 04
Hinweis zu WinCC V7.0 SP3 Update 3 Ab Update 3 für WinCC V7.0 SP3 werden beim Sperren von Tastenkombinationen immer alle Funktionstasten für den Zugriff ins Betriebssystem gesperrt.
Dazu gehören folgende Tastenkombinationen:
| <Strg+Alt+Entf> / <Ctrl+Alt+Del> |
<Strg+Alt+Tab> / <Ctrl+Alt+Tab> (Windows 7) |
| <Alt+Esc> |
<Alt+Umschalt+Esc> / <Alt+Shift+Esc> |
| <Alt+Tab> |
<Alt+Umschalt+Tab> / <Alt+Shift+Tab> |
| <Strg+Tab> / <Ctrl+Tab> |
<Strg+Umschalt+Tab> / <Ctrl+Shift+Tab> |
| <Strg+Alt+Esc> / <Ctrl+Alt+Esc> |
<Strg+Alt+Umschalt+Esc> / <Ctrl+Alt+Shift+Esc> |
| <Strg+Esc> / <Ctrl+Esc> |
<Strg+Umschalt+Esc> / <Ctrl+Shift+Esc> |
| Win95 links /Win95 left |
Win95 rechts / Win95 right |
Tabelle 05
Zur Aktivierung von Tastensperren gehen Sie folgendermaßen vor:
1. Aktivieren Sie die Sperre von <Strg+Alt+Ent>.
2. Um Konflikte zu vermeiden, deaktivieren Sie alle anderen Optionen zum Sperren von Tastenkombinationen.
Diese Informationen und das Update 3 zu WinCC V7.0 SP3 finden Sie unter der Beitrags-ID: 63472422.
Der folgende Download stellt eine C-Aktion zur Verfügung, die die Windows Tastenkombinationen in Abhängigkeit der Berechtigung des aktuell angemeldeten Benutzers freigibt oder sperrt.
WinCC_SetXGinaValue_c.txt ( 1 KB )
Hinweise zum Download
In diesem Beispiel, wurde für die Freigabe der Windows Tastenkombinationen die benutzerspezifische Berechtigung "Operating System" mit der Nummer 19 angelegt.
Sie können auch eine andere bzw. bestehende Berechtigung (z.B. "Höherwertige Prozessbedienung", Nummer 6) verwenden.

Bild 02: Rechtevergabe im WinCC User Administrator
Um die Tastenkombinationen bei der An- und Abmeldung eines Benutzers freizugeben bzw. zu sperren, können Sie das in diesem Beitrag gelieferte C-Skript in einer Globalen C-Aktion verwenden. Als Trigger wird die vom System erstellte, interne Variable "@Current_User" verwendet.
3. Wie werden Windows-typische Tastenkombinationen in WinCC gesperrt?
Anleitung Die Tastenkombinationen "Strg + Alt + DEL", "Alt + TAB", "Strg + ESC" und "Alt + ESC" können Sie im Dialog "Eigenschaften" für jeden projektierten Rechner im WinCC Explorer unter "WinCCExplorer > Rechner > Eigenschaften Rechner > Parameter" durch Anwahl der entsprechenden Optionskästchen sperren.

Bild 03: Einstellungen zum Sperren bzw. Freigeben von Windows Tastenkombinationen
Die Tastenkombinationen "Alt + F4" können Sie im Dialog "Eigenschaften" für jeden projektierten Rechner im WinCC Explorer sperren. Unter "WinCCExplorer > Rechner > Eigenschaften Rechner > Graphics-Runtime" wählen Sie hier das entsprechende Optionskästchen aus.

Bild 04: Einstellung zum Sperren bzw. Freigeben von "Alt+F4"
Damit die Windows Taskleiste zur WinCC-Runtime auch beim Aufruf eigenständiger Applikationen (z.B "Bildanwahl über Name", "Bildanwahl über Messstelle", "Benutzerberechtigung" oder "SFC Visualisierung") nicht sichtbar wird, nehmen Sie folgende Einstellungen unter "Eigenschaften von Taskleiste und Startmenu" vor. Das Optionskästchen "Taskleiste immer im Vordergrund halten" muss abgewählt sein.

Bild 05: Einstellungsdialog zur Windows Taskleiste
Ergänzende Suchbegriffe
27068495, 22326881, Tasten-Sperre, Tasten deaktivieren, Tastenfunktion, Sondertasten, Tasten verriegeln, Kiosk-Modus
|