如何拦截Windows的Ctr+Alt+Del消息?(50分)

  • 主题发起人 主题发起人 xcode
  • 开始时间 开始时间
X

xcode

Unregistered / Unconfirmed
GUEST, unregistred user!
[?]在下准备编个程序,需要锁住鼠标。当用户按下Ctr+Alt+Del时弹出解锁对话框,而不是结束任务对话框。<br>我该怎么做呀?<br>
 
恐怕你要失望了。<br>可以看看登陆窗口上的帮助。
 
调用API!
 
“调用API!”<br>楼上的说得好啊,你倒是说清楚点哪?别一看到什么问题就vxd,api光说不练。
 
如何将鼠标锁定在一定的范围内呢? <br>请在Form中放置二个 Button, 然後分别为这两个按钮定义OnClick响应事件如下: <br>// 限制 <br>procedure TForm1.Button1Click(Sender: TObject); <br>var <br>rtButton2: TRect; <br>begin <br>rtButton2 := Button2.BoundsRect; <br>MapWindowPoints(handle, 0, rtButton2, 2); // 座标换算 <br>ClipCursor(@rtButton2); // 限制鼠标移动区域 <br>end; <br><br>// 还原 <br>procedure TForm1.Button2Click(Sender: TObject); <br>var <br>rtScreen: TRect; <br>begin <br>rtScreen := Rect(0, 0, Screen.Width, Screen.Height); <br>ClipCursor(@rtScreen); <br>end; <br>调用API将Ctr+Alt+Del屏蔽,再写程序将Ctr+Alt+Del按下,调用解锁对话框的窗口。<br>程序退出时再用API恢复Ctr+Alt+Del!
 
&nbsp;锁住鼠标的办法可以让Ctr+Alt+Del按键失效(Win98下),但是我要想当用户按下该组合键后<br>触发一事件,又该怎么做呢?而且,用上面的办法,也只能在Win98下用,在Win2000下屏蔽不掉那些<br>功能键。请教Win2000下屏保的消息是什么?
 
可以看看登陆窗口上的帮助。<br>"这三个键只能被Windows2000自己识别的"
 
后退
顶部