Win11及Win11 22H2环境下高权限PowerShell实例执行服务配置脚本失效问题求助
Win11及Win11 22H2环境下高权限PowerShell实例执行服务配置脚本失效问题求助
大家好,我最近在Win11 22H2系统(一个月前刚全新安装)上碰到了个棘手的问题,原本一直正常使用的两种高权限执行PowerShell脚本的方式,现在突然没法修改服务启动类型了。
之前我一直用这两种方式执行脚本:
- 方法1:创建计划任务,勾选了Run with highest privileges选项来运行PowerShell脚本
- 方法2:右键点击脚本的PowerShell快捷方式,选择“以管理员身份运行”
脚本里用来修改服务启动类型的核心代码是:
Set-Service –Name $service –StartupType Manual
现在的诡异情况是:用上面两种方法执行脚本时,完全没有权限不足的报错,脚本看起来成功跑完了,但打开services.msc一看,目标服务的启动类型根本没变化,就好像这个管理员会话不属于我当前用户似的。
目前我只找到两种能生效的操作方式:
- 在脚本里改用cmd调用sc工具来修改:
cmd.exe /c "sc config $service start= demand"
- 手动打开一个管理员权限的PowerShell窗口,直接粘贴代码或者导航到脚本目录执行脚本
这两种方法在Win10以及早期Win11版本里都好好的,实在搞不懂Win11 22H2到底改了什么导致这个问题。
最后补充一下,快捷方式和计划任务里用的执行命令都是:
powershell.exe -ExecutionPolicy Bypass -File "C:\Users\talor\OneDrive\Scripts\set-services-to-manual-and-stopped.ps1"
有没有大佬遇到过类似的问题,或者知道是什么原因导致的?
备注:内容来源于stack exchange,提问作者Aaron
相关产品推荐
相关产品推荐

