I had a similar problem when I had to do a repair install on my WinXP. I found this post, and the regserv on the dlls worked for me.
I also received a long letter from microsoft tech support... I'll put their ideas below what I found that worked.
Suggestion (1)
--------------
In Internet Explorer:
TOOLS --> INTERNET OPTIONS
PROGRAMS tab..
MANAGE ADD-ONS button..
Make sure the following (I think this is right) exist and are enabled:
MUWebControl Class
Update Class
Windows Genuine Advantage
WUWebControl Class
Reboot.
Open Internet Explorer and manually go to this page:
http://update.microsoft.com/microsoftupdate/v6/
Suggestion 2
--------------
Start --> Run
CMD
Click OK.
Enter these in Command Prompt Window ONE at a time, pressing ENTER after
entering each one:
(Patience on the first and last ones especially..)
net stop wuauserv
regsvr32.exe wuapi.dll
regsvr32.exe wups.dll
regsvr32.exe wuaueng.dll
regsvr32.exe wucltui.dll
regsvr32.exe MSXML3.dll
net start wuauserv
Close the CMD Prompt Window.
Open Internet Explorer and manually go to this page:
http://update.microsoft.com/microsoftupdate/v6/
-------------------------------------\
From microsoft:
This error is most likely caused by one of the following conditions:
1. The Windows Update Temporary folder is corrupted.
2. The Windows Update Agent 3.0 is not installed properly.
3. The Windows Installer 3.1 is corrupted.
We can perform the following steps to get the issue resolved. After trying each suggestion, please go to the Windows Update site to check the issue. Thanks for your cooperation.
NOTE: Some third party programs can also affect the Windows Update service. If you are running any third party applications such as Spyblocker, Internet or web accelerators (programs designed to boost the speed of the Internet connection), security or anti-virus programs (Norton, McAfee, etc.), I recommend we temporarily disable or shut them down and then try accessing the Windows Update site later. Please be sure to enable them again when completing the update process.
Suggestion 1: Reinstall Windows Installer 3.1
==================================
1. Press Start and choose Run.
2. Type in "cmd" (without quotation marks) and press OK.
3. In the command line, type in the following command and press Enter:
MSIexec /unregister
4. Then, type in the following command and press Enter:
MSIexec /regserver
After finishing the above steps, please check the result again. If the issue persists, please click Start, click Control Panel, and click Add/Remove Programs to check if Windows Installer 3.1 has been installed. If it has, please highlight and remove it. After that, please reinstall Windows Installer 3.1 from the following link.
Windows Installer 3.1 Redistributable (v2)
http://www.microsoft.com/downloads/details.aspx?FamilyID=889482fc-5f56-4a38-b838-de776fd4138c&DisplayLang=en
Suggestion 2: Clean up Windows Update temporary folder
===========================================
1. Click Start, Run, type: cmd and press Enter. Please run the following command in the opened window.
Net stop WuAuServ
2. Click Start, Run, type: %windir% and press Enter.
3. In the opened folder, rename the folder SoftwareDistribution to Sdold.
4. Click Start, Run, type: cmd and press Enter. Please run the following command in the opened window.
Net start WuAuServ
If the issue still persists, please move on to suggestion 3.
Suggestion 3: Reinstall Windows Update Agent 3.0
======================================
1. Please download the file from the following link:
http://download.windowsupdate.com/v7/windowsupdate/redist/standalone/WindowsUpdateAgent30-x86.exe
2. Save the file to C: drive.
3. Click Start->Run, type: "C:\WindowsUpdateAgent30-x86.exe /wuforce" (without quotations) and then press Enter to install the Windows Update engine.
There is a space between "C:\WindowsUpdateAgent30-x86.exe" and "/wuforce"
If the above suggestions do not work, please re-enable the firewall and antivirus programs, and provide me with the following information for research.
How to collect System Information:
==========================
The System Information can provide us with more information about the current status of the system. I would like to check it for you. Please send it to me using the following steps:
1. Click "Start", go to "Run", type in "MSINFO32" (without quotation marks) and press Enter to start System Information.
2. On the popup window, on the menu bar, click "File", and click "Save"; save it as an NFO file, such as "system.nfo" to your local Desktop.
3. Find the file, right-click on this file, click "Send To", and click "Compressed (zipped) Folder".
4. Please send it as an attachment to v-30rizh@mssupport.microsoft.com.
How to collect the Windows Update log file:
================================
Note: There are two Windows Update log files with similar names, we will be using the "WindowsUpdate.log" file without a space in the middle of the name.
1. Click on Start, Run and type "WindowsUpdate.log" (without the quotes)
2. Click on the OK button. We will see a file named "WindowsUpdate.log"
3. Now click on the "File" menu and then click on the "Save As" and select "Desktop" in the "Save in" option on the top of the window.
4. Click on the Save button. The file will be saved to your Desktop. Please send the file as an attachment in an email to v-30rizh@mssupport.microsoft.com
However, if the file is unable to be collected by the above steps, we can also use the following method to collect it.
1. Click "Start", "Run", type: %windir% and then press Enter.
2. In the open window, we will see a file named "WindowsUpdate.log"
3. Please send it as an attachment to: v-30rizh@mssupport.microsoft.com
Note: When attaching files to emails, the process will vary depending on the email application being used. While you are composing the email, most applications will provide you with either an "Attach" button or Paper Clip Icon to click in order to attach a file. After clicking this button/icon you must browse to the file you wish to attach and select it by either double clicking it or clicking it once and then clicking on the "Attach" button.