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

Вниз

Не доходят месаги в хук!!!   Найти похожие ветки 

 
volser   (2005-04-19 23:11) [0]

Вешаю глобальный хук


DLL:

function WndProc(code:integer; wParam:WPARAM; lParam:LPARAM):LRESULT; stdcall;
begin
 if code=HC_ACTION then
 begin

   if PCWPStruct(Pointer(lParam))^.message=WM_DM_RESTORE then
   begin
     LogMes("Restore Message");
   end;
 end;
end;

procedure InstallHooks; stdcall;
Var
 pid : DWord;
 Wnd : Hwnd;
begin
 Wnd:= FindWindow("ProgMan", nil);
 if Wnd<>0 then
 begin
   pid:=GetWindowThreadProcessId(Wnd);
   hWndProc:=SetWindowsHookEx(WH_CALLWNDPROC,WndProc, hInstance,pid);
 end;
end;

procedure UnInstallHooks; stdcall;
begin
 UnHookWindowsHookEx(hWndProc);
end;

........

Program:

procedure TformMain.FormDestroy(Sender: TObject);
begin
 LogMes("RESTORE");
 SendMessage(GetDesktopListViewHandle,WM_DM_RESTORE,0,0);
 LogMes("UnHook");
 UninstallHooks;

 
end;



Прога висит в трае и в поп ап меню есть итем Exit;
Когда просто запускаю и закриваю, то результат лога
 RESTORE
 Restore Message
 UnHook

Но когда запускаю, нажимаю кнопку "свернуть все окна", сворачиваю, то результат
 RESTORE
 Restore Message
 UnHook

Если перед закритием открываю любую прогу, то все ОК.

В чем прикол?


 
volser   (2005-04-19 23:12) [1]

Сори, во втором варианте результат лога
 
 RESTORE
 UnHook



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

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

Наверх




Память: 0.46 MB
Время: 0.04 c
3-1114760089
Zhekson
2005-04-29 11:34
2005.06.14
InstallShield &amp; BDE


14-1116941725
vecna
2005-05-24 17:35
2005.06.14
МВД собирается застраховать россиян от совершения преступлений


1-1117506788
AntohaKET
2005-05-31 06:33
2005.06.14
Как связать две форма с переменными на первой.


1-1116865048
lmz
2005-05-23 20:17
2005.06.14
Поиск по файлу


14-1117089702
КаПиБаРа
2005-05-26 10:41
2005.06.14
Двойные стандарты