Главная страница
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.133 c
3-1115812937
Юленька
2005-05-11 16:02
2005.06.14
Удаление столбцов


1-1117108498
Borik
2005-05-26 15:54
2005.06.14
Как программно скопировать из Ворд в Делфи


1-1116977878
Strech
2005-05-25 03:37
2005.06.14
Шифрование функций


4-1114421513
Jolik
2005-04-25 13:31
2005.06.14
Какое сообщение приходит при...


1-1117437824
Rentgen
2005-05-30 11:23
2005.06.14
Как раскрыть весь TreeView?