0x80070005错误源于权限缺失,需依次修复更新服务缓存权限、dcom中self账户访问权、即插即用服务注册表权限及清除组策略禁用项。

Windows系统更新卡在检查或下载阶段,弹出“0x80070005 访问被拒绝”错误提示,说明当前执行环境缺少对关键更新组件(如SoftwareDistribution目录、WinSxS存储库或DCOM对象)的必要访问权限,必须逐层修复权限链中的断裂点。
重置更新服务与缓存目录权限
这一步直接解决最常触发该错误的文件系统权限问题,尤其适用于更新失败后反复重试仍报错的场景。
1、按下 Win + X,选择“终端(管理员)”或“Windows PowerShell(管理员)”。
2、依次执行以下四条命令,每条后按回车:
net stop wuauserv → net stop cryptSvc → net stop bits → net stop msiserver
3、执行重命名命令清除损坏缓存:
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
4、再执行:
ren C:\Windows\System32\catroot2 catroot2.old
5、启动服务:
net start wuauserv → net start cryptSvc → net start bits → net start msiserver
6、运行权限重置命令,强制还原系统目录默认ACL:
icacls "%windir%\SoftwareDistribution" /reset /t /c /q
7、重启电脑,再打开设置→更新与安全→Windows更新,点击检查更新。
还原SELF账户的DCOM本地与远程访问权限
当错误出现在Windows激活(slmgr /ato)、SLUI.exe调用或组策略应用阶段时,几乎可以确定是SELF账户在COM安全性中缺失基础访问权所致,此步骤不可跳过。
方法一:图形界面操作
1、按 Win + R,输入 dcomcnfg,回车打开“组件服务”。
2、左侧展开“组件服务→计算机”,右键“我的电脑”,选“属性”。
3、切换到“COM 安全性”选项卡,在“访问权限”区域点“编辑默认值”。
4、若列表中没有 SELF,点“添加”→在输入框中键入 SELF → 点“检查名称”→确认后点“确定”。
5、在用户列表中选中 SELF,勾选“允许”列下的本地访问和远程访问两项。
6、连点两次“确定”关闭所有窗口,立即重启电脑。
方法二:命令行快速修复(需管理员权限)
在管理员终端中执行:
cmd /c "echo y | cacls \"%windir%\System32\slui.exe\" /e /g administrators:f"
该命令确保SLUI.exe至少对Administrators组完全开放,可绕过部分DCOM权限延迟生效问题。
修复即插即用服务注册表权限
组策略曾误删NetworkService对ProfileList\S-1-5-20路径的读取权,会导致Windows Update在加载用户配置时因无法读取服务上下文而报0x80070005。
第一步:定位问题GPO
1、以管理员身份运行命令提示符,输入 rsop.msc 打开“结果集策略”。
2、左侧展开“计算机配置→Windows 设置→安全设置→系统服务”,找到“即插即用”服务项,记下其右侧显示的GPO名称。
第二步:修正注册表权限
3、运行 gpmc.msc,找到上一步记录的GPO,右键→“编辑”。
4、导航至“计算机配置→策略→Windows 设置→安全设置→系统服务”,双击“即插即用”。
5、点“安全”→“高级”→“添加”,在对象名中输入:NT AUTHORITY\NetworkService,点“检查名称”确认。
6、在权限列表中仅勾选:
✔ 查询模板
✔ 查询状态
✔ 枚举依赖项
✔ 审问
✔ 用户定义的控件
✔ 读取权限
7、点“确定”保存,返回终端执行:gpupdate /force 强制刷新策略。
清除组策略对Windows更新的硬性禁用
家庭版或加域设备若被手动配置过更新策略,注册表中会残留noautoupdate=1等键值,导致系统彻底屏蔽更新通道,此时权限修复无效。
1、按 Win + R,输入 regedit,回车打开注册表编辑器。
2、导航至:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
3、在右侧窗格中查找名为 noautoupdate 的DWORD值,双击将其数值数据改为 0;若不存在则跳过。
4、继续检查以下两个路径,若存在整个子项,右键删除:
• HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
• HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
注意:删除前请右键导出备份该分支,误删可能导致其他策略失效。
5、关闭注册表编辑器,在管理员终端执行:
rd /s /q "%windir%\System32\GroupPolicyUsers"
rd /s /q "%windir%\System32\GroupPolicy"
6、执行 gpupdate /force,重启电脑。











