Fehlermeldung beim Schließen des Scriptes

  • Guten Morgen,

    ich möchte gerne mein Script sauber beenden, d.h. ich erstelle beim Starten des Scriptes im @TEMP einen Ordner und 2 Dateien, welche ich gerne auch wieder löschen würde.

    Hierzu habe ich folgenden Code geschrieben, welcher aber mit unten stehender Fehlermeldung sich beendet:

    [autoit]

    #region ; Schleifen
    While 1; Endlosschleife. Solang kein Event Close, läuft das gesamte Script.
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    _IEQuit($var_IE); Browerobjekt wird geschlossen
    FileDelete(@TempDir & "\PapaControl\latitude.htm"); HTML wird aus TEMP Verzeichnis gelöscht
    FileDelete(@TempDir & "\PapaControl\mypapa.htm"); HTML wird aus TEMP Verzeichnis gelöscht
    DirRemove(@TempDir & "\PapaControl"); Verzeichnis wird im TEMP Verzeichnis gelöscht
    GUIDelete($var_GUI_main)
    Exit
    EndSwitch
    WEnd
    #endregion ; Schleifen

    [/autoit]

    [Blockierte Grafik: http://forumpics.hasenmueller.de/pics4forum_32.png]

    Was mache ich hier falsch ?

    Gruss Hassan

  • Starte es mal in Scite dann siehst du wo der Fehler ist.

    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.

  • Das das Objekt welches in der Variabel $var_IE ist und du versuchst mit _IEQuit() zu schließen entweder nicht existiert oder durch einen anderen Prozess blockiert wird.

    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.

  • OK, prinzipiell mal verstanden, jedoch ist die Frage, wie ich der Blockierung auf die Schliche komme

    Am Anfang habe ich ein

    [autoit]

    $var_IE = _IECreateEmbedded()

    [/autoit]

    später ein

    [autoit]

    _IENAvigate ....

    [/autoit]

    welche in einer Schleife - je nach Variablenwert - geändert werden kann

    Ebenfall erfolgt in einer Schleife alle 20 Sekunden ein

    [autoit]

    _IEAction ...

    [/autoit]

    welches die Seite refreshed

    Gibt es vielleicht einen Befehl um die _IE Tätigkeiten zu stoppen und dann erst zu beenden ?

  • So habs mir mal genauer angeschaut, es liegt am _IECreateEmbedded welches sich nicht mit _IEQuit schließen lässt. Es wird allerdings eh geschlossen wenn mit GUIDelete($var_GUI_main) die GUI "zerstörst". Von daher der _IEQuit einfach weg lassen.

    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.