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

Проблемы с хуком   Найти похожие ветки 

 
}{enon ©   (2003-03-01 16:18) [0]

В DLL ставится хук WH_GETMESSAGE. В качестве GetMsgProc используется следущая функция:
function PaintProc(code : integer; wParam : word; lParam : longint) : longint; stdcall;
var
AppWnd: HWND;
f: textfile;
m: tagMSG;
begin
if code < 0 then
begin
Result:= CallNextHookEx(GlobalData^.SysHook, Code, wParam, lParam);
Exit;
end;
PeekMessage(m,0,0,0,PM_REMOVE);
if m.message=WM_PAINT then
---Обработка данных---
CallNextHookEx(GlobalData^.SysHook, Code, wParam, lParam);
Result:= 0;
end;


Всё работает, но процедура, обрабатывающая полученный результат вызывается раз по десять - двадцать. Кто-нибудь знает, в чём дело?


 
Song ©   (2003-03-01 16:40) [1]

Потому что WM_PAINT посылает одновременно куча окон, вот ты их все и ловишь.


 
}{enon ©   (2003-03-01 19:24) [2]

Спасибо. Пойду устранять.



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

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



Память: 0.45 MB
Время: 0.011 c
3-91230
mikl2002
2003-04-10 13:31
2003.04.28
InterBase + Linux + FIBPlus


7-91560
DerMeister
2003-03-09 20:42
2003.04.28
WM_QUERYENDSESSION и WM_ENDSESSION


14-91524
Pitay
2003-04-10 21:25
2003.04.28
Клавиатура


14-91512
Knight
2003-04-04 18:15
2003.04.28
Помогите с ХР. Глюки с сетью ни с того ни с сего :(


6-91440
stur
2003-03-05 10:06
2003.04.28
Как обработать ошибку подключения TClientSocket в Blocking mode




   Наверх