Flamingo Raises $4.5M Seed Round

Skip to content

An app that worked yesterday opens with a pop-up and refuses to start. The message says a DLL is missing, and the first search results offer you the file for download. This guide fixes the vcruntime140.dll not found error on one PC the safe way, then pushes the same fix silently to a whole fleet.

What the Error Means

The full message reads "The code execution cannot proceed because VCRUNTIME140.dll was not found. Reinstalling the program may fix this problem." Some apps show older wording: "The program can't start because VCRUNTIME140.dll is missing from your computer." Both mean the same thing.

VCRUNTIME140.dll is not a Windows file. It belongs to the Microsoft Visual C++ Redistributable, the runtime library that apps built with Microsoft's C++ tools load when they start. Microsoft's redistributable page (updated December 2025) sets two rules. The package must be at least as recent as the build tools that made the app, and its architecture must match the app's target architecture. A 32-bit app needs the x86 package even on a 64-bit PC.

The v14 family makes this simpler than it was. Visual Studio 2017 and later share the same redistributable files, and Microsoft's registry notes say the latest package is binary compatible back to Visual Studio 2015. One current package covers the yearly versions you might remember. Check Settings, Apps, Installed apps for entries called Microsoft Visual C++ Redistributable, one per architecture.

Fix It on One PC

The fix is one download from Microsoft. Open Microsoft's latest supported redistributable page, pick the architecture and run the installer. The page lists permanent links for each package: https://aka.ms/vc14/vc_redist.x64.exe, https://aka.ms/vc14/vc_redist.x86.exe and https://aka.ms/vc14/vc_redist.arm64.exe.

On a 64-bit PC, install both the x64 and the x86 package. The app that failed decides which one it needs, and the next app may need the other. Restart the app. A reboot is rarely needed, and Microsoft's installer will ask if one is.

If the error stays, open Settings, Apps, Installed apps, find the Microsoft Visual C++ Redistributable entry, choose Modify and then Repair. Reinstalling the package over a damaged one works too. Run the repair for the architecture the app uses. If Windows itself reports corrupted files, DISM and SFC come after the runtime, not before it.

The tempting shortcut is a site that offers VCRUNTIME140.dll as a single download. Skip it. A bare DLL has no installer, no version check and no way for you to know who built it, and the file sits in a folder that every app loads from. The r/techsupport thread below is the question people ask first: a user hits the error while opening a game launcher and asks how to reinstall the file, and whether a download site is reliable. The answer is to install the package and leave the file alone. If you want to see what a planted file can do, our guide to what malware is covers the types.

Which Package to Install

Match the package to the app, not to the PC. Microsoft's page states that the architecture must match the app's target architecture, and that you cannot install an ARM64 package on an x86 system or an x64 package on an x86 system.

App targetPackageNotes
x86 (32-bit)vc_redist.x86.exeNeeded on 64-bit Windows too, for any 32-bit app
x64 (64-bit)vc_redist.x64.exeAlso contains the ARM64 binaries, so it installs the ARM64 files on an ARM64 device
ARM64vc_redist.arm64.exeFor Windows on ARM

To check an app, open Task Manager, go to the Details tab and add the Architecture column. It shows 32 bit, 64 bit or ARM64 for each running process. The latest v14 package supports Windows 10 and 11 and Windows Server 2016, 2019, 2022 and 2025. Support for the Visual Studio 2015 release ended on 15 October 2025, which is another reason to install the current package and not an old one found on a shared drive.

A note on name variants. Related errors name VCRUNTIME140_1.dll or MSVCP140.dll. They belong to the same runtime family, and installing the current package is the usual fix for them as well. A r/libreoffice thread from February 2025 shows how it surfaces for end users: a user installs a current release from the official site, gets the VCRUNTIME140_1.dll message on launch, and asks why the installer does not include the file.

Deploy It Silently Across a Fleet

For a fleet, the package takes switches. Microsoft documents them on its redistribution page (updated April 2026): /install, /repair and /uninstall pick the action, /passive shows a progress bar with no input, /quiet shows nothing at all, /norestart suppresses any restart, and /log writes the log to a file of your choice. By default the installer logs to the %TEMP% folder. If you do not run it from an elevated prompt, a User Account Control prompt appears, so run deployments as SYSTEM or an admin.

powershell
.\vc_redist.x64.exe /install /quiet /norestart /log C:\Windows\Temp\vcredist-x64.log
.\vc_redist.x86.exe /install /quiet /norestart /log C:\Windows\Temp\vcredist-x86.log

Check before you install. Each package looks for a newer version on the machine, and if it finds one, it does not install. In a quiet run no error message appears. The installer logs the error and returns an error result to the caller, which your deployment tool reads as a failure on a machine that is already fine. The installed version sits in the registry under HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\{x86|x64|arm64}, in the string value Version. Skip the install when the installed version is the same or newer.

powershell
$paths = @{
  x64 = 'HKLM:\SOFTWARE\Microsoft\VisualStudio\14.0\VC\Runtimes\x64'
  x86 = 'HKLM:\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\x86'
}
foreach ($arch in $paths.Keys) {
  $v = (Get-ItemProperty $paths[$arch] -ErrorAction SilentlyContinue).Version
  [pscustomobject]@{ Host = $env:COMPUTERNAME; Arch = $arch; Version = $v }
}

Run that as a script from your RMM, and the output tells you which machines have no runtime at all. OpenFrame can run the same check across a client's devices and collect the output in one place, and our list of useful PowerShell commands has the inventory pattern to build on.

