Error 0xc000007b — "The application was unable to start correctly"

This code is Windows saying a program tried to load a file built for the wrong architecture: a 32-bit DLL inside a 64-bit program, or the reverse. Microsoft’s name for it is STATUS_INVALID_IMAGE_FORMAT. It appears most with games and creative apps, and in practice it comes down to mixed-up or damaged runtime files — not a broken Windows.

The fix, in order

  1. Restart the PC first. A pending update can leave mismatched file versions in place; a reboot settles that before you change anything.
  2. Undo any DLLs you copied in by hand. If you (or a guide) placed files like msvcp140.dll or xinput1_3.dll into the program’s folder or System32, remove those copies. A hand-copied DLL of the wrong flavour is the single most common cause.
  3. Reinstall the Visual C++ Redistributables — both flavours. Download the 2015–2022 packages from Microsoft and install vc_redist.x86.exe AND vc_redist.x64.exe, even on a 64-bit PC. If older programs fail too, add the 2010 and 2013 sets the same way.
  4. Install the DirectX End-User Runtime from Microsoft. Older games need DirectX 9-era files that modern Windows doesn’t include, and a missing one can surface as this code.
  5. Reinstall the program itself from its official source, and for Steam games use Properties → Installed Files → Verify integrity of game files.
  6. Repair Windows files if it persists: in an admin Command Prompt run sfc /scannow, then DISM /Online /Cleanup-Image /RestoreHealth.
Do not download single DLL files from DLL sites. They serve random versions, sometimes bundled with installers nobody asked for — and dropping in the wrong-architecture copy is exactly what causes this error. The runtime packages from Microsoft are the fix, and they are free.

If it still happens

If one specific program still fails while others open, the problem is inside that program’s folder: look for DLL files sitting next to its .exe that duplicate system files, and move them aside. If every program fails with this code, run the SFC/DISM step above and check the drive’s health — widespread loader errors can be an early sign of disk trouble.

Common questions

Is 0xc000007b a virus? No. It is a loader error — Windows refused a file because its format didn’t match the program. Malware can damage files and cause it indirectly, but the code itself is not an infection.

Do I need both the x86 and x64 redistributables? Yes, on a 64-bit PC. 32-bit programs use the x86 set and 64-bit programs use the x64 set, and you often don’t know which a program is until it fails.

Related errors

MSVCP140.dll missing · VCRUNTIME140.dll missing · VCRUNTIME140_1.dll missing