在windows系统的使用过程中,有时必须用到组策略功能,但在个别纯净版的系统中运行gpedit.msc,系统可能提示你“找不到文件”而无法打开组策略编辑器。
在已经比较成熟的系统中,比如win10系统中,如果遇到这种“找不到gpedit.msc”的问题,我们只需按照网上的教程一步一步地进行操作,最后得到一个键入了特定代码的.bat格式文件,并以管理员身份运行其一次,这个问题就能成功得到解决。
但近来一些升级了win11系统的用户却发现,在win10系统中屡试不爽的“gpedit启用代码”,在win11中却遭遇了滑铁卢——
@echo off
pushd "%~dp0"
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >List.txt
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientTools-Package~3*.mum >>List.txt
for /f %%i in ('findstr /i . List.txt 2^>nul') do dism /online /norestart /add-package:"C:\Windows\servicing\Packages\%%i"
pause
目前网上流传的所有用于开启组策略功能的代码,都是上面这个版本。
通过上述代码做出来的批处理脚本,你可以在win10系统中成功启用组策略功能,但在个别版本的win11系统中,你用这个版本的代码去手动启用组策略功能,终端窗口可能就会报错“找不到元素”,而导致命令执行失败。
为什么呢?
因为win11中关于gpedit的某些包,其文件名和win10是不一样的。
我们可以对比一下。
win10是这样的:Microsoft-Windows-GroupPolicy-ClientTools-Package~3*.mum。
win11是这样的:Microsoft-Windows-GroupPolicy-ClientTools-merged-Package~3*.mum。
代码中指定的寻址路径是没问题的,但文件名错了,于是就会导致“找不到元素”,我们把脚本的代码修正了并将其管理员权限运行一次,之后组策略编辑器就可以成功启用了。
@echo off
pushd "%~dp0"
echo List all Group Policy Editor client related win10 package files to Files.txt file.
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >Files.txt
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientTools-merged-Package~3*.mum >>Files.txt
echo Run dism command to install Group Policy Editor...
for /f %%i in ('findstr /i . Files.txt 2^>nul') do dism /online /norestart /add-package:"C:\Windows\servicing\Packages\%%i"
pause
上面这个问题,总体来说比较小众,大多数用户其实不大可能会碰到,毕竟目前win11还不是主流,而后续升11的用户,可能更多还是通过非纯净镜像来进行安装,相关的功能启用在制作镜像时就已经集成进去,从而也就不存在“找不到元素”这种困扰,而且如果这方面你稍微懂一点,那么就算真的碰到,解决起来也只是小菜一碟。
这篇文章主要是写给那些电脑预装了win11的纯净系统、想要启用gpedit却又缺乏相关经验的朋友看的,希望能帮到你们。