Abfrage-Dialog von IE bestätigen

  • Hallo alle zusammen,

    ich habe momentan ein Problem eine Abfrage aus dem IE zu bestätigen.
    Mein Script öffnet im IE eine bestimmte Seite (per _IENavigate) und betätigt dort einen Button (per _IEAction).
    Dieser Button öffnet dann ein Dialog-Fenster (Titel: Meldung von Webseite) und will, dass entweder OK oder Abbrechen geklickt wird.
    Ich schaffe es nun partout nicht diesen blöden OK-Button per Script zu klicken!
    Ich hatte schon folgendes Probiert:

    ControlSend("Meldung von Webseite", "", "Button1", "{ENTER}")
    ControlClick("Meldung von Webseite", "", "[CLASS:Button; TEXT:OK; INSTANCE:1]")
    Send("{ENTER}")
    Alles ohne Erfolg.
    Mit MouseClick will ich nicht arbeiten, da das ganze auf verschiedenen Auflösungen laufen soll.

    Hat jemand eine Idee?
    Ich bin für jeden Hinweis Dankbar!

  • Dabei handelt es sich um eine JavaScript-Confirm-Box. Das Schließen funktioniert recht simpel:

    JavaScript-Fenster-Button focussieren, JavaScript-Fenster-Button clicken. Beides Control Funktionen:


    AutoIt
    $sTitel = "Meldung von Webseite"
    $sButton = "OK"
    If ControlFocus($sTitel, $sButton ,1) Then
    	ControlClick($sTitel, $sButton, 1)
    EndIf

    Es gibt Tage, da trete ich nicht ins Fettnäpfchen. Ich falle in die Friteuse.

  • Vielen Dank für die Antwort.
    Leider funktioniert es nicht. Scheinbar behindert die Confim-Box die weitere Ausführug des Scripts.
    Eine Msgbox nach dem Öffnen der Confim-Box wird erst dann angezeigt, wenn OK oder Cancel gedrückt wurde.
    Oder muss ich das Betätigen des Buttons (der die Confirm-Box öffnet) anders lösen?

  • [autoit]


    #include <IE.au3>

    [/autoit][autoit][/autoit][autoit]

    $oIE= _IE_Example("form")
    $oSubmit = _IEGetObjByName($oIE, "submitExample")
    Local $hwnd = _IEPropertyGet($oIE, "hwnd")
    _IEAction($oSubmit, "focus")
    ControlSend($hwnd, "", "[CLASS:Internet Explorer_Server; INSTANCE:1]", "{Enter}")

    [/autoit]

    Steht in der Hilfe...

  • Jaaaaa!!!
    Ich hatte den Button über _IEAction($oSubmit, "click") ausgelöst!
    Über focus und dann ControlSend und dem anschließenden Code von Einexage funktioniert es!
    Vielen Danke für die Hilfe!!!