VBS Schleife unterbrechen mit Taste?

homer092

Lieutenant
Registriert
Aug. 2005
Beiträge
559
Hallo,
ich habe ein kleines VBS-Script, welches automatisch die rechts Taste drückt (etwas Laienhafte Methode zum Rechts-Taste drücken und einen Ablauf automatisieren, ja geht sicher schöner aber reicht in dem Fall....). So nun kommt es vor, dass das Script machmal auch vor Ablauf von z.B. 2000 Durchläufen gestoppt werden soll. Wie kann ich in folgenden Code eine Tastenkombi einbauen die das Script beendet? Also z.B: durch ESC oder ähnliches drücken?

VIelen vielen Dank!

Code:
set WshShell = CreateObject("WScript.Shell")
WScript.Sleep 1
for i=0 to 2000
WScript.Sleep 1
WshShell.SendKeys "{RIGHT}"
next
WScript.Echo "Skript wurde beendet."
 
Geht das nicht mit dem Standard Strg+C? Wenn nicht schau dir mal "taskkill" an.
 
So einfach geht das in VBS nicht. Du müsstest eine Routine implementieren, die auf Events - etwa das Drücken einer Taste - prüft. Falls diese Taste nicht gedrückt wurde, wird "Pfeil-Rechts" gesendet, falls die Abbruchtaste gedruckt wurde, wird eben abgebrochen. Hier sind mögliche Ansätze für dich:

https://stackoverflow.com/questions/16207461/visual-basic-script-keypress-detection

In Python lässt sich das - wie gewohnt - viel einfacher realisieren: Event polling per SDL, Taste drücken per pynput. Maximal 10 Zeilen Code :D

https://nitratine.net/blog/post/simulate-keypresses-in-python/
 
Zurück
Oben