Bedingung stimmt zweimal

  • Hallo,

    ich programmiere gerade an meinem Loginscript für Groupwise. Leider öffnen sich zwei Fenster. Beide mit dem selben Namen, beide mit den gleichen Buttons, beide enthalten laut auotit window info tool keinen Text und keines der beiden hat dauerhaft einen größeren Handle als zum Beispiel das andere Fenster.
    Da ich jedoch in nur einem Fenster abbrechen klicken muss gibt es Probleme. Sende ich nichts passiert nichts. Sende ich ESC für die Abbrechen Taste, ControlClick oder WinClose reagieren jeweils zwei Fenster. Gibt es vielleicht eine weitere Möglichkeit diese Fenster zu unterscheiden?

  • ich könnte mir vorstellen, dass du erst WinWaitActive benutzt und dann mit ControlClick auf schließen klickst... dann würde er hoffenltich nur das aktive fenster schließen.

    greetz Blade

    Weil Denken die schwerste Arbeit ist, die es gibt, beschäftigen sich auch nur wenige damit.

  • Danke aber das habe ich bereits versucht. Das richtige Fenster wird aktiviert aber beide Fenster hängen anscheinend so miteinander zusammen, dass weiter beide reagieren. (CIDs sind identisch usw.)

  • Hole dir per WinGetHandle (oder WinList) erst das Handle vom richtigen Fenster. Dann verwende dieses in untergeordneten Funktionen, so wird auf jeden Fall immer das selbe Fenster angesprochen.

    [autoit]

    $handle = WinGetHandle("bla")
    WinActivate($handle)
    ControlClick($handle, "", ...)
    ...

    [/autoit]