这次问题最终定位比较清楚,整理如下。


Win11 安装 ChatGPT 提示 0x80070005 的原因总结

一、表面现象

安装 ChatGPT 时:

应用安装失败

错误代码:
0x80070005

含义:

Access Denied(访问被拒绝)

最开始容易误判为:

  • Microsoft Store 损坏
  • ChatGPT 安装包问题
  • 网络问题
  • 磁盘空间问题

但实际不是。


二、真正原因

根因是:

AppX 包已经部署成功,但是没有注册到当前用户

Windows Store 应用安装流程大概如下:

下载 AppX 包
        |
        v
写入 WindowsApps
        |
        v
系统 Stage(预部署)
        |
        v
注册当前用户
        |
        v
创建开始菜单/权限/应用关联
        |
        v
安装完成

你的机器当时状态:

OpenAI.Codex

WindowsApps:
    √ 文件存在

系统:
    √ Package 已 Staged

当前用户 panda:
    × 没有注册

表现为:

Get-AppxPackage -AllUsers *OpenAI*

看到:

PackageUserInformation:

S-1-5-18 [SYSTEM]: Staged

但是:

Get-AppxPackage *OpenAI* -User 当前用户

没有任何输出。

也就是说:

Windows 知道这个应用存在,但是不知道你的用户安装了它。

所以 Store 在下一次安装/更新 ChatGPT 时:

下载
 ↓
部署
 ↓
注册用户
 ↓
失败
 ↓
0x80070005

三、为什么 SFC/DISM 后第一次可以?

这个现象其实很典型。

执行:

sfc /scannow
DISM /RestoreHealth

以后:

Windows 会重新修复部分:

  • AppX 服务状态
  • Store 注册信息
  • 系统组件

所以第一次:

OpenAI 包
 ↓
重新注册
 ↓
成功

但是后续安装时:

旧的 Staged 状态残留,导致再次失败。


四、最终解决方法

核心操作:

手动注册 AppX:

Add-AppxPackage -Register `
"C:\Program Files\WindowsApps\OpenAI.Codex_26.803.5235.0_x64__2p2nqsd0c76g0\AppxManifest.xml" `
-DisableDevelopmentMode

执行后无输出:

说明成功。

本质就是:

SYSTEM Stage
        ↓
增加
        ↓
当前用户 Installed

五、关于“新应用保存到 D 盘”是否推荐?

我的建议:

普通用户:尽量保存到 C 盘

尤其是:

  • Microsoft Store 应用
  • UWP/AppX 应用
  • 游戏服务类软件
  • 系统集成软件

例如:

  • ChatGPT
  • Copilot
  • Xbox
  • Windows Terminal
  • Photos
  • Calculator
  • Edge WebView

建议:

C:\Program Files\WindowsApps

六、为什么 D 盘容易出问题?

不是说 D 盘一定不行。

Windows 支持:

设置
→ 存储
→ 新应用保存位置
→ D:

但是 AppX 对权限要求非常严格。

D盘容易因为:

1. 权限继承变化

例如:

你可能曾经:

  • 修改过 D 盘权限
  • 复制过文件
  • 使用过优化软件
  • 改过所有者

导致:

TrustedInstaller
SYSTEM
AppX Deployment Service

权限异常。


2. D盘经常不是系统盘

C盘:

系统
注册表
用户Profile
AppX数据库

天然绑定。

D盘:

可能:

  • 更换硬盘
  • 重装系统
  • 恢复备份
  • 修改卷权限

容易出现:

文件存在
但是注册关系丢失

3. 多用户环境更容易出问题

你的情况:

用户A 可以安装
用户B 不行

就是典型 AppX 注册问题。


七、推荐设置

对于你的机器:

建议:

新应用:

设置:

C:

保持。


游戏:

可以:

D:\Games

例如:

  • Steam
  • Epic
  • 黑神话悟空
  • 大型游戏

这些不用 AppX 权限体系。


开发环境:

推荐:

C:
系统
工具链

D:
代码
数据
模型
虚拟机

例如:

C:
 ├ Windows
 ├ Program Files
 ├ AppData

D:
 ├ GitProject
 ├ CUDA
 ├ Dataset
 ├ VM
 ├ DockerData

八、以后遇到类似错误快速判断

看到:

0x80070005
App install failed

优先检查:

1. 包是否 Staged

Get-AppxPackage -AllUsers xxx

看:

PackageUserInformation

2. 当前用户是否 Installed

Get-AppxPackage xxx -User $env:USERNAME

3. 如果:

SYSTEM: Staged
当前用户: 空

直接:

Add-AppxPackage -Register AppxManifest.xml

不要先折腾:

  • 重装系统
  • 重装 Store
  • SFC/DISM

这次排查其实也说明一个问题:你的 Windows 系统本身没有损坏,问题集中在 Windows Store 的 AppX 用户注册机制。以后你的开发环境、CUDA、VSCode、Git 等放 D 盘没问题,但 微软商店类应用建议留 C 盘

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