VBS Send Key
Inhaltsverzeichnis
VBS Send Key
Du möchtest Tastenanschläge mit der VBS Send Key Funktionalität simulieren?
Dann bist Du durch deine Recherche in meinem heutigen Beitrag genau richtig gelandet, los geht’s!
Anschließend hast Du ggf. noch Interesse an weiteren Beiträgen wie: Select Case, Replace, Array.
Zeitalter der Automation
Im modernen Zeitalter der Automation, möchte man vor allem als PC-Nutzer, bzw. als am PC arbeitender Mensch natürlich so wenig Handgriffe wie möglich tätigen.
Besonders so genannte „Monkey-Work„, also Arbeiten, für Welche man – im wahrsten Sinne des Wortes – einen „Affen“ nehmen könnte, sollten automatisiert werden.
Wer hat denn schon Lust, einfache wiederkehrende Aktionen an der Tastatur händisch auszuführen?
SendKeys-Funktion – VBS Send Key
Um die Tastenanschläge letztendlich simulieren oder analog dem Begriff senden zu können, müssen wir ein Objekt des „WScript.Shell„-Typs erstellen.
Schauen wir uns aber vorher einmal die VBS SendKeys-Funktion im Detail an:
Beschreibung
Die SendKeys–Funktion sendet simulierte Tastenanschläge an das aktive Fenster.
Parameter
strKeyString [String]
Dieser Parameter umfasst die zu sendenden Zeichenfolgen, wobei auch spezielle Tasten wie „Enter“ gesendet werden können.
Spezielle Zeichen – wie hier das Prozentzeichen – müssen in geschweiften Klammern angegeben werden:
<TheShellObj>.SendKeys("{%}")
Normale Buchstaben können wir hier ganz einfach angegeben werden:
<TheShellObj>.SendKeys("This has not been typed")
Gotchas – VBS Send Key
Auf diese Art und Weise kann uns die tolle SendKeys Funktion eine einfache Möglichkeit bieten, unseren Alltag als privater oder beruflicher Anwender des Computers vereinfachen.
Dabei legt Visual Basic Script (VBS) eine einfache und auch für viele nicht-Entwickler verständliche Schreibweise vor.
Überlege doch gerne mal in Kombination mit dem gleich folgenden Beispiel, wie Du deinen Alltag eventuell erleichtern könntest!?
Code – VBS Send Key
Hier folgt nun ein konkretes Beispiel der SendKeys Funktion:
Set shell = WScript.CreateObject("WScript.Shell") shell.Run "notepad", 9 WScript.Sleep 1000 shell.SendKeys "{Enter}" shell.SendKeys "Hello!"
Das WScript.Shell Objekt
Im ersten Schritt des Scripts erstellen wir ein Objekt des „WScript.Shell“ Typs.
Set shell = WScript.CreateObject("WScript.Shell")
Öffnen von Notepad
shell.Run "notepad", 9
Anschließend lassen wir das Objekt die Run-Funktion mit den ersten Parameter „notepad“ und den zweiten Parameter „9“ aufrufen.
Der Parameter „notepad“ startet natürlich die Notepad-Anwendung und die 9 bedeutet, dass das Fenster angezeigt und aktiviert wird.
Pausieren
WScript.Sleep 1000
Danach lassen wir die Ausführung unseres Scripts eine Sekunde (1000 ms) pausieren, damit Notepad ein wenig Zeit hat.
Tastenanschläge simulieren
In den letzten beiden Schritten simulieren wir das Drücken der Enter-Taste im aktiven Fenster (Notepad), danach senden wir noch ein „Hello!“ in die aktuelle Zeile.
shell.SendKeys "{Enter}" shell.SendKeys "Hello!"