BlockInput和CTRL + ALT + DEL

时间:2013-06-14 07:53:35

标签: delphi input

在Delphi中使用BlockInput(true);时,有没有办法阻止 CTRL + ALT + DEL ?我找到了一个函数SystemParametersInfo(97,Word(True),@OldValue,0);但它在XP上不起作用。

我需要在大学的课堂上临时“BAN”学生,他们试图欺骗计算机化考试。

编辑:

好吧,好吧。 while true do BlockInput(true) + NoClose + NoLogoffDisableTaskMgr + DisableLockWorkstation + DisableChangePassword的结果部分可以接受。使用此禁止的用户只能在安全屏幕上按“取消”,如果他/她尝试按 CTRL + SHIFT + ESC,则会收到错误就此而言。但是,我认为这不是一种非常干净的方式,所以关于阻止所有输入的问题仍然有效。

建议的解决方案:

  • 密钥重新映射 - 需要重新启动,重新映射的密钥无法正常工作
  • Gina DLL替换 - 需要一些C ++的主要知识才能拥有所需的功能,请提供更多信息或指向工作样本的链接
  • KB驱动程序更换 - 可能无法与某些键盘一起使用,而Windows正在尝试在重新启动后将其替换回来
  • 与此无关 - 由于某些应用程序无法实现这一点,而无需重启或更换gina,
  • 1 个答案:

    答案 0 :(得分:1)

    没有。 Ctrl + Alt + Del 是安全注意序列。它被称为安全,因为操作系统总是在内部处理它。应用程序无法覆盖它。

    在您的情况下,无论如何都不需要阻止它。这不是你偶然输入的序列。因此,检测它就足够了。例如。这将是您的应用程序失去焦点的唯一方式。所以,告诉你的学生不要这样做,如果他们还在尝试,就不通过测试。