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;