禁用 鼠标 键盘 delphi

var KHK: HHook;

tmp: integer;

function HookProc(ICode: integer;WP:WParam;LP:LParam):LResult;

begin

Result:=CallNextHookEx(KHK,0,0,0);

end;

使用下列语句开始锁定:

KHK:=SetWindowsHookex(WH_JOURNALPLAYBACK,@HookProc,HInstance,0);

使用下列语句结束锁定:

UnHookWindowsHookEx(KHK);

这时候不能屏蔽Windows的系统键Ctrl-Alt-Tab,Ctrl-Esc,Alt-Tab等

你就可以使用:

SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, @tmp , 0);//锁起来

SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, @tmp , 0);//打开吧

______________________

记住多给点分。

要是不灵的话,就把代码作成DLL。

BTW,以上代码可以同时锁住鼠标和键盘。

***************************

锁键盘

procedure TForm1.Button1Click(Sender: TObject);

begin

Asm //封锁20端口

IN AL,21H

OR AL,02H

OUT 21H,AL

end;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Asm //解锁20端口

IN AL,21H

AND AL,0FDH

OUT 21H,AL

end;

end;

你可能感兴趣的:(禁用 鼠标 键盘 delphi)