Попытка покопаться в api win32 из моего приложения WPF (которое просто запускается через systray).
Когда я нажимаю на иконку систрея, я предоставляю пользователю контекстное меню, которое фокусируется на любом верхнем окне.
Я хочу получить ручку к этому окну (то, которое только что потеряло фокус) и попробовал разные подходы, используя
GetForeGroundWindow()
GetTopWindow()
GetDesktopWindow()
Без конца, однако. В настоящее время я рассматриваю итерацию всех процессов, чтобы получить MainWindowHandles и проверку z-порядка каждого окна.
Но я считал, что есть более простой / умный способ; просто один, который я не могу погуглить или вспомнить из моего старого тома Петцольда.
Другим способом было бы для моего меню систрея не получить фокус при активации?
Спасибо!