Mike Hunsinger, who has been addressing Windows Update issues with considerable success over time, recently provided for the following writeup. It is useful when:
- Windows is running slowly or generally unreliably, needs rebooted frequently.
- The Windows Update service spikes CPU usage over 70% when it runs.
- When you check for new updates, it just hangs endlessly on “checking for updates”.
- The last successful update was years ago.
Steps:
- Clean up the system drive.
- Before Server 2012, use Disk Cleanup (cleanmgr.exe). Be sure to check “service pack backup files” and “windows update”, if the version of Windows you are running gives these as options.
- Server 2012 and after, use DISM (dism.exe). Run this in administrative CMD:
dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase
If it reports “The operation could not be completed due to pending operations.”, you have just been told that a server reboot is necessary and you’ll need to do this again afterwards. After it succeeds, do this:
dism.exe /online /Cleanup-Image /SPSuperseded
- Run the following as a .bat file to reset Windows Updates caches and working spaces, rereg some dll’s, It works on all versions of windows, may skip some dll’s depending on the OS version:
@ECHO OFF echo Simple Script to Reset / Clear Windows Update echo. PAUSE echo. attrib -h -r -s %windir%\system32\catroot2 attrib -h -r -s %windir%\system32\catroot2\*.* net stop wuauserv net stop CryptSvc net stop BITS ren %windir%\system32\catroot2 catroot2.old ren %windir%\SoftwareDistribution sold.old ren "%ALLUSERSPROFILE%\application data\Microsoft\Network\downloader" downloader.old regsvr32 /s wuaueng.dll regsvr32 /s wuaueng1.dll regsvr32 /s atl.dll regsvr32 /s wups.dll regsvr32 /s wups2.dll regsvr32 /s wuweb.dll regsvr32 /s wucltui.dll net Start BITS net start CryptSvc net start wuauserv echo. echo Task completed successfully... echo. PAUSE
- Install .net 4.5.1 from here: https://www.microsoft.com/en-us/download/details.aspx?id=40779
- If it says that an =/> version is already installed, run the .net repair tool from here: https://support.microsoft.com/en-us/kb/2698555
- Download the latest version of Windows Update from here: https://support.microsoft.com/en-us/kb/949104
- Next update IE or Edge to the latest version using a redist, here’s the one for EI11, https://support.microsoft.com/en-us/help/18520/download-internet-explorer-11-offline-installer
- Open IE11 or Edge, add update.microsoft.com to trusted sites, popup blocker exceptions, privacy exceptions.
- Finally, try re-running Windows Update. The “Checking for Updates” may run quickly, or it may take 4-6 hours to populate results.
We have had the best results by updating in batches after this, first any critical SP’s or major Platform Updates. Then security, Office and the others as deemed necessary. Once you’ve completed a couple rounds of updates, the difference should start exhibiting itself with regards to the symptoms named.