Texteingaben werden nicht übernommen

  • Hallo zusammen,

    bei einer mit AutoIT automatisierten Installation eines Programms werden mit ControlSend
    Lizenzdaten eingegeben.
    Hier mal der Code


    [autoit]


    Run("inis6-661.exe")
    WinWaitActive("INiS 6 - InstallShield Wizard","Willkommen beim InstallShield Wizard für INiS 6")
    Send("!w")
    WinWaitActive("INiS 6 - InstallShield Wizard","Lizenzvereinbarung")
    ControlClick("INiS 6 - InstallShield Wizard","Lizenzvereinbarung", "[CLASS:Button; INSTANCE:3]")
    Send("!w")
    WinWaitActive("INiS 6 - InstallShield Wizard","Zielordner")
    Send("!w")
    WinWaitActive("INiS 6 - InstallShield Wizard","Lizenzierung")
    ControlSend("INiS 6 - InstallShield Wizard","Lizenzierung","[CLASS:RichEdit20W; INSTANCE:1]","Vorname Name")
    ControlSend("INiS 6 - InstallShield Wizard","Lizenzierung","[CLASS:RichEdit20W; INSTANCE:2]","XXXX-XXXX-XXXX-XXXX-XXXX")
    Send("!w")

    [/autoit]


    Leider werden die Eingaben aber anscheinend nicht an die Installation übergeben.
    Im Fenster sehe ich zwar, wie die Eingaben an der richtigen Stelle eingefügt werden und danach die "weiter-Taste" aktiviert wird,
    das Installationsprogramm arbeitet aber weiter, als ob keine Lizenzdaten übergeben worden wären, d.h. es wird eine Demoversion
    des Programms installiert.

    Lasse ich die Installation mauell laufen, verhält sich alles genauso, wie bei der mit AutoIT automatisierten Installation. Bis auf die
    Übergabe der Lizenzdaten. Gehe ich in der manuellen Installation auf ZURÜCK, nachdem ich die Lizenzdaten eingetragen habe und das
    nächste Fenster aktiv ist, stehen die Lizenzdaten immer noch in den Feldern. Gehe ich bei der Auto IT Installation auf ZURÜCK,
    sind die beiden Felder leer. Also gehe ich davon aus, dass die Daten nicht richtig übertragen werden.


    Weiß jemand Rat oder hat eine andere Idee zum Übergeben der Lizenzdaten?

    Viele Grüße,

    Martin Mehltretter

  • Hi versuche es doch mal so

    Spoiler anzeigen
    [autoit]


    WinWaitActive("[TITLE:INiS 6 - InstallShield Wizard; CLASS:RichEdit20W]")
    sleep(100)
    Send("Vorname Name")
    sleep(20)
    Send({TAB})
    sleep(20)
    Send("XXXX-XXXX-XXXX-XXXX-XXXX")

    [/autoit]

    Wie gesagt ist nur ein Versuch. Weil bei send wird der Courser bewegt wie bei einer Eingabe.

    Habe mit nem JavaApp mal Problem gehabt.
    MfG
    Der_Doc

  • Habe mit
    ControlFocus erst den Focus auf dieses EIngabefeld gesetzt
    und dann mit

    Send den Text übergeben.
    Hat funktioniert.

    Danke für eure Hilfe.

    Gruß,

    Martin