AutoIt – Windows’ eigentliche Skriptsprache…
Ich habe vor einigen Tagen AutoIt wiederentdeckt. AutoIt ist eine BASIC-ähnliche Skriptsprache zur Automatisierung von Windows. Automatisierung umfasst das vielfältige “Simulieren” von Benutzerinteraktionen (Mausklicks / Tastatureingaben) oder sogar das direkte Manipulieren von Programmfenstern (verschieben / vergrößern / maximieren / minimieren / verändern uvm.) …
Offizielle Kurzbeschreibung:
AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI and general scripting. It uses a combination of simulated keystrokes, mouse movement and window/control manipulation in order to automate tasks in a way not possible or reliable with other languages (e.g. VBScript and SendKeys). AutoIt is also very small, self-contained and will run on all versions of Windows out-of-the-box with no annoying “runtimes” required!
An AutoIt faszinieren mich vor allem:
- die unglaubliche Fülle an Funktionen in der Standardauslieferung (das erinnert mich ein wenig an die Standardbibliothek von Python, obgleich diese natürlich noch viel mächtiger ist… dennoch: “batteries included”)
- die sehr gute Dokumentation! Fast zu jeder Funktion gibt es auch ein Beispielskript. Es funktioniert ganz einfach so, wie es beschrieben ist! Auf diese Weise macht das Skripten fast so viel Spaß wie mit Python…
- die Möglichkeit, Skripte zu kompilieren. Sie müssen dann nicht mehr interpretiert werden, sondern sind von sich aus lauffähig auf fast allen Windows-Systemen.
Beispielskript: Der Fensterretter
Ich will auch noch ein ganz kleines Beispielskript vorstellen:
Vorgestern hatte ein Freund von mir das Problem, dass sich ein Programmfenster außerhalb seines Desktops befand. Das Programmfenster war auch herkömmlichem Wege (z.B. neustarten) nicht wiederzubekommen und eine entsprechende Windows-Funktion hat er nicht gefunden (weil sie sehr gut versteckt oder nicht existent ist).
Das Problem tritt relativ häufig dann auf, wenn man mit mehreren Bildschirmen arbeitet.
Zur Lösung dieses Problems habe ich kurzerhand den “FensterRetter” ins Leben gerufen. Nach 5 Minuten war er fertig und das Fenster wieder da, wo es sein sollte. Dank AutoIt!
Code:
; FensterRetter.au3 ; www.robertnitsch.de ; #Include <WinAPI.au3> $titel = InputBox("Fenstertitel", "Den Titel oder wenigstens den Anfang des Titels von dem Fenster, das gerettet werden soll, angeben:") if $titel = "" Then msgbox(32, "Fehler", "Ohne Fenstertitel geht hier gar nichts, sorry...") exit(1) endif $handle = WinGetHandle($titel) if $handle = "" Then msgbox(32, "Fehler", "Sorry, aber dieses Fenster konnte nicht gefunden werden... versuch einen anderen Titel!") exit(1) Else _WinAPI_MoveWindow($handle, 10, 10, _WinAPI_GetWindowWidth($handle), _WinAPI_GetWindowHeight($handle)) endif
Das Tool fragt a) den Fenstertitel ab, b) ermittelt das Fenster-Handle und c) schiebt das Fenster per API-Aufruf an die linke obere Bildschirmecke.
Download
FensterRetter.zip (290 KB)
Fazit
AutoIt ist mächtiger als vergleichbare Skriptsprachen (VBScript *kotz*), wahrscheinlich auch noch viel besser dokumentiert und sehr zuverlässig. AutoIt ist alles in allem auf jeden Fall einen Blick wert!

[...] Im letzten Artikel habe ich die Programmiersprache AutoIt3 und das Beispielskript “FensterRetter” vorgestellt. Dieses Mal möchte ich ein etwas praktikableres Skript vorstellen, das ich schon seit einigen Wochen intensiv nutze: AusfuehrenAls.au3 [...]
Pingback by AutoIt3: Vereinfachung der Windows-Funktion “Ausführen als…” - PhiLIOsoph — 29.12.2009 @ 02:47:27