A_HotkeyModifierTimeout ist eine interne Variable, die das Verhalten von Send mit den Hotkey-Modifikatoren Strg, Alt, Win und Umschalt beeinflusst. Konkret heißt das: Sie legt fest, wie lange nach dem Drücken eines Hotkeys davon ausgegangen wird, dass dessen Modifikatortasten noch gedrückt gehalten sind. Dies wird von Send verwendet, um zu bestimmen, ob die Modifikatortasten wieder nach unten gedrückt werden, nachdem sie vorübergehend losgelassen wurden.
A_HotkeyModifierTimeout kann verwendet werden, um einen Integer abzurufen oder zu setzen, der die Länge des Intervalls in Millisekunden repräsentiert. Wenn -1, wird das Zeitlimit nie überschritten (Modifikatortasten sind nach dem Send immer im gedrückten Zustand). Wenn 0, wird das Zeitlimit immer überschritten (Modifikatortasten sind danach nie im gedrückten Zustand).
Die Standardeinstellung ist 50 (ms).
Diese Variable hat keinen Effekt, wenn:
Am folgenden Beispiel wird gezeigt, wie diese Variable funktioniert: ^!a::Send "abc"
.
Bevor die Send-Funktion ihre Ausführung beginnt, lässt sie Strg und Alt los, damit die Zeichen richtig gesendet werden. Nachdem die Funktion die Tasten gesendet hat, weiß sie nicht, ob sie Strg und Alt sicher wieder in den gedrückten Zustand versetzen kann (falls der Benutzer diese Tasten weiterhin gedrückt hält). Wenn die aktuell verstrichene Zeit unter dem Zeitlimit liegt, geht Send davon aus, dass der Benutzer noch keine Gelegenheit hatte, die Modifikatortasten loszulassen, und drückt sie wieder nach unten, entsprechend ihrem physischen Status. Andernfalls werden die Modifikatortasten nicht wieder nach unten gedrückt, d.h. der Benutzer muss die Modifikatortasten loslassen und erneut drücken, um dieselbe oder eine andere Taste zu modifizieren.
Das Zeitlimit sollte kürzer sein als die Zeit, die der Benutzer üblicherweise zum Gedrückthalten der Modifikatoren eines Hotkeys benötigt, bevor er sie wieder loslässt. Andernfalls könnte es passieren, dass die Modifikatoren wieder in den gedrückten Zustand versetzt werden (dauerhaft gedrückt bleiben), auch dann, wenn der Benutzer sie nicht physisch gedrückt hält.
Sie können die Notwendigkeit dieser Variable mit einer der folgenden Maßnahmen verringern oder eliminieren: