自去年 11 月以来,0x80070005 权限拒绝问题一直困扰着我的 PC。问题发生在:
在 Microsoft Store 中安装/更新应用程序。
如果我通过运行搜索安装失败的应用程序
Get-AppxPackage <Name>
,则会列出安装失败的软件包,但安装状态为“暂存”PackageUserInformation : {S-1-5-18 [S-1-5-18]: Staged}
而不是“已安装”
PackageUserInformation : {S-1-5-21-4101337116-MyUserID-******* [MyUserName]: Installed}
如果正确注册,应用程序将正确安装。因此,每当出现错误(事件 ID:2008)时,我可以通过运行以下 PowerShell 脚本来解决此问题
Microsoft-Windows-Store/Operational
(延迟一分钟以确保下载所有更新):$AllApps = Get-AppxPackage -allusers *# foreach($UWPapp in $AllApps) { if(-Not $uselessapps.Contains($UWPapp.Name)) { # $uselessapps is a list of bloatwares like Cortana and so on if($UWPapp.PackageUserInformation -like "*Staged*") { Write-Output "refreshing $($UWPapp.PackageFullName)" Add-AppxPackage -DisableDevelopmentMode -Register "$($UWPapp.InstallLocation)\AppXManifest.xml" -Erroraction 'silentlycontinue' if(-Not $?) { if ($Error[0] -like "*0x80073D06*") { Write-Output "This package is outdated, removing ..." Remove-AppxPackage -all -package $UWPapp.PackageFullName } Write-Host "`n" } } } }
Windows 更新(仅 .NET 和功能更新受影响,其他更新(如病毒定义更新、驱动程序更新和 SQL 更新)不是做作的)。
我目前的解决方法是从更新目录手动下载 MSU 更新包并手动安装受影响的更新。有时已安装的更新(尤其是更改版本号的功能更新)仍会显示为未安装且安装失败,在这种情况下我必须使用 DiagCab 文件来隐藏错误显示的更新。
安装可选功能(如附加字体)。在系统设置中,我无法绕过权限错误问题,因为运行
dism /Online /Add-Capability /CapabilityName:<What I wanted to install>
会卡住。我甚至无法按 Ctrl+C 强制停止命令。在对“索引选项”进行故障排除时,始终会出现错误“Windows 搜索不可用。”,在使用管理员权限修复后,该错误将显示为“已修复”,但再次运行故障排除程序时会再次出现。此外,在故障排除程序尝试修复问题后,将显示另一个无法修复的错误“Windows 搜索目录的权限不正确”。
我上面提到的问题无法通过就地升级解决。更糟糕的是,即使是全新安装,这个问题也会在一段时间后再次出现(因此我称这个问题“困扰”了我)。似乎我在 OOBE 之后的初始设置导致了这个问题。但我不确定是什么原因造成的。
今天在我的 PC 上多次重新安装后,似乎所有问题都会在我使用 WinGet 安装某些东西后再次出现(我还保留了一个 PS1 脚本,其中包含我需要的程序列表,以便我可以在 OOBE 后一键安装我需要的所有内容)。上次通过 winget 安装 Google Chrome 远程桌面和 Google Drive Client 后出现问题。虽然我不知道这些程序是否特别导致了这个问题,因为卸载它们不会让错误消失。
该问题影响 Windows 10(19043、19044)和 Windows 11。这对我来说似乎很独特,因为我在不同的平台上问过类似的问题,但没有人能回答这个问题。
答案1
您执行的某些操作(或未执行的某些操作)修改了 Windows 中基本文件夹的权限或破坏了一些基本的 Windows 组件。
通过查阅磁盘的 SMART 信息并运行来检查磁盘
chkdsk
(请勿使用该/f
选项)。如果发现磁盘错误 - 请更换磁盘。否则,请继续。
使用一些知名产品进行深度防病毒扫描。我建议使用 Windows Defender 和 Malwarebytes。如果发现(真正的)病毒,您将需要重新安装 Windows。
如果没有发现病毒,我建议 通过就地升级修复安装 Windows 10。
在执行上述任何操作之前,请先做好备份。