APP下载

另辟蹊径解锁被管理员限制的程序

2021-08-09闽人

电脑爱好者 2021年15期
关键词:组策略键值编辑器

闽人

1 查找出现问题的原因

从图1所示的错误提示中可以大致判断出这是管理员设置了某个限制条件,从而导致程序无法运行。虽然在图1的提示中并没有给出明确的原因,但是在Windows10系统中,程序运行出错后都会自动记录在系统日志中,因此我们可以通过查看日志来查找原因。不过由于现在无法运行本机中的mmc.exe,所以也就无法启动“事件查看器”来查看日志,这时可以从下面的两种方法中任选其一来查找原因:

一种方法是将日志文件复制到其他的电脑中查看。我们先在桌面的任务栏搜索框中输入“mm c. exe”,再运行一次该命令,在出现图1所示的错误提示时点击“关闭”(目的是为了能查看到最新的事件记录,便于更快速地找到对应的日志)。接着进入“C:\Windows\System32\Winevt\Logs”,将其中的“Application.ev t x”(因为是程序运行问题所以选择该文件)传输到其他的电脑中(图2),然后在该电脑中双击它,这时就会通过“事件查看器”打开该文件,在左侧的工具栏中依次展开“保存的日志→Application”,在右侧的窗格中定位到最新的警告日志,在下方的“常规”处就会给出mmc.exe无法运行的原因,是由于管理员通过路径策略规则对其做了限制(图3)。

另一种方法是使用PowerShell命令行来查找。在本机中以管理员身份启动PowerShell.exe,接着输入“Get-WinEvent-ProviderName"Microsoft-Windows-SoftwareRestrictionPolicies"|select-object-propertyMessage”并回车,从图4中也可以看到,cmd.exe、mmc.exe等程序是被管理员通过策略规则做了限制(图4)。

2 解決方案

通过上面的两种方法我们都可以找到产生问题的原因,解决的方法是通过组策略编辑器来取消对应的限制。不过由于本机无法运行mmc.exe,因此也暂时无法启动组策略编辑器(运行组策略编辑器需要通过该程序加载gpedit.msc)。但策略的设置大多是通过在注册表中添加或更改指定的键值生效的,因此我们可以先通过注册表找到相应的键值,再通过删除键值来恢复mmc.exe的运行。

从图3所示的界面中可以看到,每个被限制的程序都提供了其策略规则所对应的GUID数值,比如mmc.exe对应的GUID数值为“{4ec2a0b9-359b-4cc0-9629-08f0df64fcb9}”,它实际上就是限制策略在注册表中所对应的键值项,我们只要删除它就可以了。启动注册表编辑器,依次点击“编辑→查找”,在“查找目标”处输入该GUID数值,“查看”选项下勾选“项”和“全字匹配”,然后点击“查找下一个”(图5),这样会自动定位到该GUID数值所在的位置,即[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer\CodeIdentifiers\0\Paths\{4ec2a0b9-359b-4cc0-9629-08f0df64fcb9}]。在右侧的窗格中可以看到“ItemData”的数据就是“c:\windows\system32\mmc.exe”(这就是mmc.exe无法运行的原因),按提示右击“ItemData”并选择“删除”(图6)。

完成上述的操作后返回桌面,在任务栏搜索框中输入“gpedit.msc”,在搜索结果中点击“以管理员身份运行”,此时就可以正常打开组策略编辑器了(图7)。

接着依次展开“计算机配置→Windows设置→安全设置→软件限制策略→其他规则”,在右侧的窗格中即可看到设置的规则,按提示将右侧cmd.exe、mmc.exe的规则全部删除(图8)。重启系统后再次运行mmc.exe,未弹出图1所示的错误提示,自此顺利地解决该问题。

3 经验总结

在运行程序出错时如果系统已经给出明确的提示,比如“你可能没有适合的权限访问该项目”,那就可以根据该提示去解决问题(如设置对程序的权限为“完全控制”即可)。否则不妨参照本文所介绍的方法来查找出现问题的原因,再通过原因来寻求相应的解决方案。

猜你喜欢

组策略键值编辑器
车辆段收发车运行图编辑器的设计与实现
一键直达 Windows 10注册表编辑高招
检测组策略故障
基于VLIW目标机的ELF二进制编辑器设计与实现
Windows server 2003组策略运行机制分析研究
注册表值被删除导致文件夹选项成空白
“扫除”技巧之清除恶意程序