曾經聽到有人推薦讓WindowsXP快10倍的軟件,這是一個德國人做的優化程序,以停止部分服務達到優化的目的,但是在按照要求進行優化以後,很多比較有用的服務也不能使用了,包括防火牆、安全中心、自動更新.別的好說,如果機器不能自動更新,實在是一件讓人煩心的事.今天下午筆者就碰到了這個問題.
在訪問Windows Update或者Microsoft Update網站時,網頁提示錯誤代碼0×80070422 (顯示在屏幕右上角),大意是提示Windows Update服務被禁用,需要到組策略啟動相應的服務.不過鑒於在此之前曾經做過優化,在進行操作之前必須先用那個優化程序的還原功能,也就是在操作時選第4項.可是在操作時又出現了問題.
啟動自動更新服務時出現提示對話框,說與此服務相關的組件未能啟動,因此啟動失敗.這顯然也是那個優化方案的結果.為此又去百度進行了查找,發現了需要先重新注冊的dll文件.
注冊 qmgr.dll和qmgrproxy.dll
regsvr32 qmgr.dll
regsvr32 qmgrproxy.dll
在注冊 qmgrproxy.dll 時單擊“確定”後係統提示說找不到模塊,經過測試不影響恢複.
做完後我們回到組策略窗口,啟動所有能啟動的服務.不行的話再從頭到尾來一遍.
一切工作完成,問題解決.
遇到同類問題的朋友可以參考這個解決方法.
下麵把運行windows update時遇到錯誤情況的解決方案歸納如下,遇到問題時可以依次嚐試:
1、確保用的是IE,不是firefox或者opera(為了cb廣大的opera fans特別提醒,不要習慣成自然^_^), 不推薦用IE tab.
2、禁止當前瀏覽器攔截彈出窗口,換句話說就是允許彈出窗口(同樣很簡單,但是容易被忽略).
3、查看hosts文件有沒有被修改,恢複其原狀.hosts文件一般位於
$WINDIR$\system32\drivers\etc.
4、清空IE緩存,臨時文件、曆史記錄.
5、確保自己當前是係統管理員,或者在“控製麵板”-“用戶帳戶”刪除所有不用的帳戶,然後重新啟動.這一條是最重要的,即使不用管理員帳號也能更新,但是也許會出現不可預知的錯誤
6、適當的調整ie對activex、javascript的限製,可以在internet選項的“安全”選項卡裏調整.如果怕影響安全性,可以僅對http://update.microsoft.com進行調整.
7、注冊URLMON.dll,MSXML3.dll,jscript.dll,qmgr.dll和qmgrproxy.dll:
regsvr32 dll名稱.dll
8、將WUAUSERV和BITS添加到SvcHost進程中:打開REGEDIT,瀏覽到
HKEY_Local_Machine\Software\Microsoft\WindowsNT\CurrentVersion\SvcHost
打開“netsvcs”項.在“數值數據”下,將“BITS”和“WUAUSERV”添加到服務列表中.修改以後重新啟動.【適用於錯誤代碼0×8007043B】
9、如果 DataStore 文件夾中的內容不匹配,【適用於錯誤代碼0×80070002】可以考慮刪除
%windir%\SoftwareDistribution\DataStore
文件夾的所有內容,刪除不了就先把自動更新服務停用.
10、不要使用代理.檢查是不是Windowsupdate在受限站點的名單裏麵;如果是,將其刪掉.
11、設置合理的係統日期和時間.
12、確保相關服務啟動.服務名稱:Automatic update(或者“自動更新”),BITS(或者“後台智能傳送服務”)等.方法:運行services.msc,然後啟動相應的服務,如果不知道應該啟動哪個,就把能啟動的都啟動,日後再逐一排除.