DLL 不適用於 Windows 或包含錯誤是 Windows 的Bad Image 錯誤。Windows 找到了 DLL,但無法正確載入。該檔案可能已損毀、不相容,或由受損的應用程式或執行階段元件提供。這與找不到 DLL 的錯誤不同:找不到表示 Windows 無法找到檔案;Bad Image 表示它找到了一個無法載入的檔案。請利用 DLL 名稱與完整路徑識別其擁有元件,接著依序嘗試四種修復方式,從針對性元件修復到較全面的 Windows 檢查。

症狀
- 應用程式或遊戲在啟動時顯示 Bad Image 對話方塊,通常會列出 DLL 與檔案路徑。
- 某個程式在應用程式、遊戲、外掛程式或執行階段更新後無法執行。
- 多個無關的程式都無法執行,這可能表示 Windows 元件或共用相依項目已受損。
- 訊息可能會列出如
VCRUNTIME140.dll、MSVCP110.dll或X3DAUDIO1_7.dll等檔案。修復前請記錄名稱與完整路徑。
快速診斷清單
- 名稱以 VCRUNTIME、MSVCP 或 VCOMP 開頭:
此 DLL 通常屬於 Visual C++ 執行階段。即使顯示的路徑是
C:\Windows\System32,也請繼續執行方法 1。 - 名稱以 D3DX、X3DAUDIO 或 XINPUT 開頭: 這通常與 DirectX 或遊戲必要元件有關。繼續執行方法 1,並修復遊戲或其官方安裝程式所列的元件。
- DLL 位於受影響應用程式的安裝資料夾中: 繼續執行方法 2,並從原始來源修復或重新安裝該應用程式。
- 多個無關應用程式失敗,或該 DLL 是 Windows 元件: 繼續執行方法 3,檢查 Windows 元件與受保護檔案。
- 擁有元件不明確,或涉及多個相依項目類別: 繼續執行方法 4,透過引導式掃描檢查 DLL 與系統問題。
快速方法比較
| 方法 | 最適用於 | 效率 | 使用者操作量 |
|---|---|---|---|
| 修復所列的執行階段或元件 | Visual C++、DirectX 或遊戲相依 DLL | 高度針對性 | 中等 |
| 修復或重新安裝應用程式 | 位於單一應用程式資料夾的 DLL,或僅一個應用程式失敗 | 針對性 | 低至中等 |
| 修復 Windows 檔案 | 多個程式失敗或已確認為 Windows 元件 | 廣泛系統檢查 | 中等 |
| Fionn DLL Fixer | 擁有元件不明、已損毀、遺失或版本不符的 DLL 問題 | 引導式掃描與修復 | 低 |
方法 1:修復錯誤訊息所列的執行階段或元件
適用時機: DLL 名稱表示它屬於共用執行階段或遊戲元件。請根據 DLL 的擁有元件選擇修復方式,而非僅依資料夾位置判斷。
操作步驟
- 從 Bad Image 對話方塊複製 DLL 名稱與完整路徑。
- 將名稱對應至可能的提供者:
VCRUNTIME*.dll、MSVCP*.dll及VCOMP*.dll表示 Microsoft Visual C++ Redistributables;D3DX*.dll、X3DAUDIO*.dll及XINPUT*.dll表示 DirectX 或遊戲必要元件。 - 使用受影響軟體發行者的官方安裝程式或支援說明,修復或重新安裝所列的執行階段或元件。
.webp)
- 若元件安裝程式要求,請重新啟動 Windows。
如何驗證
再次開啟受影響的應用程式。同一個 Bad Image 對話方塊應不會再次出現。若仍出現,請確認確切 DLL 名稱;若該檔案屬於應用程式本身,請繼續執行方法 2。
方法 2:修復或重新安裝受影響的應用程式
適用時機: 只有一個應用程式失敗,尤其是顯示的 DLL 位於該應用程式安裝目錄內。
操作步驟
- 關閉受影響的應用程式,並記錄 DLL 名稱與路徑。
- 若發行者提供維護或修復選項,請開啟該選項。
- 若無法修復或修復後仍無法解決錯誤,請從 Windows 設定解除安裝應用程式。
- 從原始發行者或商店來源重新安裝應用程式。
如何驗證
安裝後啟動同一個應用程式。修復成功時,應可進入正常的啟動畫面,且不會顯示原始 Bad Image 訊息。
方法 3:修復 Windows 元件與系統檔案
適用時機: 多個無關應用程式顯示 Bad Image 錯誤,或針對性的執行階段與應用程式修復後問題仍存在。
操作步驟
- 以系統管理員身分開啟命令提示字元。
- 執行下列命令並等待完成:
DISM /Online /Cleanup-Image /RestoreHealth
- DISM 完成後執行下列命令:
sfc /scannow
- 重新啟動 Windows。
如何驗證
重新啟動後,測試受影響的應用程式與另一個先前失敗的程式。若只有原始應用程式仍失敗,則其執行階段或安裝檔較可能是擁有元件。
方法 4:使用 Fionn DLL Fixer 修復錯誤
適用時機: DLL 擁有元件不明確、手動診斷涵蓋多個執行階段類別,或您希望透過引導式掃描檢查偵測到的遺失、損毀及版本不符 DLL 與系統問題。這是可減少手動診斷步驟的建議選項。
操作步驟
- 啟動 Fionn DLL Fixer。軟體會自動掃描電腦中的 DLL 與系統問題,並在掃描完成時顯示偵測結果。

