Bestimmt, ob das Skript unsichtbare Fenster "sehen" kann.
DetectHiddenWindows, OnOff
Geben Sie eines der folgenden Wörter an:
On: Versteckte Fenster werden erkannt.
Off: Versteckte Fenster werden nicht erkannt, außer von WinShow.
[v1.1.30+]: Anstelle von On und Off können auch die Dezimalwerte 1 und 0 verwendet werden.
Wenn DetectHiddenWindows nicht verwendet wird, ist die Einstellung standardmäßig Off.
Das Einschalten von DetectHiddenWindows kann dazu führen, dass der gesuchte Titel oder Text ungewollt mit einem versteckten Systemfenster übereinstimmt. Daher sollten die meisten Skripte diese Einstellung ausgeschaltet lassen. Allerdings kann diese Einstellung nützlich sein, wenn Sie direkt mit versteckten Fenstern arbeiten möchten, ohne diese vorher mit WinShow sichtbar zu machen.
Alle Befehle, internen Funktionen und Kontrollanweisungen, die Fenster beeinflussen, außer WinShow, sind von dieser Einstellung betroffen, einschließlich WinActivate, WinActive(), IfWinActive, WinWait, WinExist() und IfWinExist. Beachten Sie, dass WinShow immer in der Lage ist, ein verstecktes Fenster sichtbar zu machen, unabhängig von dieser Einstellung.
Das Einschalten von DetectHiddenWindows ist nicht erforderlich, wenn ein Steuerelement oder untergeordnetes Fenster via ahk_id oder als zuletzt gefundenes Fenster angesteuert wird. Dies gilt auch für GUI-Fenster, die via Gui +LastFound
angesteuert werden.
[v1.1.32+]: Getarnte Fenster werden auch als versteckt betrachtet. Getarnte Fenster wurden mit Windows 8 eingeführt und sind Fenster auf einem inaktiven virtuellen Desktop oder UWP-Anwendungen, die zur Verbesserung der Performanz, genauer gesagt zur Verringerung ihres Speicherverbrauchs, unterbrochen wurden. In Windows 10 werden die Prozesse solcher Fenster im Task-Manager mit einem grünen Blatt angezeigt. Solche Fenster sind für den Benutzer trotz des WS_VISIBLE-Styles verborgen. Vor v1.1.32 wurden alle Fenster mit dem WS_VISIBLE-Style als sichtbar betrachtet.
Die interne Variable A_DetectHiddenWindows enthält die aktuelle Einstellung (On oder Off).
Jeder neue Thread (z.B. ein Hotkey, ein benutzerdefinierter Menüpunkt oder eine zeitgesteuerte Subroutine) verwendet zunächst die Standardeinstellung des Befehls. Diese Standardeinstellung kann geändert werden, indem der Befehl im automatischen Ausführungsbereich (ganz oben im Skript) verwendet wird.