Вниз
Скачать: CL | DM;

Как получить сообщение?   Найти похожие ветки 

← →
}{enon ©   (2004-02-09 18:14) [0]

В DLL ставлю глобальный хук WH_GETMESSAGE. Как получить информацию о сообщении, которое перехватывается (т.е. что нужно использовать - GetMessage, PeekMessage или lParam - и как)? Сообщение - WM_NCPAINT, но лучше, если это будет работать для любого сообщения.
Заранее спасибо!


← →
MBo ©   (2004-02-09 18:18) [1]

в хелпе же написано
GetMsgProc и структура MSG


← →
}{enon ©   (2004-02-09 18:49) [2]

Просто что означает описание lParam для GetMsgProc (Points to an MSG structure that contains details about the message) - если адрес к структуре MSG и так известен (кстати, как его использовать?), то зачем тогда GetMessage и PeekMessage?


← →
Digitman ©   (2004-02-09 18:57) [3]


> если адрес к структуре MSG и так известен


где ? известен ? тот кто вызвал GetMessage и PeekMessage, еще ждет пока ты не сподобишься выполнить CallNextHook

вот в lParam тебе как раз адрес этой структуры и передается для анализа, прежде чем вернуть управление по цепочке хуков и , в конечном итоге, вернуть управление коду, вызывавшему GetMessage или PeekMessage


← →
}{enon ©   (2004-02-09 19:44) [4]

Ждет?! Не понял, если я вызываю GetMessage/PeekMessage, работа моего кода прерывается пока не сработают все ловушки? Я думал все наоборот - мой код заканчивает работать и в самом конце вызывается CallNextHook...


← →
Digitman ©   (2004-02-10 08:20) [5]

Before passing the retrieved message to the destination window procedure, the system passes the message to the hook procedure.


← →
}{enon ©   (2004-02-10 11:14) [6]

Как говорится, дело ясное что дело темное. Ладно, буду разбираться, одно плохо - в случае ошибки в коде выход обычно всего один - reboot. Всем спасибо.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
14-1080183367
Думкин
2004-03-25 05:56
2004.04.18
С днем рождения! 25 марта.


1-1080624061
Rio
2004-03-30 09:21
2004.04.18
Формы


3-1079447958
race1
2004-03-16 17:39
2004.04.18
adodataset.close


3-1080034605
Yurec66
2004-03-23 12:36
2004.04.18
Вместо DBE использовал ADS


1-1080808212
TransparentGhost
2004-04-01 12:30
2004.04.18
Не обрабатываются VK_Up, Vk_Down и т.п.




   Наверх