OpenAI Codex/Chatgpt Windows 离线版安装教程(2026最新版)——绕过微软商店,附配套安装资源
Microsoft Store 打不开?提取并离线安装最新版 ChatGPT Windows MSIX(含版本检测与签名校验)
适用场景:Microsoft Store 无法启动、公司网络禁用了商店界面,或者希望提前保存一份可重复安装的完整 MSIX 包。
OpenAI 新版 Windows 桌面端已经把 Chat、Work 和 Codex 放进同一个应用。问题是,官网 Windows 下载按钮通常会跳到 Microsoft Store,或者只下载一个很小的 Store Installer 引导程序;它不是完整离线安装包,断网后不能独立安装。
本文介绍一种可复用的方法:
-
从 OpenAI 官方 CDN 查询正式版号;
-
对比本机已安装版本;
-
用公开的 Microsoft Store 产品 ID 解析 Retail 分发链接;
-
只从微软 CDN 下载完整
.msix; -
校验包身份、版本、架构、发布者、数字签名和 SHA-256;
-
生成可以双击运行的离线安装脚本。
这不是破解、重打包或修改客户端。最终安装的仍是微软分发、OpenAI 签名的原始 MSIX。
一、先说明来源和安全边界
这套方法涉及三类地址:
| 环节 | 来源 | 用途 |
|---|---|---|
| 应用与版本信息 | OpenAI 官方域名 oaistatic.com | 获取正式版号、产品 ID 和包身份 |
| 下载链接解析 | store.rg-adguard.net | 用公开产品 ID 解析 Microsoft Store Retail 链接 |
| 安装包下载 | 微软 *.dl.delivery.mp.microsoft.com | 下载原始 MSIX 文件 |
需要特别说明:store.rg-adguard.net 是第三方解析服务,不是 OpenAI 或微软官网。脚本只向它提交公开的产品 ID,不提交微软账号、Cookie、设备标识或凭证。它返回的链接仍然不能直接信任,后面必须继续检查微软 CDN 域名、MSIX 身份和 OpenAI 数字签名。
如果你不接受第三方解析环节,可以等待 Microsoft Store 恢复,或尝试微软官方 winget download。不要从网盘、论坛附件或不明镜像下载别人重新打包的 ChatGPT。
二、不要选错产品
新版桌面端的关键信息如下:
Microsoft Store Product ID : 9PLM9XGG6VKS MSIX Package Identity : OpenAI.Codex Package Family Name : OpenAI.Codex_2p2nqsd0c76g0
虽然包身份仍叫 OpenAI.Codex,安装后显示的是新版 ChatGPT,里面包含 Chat、Work 和 Codex。这与旧版 ChatGPT Classic 不是同一个包。
Classic 的 Store Product ID 是 9NT1R1C2HH7J。如果你的目标是新版统一桌面端,不要选到这个 ID。
三、手动检查本机版本和官方最新版
建议打开系统自带的 Windows PowerShell 5.1,不要用 PowerShell 7 的 pwsh。部分 Windows 环境在 pwsh 中加载 Appx 模块会报错。
1. 查看本机已安装版本
Get-AppxPackage -Name OpenAI.Codex |
Sort-Object { [version]$_.Version } -Descending |
Select-Object -First 1 Name, Version, Architecture, PackageFamilyName
没有输出,说明当前 Windows 用户没有安装这个包。Get-AppxPackage 默认检查当前用户,不需要管理员权限。
2. 查询 OpenAI 正式版清单
$manifestUrl = 'https://persistent.oaistatic.com/codex-app-prod/windows-store-update.json' $latest = Invoke-RestMethod -Uri $manifestUrl $latest | Format-List
正常情况下会看到类似内容:
{
"schemaVersion": 1,
"buildVersion": "四段版本号",
"storeProductId": "9PLM9XGG6VKS",
"packageIdentity": "OpenAI.Codex"
}
不要把某次查询到的版本号永久写死。脚本每次运行都应重新读取 buildVersion,并确认产品 ID 与包身份没有异常变化。
3. 用数值版本比较,不要直接比较字符串
$installed = Get-AppxPackage -Name OpenAI.Codex |
Sort-Object { [version]$_.Version } -Descending |
Select-Object -First 1
$official = Invoke-RestMethod `
'https://persistent.oaistatic.com/codex-app-prod/windows-store-update.json'
if (-not $installed) {
'本机未安装'
} elseif ([version]$installed.Version -lt [version]$official.buildVersion) {
"发现更新:$($installed.Version) -> $($official.buildVersion)"
} else {
"已经是最新版:$($installed.Version)"
}
四、解析完整 MSIX 下载地址
打开:
https://store.rg-adguard.net/
依次选择或填写:
类型:ProductId 内容:9PLM9XGG6VKS 通道:Retail
提交后,在结果中寻找与官方版号、系统架构完全一致的文件:
OpenAI.Codex_<官方版本>_x64__2p2nqsd0c76g0.msix
ARM64 设备应选择:
OpenAI.Codex_<官方版本>_arm64__2p2nqsd0c76g0.msix
不要只看“文件最大”就下载,也不要选 .blockmap、.xml 或其他架构的包。必须同时匹配:
-
文件名以
OpenAI.Codex_开头; -
四段版本号与 OpenAI 清单完全相同;
-
架构与系统一致;
-
后缀为
.msix; -
包族标识为
2p2nqsd0c76g0。
点击后,真正的下载主机必须是:
*.dl.delivery.mp.microsoft.com
如果解析结果给出 http://,可以把协议改为 https://,但主机、路径和查询参数都不能变。若 HTTPS 不可用,就停止下载,不要退回明文 HTTP。
微软 CDN 的签名链接会过期。出现 403 时重新解析一次,不要长期保存或公开那条临时 URL。
为什么有时找不到官方清单里的最新版?
OpenAI 正式版清单和 Microsoft Store Retail CDN 不一定同时完成同步。可能出现“官方清单已经更新,但解析页仍只有旧版”的短暂窗口。
此时正确做法是等待并稍后重试。不要把旧 MSIX 改名成新版本,也不要为了追新切换到未知的 beta、nightly 或内部通道。
五、下载后必须完成的校验
下面假设安装包保存在当前目录,文件名为:
OpenAI.ChatGPT_<版本>_x64_Offline.msix
外部文件名可以为了方便而重命名,但包内部身份和签名不能变。
1. 检查数字签名
$msix = Resolve-Path '.\OpenAI.ChatGPT_<版本>_x64_Offline.msix' $signature = Get-AuthenticodeSignature -LiteralPath $msix $signature | Format-List Status, StatusMessage, SignerCertificate
至少应满足:
Status = Valid SignerCertificate.Subject = CN=50BDFD77-8903-4850-9FFE-6E8522F64D5B
签名无效、发布者不一致或证书链异常时,不要安装。不要使用 -AllowUnsigned 绕过验证。
2. 计算 SHA-256
Get-FileHash -LiteralPath $msix -Algorithm SHA256
SHA-256 适合在复制到 U 盘、NAS 或另一台电脑后再次核对文件是否发生变化。它不是固定值:每个版本、每个架构的哈希都不同。
3. 检查 MSIX 内部身份
Add-Type -AssemblyName System.IO.Compression.FileSystem
$zip = [IO.Compression.ZipFile]::OpenRead($msix)
try {
$entry = $zip.GetEntry('AppxManifest.xml')
if (-not $entry) { throw '未找到 AppxManifest.xml' }
$reader = New-Object IO.StreamReader($entry.Open())
try { [xml]$appxManifest = $reader.ReadToEnd() }
finally { $reader.Dispose() }
}
finally {
$zip.Dispose()
}
$identity = $appxManifest.Package.Identity
$identity | Format-List Name, Version, ProcessorArchitecture, Publisher
应核对:
Name = OpenAI.Codex Version = OpenAI 官方清单中的 buildVersion ProcessorArchitecture = x64 或 arm64 Publisher = CN=50BDFD77-8903-4850-9FFE-6E8522F64D5B
严谨的自动化脚本还应检查 TargetDeviceFamily 的最低 Windows 版本以及 PackageDependency。缺少依赖时应停止,并从官方来源补齐依赖,而不是关闭检查。
六、安装或更新
确认 ChatGPT 中没有正在运行的重要任务,然后在 Windows PowerShell 5.1 中执行:
Add-AppxPackage `
-Path '.\OpenAI.ChatGPT_<版本>_x64_Offline.msix' `
-ForceApplicationShutdown
这会关闭正在运行的 ChatGPT,并为当前 Windows 用户安装或更新同一包族的应用。微软文档也说明:更新已安装包时,新包必须保持相同的 Package Family Name。
安装后复查:
Get-AppxPackage -Name OpenAI.Codex |
Sort-Object { [version]$_.Version } -Descending |
Select-Object -First 1 Name, Version, Architecture, Status
不建议使用 -ForceUpdateFromAnyVersion 强行降级。离线安装脚本最好先比较版本:本机版本大于或等于目标版本时直接退出。
七、用配套脚本一键检查、下载和生成安装器
我把上述流程整理成了一个可复用工具包,目录结构如下:
chatgpt-offline-update/ ├─ SKILL.md ├─ scripts/ │ ├─ Get-ChatGPTOfflineUpdate.ps1 │ ├─ PackageChecks.ps1 │ └─ New-OfflineInstaller.ps1 └─ assets/ ├─ install-body.ps1.template └─ Install-ChatGPT-Offline.cmd
这个工具包既可以作为 Codex Skill 使用,也可以在普通 Windows PowerShell 5.1 中独立运行。
1. 只检查是否有更新
powershell.exe -NoProfile -ExecutionPolicy Bypass ` -File '.\chatgpt-offline-update\scripts\Get-ChatGPTOfflineUpdate.ps1' ` -OutputDirectory '.\outputs\chatgpt-offline' ` -WorkDirectory '.\work\chatgpt-offline' ` -CheckOnly
返回结果包含:
InstalledVersion 本机已安装版本 OfficialVersion OpenAI 正式版版本 Architecture x64 或 arm64 UpdateNeeded 是否需要更新
2. 有更新时下载完整包
powershell.exe -NoProfile -ExecutionPolicy Bypass ` -File '.\chatgpt-offline-update\scripts\Get-ChatGPTOfflineUpdate.ps1' ` -OutputDirectory '.\outputs\chatgpt-offline' ` -WorkDirectory '.\work\chatgpt-offline'
验证通过后会在“版本号-架构”独立目录中生成:
OpenAI.ChatGPT_<版本>_<架构>_Offline.msix Install-ChatGPT-Offline.ps1 Install-ChatGPT-Offline.cmd verification.json
把前三个安装文件放在同一目录,双击 Install-ChatGPT-Offline.cmd 即可。CMD 会调用配套 PowerShell,安装前重新检查 SHA-256、包身份和签名,并拒绝降级。
3. 已经是最新版,但仍想保存离线包
在命令末尾增加:
-DownloadEvenIfCurrent
自动化脚本的关键安全规则
-
只认 OpenAI 官方清单中的
buildVersion; -
只认产品 ID
9PLM9XGG6VKS和身份OpenAI.Codex; -
只选 Retail 通道中版本、架构和文件名完全匹配的 MSIX;
-
只允许微软
dl.delivery.mp.microsoft.com的 HTTPS 下载; -
不跟随完整包下载重定向;
-
校验 ZIP/MSIX 结构、AppxManifest、发布者和 Authenticode;
-
检查最低 Windows 版本和依赖;
-
保存 SHA-256 和验证记录;
-
本机版本不低于目标版本时不安装。
八、常见错误
1. Get-AppxPackage 在 pwsh 中无法加载
错误可能类似:
The 'Get-AppxPackage' command was found in module 'Appx', but the module could not be loaded.
改用系统 Windows PowerShell 5.1:
powershell.exe
2. 下载返回 403
微软 CDN 的临时签名 URL 已过期。返回解析页,用相同 Product ID 和 Retail 通道重新生成链接。
3. 找不到与官方版本完全一致的 MSIX
Retail CDN 尚未同步。等待后重试,不要下载旧版后改名。
4. 0x80073D02:资源正在使用
关闭 ChatGPT 后重试,或使用:
Add-AppxPackage -Path '.\xxx.msix' -ForceApplicationShutdown
5. 0x80073CF3:依赖或兼容性检查失败
检查 AppxManifest 中的最低 Windows 版本和依赖项。依赖必须从微软官方来源获取,并选择正确架构。不要在不理解风险的情况下删除依赖声明或修改 MSIX。
6. 签名不是 Valid
立即停止。重新解析和下载,不要安装来源不明的“免签版”“绿色版”或修改包。
九、几个容易误解的点
官网下载到的小 EXE 为什么不能离线安装?
get.microsoft.com 返回的通常是微软签名的 Store Installer 引导程序,它负责唤起商店或继续在线获取内容,本身不是数百 MB 的完整 ChatGPT MSIX。
判断方法很简单:完整包扩展名是 .msix,体积通常明显更大,并且能作为 ZIP 结构读取到 AppxManifest.xml。
安装最新版客户端就一定能看到最新模型吗?
不一定。模型是否出现在列表里,还取决于账号套餐、组织策略、地区、灰度发布和服务端权限。客户端更新只解决“本地应用版本”问题,不能绕过账号权限,也不应该修改客户端文件来强行开启模型。
可以把 MSIX 直接上传到网盘分享吗?
不建议。更稳妥的做法是分享本文的方法和脚本,让使用者从微软 CDN 获取自己的原始包。这样既能拿到当时最新版,也能自行验证来源和签名,并避免不必要的二次分发问题。
十、总结
Microsoft Store 打不开时,正确目标不是寻找“第三方离线版”,而是把商店原始分发链拆开:
OpenAI 官方清单确认版本
↓
公开 Product ID 解析 Retail 链接
↓
微软 CDN 下载原始 MSIX
↓
核对身份、版本、架构、发布者和签名
↓
Add-AppxPackage 安装并复查版本
只要坚持“版本精确匹配、只用微软 CDN、签名必须有效”这三条,就能在不依赖 Microsoft Store 界面的情况下,获得与商店安装方式相同的原始 MSIX 包。
十一,安装包
最新安装包下载链接:
链接:https://pan.quark.cn/s/00dd49ab9707?pwd=6WEK
提取码:6WEK
使用说明:双击里面那个cmd后缀格式的文件就等着安装完成就行了,安装完去左下角win窗口里找。另外可以使用codex ,把这个文章链接发给codex,让它按照这种方式去安装最新版。以后有其他版本更新了也可以这样用。
更多推荐



所有评论(0)