我一直在努力解决计算机上的一个问题,但在网上似乎找不到解决办法。我非常不想格式化硬盘,重新安装 Windows。所以我在这里寻求解决方案,也希望尽管对这个问题进行了研究(因为显然到目前为止还没有人找到解决方案),但还是能提供一些启示。
问题是我无法让命令提示符执行 bat 或 cmd 脚本。
例子
示例bat脚本C:\Users\User1\Desktop\TestBatScript.bat
内容:
@echo off
echo Test
pause
命令提示符 CLI:
C:\Users\User1\Desktop> .\TestBatScript.bat
This program is blocked by group policy. For more information, contact your system administrator.
C:\Users\User1\Desktop>
机器配置和修改
- 机器运行 Windows 10 教育版 1909,已应用最新更新,64 位
- 过去,我曾安装过 CryptoPrevent,但最终又卸载了它,因为我知道它会修改软件限制策略无法正常工作。它可能在一开始就导致了问题
- 我使用以下方法彻底清除了软件限制策略
gpedit.msc
- AppLocker 规则现在也为空(使用
gpedit.msc
) - 我按照网上多个教程建议的方法清除了组策略设置
- 文件:已删除
C:\Windows\System32\GroupPolicy
,且在 System32 中有类似名称的其他文件 - 注册表:删除我正在使用的任何用户配置文件的
HKLM\Software\Policies
副本HKCU
- 注册表:已删除
HKLM\Software\Microsoft\Windows\CurrentVersion\Group Policy*
和HKCU
对应项 - 注册表:已删除
HKLM\Software\Microsoft\Windows\CurrentVersion\Policies
和HKCU
对应项 gpupdate.exe
以单一标准用户和管理员身份发出命令
- 文件:已删除
- 计算机不在域中
有关错误的更多信息
- 新用户账户也会受到影响
- 以管理员身份运行命令提示符(完全权限管理员,后接受 UAC 对话框)不受影响
- 内部脚本
C:\Windows\
和其子脚本不受影响(无论是否是管理员) - 当你执行时 PowerShell 可以正常执行
Set-ExecutionPolicy -Scope Process Bypass
(其他作用域也可以)
在此先感谢所有人,他们可以就除了您可以在线找到的“标准”设置之外的哪些设置可以提供一些建议,从而导致命令提示符出现这种令人讨厌且几乎无法使用的行为。