Windows 11自动关机伴“权限不足”提示,需依次禁用快速启动、提升电源相关服务权限、重置UAC虚拟化与完整性级别、替换损坏的关机组件、禁用Windows错误报告关机钩子。

如果您在 Windows 11 中遭遇自动关机并同时弹出“权限不足”提示,这通常表明系统关键进程因提权失败而异常终止,或后台服务(如电源管理、UAC 验证模块)在无足够权限上下文中执行关机指令。以下是解决此问题的步骤:
一、禁用快速启动并重置电源策略
快速启动功能会将内核会话保存至休眠文件,若该文件损坏或与当前权限状态冲突,可能导致系统在低权限上下文下误触发强制关机。禁用该功能可规避内核状态残留引发的提权异常。
1、按 Win + R 打开运行框,输入 control 并回车,打开控制面板。
2、切换为“大图标”查看方式,点击“电源选项”。
3、点击左侧“选择电源按钮的功能”,再点击“更改当前不可用的设置”。
4、取消勾选“启用快速启动(推荐)”,点击“保存更改”。
5、在当前电源计划右侧点击“更改计划设置”,再点击“更改高级电源设置”。
6、展开“睡眠”→“允许混合睡眠”,设为“关闭”;展开“电源按钮操作”,设为“不采取任何操作”。
二、强制提升系统服务运行权限
部分电源相关服务(如Power Efficiency Diagnostics、Themes)默认以受限权限运行,当其尝试调用关机API但未获完整令牌时,可能触发静默降权并中止,继而由父进程兜底执行强制关机。需手动配置服务登录身份与启动权限。
1、按 Win + R 输入 services.msc,回车打开服务管理器。
2、依次右键以下服务 → “属性”:Power Efficiency Diagnostics、Themes、Windows Management Instrumentation(WMI)、User Profile Service。
3、在“登录”选项卡中,将“此账户”设为 NT AUTHORITY\SYSTEM,勾选“允许服务与桌面交互”(仅限Themes)。
4、在“常规”选项卡中,将“启动类型”设为“自动(延迟启动)”,点击“应用”后重启服务。
三、重置UAC虚拟化与完整性级别
UAC 虚拟化机制可能在非管理员上下文中拦截写入操作,导致电源日志写入失败,触发系统级错误处理流程并调用关机。需清除虚拟化缓存并强制重置进程完整性级别策略。
1、以管理员身份运行 PowerShell,执行:
icacls "$env:LOCALAPPDATA\Packages" /reset /T /C /Q
2、继续执行:
icacls "$env:windir\System32\GroupPolicy\Machine" /grant *S-1-5-32-573:F /T /C /Q
3、执行:
cmd /c "secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose"
4、重启计算机后,在管理员 PowerShell 中运行:
Set-ProcessMitigation -System -Enable StrictHandleCheck,DisableNonSystemCodeIntegrity
四、替换系统关机代理组件
Windows 11 的 shutdown.exe 及关联 DLL(如user32.dll中的ExitWindowsEx调用链)可能因签名验证失败或ASLR偏移错位,在低完整性进程中拒绝执行,转而触发安全子系统强制终止会话。需使用已知良好哈希的组件覆盖当前副本。
1、从另一台同版本 Win11 正常机器中提取:
%windir%\System32\shutdown.exe、%windir%\System32\user32.dll、%windir%\System32\kernelbase.dll
2、将三文件复制至目标机临时目录,如 C:\temp\fix\。
3、以管理员身份运行 CMD,依次执行:
takeown /f %windir%\System32\shutdown.exe
icacls %windir%\System32\shutdown.exe /grant administrators:F
copy /y C:\temp\fix\shutdown.exe %windir%\System32\
4、对 user32.dll 和 kernelbase.dll 重复上述三条命令。
五、禁用Windows错误报告关机钩子
Windows 错误报告服务(WerFault.exe)在捕获到权限相关异常时,可能调用内部关机钩子(WerShutdownCallback)执行强制终止,而非弹出错误对话框。该行为在高负载或低完整性会话中尤为常见。
1、按 Win + R 输入 gpedit.msc,回车打开组策略编辑器(家庭版用户请跳至步骤3)。
2、导航至:
计算机配置 → 管理模板 → Windows 组件 → Windows 错误报告
双击“禁用 Windows 错误报告”,设为“已启用”,点击“确定”。
3、若无 gpedit,以管理员身份运行 CMD,执行:
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d 1 /f
4、继续执行:
net stop wercplsupport && net start wercplsupport










