Nie wieder nervige Setups

Teil 4: Nie wieder nervige Setups

Trotz der neuen Silent-Parameter basiert IOM immer noch auf der Skriptsprache AutoIt. Die ursprüngliche Stärke dieser Skriptsprache war es, einen Benutzer zu simulieren, indem es Mausklicks und Tastatureingaben automatisch ausführte. Das nutzen Sie, wenn Sie ein Programm mit anderen Einstellungen installieren möchten, als es Kommandozeilenparameter erlauben oder wenn diese fehlen.

Nie wieder nervige Setups

© Archiv

Quelle: AutoIt Window Info Tool liefert alle Informationen zum Automatisieren von Installation.

Installieren Sie AutoIt auf Ihre Festplatte, damit Sie die Hilfe und das Window Info Tool erhalten. Zunächst müssen Sie mit dem Befehl ShellExecute die Installationsdatei starten:

ShellExecute(@ScriptDir & "Setup.exe")

In aller Regel handeln Sie dann Fenster für Fenster folgendermaßen ab:

WinWait("Fenstertitel", "eindeutiger Fenstertext")
ControlClick("Fenstertitel", "","ControlID")

Die benötigten Daten liefert das AutoIt Window Info Tool, das sich im AutoIt-Verzeichnis befindet (Au3Info.exe). Im Tab Window bekommen Sie den Fenstertitel, unter Visible Text finden Sie den Fenstertext, aus dem Sie einen Teil herausnehmen sollten, der das Fenster eindeutig gegenüber den anderen während der Installation abgrenzt. Wenn Sie mit der Maus über den Button fahren, der im jeweiligen Fenster zur Bestätigung zu drücken ist, dann finden Sie im Tab Control seine ID. Da diese aber nicht statisch ist, ist es besser, Class und Instance zu kombinieren, also beispielsweise Button2.

Nach diesem Muster lassen sich die meisten Schritte einer Installation erledigen: den Haken bei der Lizenzvereinbarung setzen Sie so:

ControlCommand("Fenstertitel", "Fenstertext", "ControlID", "Check", "")

Falls die Änderung der Umgebungsvariable nicht ausreicht, um den Installationspfad korrekt anzupassen oder Sie einen anderen Pfad festlegen möchten, dann hilft die Funktion ControlSetText weiter:

ControlSetText("Fenstertitel", "Fenstertext", "ControlID", "C:7-Zip")

Den Pfad, den der Nutzer in der IOM als Standardpfad angegeben hat, erreichen Sie über $CmdLine[1]. Damit lässt sich folgende Abfrage bauen:

If $CmdLine[1] "0" Then ControlSetText("Fenstertitel", "Fenstertext", "ControlID", $CmdLine[1]& "7-Zip")

Mit diesen Befehlen lassen sich die meisten Installationen automatisieren.

Zurück zu den Wurzeln

Probleme machen Programme, die unter einer Java-Oberfläche installiert werden: Sie haben keine GUI nach Windows-Standard und lassen sich daher nicht mit den Control-Funktionen von AutoIt ansprechen. Hier kommt man zur Automatisierung quasi zu den Wurzeln von AutoIt, der Simulation von Tastatureingaben. Die Funktion Send leistet dabei wertvolle Dienste:

Nie wieder nervige Setups

© Archiv

Send("!w")

Damit wird die Tastenkombination [Alt-W] simuliert, {ENTER} und {TAB} stehen für sich selbst, {SPACE} für die Leertaste. {UP} und {DOWN} stellen die entsprechenden Cursortasten dar. Detaillierte Informationen zu den beschriebenen und weiteren AutoIt-Funktionen finden Sie in der sehr guten, englischsprachigen Hilfe. Die deutschen Hilfetexte sind in Arbeit.

Mehr zum Thema

festplatte, hardware, pc, hdd
Gelöschte Dateien wiederherstellen

Wir zeigen Ihnen, wie Sie verloren geglaubte Daten retten können - etwa mit dem kostenlosen Tool Recuva.
Whatsapp Alternativen
Für Android, iPhone, iPad & Co.

Es gibt keine Whatsapp-Alternative? Quatsch! Diese 10 Messenger-Apps für Android, iOS und Windows Phone sind der perfekte Ersatz.
Windows Energieeinstellungen optimieren
Die besten Tipps

Die Energieeinstellungen in Windows lassen sich flexibel anpassen. Wir zeigen Ihnen, wie Sie Ihren eigenen Energiesparplan optimieren.
Any Video Recorder
Anleitung

Wir zeigen in dieser Anleitung, wie einfach Sie mit dem Tool Any Video Recorder jeden beliebigen Stream aufnehmen können
Outlook - Logo
Office-Tipp

Wir zeigen, wie Sie in Outlook die Kalenderwoche anzeigen lassen können. Unser Office-Tipps sorgt für Durchblick bei der Terminplanung.