If an app reports that a Visual C++ runtime DLL is missing, first repair the matching installed Microsoft Visual C++ Redistributable in Settings. If that runtime is absent, install the current supported v14 package with
Keep these compatibility rules in mind before changing anything:
Windows 11
In the Microsoft Visual C++ setup window:
Expected result: The installer completes without an error and the existing package remains listed in Settings. The installed version normally stays the same; repair reinstalls and re-registers its components rather than intentionally downgrading them.
If it does not request one but the app previously produced a DLL-in-use, side-by-side, or startup error, restart Windows before testing. This releases locked files and ensures programs load the repaired runtime fresh.
Expected result:
A listed runtime alone does not prove that every application problem is solved, so the decisive verification is that the original application launches and performs the task that previously failed.
Expected result: A version number is displayed.
If Windows says that
Expected result: The
Also install x86, because 32-bit applications on 64-bit Windows need it:
For 32-bit Windows, install only x86:
For ARM64 Windows, install the x64 package first and install x86 as well if you use x86 applications:
Accept any User Account Control prompt. Do not close the terminal while the installer is running.
Expected result:
Copy the full Name for the runtime you want to repair, then use it in this format:
For example, if the list identifies one exact x64 runtime name, use that full name inside the quotation marks. Run the command separately for x86 if needed.
Expected result:
Do not manually delete runtime folders, registry keys, or
winget. This guide applies to Windows 10 and Windows 11; the winget method requires Windows 10 version 1809 or later, or Windows 11, with App Installer available.
Prerequisites and compatibility
Visual C++ Redistributables are shared runtime libraries used by many desktop programs, games, IDEs, plug-ins, and utilities. They are not interchangeable with .NET Desktop Runtime, DirectX, Java, or the Microsoft Visual C++ build tools.Keep these compatibility rules in mind before changing anything:
- Repair an existing runtime first when it appears in Settings. This preserves its installed version and registration.
- On a 64-bit Windows PC, install both:
- x64 for 64-bit applications.
- x86 for 32-bit applications. Many older and current programs are still 32-bit.
- On an ARM64 Windows PC, install the current x64 package and the x86 package if you run x86 software. The current x64 v14 redistributable includes the ARM64 runtime binaries on ARM64 systems.
- The modern v14 runtime is shared by applications built with Visual Studio 2017 and later. An entry may still use an older display name such as “Microsoft Visual C++ 2015-2022 Redistributable”; that does not necessarily mean it is obsolete.
- Older runtimes—such as Visual C++ 2013, 2012, 2010, or 2008—install side by side. A newer v14 runtime does not replace every older runtime.
You need:Warning: Do not remove all Visual C++ entries as a general “cleanup” step. Applications can depend on a particular older runtime, and mass removal can break working programs. Repair or install only the architecture and generation relevant to the affected app.
- An administrator account, or administrator credentials for the User Account Control prompt.
- An internet connection for
winget. - The affected application closed before beginning.
Primary procedure: repair an installed runtime with Settings
Use this method when the Visual C++ entry is present but the application still reports a missing DLL, a side-by-side configuration error, or a runtime initialization failure.1. Close the affected program and related launchers
- Save work in the affected application.
- Exit the app.
- Close its launcher or client if applicable—for example, a game launcher, development environment, or management console.
- If the installer previously failed because a file was in use, restart Windows now and continue before reopening the app.
2. Open the installed-apps list
Use the path for your version of Windows.Windows 11
- Select Start > Settings.
- Select Apps.
- Select Installed apps.
- Select Start > Settings.
- Select Apps.
- Select Apps & features.
3. Find the relevant Microsoft Visual C++ entry
- In the app-list search box, enter:
Microsoft Visual C++ - Look for entries beginning with Microsoft Visual C++ Redistributable.
- Start with the current v14 entry matching the affected app:
- Choose (x64) for a 64-bit application.
- Choose (x86) for a 32-bit application.
- On a 64-bit PC, repair both x64 and x86 if you do not know which architecture the failing app uses.
4. Select Modify, then Repair
Windows 11- Select the three dots beside the redistributable entry.
- Select Modify.
- Select the redistributable entry.
- Select Modify.
In the Microsoft Visual C++ setup window:
- Select Repair.
- Wait for the setup process to finish.
- Select Close when it reports that setup completed.
Expected result: The installer completes without an error and the existing package remains listed in Settings. The installed version normally stays the same; repair reinstalls and re-registers its components rather than intentionally downgrading them.
5. Restart Windows when prompted or when testing still fails
If the setup window requests a restart, restart immediately.If it does not request one but the app previously produced a DLL-in-use, side-by-side, or startup error, restart Windows before testing. This releases locked files and ensures programs load the repaired runtime fresh.
6. Test the original failure
- Launch the same application in the same way that triggered the error.
- If it starts normally, the repair is complete.
- If it names a specific missing DLL or says the runtime is missing, note the exact error text before proceeding to the
wingetmethod or troubleshooting section.
Verification of success
After the repair or installation:- Return to Settings > Apps > Installed apps in Windows 11, or Settings > Apps > Apps & features in Windows 10.
- Search for Microsoft Visual C++.
- Confirm that the relevant x86 and/or x64 entry is present.
- Launch the affected program.
winget list "Microsoft Visual C++"Expected result:
winget displays installed Microsoft Visual C++ Redistributable entries. The exact names and versions vary by software installed on the PC.A listed runtime alone does not prove that every application problem is solved, so the decisive verification is that the original application launches and performs the task that previously failed.
Alternate method: install or repair with winget
Usewinget when:- The needed current v14 x86 or x64 runtime is missing from Settings.
- The Settings interface does not offer Modify or Repair.
- You prefer a repeatable command-line method.
- You need to repair an installed runtime after identifying its exact name.
1. Open an elevated terminal
- Right-click Start.
- Select Terminal (Admin), Windows PowerShell (Admin), or Command Prompt (Admin).
- Select Yes if User Account Control appears.
winget --versionExpected result: A version number is displayed.
If Windows says that
winget is not recognized, open the Microsoft Store, search for App Installer, install or update it, then open a new terminal window. On a newly configured PC, signing in once and allowing App Installer to finish registering can also be required.2. Update the winget source
Run:winget source updateExpected result: The
winget source updates successfully. This refreshes the package catalog before installation.3. Install the current v14 runtime when it is missing
For x64 Windows, install the x64 package:winget install --id Microsoft.VCRedist.2015+.x64 --exact --source winget --accept-source-agreements --accept-package-agreementsAlso install x86, because 32-bit applications on 64-bit Windows need it:
winget install --id Microsoft.VCRedist.2015+.x86 --exact --source winget --accept-source-agreements --accept-package-agreementsFor 32-bit Windows, install only x86:
winget install --id Microsoft.VCRedist.2015+.x86 --exact --source winget --accept-source-agreements --accept-package-agreementsFor ARM64 Windows, install the x64 package first and install x86 as well if you use x86 applications:
winget install --id Microsoft.VCRedist.2015+.x64 --exact --source winget --accept-source-agreements --accept-package-agreementswinget install --id Microsoft.VCRedist.2015+.x86 --exact --source winget --accept-source-agreements --accept-package-agreementsAccept any User Account Control prompt. Do not close the terminal while the installer is running.
Expected result:
winget downloads a Microsoft Visual C++ Redistributable installer and reports successful installation, or indicates that an equal or newer version is already installed.4. Repair a runtime through winget when it already exists
First, list the locally installed entries:winget list "Microsoft Visual C++"Copy the full Name for the runtime you want to repair, then use it in this format:
winget repair --name "paste the exact Name shown by winget here" --exactFor example, if the list identifies one exact x64 runtime name, use that full name inside the quotation marks. Run the command separately for x86 if needed.
Expected result:
winget starts the runtime’s repair experience and reports completion. If it reports more than one match, use the exact name shown by winget list rather than a shortened name.5. Restart and test
Restart Windows if prompted. Otherwise, close the terminal, restart if the app had a file-lock or side-by-side error, and test the original application again.Troubleshooting and rollback/escalation
The runtime is listed, but there is no Modify or Repair button
Some entries do not expose a repair action through Settings, or the entry may be managed by an application installer.- Run:
winget list "Microsoft Visual C++" - Use
winget repairwith the exact displayed name. - If
winget repairis unavailable for that entry, install the current supported v14 x64 and/or x86 package with the commands above. - If the affected app specifically requires Visual C++ 2013 or earlier, reinstall the exact legacy runtime identified by the app vendor instead of assuming the v14 runtime is a substitute.
winget says “No package found” for the Visual C++ package
- Confirm the package source is available:
winget source list - Refresh it:
winget source update - Search the source:
winget search "Microsoft Visual C++" - If the
wingetsource is missing or damaged, reset sources:
winget source reset --force - Run
winget source updateagain, then retry the installation command.
Warning:winget source reset --forceremoves custom package sources configured for your user account. Before running it on a work-managed device, check whether your organization uses a private package repository. The recovery path is to re-add the required source using your organization’s documented configuration.
The installer reports error 5, access denied
This usually indicates insufficient permissions or security software interference.- Confirm that you opened Terminal as administrator, or select Modify and approve the UAC prompt.
- Close the failing application and related background tools.
- Restart Windows and retry.
If the device is managed by work or school policy, contact the IT administrator rather than bypassing endpoint controls.Warning: Do not permanently disable antivirus or endpoint protection to install a runtime. If your organization instructs you to temporarily pause protection for testing, disconnect from unnecessary downloads and browsing, retry immediately, and re-enable protection before returning to normal use.
The installer returns error 32 or says a file is in use
- Save work and restart Windows.
- Before opening other applications, run the repair or installation again.
- If it still fails, identify and close the application named in the error or log.
The installer returns error 1603
Error 1603 is a general Windows Installer failure and needs more detail than the code alone.- Restart Windows.
- Install pending Windows updates:
- Windows 11: Settings > Windows Update > Check for updates.
- Windows 10: Settings > Update & Security > Windows Update > Check for updates.
- Restart again if updates require it.
- Retry the repair or installation as administrator.
- If it fails again, collect the Visual C++ installer logs from your temporary-files folder. Look for files named similar to:
dd_vcredist_x64_yyyymmddhhmmss.log
or:
dd_vcredist_x86_yyyymmddhhmmss.log
Error 1714: an older runtime cannot be removed
This commonly means the cached installer files for an older Visual C++ package are missing or corrupted.Do not manually delete runtime folders, registry keys, or
C:\ProgramData\Package Cache folders.- Note the exact runtime version and architecture named in the error or
dd_vcredistlog. - In Settings, try uninstalling only that exact broken version.
- If Windows offers to repair the installation, allow it.
- Reinstall the current matching runtime after the old entry is repaired or removed.
- If removal still fails, escalate with the error text and logs. The repair path may require the installer for the exact older version that Windows is attempting to remove.
The app still says a DLL is missing after both x64 and x86 v14 runtimes are installed
The DLL may not be from the Visual C++ runtime, or the app may require a legacy runtime.- Read the error carefully. Files such as
VCRUNTIME140.dll,VCRUNTIME140_1.dll,MSVCP140.dll, and related v14 files commonly point to the current Visual C++ runtime. - A file such as
MSVCP120.dllnormally points to Visual C++ 2013;MSVCP100.dllpoints to Visual C++ 2010. Install the specific legacy runtime required by that application from a Microsoft-signed installer or follow the app vendor’s instructions. - Repair or reinstall the affected application itself. Its installer may supply private files, plug-ins, or components that the shared runtime cannot restore.
- Do not download individual DLL files from third-party DLL sites. Replacing a single DLL can introduce malware, architecture mismatches, or an incompatible library version.
- If the program is business-critical or managed software, provide the application vendor or administrator with the exact error text, Windows version, runtime architecture,
winget list "Microsoft Visual C++"output, and relevantdd_vcredistlog.
References
- Official source: learn.microsoft.com
- Official source: learn.microsoft.com
Use WinGet to install and manage applications | Microsoft Learn
The WinGet command line tool enables developers to discover, install, upgrade, remove and configure applications on Windows computers.learn.microsoft.com - Official source: support.microsoft.com
Repair an Office application | Microsoft Support
Repair broken Office app installations.support.microsoft.com