The other day my Windows XP machine suddenly can not use Windows Update. Internet Explorer went to the Windows Update web site, but stucked in loading the ActiveX control. Nothing is shown, and no progress is made. After I clicked the Microsoft Update link, it showed error 0x800A0030.

Searching the Internet shows that error 0x800A0030 is usually shown when Microsoft VBScript Engine can't load an dll. This leads me to believe this is a registration issue.

Checking the log file at %windir%\WindowsUpdate.log, I saw the following information:

2008-02-17    22:08:55:158    2712    f74    Setup    ***********  Setup: Checking whether self-update is required  ***********
2008-02-17    22:08:55:158    2712    f74    Setup      * Inf file: C:\WINDOWS\SoftwareDistribution\WebSetup\wsus3setup.inf
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\cdm.dll: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wuapi.dll: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wuapi.dll.mui: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wuauclt.exe: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wuaucpl.cpl: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wuaucpl.cpl.mui: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wuaueng.dll: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wuaueng.dll.mui: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wucltui.dll: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wucltui.dll.mui: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wups.dll: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup    Update NOT required for C:\WINDOWS\system32\wups2.dll: target version = 7.0.6000.381, required version = 7.0.6000.381
2008-02-17    22:08:55:158    2712    f74    Setup      * IsUpdateRequired = No

Apparently my Windows Update binaries are all up to date. However, Windows Update still did not work.

Out of desperation, I ran regsvr32.exe on all the binaries listed above. Hallelujah! It works now!

Apparently somehow my Windows Update registration is corrupted. Time to hunt down the cause. But I feel safe now that my Windows Update is back online.