Erzwingt die bedingungslose Installation des Tastatur-Hooks.
#InstallKeybdHook
Der Tastatur-Hook überwacht Tastendrücke, um Hotstrings und Tastatur-Hotkeys zu aktivieren, die nicht von RegisterHotkey unterstützt werden (RegisterHotkey ist eine systeminterne Funktion). Dieser Hook unterstützt noch ein paar andere Features wie den Input-Befehl.
AutoHotkey installiert die Tastatur- und Maus-Hooks nicht bedingungslos, weil sie zusammen mindestens 500 KB Speicher verbrauchen würden. Daher wird der Tastatur-Hook normalerweise nur installiert, wenn das Skript eines der folgenden Dinge enthält: 1) Hotstrings; 2) einen oder mehrere Hotkeys, die den Tastatur-Hook benötigen (die meisten benötigen ihn nicht); 3) SetCaps/Scroll/NumLock AlwaysOn/AlwaysOff; 4) den Input-Befehl, für den der Hook installiert wird, wenn der Befehl das erste Mal tatsächlich verwendet wird.
Mit #InstallKeybdHook hingegen kann der Tastatur-Hook bedingungslos installiert werden, um zum Beispiel via KeyHistory die 20 zuletzt gedrückten Tasten anzuzeigen oder um die Nutzung von #HotkeyModifierTimeout zu verhindern.
Tastatur-Hotkeys, die den Hook nicht benötigen, verwenden die reg-Methode, auch dann, wenn die Direktive #InstallKeybdHook verwendet wird. Wenn Sie hingegen die Direktive #UseHook oder das $-Präfix auf einen Tastatur-Hotkey anwenden, wird dieser gezwungen, den Hook zu verlangen, was dazu führt, dass der Hook bei aktiviertem Hotkey installiert wird.
Mit dem KeyHistory-Befehl oder -Menüpunkt können Sie überprüfen, ob Ihr Skript einen Hook benutzt. Mit dem ListHotkeys-Befehl oder -Menüpunkt können Sie überprüfen, welche Hotkeys den Hook nutzen.
Diese Direktive macht ein Skript zusätzlich persistent; das heißt, dass das Skript nur noch mit ExitApp terminiert werden kann.
#InstallKeybdHook kann wie alle anderen Direktiven nicht bedingt ausgeführt werden.
#InstallMouseHook, #UseHook, Hotkey, Input, #Persistent, KeyHistory, Hotstrings, GetKeyState(), KeyWait