_IEAction(*****,"click") hält Script an

  • Hallo, ich habe folgendes Problem, ich will einen Test einer Internetseite automatisieren, bis dahin kein Problem, Browser ist IE.

    Zwischenzeitlich muss ich um einen Import zu machen auf ein Element der Seite klicken, und in den nachfolgenden file-open Dialog einen Pfad schreiben und bestätigen drücken (Tab Tab Enter)
    Folgendes ist der Quellcode hierzu:

    [autoit]

    $input=_IEGetObjByName($main_frame,"newimport")
    _IEAction($input, "click")
    Sleep(300)
    Send("blablabla")
    Send("{TAB}")
    Send("{TAB}")
    Send("{ENTER}")

    [/autoit]


    Resultat: Der Klick funktioniert, der Dialog öffnet sich, das Script läuft leider erst dann weiter wenn der Dialog wieder geschlossen wurde.

    Auch probiert habe ich:

    [autoit]

    $input=_IEGetObjByName($main_frame,"newimport")
    $input.fireEvent("onmousedown")
    $input.fireEvent("onmouseup")

    [/autoit]


    --nichts passiert

    als auch:

    [autoit]

    $input=_IEGetObjByName($main_frame,"newimport")
    _IEAction($input,"focus")
    Send("{ENTER}")

    [/autoit]


    --passiert auch nichts, der "Button" (ein scheinbar eigendefiniertes Element der Klasse Input vom Typ "file") lässt sich nicht durch ENTER auffrufen.

    Habe ich möglichkeiten das "warten" des Scriptes zu umgehen? Bzw eine möglichkeit das Autoit nach einer best. Zeit direkt aus der Action Funktion springt oder den "click" einfach ohne warten auf Rückgabe firert und normal weitermacht?
    Gibt es noch andere möglichkeiten um den click zu performen?

    VG und vielen Dank schonmal im vorraus.
    Royal

  • Wie ist der Link zu der Seite, das man sich das anschauen kann. Rein aus deiner Beschreibung kann man da nicht viel zu sagen.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Es handelt sich leider um eine intranet-seite, daher würde ein Link nicht viel bringen. ich denke mit "file-open-dialogen" auf anderen seiten sollte es sich ähnlich verhalten. Es wird bei klick, der ganz normale Windows dateiauswahl dialog geöffnet. Problem ist nur das das Scipt an diesem Punkt pausiert bis ich den Dialog schliese.

  • Wenn das wirklich ein normaler Windows Dateiauswahldialog ist und nicht z.b. ein von Java erzeugter dann kannst du mit z.b. WinWait und ControlClick auf den Button weiter machen.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Ja, das funktioniert bei dem Dialog auch ganz gut, zumindest wenn mit einen neuen Script. Das Problem ist das das gesammtscript ab dem öffnen des dialoges bei IEAction pausiert, also die Befehle die danach kommen erst ausführt wenn der dialog wieder zu ist, d.h. wenn ich nach den öffnen ein Controlklick mache so wird dieser Befehl erst realisiert wenn das Fenster wieder zu ist.