Repair Windows Update
Automatic Updates is Microsoft's method of getting new critical updates out to users as quickly as possible. The feature is available in Windows Vista, Windows XP SP1 and higher, Windows 2003 Server and Windows 2000 SP4. If you are not on these versions then you should update before attempting to use Automatic Updates.
Most of the time this feature will work without any issues. However it can get stuck, or fail to download the updates correctly, or try to install the same updates time and time again. This page outlines the common problems and some of the fixes that you can use to resolve those issues.
Accessing Automatic Updates Configuration.
To be begin with, you should look at the Automatic Updates Configuration to see how it is currently setup. There are a number of options which can account for the feature not working in the way that you are expecting.
Depending on your Operating System, you will access the configuration of Automatic updates in a different way.
1. Click Start, Settings, Control Panel.
2. Double click on "Automatic Updates"
1. Start, (Settings if on classic Start Menu), Control Panel
2. Double click on "System".
3. Choose the Automatic Updates tab
1. Start, Control Panel.
2. Double click on Windows Update.
3. On the left is "Change Settings".
After accessing the option you will be given three options. These are pretty self explanatory, but are basically
1. Inform you that new updates are available
2. Download and tell you when they are ready to install and download
3. Install and then ask for a reboot.
The option you choose depends on the one that you are most comfortable with.
The updates will be downloaded in the background using a feature called smart downloading which uses spare bandwidth to download the updates, thus not interfering with your browsing and other work.
Automatic Updates Troubleshooting
Automatic Updates not Downloading
If you have just built your machine, or it is a new machine, then there will be a lot of updates for you to download and install. By default, Windows should look for updates every 17 - 22 hours. If the updates don't start downloading (an icon will appear beside your clock) then you can force the update system to check and there are three ways you can do this, depending on your machine configuration.
1. Access Automatic Updates as per the list above.
2. Unselect "Keep My Computer up to date." Press Apply and OK to close the window.
3. Enter it again and re-enable "Keep My Computer up to date". Press Apply and OK to close the window.
If the entire "Automatic Updates" window is greyed out, and the machine is on on a domain, then your settings are configured centrally. You will need to do a small registry hack to force the update process to start. (Usual registry warnings - if you don't know what you are doing, then don't attempt this)
1. Go into Computer Management in Control Panel, choose Services and stop the "Automatic Updates" Service
2. In the registry go to "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\"and verify that the key "AUState" is set "2"
3. Below that AUState key there is a further key called "LastWaitTimeout". Delete that key.
4. Close the registry editor.
5. Restart the "Automatic Updates" Service.
The third way works only on Windows Vista, Windows XP SP2, Windows 2003 Server or Windows 2000 after it has used the latest version of the Windows update client.
Drop in to a command prompt and enter the following command:
Note the space between the exe and the / but no space after the / or in between the words detect and now
The machine will start its detection cycle within minutes of the command being issued.
The forth method works in Windows Vista only.
Open Windows Update from Control Panel. Click on "Check for Updates" on the left.
If none of the above work, then you may want to try resetting the automatic updates system.
Greyed Out Settings on a standalone machine
If your machine is a member of a domain, in an office for example, then the automatic update settings are probably controlled by your network administrator. However if your automatic updates settings are greyed out and the machine does NOT belong to a domain, then there could be other causes.
- You're not logged on with an account that has local administrator permissions
* Automatic Updates Policy is enabled
* Access to Automatic Updates / Windows Update has been blocked by a Group Policy
To fix the policy related issues, try the following:
(Usual registry warnings - if you don't know what you are doing, then don't attempt this)
1. In the registry navigate to the following location:
2. In the right-pane, delete the two values AUOptions and NoAutoUpdate
3. Navigate to the following location: "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\WindowsUpdate"
4. Delete the value DisableWindowsUpdateAccess
Group Policy Editor
If you are using Windows XP Professional on a standalone machine then you should also check the Group Policy editor for configuration issues.
1. Click Start, Run and type MMC.
2. Choose File, Add/Remove Snap in.
3. Select Group Policy from the list.
4. Open the following location: Computer Configuration, Administrative Templates, Windows Components, Windows Update.
5. Change/verify that all the settings are set to "Not configured" (if you wish to to disable the GP control altogether) or verify the settings are as required.
6. Still in GP, open the following location User Configuration, Administrative Templates, Windows Components, Windows Update.
7. Change/verify that "Remove access to all Windows Update features" is set to "Not Configured".
Prompting to Install the Same Updates Every Day
If you are being asked to install the same updates every day, then the catalogue that manages what updates you have installed is probably corrupt. There are a number of resolutions that you can try, in order to resolve this problem.
1. Open "Computer Management" from within Administrative Tools in Control Panel.
2. Expand the Services and Applications branch.
3. In the list of services, find "Automatic updates".
4. Right click on it and choose "restart". If this option isn't available, choose "Stop" and then once the service has been stopped, right click again and choose "Start".
1. Stop the "Automatic Updates" service from within "Services" in "Computer Management".
2. Browse to Program Files, Windows Update.
Note: If you don't see the "Windows Update" folder, then you need to turn on "Show Hidden Files and Folders". To do this click on Tools, Folder options. Then choose the "View" tab. Scroll down until you find the section "Hidden Files and Folders" and change the radio button to "Show hidden files and folders".
3. Delete everything in that folder except for the folder called "V4".
4. Double click on the "V4 folder".
5. Delete everything in that folder except for "iuhist.xml" (you may not see the xml extension if you don't view extensions normally.
6. Close the Explorer windows. If you had to enable "Show Hidden Files and Folders" then change the option back if you don't want to see them normally.
7. Restart the "Automatic Updates" service.
Resolution 3 (Windows XP only)
1. Stop the "Automatic Updates" service from within "Services" in "Computer Management".
2. Browse to the windows directory, then the system32 then "catroot2" - NOT CATROOT without a number!
3. Delete the contents of that directory, including the subdirectories.
4. Reboot the machine.
Resolution 3a (Windows XP)
In some cases we have had to rename the "catroot2" directory (such as putting .old after it) then rebooting for the problem to go away. You cannot delete the folder as it will probably be in use. After rebooting, Windows will create a new copy of the "catroot2" folder and this should resolve the problem.
Resolution 4 (Windows Vista Only)
The only method that appears to work for Windows Vista is the "Reset the Automatic Updates System" script below.
Reset, Repair and Reinstall the Automatic Updates System
We have written three small batch files that resets, repairs or reinstalls the Automatic Update system. They work with a Windows XP SP2 or Windows 2003 Server system straight out of the box, but with Windows 2000 the machine needs to have been updated to the new version of the Windows Automatic Update client before they will work.
The only script confirmed to run on Windows Vista is the first one, to reset the Automatic Updates system. However on Vista the script will not run from a network share and needs to be run as Administrator. Therefore ensure the file is on your local machine, then right click on it and choose "Run as Administrator"
- Reset the Automatic Updates System
What does it do?
The file stops the Automatic Update service, then flushes out the contents of the folder "Software Distribution". It then restarts the Automatic Update service again before forcing an update cycle to start.
Copy the text below in to a new notepad document and save it as reset.cmd. Double click on the file to run it.
net stop "Automatic Updates" del /f /s /q %windir%\SoftwareDistribution\*.* net start "Automatic Updates" wuauclt.exe /detectnow
While it appears to work on Vista, if you actually watch the script you will find the service doesn't stop because it has another name in Vista. Therefore you will have to use the Vista version of the script below. Remember to save the script on your local machine and run as administrator.
net stop "Windows Update" del /f /s /q %windir%\SoftwareDistribution\*.* net start "Windows Update" wuauclt.exe /detectnow
o Repair Automatic Updates System (not Vista)
This is another batch file that repairs the automatic updates system.
What does it do?
The file stops the "Background Intelligent Transfer Service" and the Automatic Update service, then re-registers the required DLLs. It then restarts the the two services that were stopped before forcing an update cycle to start.
Copy the text below in to a new notepad document and save it as repair.cmd. Double click on the file to run it.
net stop bits net stop wuauserv %windir%\system32\regsvr32.exe /s %windir%\system32\atl.dll %windir%\system32\regsvr32.exe /s %windir%\system32\jscript.dll %windir%\system32\regsvr32.exe /s %windir%\system32\msxml3.dll %windir%\system32\regsvr32.exe /s %windir%\system32\softpub.dll %windir%\system32\regsvr32.exe /s %windir%\system32\wuapi.dll %windir%\system32\regsvr32.exe /s %windir%\system32\wuaueng.dll %windir%\system32\regsvr32.exe /s %windir%\system32\wuaueng1.dll %windir%\system32\regsvr32.exe /s %windir%\system32\wucltui.dll %windir%\system32\regsvr32.exe /s %windir%\system32\wups.dll %windir%\system32\regsvr32.exe /s %windir%\system32\wups2.dll %windir%\system32\regsvr32.exe /s %windir%\system32\wuweb.dll net start bits net start wuauserv wuauclt /resetauthorization /detectnow
o Remove and Reinstall of Automatic Updates
This batch file actually removes and reinstalls the Automatic Update system.
What does it do?
The file stops the "Background Intelligent Transfer Service" and the Automatic Update service, then removes the Automatic Update system, the logs and downloaded software files. It then reinstalls the automatic update system, starts the services and then forcing it to look for changes.
Copy the text below in to a new notepad document and save it as reinstall.cmd. Double click on the file to run it.
net stop bits net stop wuauserv regsvr32 /u wuaueng.dll /s del /f /s /q %windir%\SoftwareDistribution\*.* del /f /s /q %windir%\windowsupdate.log regsvr32 wuaueng.dll /s net start bits net start wuauserv wuauclt.exe /resetauthorization /detectnow
Automatic Update Command Line Switches
If you have the new Automatic Updates client (yellow shield) then you have a number of command line options available to you.
wuauclt /detectnow - this forces the client to detect any updates on the automatic updates server. This could be the server at Microsoft or an internal Automatic Updates (WSUS) server.
wuauclt.exe /resetauthorization /detectnow - as well as forcing the client to look for updates, this resets the cookie that is used by the process. If you have changed the configuration of the server, for example by setting up group targeting, then this will ensure that the latest settings are used.
wuauclt /demoui - this allows you to see what icon is currently in use and how it prompts for updates. Useful for demonstrations of the process to new users, or creating user guides
wuauclt /showsettingsdialog - this shows you the settings for automatic updates