Вниз
Скачать: 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
3-42949
Baks
2002-01-21 21:15
2002.03.14
ошибка: Тable lavel changed


1-43092
DeNN
2002-02-27 21:57
2002.03.14
Timer


1-43040
bnn
2002-02-26 15:10
2002.03.14
Наследование формы


14-43160
Егор
2002-01-31 04:23
2002.03.14
DCOM от А до Я


1-43091
Demon ltd
2002-02-27 23:42
2002.03.14
Повторная помощь с созданием инстольника




   Наверх