Intune handles it as a Win32 app. Package the installer, set the install command to vc_redist.x64.exe /install /quiet /norestart, and use the registry key above as the detection rule, so a newer installed version counts as detected and the app never reports a false failure. Our Microsoft Intune review covers where it fits next to an RMM. Deploy the x86 and x64 packages as two separate apps, so each one reports on its own.

When the Error Comes Back

If the pop-up returns after the package is in place, work through four causes. Rule out the wrong architecture first: a 32-bit app on a PC that has only the x64 package. Install the x86 package. A damaged runtime shows up as every app that uses it failing, and a repair from Installed apps fixes it. A portable app that ships its own copy and lost the file in its folder needs the app reinstalled. Security software that quarantined a file after a scan leaves a log entry, so check the quarantine list first, restore nothing by hand, and reinstall the package.

The order matters. Reinstall the runtime before you touch the app, and never copy a DLL from another PC into the app folder. A copied file can be the wrong version or the wrong architecture, and it hides the real fault until the next update.

If a laptop keeps failing after every fix, look at what else changed. A cleanup tool that removes "unused" redistributables will undo your deployment on the next run, and an old image restore can put the machine back to a state with no runtime. For other faults that follow a driver or update change, our guide to updating drivers covers that side.

The walkthrough above shows the same fix on one PC if you want something to send an end user.

The Short Version

VCRUNTIME140.dll comes from the Microsoft Visual C++ Redistributable, so install the package and leave the file alone. Match the architecture to the app and install both x86 and x64 on a 64-bit PC. Deploy with /install /quiet /norestart, read the registry version first, and treat a newer installed version as success.

FAQ

Where can I download VCRUNTIME140.dll?

You do not download the file. Install the Visual C++ Redistributable from Microsoft's own page, and it places VCRUNTIME140.dll in the right folder with the right version. A standalone DLL from a third-party site has no installer and no way to check where it came from.

Do I need both the x86 and x64 redistributables?

On 64-bit Windows, usually yes. Microsoft states that the package architecture must match the app's target architecture, so a 32-bit app needs the x86 package and a 64-bit app needs the x64 package. Installing both covers both kinds of app.

Is it safe to install the newest redistributable over an older one?

Yes. Microsoft says the latest v14 package is binary compatible back to Visual Studio 2015, and the installer will not install over a newer version. In a quiet run that refusal is logged, not shown, so check the registry version first.

Which switches install the redistributable silently?

Use vc_redist.x64.exe /install /quiet /norestart. The /quiet switch shows no interface, /norestart suppresses any restart and /log filename.txt writes a log to a file you choose. The /passive switch shows a progress bar without asking for input.

Dmytro Koval

Dmytro Koval

Head of Product Engineering

Hi! My name is Dmytro, but everyone calls me Dima. I’m a Software Developer and together with the development team, I help bring Flamingo to life — putting it on its feet from a technical perspective. Originally from Lviv, Ukraine 🇺🇦, but currently based in Spain, where I’ve been enjoying the blend of great weather, culture, and nature. I’m passionate about the mountains and love traveling — exploring new places and cultures really inspires me. These experiences constantly recharge me and give me a fresh perspective, both personally and professionally.

Related Content

Blog Posts

Product Releases

Podcasts

Webinars

Case Studies

Events

Onboarding Guides

Frequently Asked Questions

VCRUNTIME140.dll Not Found

You do not download the file. Install the Visual C++ Redistributable from Microsoft's own page, and it places VCRUNTIME140.dll in the right folder with the right version. A standalone DLL from a third-party site has no installer and no way to check where it came from.
On 64-bit Windows, usually yes. Microsoft states that the package architecture must match the app's target architecture, so a 32-bit app needs the x86 package and a 64-bit app needs the x64 package. Installing both covers both kinds of app.
Yes. Microsoft says the latest v14 package is binary compatible back to Visual Studio 2015, and the installer will not install over a newer version. In a quiet run that refusal is logged, not shown, so check the registry version first.
Use vc_redist.x64.exe /install /quiet /norestart. The /quiet switch shows no interface, /norestart suppresses any restart and /log filename.txt writes a log to a file you choose. The /passive switch shows a progress bar without asking for input.

MSP AI Agents

On a five-person desk, reported deployments show $78,000 to $130,000 in annual direct labor savings, roughly 30% fewer escalations, and 15% to 20% better SLA compliance. Broader MSP adoption data adds ticket handling time cut by 45% and five to 12 points of margin, all from reclaimed capacity rather than headcount cuts.
Yes. In production MSP shops today, 10% to 25% of tickets close before a human opens them. Thread alone has processed 173 million tickets across 750-plus MSP partners at 96% triage accuracy, handing back 490,000-plus technician hours. Agents own the low-risk, high-volume work (password resets, MFA enrollment, known installs, onboarding and offboarding) and flag anything that touches production data or needs judgment for a human to take.

About OpenFrame

OpenFrame isn't built to plug into your stack. It replaces it. Instead of duct-taping a dozen tools together (RMM, MDM, SIEM, patching, remote access, each its own login and bill), we bundle it into one unified platform: RMM, MDM, monitoring, automation, remote access, patch management, security monitoring, and ticketing, plus built-in AI copilots. So "does it integrate with X?" usually means: you won't need X anymore.
Most platforms give you one piece and expect you to bolt the rest on. OpenFrame unifies the whole stack in one place, with AI copilots built in. Fewer logins, fewer bills, less duct tape.
In the cloud, on US soil. Your data stays stateside.
Both. It's built for MSPs and MSSPs alike.