Bad Image error 0xc0000020 on Windows: diagnose and fix it
✓ Reviewed & updated July 18, 2026A Bad Image dialog with error status 0xc0000020 means Windows could not load a program component in the form it expected. The dialog often names a DLL, but the filename alone does not prove that the DLL is corrupt. Its full path and the number of affected apps are the more useful clues.
Do not download the named DLL from a DLL-download website. A file with the same name can be the wrong version, architecture, or an unsafe replacement. Repair the owning app, install a package from Microsoft or the app vendor, or use Windows repair tools instead.
Quick checklist
- Record the exact filename and full path
- Separate one-app failures from system-wide failures
- Restart and install Windows/app updates
- Repair or reinstall the owning app
- Repair an official runtime only when the clue supports it
- Run DISM, then SFC, for Windows-component failures
Use the file path to choose the next step
| What the dialog shows | Start here | Why |
|---|---|---|
| One app fails and the file is inside that app's folder | Repair or reinstall that app from its official source | The affected component is packaged with the app |
Several apps fail and the file is under C:\Windows | Install Windows updates, then run DISM and SFC | A shared Windows component may need servicing |
The name begins with VCRUNTIME, MSVCP, or similar | Check the app vendor's requirement, then repair the matching Microsoft Visual C++ package | Those names can belong to a shared runtime, but version and architecture still matter |
| The error started directly after an app update | Repair or reinstall that specific app first | The update may have left mismatched application files |
| Security software quarantined a file at the same time | Review protection history and verify the app/source | Restoring or excluding an unverified file would be unsafe |
The 6 ordered fixes
Capture the exact error before changing files
- Take a screenshot or write down the app name, error status, DLL filename, and full folder path.
- Note whether one app or several unrelated apps show the same message.
- Do not rename, delete, or replace the DLL manually.
Restart, then update Windows and the affected app
A restart completes pending file replacements. After restarting, open Settings → Windows Update, install available updates, and update the affected app through its official updater or store.
Repair or reinstall the app that owns the file
If the path is inside the app's installation folder, use Settings → Apps → Installed apps. Choose Advanced options → Repair when available. Traditional desktop installers may offer Repair or Change in Control Panel.
- Back up app-specific projects or unsynced data before uninstalling.
- Download a replacement installer only from the developer or Microsoft Store.
Repair the required Visual C++ runtime—only with evidence
Runtime-style filenames can be a clue, not a complete diagnosis. Check the affected app's support page or installer requirements to identify the required Visual C++ generation and architecture.
- Use Microsoft's official supported Visual C++ Redistributable downloads.
- In Installed apps, an existing package may offer Modify → Repair.
- Do not remove every older runtime; different applications can require different supported versions.
Run DISM, then System File Checker
Use this branch when multiple apps fail, the named file is in a Windows folder, or Windows features are also malfunctioning.
- Open Command Prompt as administrator.
- Run
DISM.exe /Online /Cleanup-Image /RestoreHealthand let it finish. - Then run
sfc /scannow. Do not close the window before verification reaches 100%. - Restart Windows and test the same app.
Stop and escalate when the evidence is wider than one app
Contact the app vendor if its own file returns after a clean reinstall. Contact Microsoft support or an administrator when DISM/SFC cannot repair Windows files, the issue affects many apps, or the device is managed.
- Provide the exact dialog, full file path, Windows version, and DISM/SFC result.
- If the issue began after a major Windows change, review Microsoft's supported Windows recovery options before attempting an in-place repair or reset.
Primary references: Microsoft Support's DISM and System File Checker sequence, app repair guidance, and Microsoft Learn's official Visual C++ package page linked above.
Frequently asked questions
Does the named DLL prove that file is corrupt?
No. It proves that Windows could not load it as expected in that launch. The file may be damaged, mismatched, blocked, or paired with the wrong app/runtime version. Use its path and the affected-app pattern before choosing a repair.
Should I install both x86 and x64 Visual C++ packages?
Install or repair the versions required by the affected app or its vendor. A 64-bit Windows installation can run both 32-bit and 64-bit apps, but installing packages without identifying the dependency makes the diagnosis less clear.
Can SFC fix every Bad Image error?
No. SFC covers protected Windows system files. It will not repair a damaged file packaged inside a third-party application's own folder.
Does 0xc0000020 prove the drive or RAM is failing?
No. This message alone does not diagnose hardware. If many files repeatedly become corrupt, Windows reports storage errors, or unrelated apps fail after clean repairs, escalate for broader system and hardware diagnostics.
If Windows is restarting with stop code 0x154, use the safety-first UNEXPECTED_STORE_EXCEPTION guide. If Windows Update is failing, see error 0x80070005. If an installer or launcher instead says “Could not call proc”, follow that runtime-error guide.
Send the exact file path →