//键盘上锁 Function DisableKeyboard: Boolean; //键盘解锁 Procedure EnableKeyboard; //鼠标上锁 function KM_LockMouse: Boolean; //鼠标解锁 function KM_UnLockMouse: Boolean;
implementation
var oldHook: Hhook; hMouseHook: Integer;
//键盘 Hook Function KbHook( code: Integer; wparam: Word; lparam: LongInt ): LongInt; Begin If code < 0 Then KbHook := CallNextHookEx( oldHook, code, wparam, lparam ) Else KbHook := 1; End; // KbHook
Function DisableKeyboard: Boolean; //键盘上锁 Begin oldHook := SetWindowsHookEx( WH_KEYBOARD, @KbHook, Hinstance, 0 ); DisableKeyboard := oldHook <> 0; End;
Procedure EnableKeyboard; //键盘解锁 Begin If oldHook <> 0 Then Begin UnhookWindowshookEx( oldHook ); oldHook := 0; End; // If End;
//MouseHook function MouseHook(iCode: Integer; wParam: wParam; Mouse: lParam): LRESULT; stdcall; begin if iCode < 0 then CallNextHookEx(hMouseHook, iCode, wParam, Mouse); Result := 1; end;
// LockMouse function KM_LockMouse: Boolean; begin hMouseHook := SetWindowsHookEx(WH_MOUSE, MouseHook, HInstance, 0); Result := true; end;
//UnLockMouse function KM_UnLockMouse: Boolean; begin UnHookWindowsHookEx(hMouseHook); (* Uninstall mouse hook *) hMouseHook := 0; Result := True; end; end.