Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.06;
Скачать: CL | DM;

Вниз

КАК ОПРЕДЕЛИТЬ HANDLE НАЗНАЧЕНИЯ СООБЩЕНИЯ ?!!!   Найти похожие ветки 

 
moreo_xayam ©   (2003-11-27 13:47) [0]

Вобщем, перехватывю сообщение (с помощью hook"ов)... Мне нужно узнать handle окна назначения этого сообщения...
ОТВЕТЬЕ КТО-НИБУДЬ!


 
Simon ©   (2003-12-01 22:21) [1]

Хуки бывают разные... но в каждый из них приходит само сообщение, просто в некоторые не в том виде, который хотелось бы. В WH_GetMessge, например, сообщение приходит в "удобном" виде:

function HookProc(nCode: integer; wp: Wparam; lp: LParam): LRESULT; stdcall;
type TPntMsg = ^MSG; //F1
var m: TPntMsg;
begin
if nCode=HC_ACTION then
begin
m:=TPntMsg(lp);
m.hwnd - вот и хэндл!
end;
Result := CallNextHookEx(HookHandle, nCode, wP, lP);
end;

В других типах ловушек по другому, в хэлпе всё есть


 
LWait ©   (2003-12-02 00:27) [2]

у хука CALLWNDPPOC похоже

type
PCWPSTRUCT = ^CWPSTRUCT;
CWPSTRUCT = packed record
lParam: LPARAM;
wParam: WPARAM;
message: UINT;
hwnd: HWND;
end;

function HookProc(nCode: integer; wp: Wparam; lp: LParam): LRESULT; stdcall;
var m: PCWPSTRUCT;
begin
if nCode=HC_ACTION then
begin
m:=PCWPSTRUCT(lp);
m.hwnd - вот и хэндл!
end;
Result := CallNextHookEx(HookHandle, nCode, wP, lP);
end;



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

Текущий архив: 2004.02.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.043 c
14-16681
Mr.Fox
2004-01-16 03:52
2004.02.06
Чтение форумов


7-16762
extrasens
2003-11-18 07:59
2004.02.06
Резидентные программы в DOS-e


14-16745
Rauf
2004-01-15 23:01
2004.02.06
Что за процесс cisvc.exe???


3-16042
akhmadey
2004-01-16 04:37
2004.02.06
База Access и Delphi


4-16790
timon
2003-12-02 06:46
2004.02.06
Дискета