![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Блокировка клавы с помошью хука [D6, D7, NT4, Win2k, WinXP]
neodiX © (2003-04-17 17:17:00)Все блокируеться, кроме ALT+TAB, WIN key (left or right) ну и так же ALT+ESC. Дело в том, что вроде вот так (см. ниже)должно блокировать, покрайней мере так в инете написано, но нифига, в чем проблема?
{Маппинг файла и все остальное реализовано как всегда }
function KBD_HookProc(nCode: Integer; iWPARAM: wParam; iLPARAM: lParam): LResult; stdcall; far;
var
ReturnStructure: PMSG;
begin
if ncode<0 then
CallNextHookEx(0, nCode, iwParam, ilParam)
else
result:=1;
end;
procedure UnLockMouse;
begin
UnHookWindowsHookEx(rHookRec^.HookID_Mouse);
end;
procedure LockKBD;
begin
rHookRec^.HookID_KBD := SetWindowsHookEx(WH_KEYBOARD, @KBD_HookProc, hInstance, 0);
end;
procedure UnLockKBD;
begin
UnHookWindowsHookEx(rHookRec^.HookID_KBD);
end;
neodiX (2003-04-18 12:05:00) [1]2 ИгорьОк
Мне надо не все сразу, а по отдельности блокиворать. Сначала мышь, потом маус.
Все вопрос закрыт, я уже узнал.
Yuri Btr (2003-04-18 09:38:00) [2]JwaWinUser
из библиотеки JEDI Windows API Library
ИгорьОк (2003-04-18 04:40:00) [3]А обязательно так извращаться? Можно ведь просто использовать BlockInput, блокирует всё и полностью (даже мышь) на NT помогает только Reset, в смысле если не программно, а так.
neodiX (2003-04-17 23:05:00) [4]Song, это то, что надо! Только наверно надо какой то модуль в uses прописать, что бы компилятор понял WH_KEYBOARD_LL, а то ругается, не распознает :(
Song (2003-04-17 19:42:00) [5]Нужен низкоуровневый хук - WH_KEYBOARD_LL