当程序启动后弹出一个输入密码的对话框,鼠标限制在窗口范围内,键盘此是失效,Ctrl+Alt+Del失效,必须输入密码才能解除。怎样才能实现上述功能呢?请帮忙。

解决方案 »

  1.   

    win2000下屏蔽Ctrl+Alt+Del是很困难的,据说要替换gina.dll,我没试过,也不敢试,怕把系统搞坏了。
    不过,问一下,注销不可以吗?
      

  2.   

    我说的不是键盘全部失效,就是一些热键失效,比如WIN键,ALT+TAB等。我就是想用我的程序锁住系统。听说有种比模态对话框更高一级的系统模态对话框,不知道谁知道。这种对话框就能实现我说的那种功能。
      

  3.   

    按CTRL+ALT+DEL后出现的对话矿就是一个系统模态对话框
    你可以HOOK该调用该对话框的API,改变该对话框,显示自己的,让系统那个隐藏或更本不显示它。
      

  4.   

    系统模态对话框是Win16系统下的概念,Win32下系统模态对话框已经没有用了,CTRL+ALT+DEL按下后也不是什么系统模态对话框,想限制鼠标只要用钩子就行了,但是正向楼上说的键盘钩子可钩不住CTRL+ALT+DEL.
      

  5.   

    支持fireseed(奶油狗【回归Hello World!】) ,替换gina是一个方法,建议在虚拟操作系统下编程,否则会死的很惨的!
      

  6.   

    是自己编个DLL来替换吗?可怎么来编呢?
      

  7.   

    楼主的问题简单啊,我自己的实现过了..屏蔽CTRL+ALT+DEL,用子类化SAS windows就可以实现了.但要注入到winlogon.exe进程中.实现缩定的办法就是建立一个桌面,然后切换到这个桌面,显示一个对话框就OK了.(这种方法也是系统锁定的方法.)
      

  8.   

    好咯  ^-^楼主加分的话就贴代码.否则NO WAY.!
      

  9.   

    BOOL ClipCursor(          const RECT *lpRect
    );
    这个函数可以很简单的实现限制鼠标的运动范围
      

  10.   

    clipcursor()不可取,一旦程序失去焦点,鼠标就可以跑出矩形区域(不信的话自己建个工程,然后按alt+tab试试,当然屏蔽掉alt+tab另当别论),还是建议使用鼠标钩子做个小结,鼠标和键盘的问题可以安装钩子来解决,但ctrl+alt+del的问题需要gina编程或注入winlogin.exe来解决,不过这个网上有很多例子,楼主可以google一下:)