15

我知道这个问题已经被问过好几次了,而且有几种不同的方式。但是,在所有的问题和答案中,鉴于我的情况,没有人能够完全回答......

我在医疗设备上工作,它们运行 Windows。应用程序作为 shell 运行,用户不应该能够进入应用程序,理想情况下他们将无法做任何表明系统正在运行 Windows 的事情。访问全键盘是必要的,因此禁用、损坏或重新映射键不是解决方案。鉴于此,我们需要特别禁用 SAS/CAD/Ctrl+Alt+Delete;还有一些其他的,但是用钩子很容易。

直到最近我们一直在使用 Windows XP Embedded 并且可以取代 GINA,但我们即将切换到 Windows 7(技术上是 Windows Embedded Standard 7;但在我们的例子中它们本质上是相同的)并且 GINA 不再是选项。必须有办法做到这一点。

因为我在其他问题上看到过对此的评论:我相信这属于 Stack Overflow。替换 GINA 是一个编程问题,没有理由认为这不会是太多。虽然我对非编程解决方案持开放态度,但我怀疑 MS 是否会在注册表等中提供这种更改。

4

3 回答 3

18

除了重新映射/禁用键之外,无法阻止Ctrl + Alt + Delete内核级代码之外的处理。我认为这是 Windows NT(和所有衍生产品)的基本安全设计特性。(这里推理。)

我建议编写一个自定义键盘过滤器或设备驱动程序(或者寻找现有的)。这不是一件容易的事,但可行。示例资源:

特别是 Elbacom 博客的第一个链接可能很有用,因为您还针对嵌入式 Windows 7。

第二个链接,拦截,更新,也可能非常有用。它提供了内核级模块并抽象了一些处理。

作为一种可能的替代方案,请考虑尽管您无法在Ctrl + Alt + Delete没有设备驱动程序/过滤器的情况下禁用挂钩,但您可以阻止每次更改注册表或使用组策略编辑器通过该挂钩访问的所有任务。此答案的先前编辑链接到一个名为“Tweak Ctrl-Alt-Del Options”的实用程序,它可以很容易地禁用通过 Ctrl-Alt-Del 访问的所有活动。该实用程序不再可从原始来源获得,但仍然可以找到,并且还有其他类似的实用程序。

于 2012-07-25T20:39:08.497 回答
1

您可以通过组策略禁用 CAD :HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 将此值设置为 1。

或者,通过高级用户帐户菜单

  1. 打开开始菜单。

  2. 在搜索行中,键入 netplwiz 并按 Enter。

  3. 单击高级选项卡。

  4. 启用安全登录 A) 选中要求用户按Ctrl+ Alt+Delete框。注意:如果设置显示为灰色,请参阅下面的选项三或选项二。

B) 转到步骤 6。 5. 禁用安全登录 A) 取消选中要求用户按 Ctrl+Alt+Delete 框。注意:如果设置显示为灰色,请参阅下面的选项三或选项二。6. 单击确定。

于 2012-07-11T18:54:02.913 回答
0

这篇文章http://www.codeproject.com/Articles/7392/Lock-Windows-Desktop似乎有一些很好的指导。我认为可能会起作用的一个:a)在注册表中替换系统的外壳。这意味着资源管理器不是作为默认桌面运行的。这可能让您处理 Ctrl+Alt+Del b) 强制您的应用程序在与默认设置不同的桌面上运行。这将阻止用户在应用程序完成之前切换它。

所有这些都假设您可以完全控制那台机器。

于 2012-07-26T20:06:57.023 回答