DLL 通常不會像獨立程式一樣安裝。如果 Windows 顯示檔案遺失,正確做法取決於應由哪個元件提供該檔案:程式本身、Visual C++ Redistributable、DirectX 或 Windows。不要先下載檔案並將它複製到系統資料夾。本指南提供三種實用做法:還原提供 DLL 的元件、檢查 Windows,以及診斷 DLL。完成每種做法後,請測試發生錯誤的程式或遊戲是否能正常啟動。
是否真的需要手動安裝 DLL?
DLL 是應用程式連同其相依項目載入的程式庫,並非通用安裝套件。因此,「下載
xxx.dll
並放入
System32
」通常無法解決根本原因。該檔案可能還需要其他 DLL、與應用程式版本不相符,或具有不同的架構。
| 需要的項目 | 安全的做法 |
|---|---|
| 特定程式的 DLL | 從官方來源重新安裝程式 |
vcruntime
、
msvcp
、
msvcr
| 安裝或修復相對應的 Microsoft Visual C++ Redistributable |
d3dx9
、
xinput
、
d3dcompiler
| 還原官方 DirectX 元件或重新安裝遊戲 |
| Windows 系統 DLL | 先執行 DISM,再執行 SFC |
| 開發人員提供的個別 DLL | 嚴格遵循開發人員文件 |
| 來自網際網路的未知 DLL | 不要手動安裝 |
如何安裝 DLL:方法快速比較
| 方法 | 最適合的情況 | 效果 | 使用者所需操作 |
|---|---|---|---|
| 安裝元件或重新安裝程式 | 單一應用程式出錯,或已知程式庫名稱 | 正確識別元件時效果很高 | 低 |
| DISM 和 SFC | 多個程式出錯或系統 DLL 問題 | 對 Windows 元件效果很高 | 中 |
| Fionn DLL Fixer | 原因不明,或需要檢查 DLL 與相依性 | 自動化診斷與修復 | 低 |
方法 1:安裝元件或重新安裝程式
適用時機:
錯誤只在一個程式中出現,或檔案名稱指向已知的執行階段。例如,若缺少
vcruntime140.dll
,請勿尋找單一檔案;應安裝或修復 Microsoft Visual C++ Redistributable。若為
d3dx9
、
xinput
或
d3dcompiler
,請使用遊戲的官方安裝程式或官方 DirectX 元件。
- 記下錯誤訊息中的完整 DLL 名稱及程式名稱。
- 如果錯誤只與一個程式有關,請開啟
設定 → 應用程式 → 已安裝的應用程式
。

- 解除安裝有問題的程式,或在可用時使用其官方修復功能。
- 僅從開發人員官方網站或您取得程式的商店下載安裝程式。
- 安裝程式或其指定的元件,然後再次啟動程式。
驗證: 程式可啟動且不再顯示「找不到 DLL」訊息。若安裝程式再次要求相同檔案,請確認元件版本符合應用程式架構:32 位元程式使用 x86,64 位元程式使用 x64。
DLL 應安裝到哪裡:System32 還是 SysWOW64?
不要只依資料夾名稱決定位置。在 64 位元 Windows 中,
System32
包含 64 位元系統程式庫,而
SysWOW64
包含 32 位元程式庫;這些名稱在歷史上看起來正好相反。不過,Windows 並非只從一個固定資料夾尋找 DLL:應用程式目錄、系統目錄及其他允許的搜尋路徑都可能參與。此外,DLL 本身也可能依賴其他程式庫。
是否需要透過 regsvr32 註冊 DLL?
預設不需要。
regsvr32
不是 DLL 安裝程式:它僅適用於支援對應自我註冊機制的 DLL 與 OCX。一般的 DLL 遺失錯誤並不表示需要註冊。只有在程式開發人員或官方文件明確要求註冊特定檔案,且提供適合的命令時,才使用
regsvr32
。
方法 2:修復 Windows 系統檔案
適用時機: 多個無關程式出現相同錯誤、Windows 發生故障後,或懷疑系統元件已損毀時。Microsoft 建議先執行 DISM,再執行 SFC。

- 開啟 Windows 終端機(系統管理員) 。
- 執行下列命令並等待完成:
DISM.exe /Online /Cleanup-image /Restorehealth - 在 DISM 完成後執行下列命令:
sfc /scannow
- 如果 Windows 顯示已修復檔案,請重新啟動電腦。
- 再次啟動有問題的應用程式。
驗證: SFC 完成掃描並回報結果,且應用程式可開啟而不再出現原本的錯誤。詳細資訊請參閱 Microsoft 的 SFC 與 DISM 說明 。
方法 3:使用 Fionn DLL Fixer 檢查 DLL 與系統元件
適用時機: 需要診斷遺失、損毀或不相容的 DLL、System32 問題,或 DirectX、Visual C++、.NET、OpenAL 與 XInput 相依性,而手動判斷元件耗時太久時。適用於 Windows 的 Fionn DLL Fixer 支援掃描、修復及重新檢查。
- 啟動 Fionn DLL Fixer,並等待其自動完成 DLL 與系統問題掃描。

- 掃描完成後,按一下
Repair
以開始修復偵測到的問題。

- 等待程序完成;處理期間按鈕會顯示
Fixing
。

- 在確認對話方塊中按一下
Ok
;系統提示時請重新啟動電腦。

- 若重新啟動後錯誤仍存在,請按一下
Recheck
;如偵測到新問題,再次選擇
Repair
。

驗證: 重新掃描不再顯示原本的問題,且應用程式可正常啟動。此方法可簡化診斷,但若損毀的是特定程式本身的檔案,仍無法取代重新安裝該程式。
結論
若要正確在 Windows 安裝 DLL,請先判斷提供該檔案的元件,而非為單一檔案尋找資料夾。單一程式出錯時,重新安裝該程式或官方執行階段;多個程式發生系統性錯誤時,先執行 DISM,再執行 SFC。如果錯誤來源不明,且需要檢查 DLL、系統路徑與遊戲相依性,可使用 Fionn DLL Fixer 。只有問題程式成功啟動才能確認結果。若訊息沒有改變,請保留完整錯誤文字並聯絡開發人員的官方支援。
常見問題
可以把 DLL 放進程式資料夾嗎?
只有在開發人員官方文件明確針對特定程式版本這樣要求時才可以。其他情況下,請重新安裝程式或其執行階段;這樣才能還原相容的一組相依項目。
為什麼 64 位元 DLL 不應自動放入 SysWOW64?
在 64 位元 Windows 中,
SysWOW64
是為 32 位元系統程式庫而設。不過,手動選擇資料夾仍不是通用解法,因為 DLL 會依搜尋規則載入,且可能依賴其他檔案。
何時需要使用 regsvr32 命令?
僅適用於支援自我註冊的 DLL 或 OCX,並且必須依開發人員的明確指示使用。它無法修復大多數 DLL 遺失訊息。
vcruntime140.dll 應如何處理?
從官方來源安裝或修復相對應的 Microsoft Visual C++ Redistributable,或重新安裝需要它的程式。請勿從非官方目錄下載單一檔案。
DISM 與 SFC 都需要執行嗎?
Microsoft 建議依序使用 DISM,再使用 SFC 來修復系統檔案。這些命令無法取代重新安裝個別程式的檔案。
Emily Carter