Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

解決 IIS msxml3.dll 錯誤 800c0005「系統找不到指定的資源」三大方案

編輯:關於伺服器

錯誤現象

ASP/ASP.NET 頁面執行 ServerXMLHTTP 或 XMLHTTP 物件發起網路請求時,拋出錯誤:

msxml3.dll 錯誤 '800c0005'
系統找不到指定的資源

根本原因

伺服器安裝防火牆 (如 Windows 防火牆、第三方安全軟體) 攔截 dllhost.exe (COM+ 代理程序) 的網路存取,導致 MSXML 元件無法發起輸出 HTTP 連線。

三種解決方案 (由易到難)

方案一:暫時關閉防火牆驗證 (僅限測試環境)

  1. 控制台 → Windows 防火牆 → 關閉防火牆 (所有網路位置)。
  2. 重新測試 ASP 頁面,若錯誤消失,確認為防火牆攔截問題。
  3. 警告: 生產環境嚴禁長期關閉防火牆,請改用方案二或三。

方案二:防火牆加入 dllhost.exe 信任規則 (推薦)

  1. 開啟防火牆進階設定 (WF.msc)。
  2. 新增「輸出規則」→ 程式 → 路徑:%windir%\System32\dllhost.exe。
  3. 動作:允許連線 → 套用至所有設定檔 (網域/專用/公用) → 命名「MSXML dllhost 允許輸出」。
  4. 同理新增「輸入規則」允許 dllhost.exe 輸入 (視應用需求)。
  5. 重新測試,錯誤應解決。

方案三:重設 DNS 伺服器設定 (針對網路解析異常)

  1. 網路連線 → 區域連線 → 內容 → Internet 通訊協定 (TCP/IP) → 內容。
  2. 重新輸入「慣用 DNS 伺服器」與「備用 DNS 伺服器」IP (例如 8.8.8.8 / 114.114.114.114)。
  3. 確定離開,重新測試。

補充說明

  • 錯誤代碼 0x800C0005 即 INET_E_RESOURCE_NOT_FOUND,代表 WinINet/MSXML 無法解析或連線目標資源。
  • 若伺服器有多張網卡,確認 DNS 設定在正確介面卡上。
  • 第三方防火牆 (如 360、安全狗、雲鎖) 需在其介面中加入 dllhost.exe 白名單,而非 Windows 原生防火牆。
Copyright © Windows教程網 All Rights Reserved