Introduction
Windows Update error 0x80240034 (WU_E_EXCESSIVE_UPDATE_SIZE) occurs when the update download is stuck, corrupted, or the SoftwareDistribution cache contains inconsistent state data. The update progress bar freezes at a specific percentage and never completes, even after restarting the Windows Update service. This is common on Windows Server where cumulative updates can exceed 1GB and are sensitive to download interruptions.
Symptoms
- Windows Update shows
Downloading - X%and never progresses - Settings > Windows Update shows error
0x80240034 Get-WindowsUpdateLogshows download failures or hash mismatches- Windows Update service consumes high CPU or disk I/O while stuck
wuaupgrd.logshowsWU_E_EXCESSIVE_UPDATE_SIZEorE_FAIL
Common Causes
- Corrupted files in
C:\Windows\SoftwareDistribution\Download - BITS (Background Intelligent Transfer Service) job stuck in queue
- Incomplete previous update causing catalog inconsistency
- Disk space insufficient for the update package
- Windows Update catalog metadata corrupted
Step-by-Step Fix
- 1.Check available disk space:
- 2.```powershell
- 3.Get-PSDrive C | Select-Object Used, Free, Provider
- 4.# Ensure at least 10GB free for cumulative updates
- 5.
` - 6.Stop Windows Update services:
- 7.```powershell
- 8.Stop-Service wuauserv -Force
- 9.Stop-Service bits -Force
- 10.Stop-Service cryptsvc -Force
- 11.Stop-Service msiserver -Force
- 12.
` - 13.Rename the SoftwareDistribution and catroot2 folders:
- 14.```powershell
- 15.Rename-Item C:\Windows\SoftwareDistribution SoftwareDistribution.old -Force
- 16.Rename-Item C:\Windows\System32\catroot2 catroot2.old -Force
- 17.
` - 18.Clear BITS transfer queue:
- 19.```powershell
- 20.Get-BitsTransfer | Remove-BitsTransfer
- 21.
` - 22.Reset Windows Update components:
- 23.```cmd
- 24.sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
- 25.sc.exe sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
- 26.cd /d %windir%\system32
- 27.regsvr32.exe /s atl.dll
- 28.regsvr32.exe /s urlmon.dll
- 29.regsvr32.exe /s mshtml.dll
- 30.regsvr32.exe /s wuapi.dll
- 31.regsvr32.exe /s wups.dll
- 32.
` - 33.Restart services and force update detection:
- 34.```powershell
- 35.Start-Service wuauserv
- 36.Start-Service bits
- 37.Start-Service cryptsvc
- 38.Start-Service msiserver
wuauclt /detectnow wuauclt /updatenow # Or on newer Windows Server: (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow() ```
Prevention
- Maintain at least 15GB free disk space on the system drive before initiating updates
- Schedule Windows Update during maintenance windows and monitor progress
- Use WSUS for controlled update distribution with pre-tested packages
- Clear the SoftwareDistribution cache periodically during maintenance
- Monitor Windows Update health with
Get-WindowsUpdateLogandTest-WindowsUpdate