替換系統檔案(如 shell32.dll、explorer.exe)可實現深度介面客製化,但 Windows 檔案保護(WFP)機制會自動還原被替換檔案。本文深度解析 WFP 運作原理、SP1 備份機制變化,並提供三種替換系統檔案的實戰方法。警告:操作不當導致系統崩潰,請務必備份並理解風險後再嘗試。
%SystemRoot%\System32(如 C:\Windows\System32)%SystemRoot%\System32\DllCache%SystemRoot%\ServicePackFiles\i386介面元素(圖示、位圖、對話框、文字)多以資源形式內嵌於 DLL 中(如工具列按鈕圖案在 shell32.dll)。替換含新資源的 DLL 即可變更介面。
Win2000+ 引入 WFP:偵測 System32 關鍵檔案被修改/替換 → 自動從 DllCache 還原 → 使用者替換失效。此機制有效防範病毒竄改,但阻礙合法客製化。
安裝 SP1 時,被更新的系統檔案於 ServicePackFiles\i386 再建一份備份。此後 WFP 還原來源為 DllCache(未更新檔)與 i386(已更新檔)雙重備份。
System32 目標檔案。DllCache 與 ServicePackFiles\i386(若存在)。sfc /purgecache 清空快取後替換sfc.exe /purgecache 清空 DllCache。System32 目標檔(WFP 找不到快取無法還原)。ServicePackFiles\i386(若存在)。Replacer 等工具可自動處理:停用 WFP 服務、備份原檔、替換目標檔、更新快取目錄、重啟驗證。適合批次替換多個檔案。
System32、登錄、建立系統還原點。理解 WFP 雙重備份機制(DllCache + i386)是成功替換系統檔案的關鍵。安全模式法最簡單可靠,命令列法適合單檔快速替換,工具法適合批次作業。無論哪種方法,「備份先行、逐步驗證」是不變鐵律。