2015-03-01 5 views
0

Использование инструмента Spy ++ в Visual Studio Я вижу, что такие окна, как «Рабочий стол» или «Проводник» («Файл»), получают сообщения WM_, но такие окна, как Firefox или Visual Studio, не получают сообщений.Почему некоторые окна не получают сообщений Windows

Зачем некоторые сообщения получать, а другие нет.

(По сообщениям WM_, я имею в виду такие вещи, как, WM_MOUSELEAVE или WM_SETCURSOR)

+0

Какая версия Windows? Вы используете Spy ++ повышенным? UIPI может помешать Spy ++ контролировать некоторые окна. –

+0

Я использую Spy ++ (64) на Windows 64bit. – JackBarn

+0

Я предполагал, что некоторые окна просто не получают сообщений WM_ – JackBarn

ответ

7

Spy ++ нужно вводить крючок для контроля оконных сообщений. Чтобы это работало, битность функции hook должна соответствовать битности процесса, владеющего окном, и поэтому вы должны использовать 32-разрядную версию Spy ++ для мониторинга окон 32-разрядных приложений, а 64-разрядную версию для мониторинга 64-битных приложений.

(То есть, в конце концов, почему установлены две версии Spy ++)

+0

КАК СУЩЕСТВУЕТ, что Microsoft программирует настолько неряшливо, что не отображает сообщение об ошибке, если битность не соответствует! «Чтобы захватить сообщения этого окна, вам понадобится 64-разрядная версия Spy ++». – Elmue

Смежные вопросы