Windows 修補程式(Hotfix)主要有兩種封裝格式,需不同安裝參數:
SFXCAB.EXE,支援 /U /Q /Z 參數(無訊息、安靜、不重開機)。WEXTRACT.EXE,不支援 /U /Z,僅支援 /Q。批次安裝時若參數錯誤會導致安裝失敗。
用文字編輯器開啟兩類檔案可發現獨特字串:
_SFX_CAB_EXE_PATHCABINET 與 WEXTRACT利用 findstr 掃描即可判斷類型並套用正確參數。
@echo off
FOR /R %%F IN (*.exe) DO (
@findstr "_SFX_CAB_EXE_PATH" "%%F" >nul && (
@start /wait %%F /U /Q /Z
) || (
@start /wait %%F /Q
)
)
qchain.exe
說明:
FOR /R 遞迴掃描所有子目錄,無需集中檔案。findstr ... >nul 偵測特徵字串,成功則執行類型一參數,否則類型二參數。start /wait 依序安裝,避免並行衝突。qchain.exe 串連重開機需求(2002/12 後修補程式多內建,可省略)。install_hotfixes.bat 放在修補程式根目錄。.exe 修補程式。