Alle Fenster schließen außer einem

  • Liebe AutoIt-Freunde,

    ich bin hier neu im Forum und auch blutiger Auto-It Anfänger. Trotzdem würde ich mich freuen, wenn ihr mir bei einem Problem helfen könntet.

    Ich möchte ein Program haben, welches alle Fenster schließt, außer dem "Program Manager" und einem weiteren Fenster (Titel in diesem Beispiel: GMX - Microsoft Internet Explorer).

    Ich hatte mir das so gedacht:

    $Fensterliste = WinList()
    For $i = 1 to $Fensterliste[0][0]
    If NOT $Fensterliste[$i][0] = "GMX - Microsoft Internet Explorer" AND NOT ( $Fensterliste[$i][0] = "Program Manager" Then
    WinKill ($Fensterliste[$i][0])
    WinWaitClose ($Fensterliste[$i][0])
    EndIf
    Next

    Leider wird bei mir immer auch "GMX - Mircrosoft Internet Explorer" geschlossen (zu dem Zeitpunkt aktives Fenster). Alle anderen Fenster wie Word oder ein Ordner werden hingegen nicht geschlossen wie gewünscht.

    Was mache ich falsch?

    Lieben Gruß, der Automat

    Einmal editiert, zuletzt von Automat (18. Januar 2007 um 13:18)

    • Offizieller Beitrag

    Hallo und :willkommen: im forum :)

    Als erstes: hol dir firefox :D

    Zu deinem problem: die klammer setzung ist nich ganz korrekt.. So sollte es funktionieren:

    Spoiler anzeigen
    [autoit]

    $Fensterliste = WinList()
    For $i = 1 To $Fensterliste[0][0]
    If $Fensterliste[$i][0] <>"GMX - Microsoft Internet Explorer" And $Fensterliste[$i][0] <> "Program Manager" And BitAnd( WinGetState($Fensterliste[$i][1]), 2 ) And $Fensterliste[$i][0] <> "" Then
    WinKill($Fensterliste[$i][0])
    WinWaitClose($Fensterliste[$i][0])
    EndIf
    Next

    [/autoit]


    BitAnd( WinGetState($Fensterliste[$i][1]), 2 ) guckt nach ob das fenster ein "gezeigtes" (@SW_SHOW) fenster ist!

    Mfg Spider

  • Vielen Dank für deine Antwort!

    Es klappt mit deinem Skript leider immer noch nicht so richtig.

    Leider schließt er immer nur ein Fenster und zwar das, was gerade Aktiv ist. Das kann auch das "GMX - Microsoft Internet Explorer"-Fenster sein: Interessiert ihn nicht.

    Alle anderen Fenster bleiben unten in der Taskleiste.

    Hmm, ist mit ein Rätzel...

  • Hallo Spider,

    ich habs einfach mit deinem ausprobiert. Dazu habe ich viele Explorer-Fenster mit verschiedenen Titeln geöffnet und noch ein Word-Doc und einen Ordner.

    Damit hat es bei mir nicht funktioniert. Ging es denn bei dir?

    Mfg, Automat

    PS: Wie bekommt ihr immer eure Scripte so schön mit Zeilen-Angabe in den Spoiler?