Как отследить открытие нового приложения либо смену активного окна?
Как отследить открытие нового приложения либо смену активного окна?
Источник: Stack Overflow на русском
Средствами .NET нельзя получить информацию о смене активного окна или создании нового окна - нужно использовать глобальные хуки. Отслеживание активаций идет через хук CBTProc (устанавливается SetWindowsHookEx). В этом хуке нужно смотреть на события:
Нужно будет создать библиотеку для хуков, установить ее в систему и по активации хука слать сообщение в приложение на .NET. Ну, а чтобы отлавливать свои сообщения в .NET, нужно переопределить WndProc.
Статья Win32 API. Hooks поможет вам разобраться, как это делать грамотно.