Как отследить открытие нового приложения либо смену активного окна?

Рейтинг: 2Ответов: 2Опубликовано: 11.03.2011
Как отследить открытие нового приложения либо смену активного окна?

Ответы

▲ 3

Средствами .NET нельзя получить информацию о смене активного окна или создании нового окна - нужно использовать глобальные хуки. Отслеживание активаций идет через хук CBTProc (устанавливается SetWindowsHookEx). В этом хуке нужно смотреть на события:

  • HCBT_ACTIVATE
  • HCBT_CREATEWND

Нужно будет создать библиотеку для хуков, установить ее в систему и по активации хука слать сообщение в приложение на .NET. Ну, а чтобы отлавливать свои сообщения в .NET, нужно переопределить WndProc.

▲ 1

Статья Win32 API. Hooks поможет вам разобраться, как это делать грамотно.