Cause #1: Corrupted Component Store (Most Common)
Error 0x800f081f is a DISM error. It means the servicing stack — the part of Windows that installs updates — can't find the source files it needs. Usually this is because the component store (where Windows keeps backup copies of system files) is corrupt. You'll see this when trying to install the .NET Framework 3.5, a language pack, or a specific KB update.
The first thing to try is repairing the component store itself. Windows has two built-in tools for this: SFC and DISM. Run them in order.
Step 1: Run System File Checker (SFC)
- Press Windows Key + X and click Windows Terminal (Admin) or Command Prompt (Admin). If prompted by User Account Control, click Yes.
- Type this command and press Enter:
sfc /scannow - Wait. This takes 15-45 minutes depending on your drive speed. You'll see a progress bar. Don't close the window.
- When it finishes, you'll see one of three messages:
- "Windows Resource Protection did not find any integrity violations." — Good, but still run DISM next.
- "Windows Resource Protection found corrupt files and successfully repaired them." — Reboot, then try the update again.
- "Windows Resource Protection found corrupt files but was unable to fix some of them." — This is common. Move to Step 2.
After SFC finishes, restart your PC even if it says no issues. This clears cached data.
Step 2: Run DISM to Repair the Component Store
DISM can fix what SFC couldn't. It works at a lower level.
- Open Admin Terminal again (same as above).
- Type this command and press Enter:
DISM /Online /Cleanup-Image /RestoreHealth - DISM will connect to Windows Update to download fresh copies of corrupt files. This takes 20-60 minutes. It'll show a progress percentage. If it hangs at 20% or 62%, that's normal — let it run.
- When it finishes, you'll see one of these:
- "The restoration operation completed successfully." — Reboot and try the update.
- "The source files could not be downloaded." — This means Windows Update is also broken. Use the offline fix in the next section.
If DISM succeeds, you're done. Reboot and retry the failing update. Note: After DISM, run sfc /scannow again to verify everything is consistent.
Cause #2: Windows Update Service Broken (Offline Repair Needed)
Sometimes Windows Update itself can't download replacement files — you get the "could not download" message from DISM. This is common on systems that have been offline for months, or after a failed major update (like 22H2 to 23H2).
The fix is to point DISM at a local copy of the Windows installation files. You'll need a USB drive with a matching version of Windows (same edition and build number).
How to Get the Right Source Files
- Download the Windows Media Creation Tool from Microsoft's website. Run it and select Create installation media for another PC. Choose the same language, edition (Pro/Home), and architecture (64-bit) as your current system. Let it create a USB drive.
- Insert the USB drive. Note the drive letter, say
E:. - Open Admin Terminal again.
- Find the right install image file. Most modern media use
install.wim(notinstall.esd). Check this:
If you seedir E:\sources\install.*install.wim, use that. If you seeinstall.esd, use that. Usually it's.wim. - Run DISM pointing at the local source:
DISM /Online /Cleanup-Image /RestoreHealth /Source:E:\sources\install.wim /LimitAccess - Wait. This is faster than online — usually 10-20 minutes. After it finishes, reboot and try the update again.
Warning: If you use an .esd file, the command syntax is the same. If the build number doesn't match exactly, DISM will fail with a different error. Use the Media Creation Tool to match your current build (check with winver in Run).
Cause #3: Third-Party Antivirus or Security Software Blocking Updates
Less common, but I've seen Avast, Norton, and McAfee cause error 0x800f081f. These programs sometimes quarantine or block access to the C:\Windows\WinSxS folder where the component store lives. The error looks identical — DISM can't find files even though they're technically there.
Test this by temporarily disabling your third-party antivirus. Not uninstalling — just disabling real-time protection. Then run DISM again with the online method (first section). If it works, you've found the culprit.
If disabling fixes it, you have three options:
- Add an exclusion for
C:\Windows\WinSxSand%ProgramData%\Microsoft\Windows\WERin your antivirus settings. - Uninstall the third-party antivirus and use Microsoft Defender. It's good enough for most people and doesn't block Windows updates.
- Switch to a lighter antivirus like Bitdefender or Kaspersky (which I've seen interfere less).
After disabling or uninstalling, reboot and try the update again. If it still fails, go back to Cause #1 — the antivirus just made things worse, not caused the root issue.
Quick-Reference Summary
| Cause | Symptom | Fix |
|---|---|---|
| Corrupt component store | DISM fails with "source files not found" | Run sfc /scannow, then dism /online /cleanup-image /restorehealth |
| Windows Update can't download replacements | DISM says "could not download" | Use offline repair with a USB installer: dism /online /cleanup-image /restorehealth /source:E:\sources\install.wim /limitaccess |
| Antivirus blocking access | Error shows after disabling real-time protection it works | Disable or uninstall third-party AV, or add exclusions for WinSxS folder |
One final tip: If you're still stuck after all this, check the CBS log at C:\Windows\Logs\CBS\CBS.log. Look for lines with 0x800f081f — they'll tell you exactly which component is missing. Usually it's a manifest file for a feature like .NET 3.5. In that case, you might need to install the feature separately using the dism /online /enable-feature /featurename:NetFx3 /all /source:E:\sources\sxs /limitaccess command. But that's a different error code (0x800f0900 mostly). For 0x800f081f, the steps above fix 9 out of 10 cases.