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

Как отловить хэндл меню при его активации в   Найти похожие ветки 

 
- Andrew -   (2002-01-15 14:40) [0]

Вся проблема в том, что при активации меню чужого приложения, отлавливается число, по виду очень похожее на хэндл, но не хэндл меню. Более того, оно постоянно для приложения (под W2k для IE оно будет 448732, проверялось на трех машинах с w2kpro).
Может кто подскажет, в чем моя ошибка?
Делаю так:
Ставлю хук в DLL
function msgfilter_HookProc(nCode: Integer; WPARAM: wParam; LPARAM: lParam): LResult; stdcall;
begin
if nCode = MSGF_MENU then
begin
if rHookRec^.MainWindow <> 0 then
SendMessage(rHookRec^.MainWindow, MSGF_MENU, WPARAM, LPARAM);
end;
result := CallNextHookEx(rHookRec^.HookID, nCode, wParam, lParam);
end;
-------------
procedure SetHook;
begin
rHookRec^.HookID := SetWindowsHookEx(WH_MSGFILTER, @msgfilter_HookProc, hInstance, 0);
end;
-------------
В приложении пишу обработчик посылаемого сообщения
procedure TForm1.WMMENU(var Message: TMessage);
begin
Edit1.Text := IntToStr(Message.LParam);
end;
end;


 
- Andrew -   (2002-01-15 19:42) [1]

Все! Разобрался. Проблема снята.



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

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



Память: 0.45 MB
Время: 0.006 c
1-43035
Sour
2002-02-18 09:12
2002.03.14
Ошибка в DLL?


1-43118
vitnt2000
2002-02-28 13:02
2002.03.14
Как из функции вернуть масив?


1-43067
PEC
2002-02-27 07:47
2002.03.14
Проблема помогите!


1-43093
Gayrus
2002-02-27 05:10
2002.03.14
Свой компонент


6-43129
Dmitry V. Averuanov
2001-12-26 17:33
2002.03.14
Tsockets ........... Достали




   Наверх