I know this error is infuriating—especially when you're trying to restore your PC to a working state and it just throws 0x80070002 in your face. But don't panic. Most of the time, it's not a hardware failure or a dying drive. It's a cache corruption issue, and you can fix it in about ten minutes without reinstalling anything.
The Fast Fix: Clear the SoftwareDistribution Folder
Windows Update and System Restore both use a cache folder called SoftwareDistribution. When files inside it get corrupted or go missing, you get 0x80070002. The fix is to stop the relevant services, delete the contents of that folder, and restart everything.
- Open Command Prompt as administrator. Press Win, type
cmd, right-click on it, and select "Run as administrator". - Stop the Windows Update and Background Intelligent Transfer (BITS) services. Run these commands one by one:
net stop wuauserv
net stop bits- Now delete the contents of the SoftwareDistribution folder. Run:
del /f /s /q C:\Windows\SoftwareDistribution\*Wait for it to finish. It might take a minute if there's a lot of data.
- Restart the services:
net start wuauserv
net start bitsTry System Restore or Windows Update again. In my experience, this fixes the problem about 8 times out of 10.
Why This Works
The SoftwareDistribution folder is where Windows stores downloaded updates and temporary files used during restore points. When a previous update or restore gets interrupted—say, your PC shuts down mid-process—files can end up half-written or orphaned. Windows then trips over these bad files and throws 0x80070002 because it can't find or read what it expects. Clearing the folder forces Windows to rebuild it from scratch, which is exactly what you want.
This is the same reason I tell people to skip the built-in "Troubleshoot" button for this error. It rarely touches this folder, so it almost never helps.
If That Didn't Work: Check Your Disk
Sometimes the error isn't cache corruption—it's a failing drive or a corrupted file system. Run a disk check to rule that out.
Open Command Prompt as administrator and run:
chkdsk /f /r C:You'll be asked if you want to schedule it for next reboot. Type Y and restart. Let it run—it can take 30 minutes or more depending on your drive size. If it finds and fixes bad sectors, that might be your real culprit.
Less Common Variations
1. Missing System Files
If the above didn't solve it, you might have corrupted system files elsewhere. Run the System File Checker:
sfc /scannowAnd if that finds nothing but the error persists, try DISM:
DISM /Online /Cleanup-Image /RestoreHealthI've seen cases where SFC alone doesn't fix it, but DISM does because it pulls fresh files from Windows Update. Run them in that order—SFC first, then DISM.
2. Third-Party Antivirus Interference
Some antivirus programs lock down system folders, preventing Windows from accessing them during restore or update. If you're running a third-party AV (especially McAfee or Norton), temporarily disable real-time protection and try again. Don't keep it off—just long enough to test. If the error goes away, you've found the culprit. You might need to exclude the SoftwareDistribution folder in your AV settings permanently.
3. Insufficient Disk Space
This one's rare but real. If your system drive is almost full, System Restore can fail with 0x80070002 because it can't write the restore point. Check how much free space you have. If it's below 5% of the drive capacity, free up some space. Even clearing the Recycle Bin can help.
Prevention: Keep It From Coming Back
The easiest way to avoid this error is to keep your system clean and your drives healthy. Here's what I do:
- Reboot once a week. It clears temporary files and lets Windows finish any pending updates.
- Run Disk Cleanup every few months. It removes old update files that can pile up.
- If you use third-party antivirus, make sure it's set to not interfere with Windows Update or System Restore.
- Keep at least 10% of your drive free. Windows needs breathing room for updates and restore points.
None of that is hard, and it's a lot easier than fighting 0x80070002 again. I've fixed this error on dozens of machines, and 9 times out of 10, clearing that cache or checking the disk does the trick. Try the steps in order and you'll be back to normal before lunch.