解决方案

解决方案

我需要找到一种简单的方法让一些最终用户阻止某些程序运行。更具体地说;

在我的学校,我们有几台笔记本电脑(约 15 台)用于进行评估,有时用户可能不使用 Word、Excel、Calc、互联网等。每次测试结束后,我们都需要再次对笔记本电脑进行映像处理,以免留下任何痕迹。当然,我们可以将它们添加到 GPO,但 IT 服务必须每次都检查哪些程序不能使用,并将此规则逐一应用于每台笔记本电脑(因为总是同时进行不同的评估)。

所以我的想法是,只需制作一个带有 .reg 文件的 USB,在其中我指定要阻止的例如单词,并将其命名为“block word”,以便设置评估的老师只需单击即可阻止程序。

但现在我的问题来了:我更擅长 Linux,实际上我从未制作过 .reg 文件,因此我搜索了网络,但无法让它工作。也许有人可以给我一个模板,我只需要填写路径即可?或者还有其他方法可以轻松完成此操作(某些工具)?

提前谢谢

答案1

解决方案

以下是您可以使用的模板:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\whatever.exe]
"Debugger"="systray.exe"

要恢复,您只需删除注册表项:

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\whatever.exe]

笔记为了应用更改,需要管理员权限(或足够的权限来访问相关注册表项)。

怎么运行的

注册表项Image File Execution Options的设计初衷是,在应用程序启动时自动启动调试器。虽然调试器会启动应用程序并附加,但您可以指定要运行的任何可执行文件,从而覆盖原始文件。

那怎么样systray.exe?这是一个小的存根程序,最初是在 Windows 95 中引入的,用于处理系统通知图标。在较新的 Windows 版本中,它实际上已不再使用,并且主要出于向后兼容性的原因而保留它。它没有用户界面,除了在启动时刷新通知区域外,没有做任何值得注意的事情。

评论

  • 更改会立即应用,并且无论安装的 Windows 7 版本如何都可以起作用。

  • 如果您想显示标准错误消息,请替换systray.exe%1(任何不存在的可执行文件也可以)。显示自定义消息需要创建自定义程序或脚本,然后启动它。

已知限制

  • 由于该方法基于程序名称,因此可以通过将可执行文件重命名为其他名称来解决此问题。只需确保用户将程序放置在他们无法完全控制的目录中(例如C:\Program Files),即可轻松避免这种情况。

  • 可以将整个程序文件夹复制到其他地方(例如桌面),然后重命名可执行文件。有些程序可能无法以这种方式运行,但其他程序可以。为避免这种情况,请确保用户在其配置文件文件夹中没有写入权限,除非另有要求。

参考

答案2

如果您的 Windows 计算机处于 Active Directory 环境中,您可以使用软件限制策略来阻止程序(白名单程序除外)运行。

您无法阻止“程序”访问注册表,但可以拒绝用户访问注册表。但请注意,程序在用户的上下文中运行,可能需要访问注册表的各个部分。

我不明白为什么你们对每台笔记本电脑都应用不同的策略。你们的笔记本电脑中是否有可以运行 Word 但不运行 uTorrent 的,而其他笔记本电脑中是否有可以运行 uTorrent 但不运行 Excel 的?

相关内容