После многих поисков я не могу найти способ получить активное окно (на рабочем столе Windows) или даже все видимые окна.
Все методы user32 имеют проблемы:
GetForegroundWindow
получает наивысшее значение, если оно есть.
GetActiveWindow
работает только для окон внутри моего приложения.
IsWindowVisible
возвращает true для окон, открытых, но скрытых другими окнами.
GetFocus
работает только при наличии поля ввода.
Как я могу это сделать?