執行軟體/遊戲彈出 `應用程式無法正常啟動 (0xc000007b)`,核心原因是 32 位元 (x86) 應用程式嘗試載入 64 位元 (x64) DLL,或 64 位元應用程式載入 32 位元 DLL,導致架構不匹配。也常見於 Visual C++ Redistributable、DirectX、.NET Framework 損毀/版本錯誤。
錯誤代碼含義
- `0xC000007B` = `STATUS_INVALID_IMAGE_FORMAT`:映像檔格式無效 (位元數不匹配、DLL 簽章錯誤、檔案損毀)
- 常見於:QQ、Photoshop、Office、Steam 遊戲、Unity/Unreal 遊戲、自編譯程式

核心修復流程 (依成功率排序)
1. 確認系統與程式位元數匹配
- Win+E → 右鍵「電腦」→「內容」→ 查看 系統類型 (64 位元作業系統 / 32 位元作業系統)
- 下載軟體時 嚴格選擇對應版本:
64 位元系統 → 優先下載 64 位元版 (x64)
32 位元系統 → 僅能執行 32 位元版 (x86)

2. 缺失 DLL 補齊:放對路徑是關鍵
錯誤訊息常提示缺失特定 `.dll` (如 `MSVCR100.dll`、`d3dx9_43.dll`、`xinput1_3.dll`)
| 系統位元 | 32 位元 DLL 放置路徑 | 64 位元 DLL 放置路徑 |
| 64 位元 Win7 | C:\Windows\SysWOW64\ (WoW64 層) | C:\Windows\System32\ |
| 32 位元 Win7 | C:\Windows\System32\ | 不適用 |
- ⚠️ 絕對不要 將 32 位元 DLL 放入 `System32` (64 位元系統),或 64 位元 DLL 放入 `SysWOW64`,會導致更多 0xc000007b
- 下載 DLL 來源:官方執行套件 (VC++、DirectX)、DLL-files.com (需辨別位元數)

3. 修復/重裝 Visual C++ Redistributable (最高優先級)
4. 修復/重裝 DirectX
5. .NET Framework 修復
6. 一鍵修復工具:DirectX Repair / DLL Care
- DirectX Repair (免費、掃描缺失/損毀 DLL、自動下載修復、支援 C++/DirectX/.NET)
- 適合不想手動排查的使用者
進階診斷:Dependency Walker / Process Monitor