-2

在Delphi中使用时有什么方法可以阻止CTRL++ ?我找到了一个功能,但它在 XP 上不起作用。ALTDELBlockInput(true);SystemParametersInfo(97,Word(True),@OldValue,0);

我在大学的课堂上需要这个来暂时“禁止”试图作弊的学生。

编辑:

好吧,好吧。while true do BlockInput(true)++ , NoClose++的结果部分是可以接受的。使用这个被禁止的用户只能在安全屏幕上按“取消”,如果他/她尝试在此按+ + ,则会收到错误消息。但我认为这不是很干净的方法,所以关于阻止所有输入的问题仍然存在。NoLogoffDisableTaskMgrDisableLockWorkstationDisableChangePasswordCTRLSHIFTESC

建议的解决方案:

  • 密钥重新映射 - 需要重新启动,重新映射的密钥无法正常工作
  • Gina DLL 替换 - 需要一些 C++ 方面的主要知识才能拥有所需的功能,请提供更多信息或工作示例的链接
  • KB 驱动程序更换 - 某些键盘可能无法使用,Windows 正在尝试在重新启动后将其替换回来
  • 与此无关 - 由于某些应用程序的实际情况并非如此,无需重新启动或更换 gina 即可执行此操作
  • 4

    1 回答 1

    1

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

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

    于 2013-06-14T09:16:21.310 回答