WINDOWS UPDATE 無法正常更新 0x80070005 Access Denied


問題描述︰SBS 2003/WINDOWS UPDATE無法正常更新



說明與方法


– 自動更新服務無法正常啟動, 手動去啟動服務會發生存取被拒


– 執行IE進行 Windows Update 則會發生 0x80070005的錯誤


– 手動安裝 AU Agent 在註冊DLL檔案發生 0x80070041D的錯誤



[Compare the windows update file]


good one: (from VM machine)


2009-11-18           10:17:25:171       536        408         Setup      Update NOT required for C:\WINNT\system32\cdm.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:171       536        408         Setup      Update NOT required for C:\WINNT\system32\wuapi.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:203       536        408         Setup      Update NOT required for C:\WINNT\system32\wuapi.dll.mui: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:203       536        408         Setup      Update NOT required for C:\WINNT\system32\wuauclt.exe: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:203       536        408         Setup      Update NOT required for C:\WINNT\system32\wuaucpl.cpl: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:203       536        408         Setup      Update NOT required for C:\WINNT\system32\wuaucpl.cpl.mui: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:218       536        408         Setup      Update NOT required for C:\WINNT\system32\wuaueng.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:218       536        408         Setup      Update NOT required for C:\WINNT\system32\wuaueng.dll.mui: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:218       536        408         Setup      Update NOT required for C:\WINNT\system32\wucltui.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:234       536        408         Setup      Update NOT required for C:\WINNT\system32\wucltui.dll.mui: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:234       536        408         Setup      Update NOT required for C:\WINNT\system32\wups.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-18           10:17:25:250       536        408         Setup      Update NOT required for C:\WINNT\system32\wups2.dll: target version = 7.4.7600.226, required version = 7.4.7600.226



bad one: (which is SBS 2003)


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\cdm.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\SoftwareDistribution\Setup\ServiceStartup\wuapi.dll\7.4.7600.226\wuapi.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\SoftwareDistribution\Setup\ServiceStartup\wuapi.dll\7.4.7600.226\wuapi.dll.mui: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\wuauclt.exe: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\wuaucpl.cpl: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\wuaucpl.cpl.mui: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\wuaueng.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\wuaueng.dll.mui: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\wucltui.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\wucltui.dll.mui: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:218       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\SoftwareDistribution\Setup\ServiceStartup\wups.dll\7.4.7600.226\wups.dll: target version = 7.4.7600.226, required version = 7.4.7600.226


2009-11-13           08:43:26:234       12224    244c       Setup      Update NOT required for C:\WINDOWS\system32\SoftwareDistribution\Setup\ServiceStartup\wups2.dll\7.4.7600.226\wups2.dll: target version = 7.4.7600.226, required version = 7.4.7600.226



在更新 AU Agent的時候, wuapi.dll也沒正確被複製到正常的資料夾


[windowsupdate.log]


2009-11-13           08:41:18:578       8244       2d7c       Setup      Starting file operations for section cdm


2009-11-13           08:41:33:640       8244       2d7c       Setup      Successfully copied source file C:\WINDOWS\SoftwareDistribution\WebSetup\cdm.dll to C:\WINDOWS\system32\cdm.dll.wusetup.2406118265.new


2009-11-13           08:41:33:796       8244       2d7c       Setup      Setup successfullly moved C:\WINDOWS\system32\cdm.dll.wusetup.2406118265.new to C:\WINDOWS\system32\cdm.dll


2009-11-13           08:41:33:796       8244       2d7c       Setup      File operations for section cdm completed successfully


2009-11-13           08:41:33:796       8244       2d7c       Setup      Starting file operations for section wuapi


2009-11-13           08:41:37:406       8244       2d7c       Setup      Successfully copied source file C:\WINDOWS\SoftwareDistribution\WebSetup\wuapi.dll to C:\WINDOWS\system32\wuapi.dll.wusetup.2406122015.new


2009-11-13           08:41:37:406       8244       2d7c       Setup      WARNING: Could not move C:\WINDOWS\system32\wuapi.dll to C:\WINDOWS\system32\wuapi.dll.wusetup.2406122031.bak due to 0x80070020



解決方法


1. 手動將以下檔案從 system32\SoftwareDistribution 資料夾複製到 C:\Winodws\System32 資料夾底下


– wuapi.dll


– wuapi.dll.mui


– wups.dll


– wups2.dll


2. 執行 regsvr32 filename 手動註冊以上的 dll 檔案


3. 把以下機碼手動刪除


clip_image002


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Setup\ServiceStartup]


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Setup\ServiceStartup\wuapi.dll]


“TargetFile”=”C:\\WINDOWS\\system32\\wuapi.dll”


“CacheFile”=”C:\\WINDOWS\\system32\\SoftwareDistribution\\Setup\\ServiceStartup\\wuapi.dll\\7.4.7600.226\\wuapi.dll”


“RegistrationFlags”=dword:00000001


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Setup\ServiceStartup\wups.dll]


“TargetFile”=”C:\\WINDOWS\\system32\\wups.dll”


“CacheFile”=”C:\\WINDOWS\\system32\\SoftwareDistribution\\Setup\\ServiceStartup\\wups.dll\\7.4.7600.226\\wups.dll”


“RegistrationFlags”=dword:00000001


“NoVersionCheck”=dword:00000001


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Setup\ServiceStartup\wups2.dll]


“TargetFile”=”C:\\WINDOWS\\system32\\wups2.dll”


“CacheFile”=”C:\\WINDOWS\\system32\\SoftwareDistribution\\Setup\\ServiceStartup\\wups2.dll\\7.4.7600.226\\wups2.dll”


“RegistrationFlags”=dword:00000001


“NoVersionCheck”=dword:00000001


4. 打開 IE執行Windows Update, 已可正常更新


5. 重新開機檢查以下服務, 正常執行中, Windows Update也可正常安裝更新


– Automatic Updates


– Background Intelligent Transfer Service


– Cryptographic Services

Comments (0)