und weil mir langweilig war das ganze noch als Funktion.
Einfach die Reihenfolge der Tasten wie den Codes bei _IsPressed zu entnehmen ist, als String in der Funktion übergeben.
Der 2. Parameter ist die max. Zeitdauer in der die Tasten einzugeben sind.
Im Beispiel sind das die Tasten 1234 bei einer Zeitdauer von 3000ms
Spoiler anzeigen
While Sleep (10)
If _CheckKeysPressed('31323334', 3000) = 1 Then ExitLoop
WEnd
MsgBox(0,"_IsPressed", "End Key Pressed")
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]#include <Misc.au3>
Func _CheckKeysPressed($CKPkeyCode, $CKPmaxZeitdauer)
If Not IsDeclared('CKPsCode') Then Global $CKPsCode, $CKPcTimer, $CKPdllopen = False, $CKPdll
If $CKPdllopen = False Then
$CKPdll = DllOpen("user32.dll")
$CKPdllopen = True
EndIf
If _IsPressed(StringMid($CKPkeyCode,1+ StringLen($CKPsCode)*2,2), $CKPdll) Then
$CKPcTimer = TimerInit()
$CKPsCode &= 1
EndIf
If TimerDiff($CKPcTimer) > $CKPmaxZeitdauer And $CKPscode <> "" Then
$CKPsCode = ""
$CKPcTimer = TimerInit()
EndIf
If StringLen($CKPsCode) = StringLen($CKPkeyCode)/2 Then
DllClose($CKPdll)
$CKPsCode = ''
$CKPdllopen = False
Return 1
EndIf
Return 0
EndFunc