Einzelnen Beitrag anzeigen

LokutusvB

Registriert seit: 18. Jul 2006
277 Beiträge
 
Delphi XE6 Enterprise
 
#3

AW: Tastatur per Button sperren und wieder entsperren

  Alt 28. Jul 2020, 15:33
Hallo KodeZwerg,

vielen Dank für deine schnelle Antwort. Ich habe deinen Code in mein Programm eingebaut, er zeigt aber leider keine Wirkung. Per Debugger konnte ich sehen, die Funktion DisableKeyboard wird aufgerufen, aber Eingaben sind trotzdem noch möglich. Habe ich etwas vergessen?

Code:
var
  cHook: Cardinal;

...

function KBHookHandler(ACode: Integer; WParam: WParam; LParam: LParam) : LResult; stdcall;
begin
  if ACode < 0 then
    Result := CallNextHookEx(cHook, ACode, WParam, LParam)
  else
    Result := 1;
end;

function DisableKeyboard: Boolean; stdcall;
begin
  if cHook = 0 then
    cHook := SetWindowsHookEx(WH_KEYBOARD, @KBHookHandler, HInstance, 0);
  Result := cHook <> 0;
end;

function UninstallHook: Boolean; stdcall;
begin
  Result := UnhookWindowsHookEx(cHook);
  cHook := 0;
end;

procedure TFormC.btnUnterschreibenCheckBtnClick(Sender: TObject);
begin
  if btnUnterschreiben.Checked then DisableKeyboard
                               else UninstallHook;
end;
MFG
LokutusvB
  Mit Zitat antworten Zitat