Fix Windows Update Error 0x80070002 – Step by Step
Windows Update can't find needed files. This fix starts simple, gets deeper. Most users solve it in under 5 minutes.
What the Error Means
Windows Update error 0x80070002 shows up when Windows can't locate a file it needs to finish an update. This happens on Windows 10 and 11. Common triggers: you restarted mid-update, you ran out of disk space, or you have third-party antivirus blocking file access.
Don't panic. We'll move from quick to thorough. You can stop at any step once the update runs clean.
Fix 1: 30 Seconds – Clear the SoftwareDistribution Cache
This is the fastest fix. The update folder gets corrupted files. We'll delete them safely.
- Press Windows Key + R. Type
services.mscand hit Enter. - Scroll down to Windows Update. Right-click it and select Stop. Leave the window open.
- Open File Explorer. Go to
C:\Windows\SoftwareDistribution. - Select everything inside (Ctrl+A) and press Delete. You'll get some "file in use" warnings – skip those files. That's fine; we'll get them next.
- Back in the Services window, right-click Windows Update again and choose Start.
- Close Services. Go to Settings > Update & Security > Check for updates. It should start downloading fresh files.
Expected outcome: The error may disappear. If it doesn't, move on.
Fix 2: 5 Minutes – Run the Built-in Troubleshooter
Windows has a tool for this. It automates a few cleanup steps.
- Open Settings (Windows Key + I).
- Go to Update & Security > Troubleshoot > Additional troubleshooters.
- Select Windows Update and hit Run the troubleshooter.
- Follow the prompts. It'll ask to apply fixes – say yes. It may restart your PC.
Expected outcome: The troubleshooter reports "Windows Update components repaired" or the error clears. If not, proceed.
Fix 3: 15+ Minutes – Use DISM and SFC
These are system file checkers. DISM fixes the image that feeds Windows Update. SFC repairs corrupted files. Run them in this order.
Step A: Run DISM
- Right-click the Start button and select Windows Terminal (Admin) or Command Prompt (Admin).
- Type this and press Enter:
DISM /Online /Cleanup-Image /RestoreHealth - Wait. This takes 10–20 minutes. You'll see a progress bar. Let it finish. It may say "The restore operation completed successfully" or "The source files could not be downloaded." Either is fine – we're cleaning up.
Expected outcome: No errors in the output. If it fails with 0x800f081f, that's a different issue – but for 0x80070002, DISM usually passes.
Step B: Run SFC
- In the same admin terminal, type:
sfc /scannowand hit Enter. - Let it scan. Takes 5–10 minutes. It'll say "Windows Resource Protection found corrupt files and successfully repaired them" or "did not find any integrity violations."
- Restart your PC.
Expected outcome: After reboot, check for updates again. If the error persists, move to the reset.
Fix 4: Advanced – Reset Windows Update Components Manually
This is nuclear. We stop services, delete more caches, and re-register update DLLs. Do this only if the above didn't work.
- Open an admin terminal (as above).
- Stop services one by one. Copy and paste each line, pressing Enter after each:
net stop wuauserv net stop cryptSvc net stop bits net stop msiserver - Rename the SoftwareDistribution and Catroot2 folders. This forces Windows to create fresh ones:
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old ren C:\Windows\System32\catroot2 Catroot2.old - Restart the services:
net start wuauserv net start cryptSvc net start bits net start msiserver - Re-register the update DLLs. Run these one by one:
(Yes, that's a lot. Copy-paste the whole block into the terminal – it'll run each one.)regsvr32 /s atl.dll regsvr32 /s urlmon.dll regsvr32 /s mshtml.dll regsvr32 /s shdocvw.dll regsvr32 /s browseui.dll regsvr32 /s jscript.dll regsvr32 /s vbscript.dll regsvr32 /s scrrun.dll regsvr32 /s msxml.dll regsvr32 /s msxml3.dll regsvr32 /s msxml6.dll regsvr32 /s actxprxy.dll regsvr32 /s softpub.dll regsvr32 /s wintrust.dll regsvr32 /s dssenh.dll regsvr32 /s rsaenh.dll regsvr32 /s gpkcsp.dll regsvr32 /s sccbase.dll regsvr32 /s slbcsp.dll regsvr32 /s cryptdlg.dll - Reset Winsock:
netsh winsock reset netsh winhttp reset proxy - Restart your PC.
Expected outcome: After reboot, check for updates. This clears even stubborn 0x80070002 errors. If it still fails, you may have deeper corruption – consider a repair install.
Pro Tips
- Disk space: Make sure you have at least 20GB free on your system drive. Low space triggers 0x80070002.
- Antivirus: Temporarily disable third-party antivirus (like McAfee, Norton) during updates. Windows Defender alone is fine.
- VPN: Disconnect any VPN. Some VPN clients block update downloads.
That's it. Start with the cache clean, go deeper if needed. You'll be updated in no time.
Was this solution helpful?