Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];

Вниз

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

 
- 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 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.004 c
3-42946
Люк
2002-02-15 11:20
2002.03.14
ADO в Delphi


1-43047
Dimedrol
2002-02-26 16:56
2002.03.14
Ctrl+M в TMemo


14-43140
Дима566
2002-01-29 16:39
2002.03.14
ОН УМЕР!!!


3-42955
Руст
2002-02-08 08:16
2002.03.14
Как упаковать таблицу


1-43021
wonder_boy
2002-02-26 12:03
2002.03.14
Декомпиляция





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский