Script bleibt hängen

  • Hallo zusammen,

    habe folgendes Script gebastelt, um einen Treiber im "silent" mode isntallieren zu können:


    [autoit]

    BlockInput(1)
    Run("setup.exe")
    WinWaitActive("Plustek PL812 - InstallShield Wizard","Wählen Sie eine Setup-Sprache aus")
    Send("!w")
    WinWaitActive("Scanner Setup")
    Send("!w")
    WinWaitActive("Scanner Setup","Zielpfad wählen")
    Send("!w")
    Sleep(10000)
    WinWaitActive("Scanner Setup","Die Installation von Plustek PL812 auf Ihrem Computer ist abgeschlossen.")
    Send("{Enter}")
    BlockInput(0)
    Exit

    [/autoit]


    Das Skript läuft ohne Probleme durch, nur das letzte Fenster, in dem {Enter} eingegeben werden soll, bleibt geöffnet und
    in der Taskleiste steht das autoIT-Symbol mit einem Häkchen bei paused und weiter passiert nichts.
    Wo habe ich den Fehler gemacht?


    Danke schon mal im Voraus für eure Hilfe.

    Gruß,

    Martin

  • Das Script kann sich nicht selbstständig pausieren.. Wahrscheinlich hastu den Fenstertitel/text falsch eingegeben! Würde dir aber empfehlen auf die Controlfunktionen umzuspringen -> Control/- Click, -Send, -SetText, -Command.

  • Habe das Script jetzt mal, wie folgt abgeändert:


    [autoit]

    Run("setup.exe")
    WinWaitActive("Plustek PL812 - InstallShield Wizard","Wählen Sie eine Setup-Sprache aus")
    Send("!w")
    WinWaitActive("Scanner Setup")
    Send("!w")
    WinWaitActive("Scanner Setup","Zielpfad wählen")
    Send("!w")
    WinWaitActive("Scanner Setup","Die Installation von Plustek PL812 auf Ihrem Computer ist abgeschlossen.")
    ControlClick("Scanner Setup","Die Installation von Plustek PL812 auf Ihrem Computer ist abgeschlossen.",1)
    Exit

    [/autoit]


    Hat aber nichts gebracht.
    was mir aufgefallen ist, aus der Installationsroutine für diese Treiberinstallation wird eine Installation für eine Software
    ausgerufen, die im Hintergrund ausgeführt wird. Dabei geht das autoIT-Script, so vermute ich in den paused-Modus und
    wird nicht mehr beendet. Klicke ich in der Taskleiste auf das autoIT-Symbol und dort auf EXIT, ird alles beendet und die
    Installation passt.

    Gruß,

    Martin

  • Hallo mmehltretter,

    dann lass doch mal dieses weg:

    [autoit]

    WinWaitActive("Scanner Setup","Die Installation von Plustek PL812 auf Ihrem Computer ist abgeschlossen.")
    ControlClick("Scanner Setup","Die Installation von Plustek PL812 auf Ihrem Computer ist abgeschlossen.",1)

    [/autoit]

    dann beendet sich wenigstens dein Skript

    mfg (Auto)Bert

  • Hallo zusammen,

    habe die Lösung gefunden.
    Das letzte Fenster, in dem aus dem Script auf die "Fertigstellen"-SChaltfläche geklickt werden soll,
    wird nicht wirklich aktiv. E sieht zwar so aus, erscheint aber nur, ohne aktiv zu werden.
    Da habe ich dann WinWaitActive durch WinWait ersetzt und schon funktionierts.
    Vielen Dank für eure Hilfe.

    Gruß,

    Martin