Windows 版 Codex 更新后有一种比较特殊的启动故障点击 Codex 图标后桌面上没有任何窗口但打开任务管理器却能够看到一个或多个ChatGPT.exe进程正在运行。有时候结束进程重新打开仍然如此甚至重启 Windows、修复应用或者重新安装之后问题依然可能再次出现。这种情况和普通的“程序完全无法启动”并不一样。因为从 Windows 的角度来看应用进程其实已经创建只是在初始化过程中没有成功进入正常的界面阶段。近期在 Codex 的公开 issue 中也出现了多起类似 Windows 启动异常包括ChatGPT.exe已运行但没有界面MainWindowHandle一直为0%LOCALAPPDATA%\OpenAI\Codex\runtimes\cua_node下不断生成.staging-*runtime 中部分文件没有被完整复制node.exe存在但node_repl.exe等文件缺失。没有 Codex 主窗口没有托盘图标有时放一段时间又突然能打开。如果你也遇到了类似问题可以按照下面的顺序检查。1. 先确认是不是“进程启动了但窗口没创建”右键开始菜单打开Windows PowerShell管理员打开 PowerShell执行Get-Process ChatGPT -ErrorAction SilentlyContinue | Select Id, ProcessName, Responding, MainWindowHandle, MainWindowTitle如果看到类似Responding : True MainWindowHandle : 0 MainWindowTitle :说明ChatGPT.exe已经运行但 Codex 主窗口没有成功创建。这类情况通常不是程序完全没启动而是卡在后续初始化过程。顺便检查一下安装包状态Get-AppxPackage -Name OpenAI.Codex | Select Name, Version, Status, InstallLocation正常情况下Status : Ok如果这里已经异常可以优先尝试 Windows 的“应用修复”或者重新安装。2. 更新之后打不开可以先关闭 Codex 内置 updater部分启动问题可能和 Codex 自己的更新初始化有关有时会卡在 Codex 自己的 in-app updater / Sparkle 更新逻辑上。可以尝试关闭 Codex 内置 updater让 Microsoft Store 负责更新。可以执行[Environment]::SetEnvironmentVariable( CODEX_SPARKLE_ENABLED, false, User )检查是否生效[Environment]::GetEnvironmentVariable( CODEX_SPARKLE_ENABLED, User )如果返回false说明已经设置成功。设置后建议重新登录 Windows 或者重启电脑一次。不过需要注意如果这样操作之后依旧打不开就继续检查下面这个问题。3. 重点检查 cua_node 是否一直卡在.staging-*打开目录%LOCALAPPDATA%\OpenAI\Codex\runtimes\cua_node如果里面出现大量类似.staging-xxxxxxxxxxxxxxxx-AbCd12 .staging-xxxxxxxxxxxxxxxx-XyZ789 .staging-xxxxxxxxxxxxxxxx-KLm456而且每启动一次 Codex就会多出一个新的.staging-*文件夹那么很可能是 Codex 自带的cua_noderuntime 没有复制完整。可以使用$root $env:LOCALAPPDATA\OpenAI\Codex\runtimes\cua_node Get-ChildItem $root -Directory -Force | Where-Object { $_.Name -like .staging-* } | Sort-Object LastWriteTime -Descending | Select-Object -First 5 | ForEach-Object { [PSCustomObject]{ Name $_.Name NodeExe Test-Path $($_.FullName)\bin\node.exe NodeRepl Test-Path $($_.FullName)\bin\node_repl.exe Manifest Test-Path $($_.FullName)\manifest.json } }如果经常看到NodeExe : True NodeRepl : False Manifest : False基本可以判断runtime 只复制了一部分Codex 每次启动都在重新尝试但一直无法完成。4. 手动复制完整 runtime先关闭 CodexGet-Process ChatGPT -ErrorAction SilentlyContinue | Stop-Process -Force找到 Codex 当前安装目录$pkg Get-AppxPackage OpenAI.Codex $src Join-Path $pkg.InstallLocation app\resources\cua_node然后从.staging-*文件夹名称里找到当前 runtime ID。例如.staging-8e7585fc8f35ed57-AbCd12那么 runtime ID 就是8e7585fc8f35ed57注意不同 Codex 版本的 ID 可能不同不要直接照抄。创建目标目录$dst $env:LOCALAPPDATA\OpenAI\Codex\runtimes\cua_node\8e7585fc8f35ed57 New-Item -ItemType Directory -Force -Path $dst | Out-Null然后执行 xcopy.exe $src\* $dst\ /E /I /H /Y /G这里比较关键的是/G它可以处理部分受保护或加密来源文件复制到普通目标目录时的问题。复制完成以后检查[PSCustomObject]{ NodeExe Test-Path $dst\bin\node.exe NodeRepl Test-Path $dst\bin\node_repl.exe Manifest Test-Path $dst\manifest.json }正常应该全部为True True True然后重新打开 Codex 即可。最后总结如果 Windows Codex 更新后出现任务管理器里有 ChatGPT.exe 但是桌面没有任何窗口可以重点检查两个地方CODEX_SPARKLE_ENABLED以及%LOCALAPPDATA%\OpenAI\Codex\runtimes\cua_node尤其是当cua_node目录里不断出现新的.staging-*同时node_repl.exe或manifest.json缺失时很可能就是 runtime 部署失败。这种情况下比起不断卸载重装直接检查并修复cua_node往往更有效。另外不建议随意修改C:\Program Files\WindowsApps的所有权和权限通常没有必要而且容易引入新的 Windows Store 应用问题。