Fix Windows Error 0x80070002 – Missing Files
Error 0x80070002 means Windows Update can't find a needed file. It's usually a corrupted cache or bad update file.
Quick Answer (for pros)
Stop the Wuauserv and BITS services, delete C:\Windows\SoftwareDistribution and C:\Windows\System32\catroot2, restart the services, and retry the update. That clears the corrupted cache.
Why You're Seeing Error 0x80070002
This error shows up when Windows Update downloads an update but can't find a file it expects. Usually happens after a failed update attempt – maybe you shut down your PC mid-update, or your internet cut out. The update files are there, but they're incomplete or corrupted. I've seen it most on Windows 10 version 22H2 after a cumulative update fails. The system says “some files are missing” but doesn't tell you which ones. The real fix is to wipe the update cache and start clean.
Skip trying to repair installs or running SFC first – that wastes time. The cache is the problem 9 times out of 10.
Step-by-Step Fix: Clear the Update Cache
- Open Command Prompt as admin. Click Start, type
cmd, right-click Command Prompt, and pick “Run as administrator.” You'll get a black window. Don't skip this – normal mode won't work. - Stop the update services. Type these commands one at a time and press Enter after each:
You should see “The service was stopped successfully” for each. If one says “not running,” that's fine – move on.net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver - Rename the cache folders. Don't delete them – renaming keeps a backup in case something goes wrong. Type these:
You shouldn't see any errors. If you get “access denied,” you missed step 1 – close and reopen as admin.ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 catroot2.old - Restart the services. Type these commands:
Each should say “service started successfully.” If one fails, it might be disabled – check Services.msc later.net start wuauserv
net start cryptSvc
net start bits
net start msiserver - Close the command prompt and retry the update. Go to Settings > Update & Security > Windows Update and click “Check for updates.” The error should be gone. If it still shows up, reboot your PC and check again.
Alternative Fixes If the Cache Clear Doesn't Work
Sometimes the cache is clean but the update file itself is corrupt. Try these in order:
Run the Windows Update Troubleshooter
Go to Settings > Update & Security > Troubleshoot > Additional troubleshooters > Windows Update. Let it run – it'll reset the services automatically. I've seen it fix about 20% of cases where the manual cache clear fails.
Use DISM to Fix System Corruption
Open Command Prompt as admin again. Type:
DISM /Online /Cleanup-Image /RestoreHealthThis scans your system image for corruption. It can take 15-30 minutes. Let it finish – then run sfc /scannow after. Reboot and try the update again.Manually Download the Update
If you know the update's KB number (like KB5022352 for Windows 10), go to the Microsoft Update Catalog. Search for it, download the right version for your architecture (x64 or x86), and double-click the .msu file to install it. This bypasses the Windows Update service entirely.
Prevention: Stop This from Happening Again
The main cause is a sudden shutdown during an update. Always let updates complete – if your PC says “Don't turn off your computer,” don't. Also, make sure your system clock is correct. A wrong date can confuse update file checksums. Finally, once a month, run the Disk Cleanup tool and delete the “Windows Update Cleanup” files to keep the cache lean. I do this on the first of every month and haven't seen this error in years.
Was this solution helpful?