Windows Server 2003 (含 SP1/SP2) 安裝 IIS 後,「全球資訊網發佈服務」 (W3SVC) 無法啟動,事件檢視器記錄:
2147500034 (0x80004002) — E_NOINTERFACE (不支援此介面)。核心 COM 元件 (DLL) 註冊資訊遺失或損毀,導致 IIS 組態管理介面 (IAppHostAdminManager 等) 無法實例化。常見於:
regsvr32 %windir%\system32\shell32.dll
regsvr32 %windir%\system32\browseui.dll
regsvr32 %windir%\system32\mshtml.dll
regsvr32 %windir%\system32\oleaut32.dll
regsvr32 %windir%\system32\ole32.dll
regsvr32 %windir%\system32\actxprxy.dll
regsvr32 %windir%\system32\urlmon.dll
regsvr32 %windir%\system32\shdocvw.dll
iisreset 重新啟動 IIS 服務。建立 fix_iis_dll.reg.bat:
@echo off
echo 正在重新註冊 IIS 核心 DLL...
for %%f in (
shell32.dll
browseui.dll
mshtml.dll
oleaut32.dll
ole32.dll
actxprxy.dll
urlmon.dll
shdocvw.dll
) do (
echo 註冊 %%f ...
regsvr32 /s %windir%\system32\%%f
)
echo 重新啟動 IIS...
iisreset
echo 完成。請檢查 IIS 服務狀態。
pause
HKEY_CLASSES_ROOT\CLSID\{...} 相關 IIS 類別 ID 是否存在。sfc /scannow 修復系統檔案。NT AUTHORITY\NETWORK SERVICE、IUSR_<機器名>、IWAM_<機器名> 帳號存在且密碼同步 (adsutil.vbs 或 IIS_Creds 工具)。「不支援此介面」 (0x80004002) 本質是 COM 元件註冊遺失。8 核心 DLL 重註冊 + iisreset 為經驗證最高效修復路徑。建議將批次檔納入伺服器維護工具箱,遇到即用。