IE Popup per AutoIT steuern

  • Hiho!

    Ich öffne per ie3.au eine Seite. Der User soll sich dann einloggen, eine bestimmte Unterseite öffnen (Adminbereich, das script soll keine Userdaten enthalten) und dann auf einen Link klicken der ein PopUp erzeugt.
    Dieses Popup möchte ich nun per IE3.au-Befehle wieder steuern. Mein Problem: das Objekt in meinem Script ist noch das falsche Fenster.
    Wie komme ich nun zu meinem neuen Popup-Fenster?
    Alle Befehle innerhalb von der IE3 wollen eine URL haben, aber genau die ist leider abhängig von dem was der User zuvor macht.

    Hier mein Script soweit:

    [autoit]


    #include <GUIConstants.au3>
    #include <IE.au3>
    GUICreate ("Bilderupload", 100, 300, 0, 0)
    $open = GUICtrlCreateButton ("1) Öffne die Seite",0,10)
    $upload = GUICtrlCreateButton ("2) Starte Upload", 0,60)
    GUISetState(@SW_Show)
    $folder=FileSelectFolder ("Wähle den Ordern mit den Bildern aus", "")
    $search=FileFindFirstFile ($folder & "/" & "*.*")
    if @error Then
    MsgBox (1,"Fehler", "Verzeichnis konnte nicht gelesen werden")
    EndIf
    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    ExitLoop
    Case $open
    MsgBox (0,"Formular öffnen","Bitte Uploadformular aufrufen und anschließend auf 2) Starte Upload klicken")
    $oIE = _IEcreate("http://www.deine_seite.de/")
    If IsObj($oIE) Then
    _IELoadWait($oIE)
    EndIf
    Case $upload
    while 1
    ;- hier muss der Wechsel auf das neue IE-Fenster hin, sonst schreibt er in das ursprüngliche (nun falsche) Fenster
    $file =FileFindNextFile ($search)
    IF @error Then ExitLoop
    $oForm = _IEFormGetCollection ($oIE, 0)
    $oInputFile = _IEFormElementGetCollection ($oForm,1)
    _IEAction($oInputFile, "focus")
    Send($folder & "\" & $file)
    _IEFormSubmit($oForm)
    WEnd
    MsgBox(0,"Upload abgeschlossen","Der Upload der Bilder sollte abgeschlossen sein. Bitte prüfen!")
    EndSwitch
    WEnd

    [/autoit]


    An sich funktioniert alles, nur halt im falschen Fenster :(

    Einmal editiert, zuletzt von Vasco (10. August 2008 um 21:17)