Hallo erstmal!
Ich bin ziemlich neu in der Welt von AutoIt und habe bereits einige Scripte durch (z.B.: xp-antispy). Neuerdings habe ich aber extreme Probleme mit der Funktion WinWaitActive(). Soweit ich das verstanden habe, gibt der erste Parameter den Titel des Fensters an, der zweite einen x-beliebigen Text aus dem Fenster und der dritte eine Timoutzeit in ms. Ich arbeite nur ungern mit Timeout, da sich eine Installation je nach Prozessorgeschwindigkeit unterschiedlich lang gestalten kann. Daher gilt meine Frage vorallem dem 2ten Parameter:
Mit dem Windowinfotool hole ich mir ein Stück vom visible Text und noch immer bleibt mein Script hängen. Woran kann sowas liegen?
Hier mal mein Script (der übrigens auf meiner VM einmal ohne Probs durchlief und seither nicht mehr so recht will; auch nicht auf fremdpcs):
;TuneUp Utilities 2008 Setup
run(@ProgramFilesDir & "\setups\TU2008TrialDE.exe")
WinWaitActive("TuneUp Utilities 2008", "Willkommen zum") ;hier ist wohl irgendwo der Teufel drin
Send("!w")
WinWaitActive("TuneUp Utilities 2008", "Lizenzvertrag")
Send("{UP}")
Send("!w")
WinWaitActive("TuneUp Utilities 2008", "Benutzer-Informationen")
Send("!w")
WinWaitActive("TuneUp Utilities 2008", "Zielordner")
Send("!w")
WinWaitActive("TuneUp Utilities 2008", "Anwendungseinstellungen")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{SPACE}")
Send("!w")
WinWaitActive("TuneUp Utilities 2008", "beenden")
Send("{ENTER}")
;Starte TuneUp, keine Updateüberprüfung mehr, Seriennummer eingeben
run(@ProgramFilesDir & "\TuneUp Utilities 2008\Integrator.exe")
WinWaitActive("Update-Prüfung empfohlen")
Send("{TAB}")
Send("{DOWN}")
Send("{DOWN}")
Send("{DOWN}")
Send("{ENTER}")
WinWaitActive("TuneUp Utilities 2008", "Produktschlüssel eingeben")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{ENTER}")
WinWaitActive("Code eingeben")
Send("NAME")
Send("{TAB}")
Send("FIRMA")
Send("{TAB}")
Send("HIERSTEHTDEINESERIENNUMMER")
Send("{ENTER}")
WinWaitActive("Vielen Dank!")
Send("{ENTER}")
WinWaitActive("Programm-Neustart erforderlich")
Send("{ENTER}")
;TuneUp Utilities 2008 ENDE
Alles anzeigen
Ein ähnliches Problem habe ich auch bei Avira 8. Das zweite WinWaitActive() funktioniert nicht und selbst Alternativen wie WinWait() verweigern den Dienst.
Dankeschön!