Error 0xc0000135, "The program can't start because a DLL is missing"

This code is Windows saying a program tried to load a library file and the file is not on the PC. Microsoft's name for it is STATUS_DLL_NOT_FOUND. The message usually names the missing file, and that name is the clue that tells you which runtime to install, so read it before changing anything.

The fix, in order

  1. Read the missing file name in the error message. It is usually a .dll name like msvcp140.dll or vcruntime140.dll, and it tells you which package to install. Write it down before closing the window.
  2. Reinstall the program that fails from its official source. A fresh install restores the program's own files and the runtimes it ships with, and it is the fastest fix when the missing file belongs to that program.
  3. Install the Visual C++ Redistributables. Download the 2015 to 2022 packages from Microsoft and install vc_redist.x86.exe and vc_redist.x64.exe, even on a 64-bit PC. If the missing file starts with msvcp, msvcr, or vcruntime, this is almost certainly the fix.
  4. Install or repair the .NET runtime. If the program is a .NET app, install the .NET Desktop Runtime version its maker lists, or open Settings, Apps, Installed apps, find Microsoft .NET, choose Modify, then Repair.
  5. Install the DirectX End-User Runtime from Microsoft if the missing file starts with d3dx9, d3dx10, d3dx11, or xinput. Older games need these DirectX 9-era files that modern Windows does not include.
  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 a wrong-architecture copy turns this error into a 0xc000007b error instead. The runtime packages from Microsoft are the fix, and they are free.

If it still happens

If the same file is reported missing after you installed the runtime, check whether the program is 32-bit or 64-bit and install the matching flavour of the package, since a 32-bit program cannot use the 64-bit files. If the error names a file that belongs to the program itself, the install is incomplete or the download was damaged, so uninstall fully, delete the program's leftover folder, and install a fresh download from the maker.

Common questions

Can I just download the missing DLL file? No, do not download single DLL files from DLL download sites. They serve random versions that may be the wrong architecture or bundled with unwanted software, and a wrong copy can cause a new error. Install the runtime package from Microsoft instead, since that puts the correct file in the correct place.

Which redistributable do I need for 0xc0000135? It depends on the named DLL. Files starting with msvcp, msvcr, or vcruntime come from the Visual C++ Redistributables, and files tied to .NET apps come from the .NET Framework or .NET runtime. The error message names the missing file, and that name points to the right package.

Why does the DLL go missing after a Windows update? Updates, cleanups, and uninstalls can remove a shared runtime that another program still needs, or replace a file with a version the program cannot use. Reinstalling the runtime restores it, and reinstalling the program re-registers its own files.

Related errors

MSVCP140.dll missing · VCRUNTIME140.dll missing · Error 0xc0000142

Was this helpful?