- 掃描完成後,按一下「修復」以自動開始修復所有偵測到的 DLL 與系統問題。

- 請等待修復進行完成。在此期間,按鈕會變更為「修復中」,直到所有問題均已修復。

- 修復完成時,在確認對話方塊中按一下「確定」。若系統提示,請在確認問題是否解決前重新啟動電腦。

- 若重新啟動後問題仍然存在,請按一下「重新檢查」再進行一次掃描。若發現新問題,請再次按一下「修復」處理。

如何驗證
修復與任何必要的重新啟動後,開啟原始應用程式。若錯誤仍存在,請使用重新檢查;接著向應用程式開發者或官方支援提供確切 DLL 名稱、路徑、應用程式版本與掃描結果。
驗證清單
- 受影響的應用程式可開啟,且未出現 Bad Image 或 DLL 對話方塊。
- 原始 DLL 名稱與完整路徑未出現在新的錯誤訊息中。
- 若問題影響多個程式,另一個先前失敗的應用程式也能正常開啟。
- 元件安裝程式、修復命令或修復工具要求時,Windows 已重新啟動。
結論
請從 DLL 名稱與路徑開始,再修復實際提供該檔案的元件。Visual C++ 與 DirectX 名稱通常需要修復執行階段或必要元件;位於單一應用程式資料夾內的 DLL 通常需要修復應用程式。當多個應用程式失敗或涉及 Windows 元件時,請使用 DISM 與 SFC。若診斷仍不明確, Fionn DLL Fixer 可掃描並修復偵測到的 DLL 與系統問題,且提供重新檢查選項。重新開啟受影響程式以確認成功。若對話方塊仍出現,請向發行者提供完整訊息、DLL 路徑與應用程式版本。
常見問題
Bad Image DLL 錯誤代表什麼?
Windows 已找到 DLL,但無法正確載入。原因可能是檔案損毀、版本不相容,或提供該檔案的應用程式或元件已受損。
顯示 System32 路徑是否表示應先執行 DISM 與 SFC?
不是。資料夾位置本身無法識別 DLL 擁有元件。Visual C++ 執行階段 DLL 可能儲存在 System32,因此適用時請先查看檔名並修復其提供者。
哪個執行階段可能提供 VCRUNTIME140.dll 或 MSVCP110.dll?
VCRUNTIME 與 MSVCP 名稱通常與 Microsoft Visual C++ Redistributables 有關。請依受影響軟體發行者的官方必要元件或支援指引,選擇相符的執行階段。
我應該手動替換 DLL 嗎?
請勿使用未經驗證的獨立 DLL 下載檔。修復擁有該檔案的執行階段、應用程式或 Windows 元件,更可能還原一組相容的檔案。
我應向官方支援提供哪些資料?
請提供完整錯誤文字、DLL 檔名、顯示的路徑、受影響應用程式名稱與版本,以及已嘗試的修復步驟。
Emily Carter