Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

解決 WinXP 無法更新錯誤 0x80070422 完整攻略

編輯:XP 系統應用技巧

問題背景:優化軟體弄巧成拙

某德系優化工具為追求速度停用多項服務,導致防火牆、安全中心、自動更新全掛點。訪問 Windows Update 出現錯誤碼 0x80070422,提示服務被停用。本文記錄完整修復流程,供同溫層參考。

核心修復步驟

第一階段:還原優化軟體設定

執行該優化程式的「還原功能」(通常選項 4),嘗試恢復被停用的服務。若報錯「相關元件未啟動」,進入第二階段。

第二階段:重新註冊關鍵 DLL

以系統管理員身分開啟命令提示字元,依序執行:

regsvr32 qmgr.dll
regsvr32 qmgrproxy.dll

qmgrproxy.dll 可能提示「找不到模組」,經測試不影響修復結果,可忽略。

第三階段:服務管理器全開

開啟 services.msc,將下列服務啟動類型設為「自動」並啟動:

  • Background Intelligent Transfer Service (BITS)
  • Automatic Updates (自動更新)
  • Event Log (事件記錄)
  • Remote Procedure Call (RPC)

若仍失敗,重複上述 DLL 註冊與服務啟動步驟 2-3 次。

通用排查清單 12 項(依成功率排序)

  1. 必須用 IE 瀏覽器,Firefox/Opera/IE Tab 皆可能失效。
  2. 允許彈出視窗,Windows Update 需彈出 ActiveX 安裝視窗。
  3. 檢查 hosts 檔(%windir%\system32\drivers\etc\hosts),確無竄改微軟更新網址。
  4. 清空 IE 快取:暫存檔、Cookie、歷史記錄全刪。
  5. 確認管理員身分,或刪除多餘帳號後重開機。此項最關鍵,非管理員也可能更新但易生不可預期錯誤。
  6. 調整 IE 安全性設定:Internet 選項 → 安全性 → 自訂層級,適當放寬 ActiveX/Script 限制。
  7. 批次註冊核心 DLL:
    regsvr32 urlmon.dll
    regsvr32 msxml3.dll
    regsvr32 jscript.dll
    regsvr32 qmgr.dll
    regsvr32 qmgrproxy.dll
    
  8. 修復 SvcHost 註冊表(針對 0x8007043B):
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SvcHost\netsvcs
    在數值資料中加入 BITS 與 WUAUSERV,重開機。
  9. 刪除 DataStore 資料夾(針對 0x80070002):
    %windir%\SoftwareDistribution\DataStore
    先停用自動更新服務再刪除,重開機自動重建。
  10. 停用 Proxy 並檢查受限網站,確保更新網址不在限制清單。
  11. 校正系統日期時間,偏差過大會導致 SSL 憑證驗證失敗。
  12. 確保核心服務全開:services.msc 啟用所有可啟動服務,事後再逐一精簡。

實測心得

本案例經「還原優化 → 註冊 DLL → 啟動服務」三步驟即解決。關鍵在於優化軟體往往過度停用 BITS 與自動更新相依服務,導致更新鏈條斷裂。建議日常優化僅調整視覺效果、啟動項,切勿動作業系統核心服務。

Copyright © Windows教程網 All Rights Reserved