Карта сайтаСсылкиКонтакты

Как отключить мышь и клавиатуру из кода Delphi

PDF Печать
Статьи

Функция BlockInput API блокирует события клавиатуры и мыши в Вашем приложении.

Поместите кнопку (Button1) на форму (Form1) и используйте этот код для обработчика события OnClick кнопки. После нажатия кнопки, мышь и клавиатура будет заблокирован на 5 секунд.

Примечание: Функция BlockInput доступна только на Windows 98 и выше, поэтому функцией FuncAvaial мы проверяем существования функции в 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('Мышь и клавиатура ' +
               'будет заблокирована на 5 секунд!') ;
     BlockInput(true) ;
     Sleep(5000) ;
     BlockInput(false) ;
    end;
   end;
  end.

 

Комментарии   

 
0 #1 adswdwadwdwdwd 17.05.2014 16:05
Ужас блокируется все
Цитировать
 
 
0 #2 Modesto 16.05.2017 01:47
Precisely what I was searching for, appreciate it for posting.
Цитировать
 

Добавить комментарий


Защитный код
Обновить