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

HookMenu   Найти похожие ветки 

← →
DjOne   (2004-06-16 20:30) [0]

Ставлю глабальный хук на меню в длл:

library Project1;

uses
Windows,
Messages,
Forms,sysutils;

var
HookHandle: HHOOK = 0;
xwin,xHMENU:HWND;
adr:pchar;
function CallWndProcHook(Code: Integer; WParam: WPARAM; LParam: LPARAM): LRESULT; stdcall;
begin
if Code = HC_ACTION then
begin
  with PCWPStruct(wParam)^ do
    if Message = WM_MENUSELECT then begin
     MessageBox(0, "HOOK1 working !", "Message from Exampel1/Process1", 0);
     end;
end;
Result := CallNextHookEx(HookHandle, Code, WParam, LParam);
end;

procedure RegHook;
begin
HookHandle := SetWindowsHookEx(WH_CALLWNDPROC,
  CallWndProcHook, HInstance, 0);
end;

procedure UnRegHook;
begin
if HookHandle <> 0 then
begin
  UnhookWindowsHookEx(HookHandle);
  HookHandle := 0;
end;
end;

procedure StartWatching(StartWatching: boolean) export; stdcall;
begin
if StartWatching then
  RegHook
else
  UnRegHook;
end;

exports StartWatching;

begin

end.

На всех меню работает, а на меню пуска не хочет! Почему не подскажите.


← →
DjOne   (2004-06-17 15:31) [1]

Никто не поможет?


← →
Игорь Шевченко ©   (2004-06-17 17:59) [2]


>  а на меню пуска не хочет


Не хочет.


> Почему не подскажите


Наверное, потому что это не меню, а окошко, похожее на меню ?


← →
Nick Denry ©   (2004-06-17 23:46) [3]

2>Игорь Шевченко ©   (17.06.04 17:59) [2]

Чего прикалываешься? :)
Знаешь, прекрасно ведь, что пуск - окно класса "ToolbarWindow32"...


← →
Игорь Шевченко ©   (2004-06-18 10:49) [4]

Nick Denry ©   (17.06.04 23:46)


> Знаешь, прекрасно ведь, что пуск - окно класса "ToolbarWindow32"...


В какой операционной системе ? Автор не указал, я гадать не хочу


← →
DjOne   (2004-06-18 12:41) [5]

В какой ОС? Не имеет Разницы! Winxp

Наверное, потому что это не меню, а окошко, похожее на меню ?

К сожалению МЕНЮ -Это тоже окно!


← →
Игорь Шевченко ©   (2004-06-18 12:49) [6]


> В какой ОС? Не имеет Разницы!


Имеет.


> Winxp


Не меню.


> К сожалению МЕНЮ -Это тоже окно!


К счастью.


← →
Nick Denry ©   (2004-06-18 16:48) [7]

> В какой ОС? Не имеет Разницы!

Имеет.


Точно имеет, но можно и посмотреть, - какой класс в 98 и т.д.

К счастью.

Действительо к счатью...

P.S.
Шутить ты все-таки умеешь.... :)))


← →
Игорь Шевченко ©   (2004-06-18 21:55) [8]

Автору: Посмотри своим хуком, какие сообщения приходят окну, выпадающему по нажатию кнопки "Пуск", в зависимости от этого предпринимай действия. Могу дать совет - классом родительского окна для него являются либо класс SysPager либо MenuSite.



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

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



Память: 0.47 MB
Время: 0.021 c
6-1086187746
Forelli
2004-06-02 18:49
2004.08.01
Как отправить письмо из Delphi 7


9-1080574510
TButton
2004-03-29 19:35
2004.08.01
DasTactics


1-1090321048
Vist
2004-07-20 14:57
2004.08.01
Максимизация главной формы при запуске


14-1089741499
Слабак
2004-07-13 21:58
2004.08.01
буфера


14-1089625819
АлексейК
2004-07-12 13:50
2004.08.01
Прислали недавно программку...




   Наверх