怎样用api函数 或汇编 锁住(解锁)鼠标?(100分)

  • 主题发起人 主题发起人 cbtea
  • 开始时间 开始时间
C

cbtea

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样用api函数 或汇编 锁住(解锁)鼠标?
 
Api函數:
BOOL ClipCursor(

CONST RECT *lpRect // pointer to structure with rectangle
);
可將鼠标定在某一個區域內移動,
當這個區域為一個點時,那就鎖定了。
你可試試。
 
下列是代码:
———————————
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);//打开吧
______________________

记住多给点分。
 
说的很详细,鼠标解锁只要传如的区域改为nil就可以了!
 
WinExec(PChar('rundll32 mouse,disable'), SW_SHOW);
 

Similar threads

后退
顶部