Disable Mouse and Keyboard from Delphi Code

106 18
The BlockInput API function blocks keyboard and mouse input events from reaching applications.

Place a Button (name: "Button1") on a form (name: "Form1") and use this code for the button's OnClick event handler. Once you click the button your mouse and keyboard will be blocked for 5 seconds.

Note: BlockInput is available only on Windows 98 and newer, this is why we have a "FuncAvaial" procedure - to test the existance of a function inside a DLL.

procedure TForm1.Button1Click(Sender: TObject) ;  function FuncAvail(dllName, funcName: string; var p: pointer): boolean;   var     lib: THandle;   begin     result := false;     p := nil;     if LoadLibrary(PChar(dllName)) = 0 then exit;     lib := GetModuleHandle(PChar(dllName)) ;     if lib <> 0 then     begin      p := GetProcAddress(lib, PChar(funcName)) ;      if p <> nil then Result := true;     end;   end;  var     BlockInput : function(Block: BOOL): BOOL; stdcall;  begin    if FuncAvail('USER32.DLL', 'BlockInput', @BlockInput) then    begin     ShowMessage('Your Mouse and Keyboard will be blocked for 5 seconds!') ;     BlockInput(true) ;     Sleep(5000) ;     BlockInput(false) ;    end;   end;end. Delphi tips navigator:
» Get memory status
« Hide/Show System Tray
Source...
Subscribe to our newsletter
Sign up here to get the latest news, updates and special offers delivered directly to your inbox.
You can unsubscribe at any time

Leave A Reply

Your email address will not be published.