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

Вниз

Еще раз про глобальные ловушки   Найти похожие ветки 

 
-=Germe$=- ©   (2007-05-08 09:10) [0]

Есть вот такая процедура в ДЛЛке. Ловушка обрабатыват WH_KEYBOARD. Иногда данная процедура работает... Иногда нет... Что в ней не так?
procedure Hook(Code : integer; wParam : Word; lParam : Longint) stdcall;
begin
 If Code<0 then
 begin
   CallNextHookEx(HookHandle, Code, wParam, lParam);
   Exit;
 end;

 CallNextHookEx(HookHandle, Code, wParam, lParam);
 PostMessage(AppWnd, WM_HOOK, wParam, lParam);
end;

А это функция установки ловушки.
procedure SetHook(flag: Boolean; AW: HWND)export; stdcall;
begin
 If flag then
 begin

   HookHandle:=SetWindowsHookEx(WH_KEYBOARD, @Hook, hInstance, 0);
   WM_MYKEYHOOK:= RegisterWindowMessage("WM_HOOK");
   AppWnd:=AW;
 end
 else
 begin

   UnhookWindowsHookEx(HookHandle);
 end;  
end;


 
-=Germe$=- ©   (2007-05-08 09:16) [1]

Вот так в идеале... WM_HOOK:= RegisterWindowMessage("WM_HOOK");


 
begin...end ©   (2007-05-08 10:37) [2]

Начнём с того, что заголовок функции ловушки неправильный.


 
Leonid Troyanovsky ©   (2007-05-08 10:42) [3]


> -=Germe$=- ©   (08.05.07 09:10)  

>  Иногда данная процедура работает... Иногда нет... Что в
> ней не так?

Считай, что все.
Начиная с того, что не procedure Hook, а function,
не Word, а WPARAM & etc.

RTFM: msdn.microsoft.com

--
Regards, LVT.



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

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

Наверх





Память: 0.44 MB
Время: 0.057 c
5-1162820306
mmms
2006-11-06 16:38
2007.11.11
Возможны ли такой виз. компонент?


2-1192770943
Lebedev
2007-10-19 09:15
2007.11.11
Как правильно закрыть всё приложение с модальными формами.


15-1191328457
Prohodil Mimo
2007-10-02 16:34
2007.11.11
Delphi + Unicode на Win98, как использовать unicows.dll


2-1192530303
Dark_blue
2007-10-16 14:25
2007.11.11
Алгоритм шифрования


2-1192616783
Nikola32
2007-10-17 14:26
2007.11.11
ListBox - AddItem - TObject





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский