Blokada klawiszy

Witam mam pytanie gdzie w windowsieXP mozna zablokowac skruty Alt + F4, Ctrl + Esc, Alt + Tab, i klawisz winowsa. Czy jest taka mozliwosc.

Odpowiedzi: 4

Odnosnie blokady jest taka mozliwosc
podaje kod w delphi7 sprawdzony i dziala


var
Form1: TForm1;
HookID: HHOOK;

type
PKbdDllHookStruct = ^TKbdDllHookStruct;
TKbdDllHookStruct = record
vkCode,
ScanCode,
Flags,
Time,
dwExtraInfo: Integer;
end;

const
WH_KEYBOARD_LL = 13;

function LLKeyHookFunc(HookCode: Integer; KeyCode: wParam; KStrokeInfo: lParam): LResult; stdcall;
var
Struct: PKbdDllHookStruct; //Wskaźnik do struktury, w której otrzymamy informacje o stanie klawiatury
begin
Struct := Ptr(KStrokeInfo);
Result := 0;
if (HookCode >= 0) then
begin
{ Blokujemy kombinację Ctrl+Esc }
if (Struct.vkCode = VK_ESCAPE) and (GetAsyncKeyState(VK_CONTROL)
Result := 1;
{ Blokujemy Alt+Tab }
if (Struct.vkCode = VK_TAB) and (GetAsyncKeyState(VK_MENU)
Result := 1;
{ Blokujemy prawy i lewy klawisz Windowsa }
if (Struct.vkCode = VK_LWIN) or (Struct.vkCode = VK_RWIN) then
Result := 1;
If (Struct.vkCode = VK_ESCAPE) And (GetAsyncKeyState(VK_MENU)32766) Then
Result := 1
end;
//Jeźeli kombinacji nie chcemy blokować, to przekaźmy informacje dla innych okien
if (Result = 0) then
Result := CallNextHookEx(HookID, HookCode, KeyCode, KStrokeInfo);
end;


{ Załóźmy Hook na system }
HookID := SetWindowsHookEx(WH_KEYBOARD_LL, @LLKeyHookFunc, hInstance, 0);

{ Na koniec trzeba oczywiście wyłączyć. Nie chcemy stale blokować sobie klawiatury }
UnHookWindowsHookEx(HookID);

blokuje wszystkie specjalne klawisze
darkob
Dodano
08.08.2005 18:46:25
przeczytalem co jest napisane na forum odnosnie blokady klawiszy i skrutow, ale nie o to mi sie rozchodzi.
Interesuje mnie gdzie jest zapisane w rejestrze.
Blokowane maja byc przez program jaki pisze i jedynie czasowo, dlatego interesuje mnie rejestr.
Z tego co wyczytalem to nie jest tak prosto to znalesc, a raczej nikt nie wei gdzie to jest zapisywane.
darkob
Dodano
27.07.2005 18:48:27
przeczytalem co jest napisane na forum odnosnie blokady klawiszy i skrutow, ale nie o to mi sie rozchodzi.
Interesuje mnie gdzie jest zapisane w rejestrze.
Blokowane maja byc przez program jaki pisze i jedynie czasowo, dlatego interesuje mnie rejestr.
Z tego co wyczytalem to nie jest tak prosto to znalesc, a raczej nikt nie wei gdzie to jest zapisywane.
darkob
Dodano
27.07.2005 18:48:27
Szukajka forumowa i "klawisze AND blok*"
maq123
Dodano
27.07.2005 17:01:32
darkob
Dodano:
27.07.2005 16:52:43
Komentarzy:
4
Strona 1 / 1