WinGetList()

Auto Hotkey

WinGetList

Retrieves the unique ID numbers of all existing windows that match the specified WinTitle, WinText, ExcludeTitle, and ExcludeText (to retrieve all windows on the entire system, omit all four title/text parameters).

OutputVar := WinGetList(WinTitle, WinText, ExcludeTitle, ExcludeText)
Function example: List := WinGetList("ahk_class Notepad")

Parameters

OutputVar

The name of the variable in which to store an array containing window IDs.

WinTitle (optional)

The title or partial title of the target window (the matching behavior is determined by SetTitleMatchMode). If this and the other 3 window parameters are blank or omitted, the Last Found Window will be used. To use a window class, specify ahk_class ExactClassName (shown by Window Spy). To use a process identifier (PID), specify ahk_pid %VarContainingPID%. To use a window group, specify ahk_group GroupName. To use a window's unique ID number, specify ahk_id %VarContainingID%. The search can be narrowed by specifying multiple criteria. For example: My File.txt ahk_class Notepad. The use correct child window when multiple window with same criteria exist specify ahk_parent %VarContainingID%. For example: ahk_class #32770 ahk_parent %MyWinID%

WinText (optional)

If present, this parameter must be a substring from a single text element of the target window (as revealed by the included Window Spy utility). Hidden text elements are detected if DetectHiddenText is ON.

ExcludeTitle (optional)

Windows whose titles include this value will not be considered.

ExcludeText (optional)

Windows whose text include this value will not be considered.

Remarks

Windows are retrieved in order from topmost to bottommost (according to how they are stacked on the desktop). Hidden windows are included only if DetectHiddenWindows has been turned on.

Examples

WinGetList,List,ahk_class Notepad
for i,id in WinGetList("ahk_class Notepad")
  MsgBox % "ID: " id