"The program can't start because a DLL is missing from your computer": which fix to use

Windows could not find a DLL file the program needs, so the program refused to start. The file name in the message tells you the fix: most often it is a missing Microsoft Visual C++ Redistributable, which you install from Microsoft.

Applies to:Windows 10Windows 11Windows 7 and 8.1older runtimes only
On this page

What it means

This message is a generic Windows dialog, not one single error. It reads "The program can't start because X.dll is missing from your computer. Try reinstalling the program to fix this problem." The X is the part that matters. It is the name of the file the program needed and could not find.

When a program starts, Windows looks for each DLL it depends on in the program's own folder, in the Windows system folders and in the folders listed in PATH. If the file is not in any of them, or it is the wrong type (32-bit instead of 64-bit, or the reverse), the program stops. Most of the time the missing file belongs to a Microsoft Visual C++ runtime that the program expects to find already installed.

Find the file name in your message, then use the matching fix below. If it is VCRUNTIME140.dll or MSVCP140.dll, these pages go into more detail: VCRUNTIME140 and MSVCP140, msvcp140.dll and the general missing DLL page.

Symptoms and causes

You are likely dealing with this problem if:

  • A dialog names a DLL (for example VCRUNTIME140.dll or MSVCP140.dll) as missing or not found when you start a game or app.
  • The program does not open at all.
  • It shows up after a fresh Windows install, after installing a new game or app, or after a cleanup tool or antivirus took action.

The usual causes, most common first:

The Visual C++ Redistributable is missing or damaged
Many programs do not bring this runtime with them. Microsoft says an app built with its tools needs a redistributable at least as new as the build tools used.
Wrong architecture installed
A 32-bit program needs the x86 redistributable even on 64-bit Windows. The x64 package does not cover it.
The program needs an older runtime
The current v14 package (Visual Studio 2017 to 2026) does not provide the 2010, 2012 or 2013 files such as msvcr100, msvcr110 or msvcr120. Those are separate packages that sit side by side.
Windows is missing the Universal C Runtime
For api-ms-win-crt-*.dll names, Windows may lack the Universal C Runtime, for example an older or not fully updated Windows installation. The Globalscape knowledge base says to install the Universal C Runtime update for your operating system.
The file was deleted or the program is incomplete
An antivirus quarantine, a cleaner tool, a bad uninstall, or a ZIP that was only partly extracted can remove or never create the DLL.
Damaged Windows system files
If the missing DLL is one that Windows itself owns, corrupted system files can be the reason.

How to fix it

Work through these in order. They start with the quickest, safest checks and move to deeper repairs; stop as soon as the problem is gone.

1.Reinstall the program

Easy

The dialog itself suggests this, and it fixes incomplete installs and partly extracted ZIP files.

  1. Uninstall the program using Windows' list of installed apps. Back up any save files or settings you want to keep first.
  2. If the program came as a ZIP file, right-click it and choose Extract All, then run it from the extracted folder, not from inside the ZIP.
  3. Install the program again from its official source and start it.

2.Install the latest Visual C++ Redistributable (x86 and x64)

Easy

This single package covers VCRUNTIME140, VCRUNTIME140_1 and MSVCP140, the most common names in this error.

  1. Download the x64 installer from Microsoft's link: https://aka.ms/vc14/vc_redist.x64.exe. On a 64-bit PC, also download the x86 one, because 32-bit programs need it: https://aka.ms/vc14/vc_redist.x86.exe. (ARM64 PCs use https://aka.ms/vc14/vc_redist.arm64.exe.)
  2. Run each installer and accept the license. If it says the software is already installed, choose Repair.
  3. Restart the PC and start the program again.

3.Install the older redistributable that matches the DLL name

Easy

Names such as msvcr100, msvcp110 or msvcp120 belong to older packages that the v14 download does not replace.

  1. Match the file name to the package: MSVCR100 and mfc100 need Visual C++ 2010 SP1; MSVCP110 needs 2012 Update 4; MSVCP120 and MSVCR120 need 2013.
  2. Download the x86 and x64 versions of that package from the table on Microsoft's Latest Supported Visual C++ Redistributable Downloads page. These versions are out of support but still available there.
  3. Install both, restart, and start the program.

4.For api-ms-win-crt names, install the Universal C Runtime update

Easy

These files belong to the Universal C Runtime, which Windows provides through its updates.

  1. Run Windows Update, install everything it offers, then restart.
  2. If the file is still reported missing, install the Universal C Runtime update for your version of Windows from Microsoft, as the Globalscape knowledge base advises.

5.Repair Windows system files

ModerateChanges settings

Microsoft documents System File Checker as a tool that scans protected system files and repairs them, so it applies when the missing DLL is one that Windows owns. Try the fixes above first.

Before you start: Close your work first. The scan takes a while and the PC should not be shut off while it runs.

  1. Open Command Prompt as administrator and run the System File Checker.
    Command Promptrun as administrator
    sfc /scannow
  2. Wait for it to finish and restart if it reports repairs.

6.Check whether security software or a cleaner removed the file

Easy

A quarantined or deleted DLL looks exactly like a missing one.

Before you start: Only restore a file if it belongs to a program you trust and installed yourself.

  1. Open your antivirus program's quarantine or history list and look for the DLL name from the error. Restore it if it is from your program.
  2. Also look in the Recycle Bin for the file.

Check that it worked

  • The program starts without the dialog.
  • The same DLL name no longer appears, even after a restart.

If it still fails

  • Write down the exact DLL name and check that you installed the matching runtime in both x86 and x64.
  • Microsoft's redistributable page is written for developers and advises contacting the app's vendor for instructions on fixing an app through its runtime. Contact the vendor or game support and give them the DLL name and your Windows version.
  • On Windows 7 or 8.1 the newest redistributable may not install, because Microsoft's page lists Windows 10 and 11 as supported. You may need an older build of the runtime.

Questions

Why do I need both x86 and x64?

Microsoft says the redistributable architecture must match the program. 32-bit programs run on 64-bit Windows but still need the x86 package, and the x64 package does not cover them.

I installed the new redistributable but msvcr120.dll is still missing. Why?

The v14 package covers Visual Studio 2017 to 2026 only. 2013 and earlier redistributables install side by side, so each needs its own package.

Sources

  1. Latest Supported Visual C++ Redistributable DownloadsOfficial · Microsoft Learn
  2. sfcOfficial · Microsoft Learn
  3. The program can't start because a DLL is missing from your computer · Globalscape KB