Здравствуйте, Kochuev, Вы писали:
K>Господа, помогите понять в целях повышения самообразованности... СОздаю хук типа WH_CALLWNDPROC и в него не приходят сообщения WM_MOUSEMOVE... Это особенность хука (про нее правда в MSDN ничего не написано)? ОС Windows 2000. Обойти проблему удалось использованием WH_MOUSE_LL — низкоуровневого мышиного хука. Но для меня так и осталось непонятным, почему хук WH_CALLWNDPROC не ловит сообщения мыши. Если заменить WH_CALLWNDPROC на хук WH_GETMESSAGE — все работает! Мне всегда казалось, что разница между этими хуками только в моменте перехвата сообщения, а не в составе отлавливаемых сообщений... В чем бы могло быть дело? Может какой-то другой хук не передает сообщение дальше???
The WM_MOUSEMOVE message is posted to a window when the cursor moves. If the mouse is not captured, the message is posted to the window that contains the cursor. Otherwise, the message is posted to the window that has captured the mouse.
Posted vs sended.
Вообще, для мыши есть WH_MOUSE.
K>Кстати еще вопро в чем разница между низкоуровневыми (*_LL) и не низкоуровневыми хуками?
Низкоуровневые работают в контексте установившего их потока.