msvcr120.dll is missing: why the Visual C++ 2013 runtime is needed and how to put it back
msvcr120.dll is the C runtime library of Microsoft Visual C++ 2013. Programs and games built with Visual Studio 2013 cannot start without it, and Windows does not install it for you. Newer Visual C++ packages do not replace it either. The fix is to install or repair the Visual C++ 2013 Redistributable from Microsoft, not to download the DLL on its own.
Prefer to fix it yourself? The manual steps follow.
Download msvcr120.dll the official way
12.0.40664.0Install the Microsoft Visual C++ 2013 Redistributable, version 12.0.40664.0, the last build Microsoft published for 2013. It places msvcr120.dll, its C++ companion msvcp120.dll and the other 2013 runtime files in the right Windows folders, registered with the installer so that a later repair works.
On 64-bit Windows install both the x64 and the x86 package. Many games and programs from the Visual Studio 2013 years are 32-bit and load the x86 copy even on a 64-bit PC, so installing only x64 is the most common reason the error stays.
“DLL files only” is for a program that needs the files in its own folder, or a PC where the installer will not run: msvcr120.dll with msvcp120.dll and the other 2013 runtime libraries (version 12.0.40664.0), unpacked unchanged from Microsoft's installer. A free uGetFix account is needed to download. Sign in, or create one in a minute, and you come straight back here.
We downloaded these installers from Microsoft on October 14, 2026 and unpacked them. Each download page shows the size and SHA-256 checksum of those files, so you can compare what you get. The installers come from Microsoft's own server (aka.ms), the links Microsoft gives for Visual C++ 2013.

Step by step
- See what is installed. Open Settings, Apps, Installed apps and type “Visual C++ 2013” in the search box. You are looking for “Microsoft Visual C++ 2013 Redistributable”, once with (x64) and once with (x86) in the name. A 2015-2022 entry does not count: it is a different runtime with different files.
- Nothing there, or only one of the two: install. Run the x64 installer and the x86 installer from the links above, then start the program again. On 32-bit Windows only the x86 package applies. If the installer asks for a restart, do it before you test.
- Both are there: repair, or update an older 2013 build. If the version shown is lower than 12.0.40664.0, simply run the installers above: they update the 2013 runtime in place. If it is already that version, open the menu next to the entry, choose Modify, then Repair. This rewrites msvcr120.dll and msvcp120.dll without touching your programs.
- A game shows the error: use the copy it brought. Many games keep the Visual C++ 2013 installers in their own folder, usually under _CommonRedist\vcredist\2013 or a folder named Redist or Support. Run both vcredist_x64.exe and vcredist_x86.exe from there, or use the launcher's verify or repair option for that game.
- The error names one program only: look in its folder. Some programs ship their own msvcr120.dll next to their .exe. If that copy is damaged or is the wrong architecture, Windows loads it first and fails. Reinstall the program, or remove that one damaged copy after the redistributable is installed.
- Still failing: read the exact message. “Was not found”, “is either not designed to run on Windows” and the 0xc000007b error are different problems with different causes. The messages section below explains each.
What not to do
Do not download msvcr120.dll from a DLL collection site.
You cannot tell which version or architecture you get, msvcp120.dll and the rest of the 2013 runtime are left out, and nothing updates or repairs the file afterwards. A copy that matches nothing Microsoft has published is also how tampered files get onto a PC. If a program needs the loose files, use “DLL files only” above, and the checker below for a file you already have.
Do not expect the newest Visual C++ package to cover it.
The 2015-2022 redistributable installs msvcp140.dll and vcruntime140.dll, version 14 files. A program built with Visual Studio 2013 asks for msvcr120.dll by name and never looks at them. Both runtimes can be installed side by side, and many PCs need both.
Do not copy the file into System32 by hand.
A manually placed file is invisible to the installer, so a later repair may leave it in place. A 32-bit copy dropped into System32 on 64-bit Windows also causes the 0xc000007b error in every 64-bit program that needs the file.
Do not run regsvr32 on it.
msvcr120.dll is not a COM library and has no registration entry point, so regsvr32 only produces another error. Guides that tell you to register it are copying a step that applies to other files.
Do not delete the other copies you find on the disk.
Programs and games often carry a private msvcr120.dll in their own folders. Those copies are normal, and removing them stops those programs from starting.
Check the copy on your PC
Choose the msvcr120.dll you have. Its checksums are calculated in your browser and compared with 22 builds we know: the last official Visual C++ 2013 files, the copies indexed from Windows 10 images and the older versions found on PCs.
The file stays on your computer. Nothing is uploaded: the checksum is computed locally.
Found a copy you did not expect, in a Downloads, Temp or AppData folder, or next to a program you do not recognise? That is a security question, not a missing-file one. How to tell if msvcr120.dll is malware, on 2-Spyware
The error messages and what each one means
The wording tells you which problem you have. These are the texts Windows shows, as written.

The code execution cannot proceed because MSVCR120.dll was not found. Reinstalling the program may fix this problem.
The wording of Windows 10 and Windows 11. The program asked for the file and Windows found no copy for that program's architecture. Install the Visual C++ 2013 redistributable, both x64 and x86.
The program can't start because MSVCR120.dll is missing from your computer. Try reinstalling the program to fix this problem.
The same situation in the older wording of Windows 7 and 8. Same fix.
MSVCR120.dll is either not designed to run on Windows or it contains an error. Try installing the program again using the original installation media or contact your system administrator or the software vendor for support.
The file was found but could not be loaded: it is damaged, truncated, or of the wrong architecture. This is typical after a copy was placed by hand. Repair the 2013 redistributable, and remove any stray copy in the program's own folder.
The application was unable to start correctly (0xc000007b). Click OK to close the application.
A 64-bit program found a 32-bit msvcr120.dll, or the reverse. It usually follows a hand-copied file in System32 or in the program's folder. Install both packages from Microsoft, then remove the stray copy.
Faulting module name: MSVCR120.dll
A line from the Application log in Event Viewer after a crash. The file is present and the program crashed while running code inside it. Update the 2013 runtime to 12.0.40664.0; if the crash stays, the cause is the program itself, so update or reinstall it.
File facts for the last official version
Read from the files inside Microsoft's Visual C++ 2013 installers, version 12.0.40664.0. Microsoft® C Runtime Library, Microsoft Corporation.
| Build | Version | Size | Exported functions | Signed by |
|---|---|---|---|---|
| x64 | 12.0.40664.0 | 963,240 bytes | 1,925 | Microsoft Corporation |
| x86 | 12.0.40664.0 | 971,072 bytes | 1,966 | Microsoft Corporation |
- SHA-256 · x64
753ac30c30aae62415cc225e3d057b8b6254afe280696e0a43f1a7c3132632a6- SHA-256 · x86
82225ec7e2da43a7a72a3d523698747512523afa488767ca6839c63a7a5706fa
After installation the x64 file is in C:\Windows\System32 and the x86 file is in C:\Windows\SysWOW64 (on 64-bit Windows). The folder names are historical: System32 holds the 64-bit files. On 32-bit Windows the x86 file goes to System32.

What msvcr120.dll itself depends on
A DLL is rarely self-sufficient, and the import table of the official file lists the libraries Windows must load with it. msvcr120.dll is an exception: it needs only KERNEL32.dll, which is part of every Windows installation. Unlike the 2015-2022 runtime, it does not rely on the Universal C Runtime files.
So once msvcr120.dll is in place, any next error comes from the other direction. Programs written in C++ also load msvcp120.dll, the C++ Standard Library of the same package, and some use vcomp120.dll for parallel code. Copying single files trades one error for the next; the redistributable installs all five at once.
KERNEL32.dllKERNEL32.dll is a core Windows library serviced by Windows Update. Never replace it or download it separately.
What the Visual C++ 2013 redistributable installs
The runtime payload of the x64 installer, version 12.0.40664.0: 5 files that are installed and updated together.
| File | Microsoft's description | Size |
|---|---|---|
msvcp120.dll | Microsoft® C Runtime Library | 644 KB |
msvcr120.dll | Microsoft® C Runtime Library | 941 KB |
vcamp120.dll | Microsoft® C++ AMP Runtime | 471 KB |
vccorlib120.dll | Microsoft ® VC WinRT core library | 348 KB |
vcomp120.dll | Microsoft® C/C++ OpenMP Runtime | 135 KB |
Older versions of msvcr120.dll found on PCs
Programs and games often install their own copy of msvcr120.dll, and those copies stay behind for years. A public DLL catalogue has collected 13 such copies, from version 12.0.21005.1 to 12.0.40664.0. The table lists each with its checksums, so you can tell which one you have.
The redistributable above installs 12.0.40664.0, the last Visual C++ 2013 build. If the check on this page finds your file in this list, it is most likely an older Microsoft build (confirm the Microsoft signature, since the list itself is not verified): install the redistributable and programs will use the current file from System32 or SysWOW64, unless they keep their own copy in their folder.
| Version | Build | Size | MD5 | SHA-1 |
|---|---|---|---|---|
12.0.40664.0 | 64-bit | 942 KB | b70474fe249402e251a94753b742788c | f53b3c21adf75dc84977067869253e207f1b9795 |
12.0.40664.0 | 32-bit | 952 KB | 7dabb11da67d32c5dc917839fcbeb16d | 198923794549bc37e8b05a326a403eedadba7b55 |
12.0.40660.0 | 64-bit | 942 KB | aeb29ccc27e16c4fd223a00189b44524 | 45a6671c64f353c79c0060bdafea0ceb5ad889be |
12.0.40660.0 | 32-bit | 952 KB | 2fb20c782c237f8b23df112326048479 | b2d5a8b5c0fd735038267914b5080aab57b78243 |
12.0.40649.5 | 64-bit | 942 KB | e2ca271748e872d1a4fd5ac5d8c998b1 | 5020b343f28349da8c3ea48fb96c0fbab757bd5c |
12.0.30501.0 | 32-bit | 942 KB | 1a22ac29230ff06e278cf85992f48c86 | dad146b9ebdbae711d42a503adb2bf084d1a6a41 |
12.0.21005.1 | 64-bit | 942 KB | 448d1056a6379e6f797bca13a7bc377b | d36fe3ab178c017b23faf7c4dd18646994c15f90 |
12.0.21005.1 | 64-bit | 942 KB | 9c861c079dd81762b6c54e37597b7712 | 62cb65a1d79e2c5ada0c7bfc04c18693567c90d0 |
12.0.21005.1 | 64-bit | 952 KB | d677629bbf5089d6d80d756cbdbab087 | a1bf5958f506a324fe99292c89085049b2c9f993 |
12.0.21005.1 | 64-bit | 952 KB | db1db93aaaf8721e799b89db5927a22a | 3c625eb13a867e66164d3d7ebc15ef0ce719ea44 |
12.0.21005.1 | 32-bit | 952 KB | 034ccadc1c073e4216e9466b720f9849 | f19e9d8317161edc7d3e963cc0fc46bd5e4a55a1 |
12.0.21005.1 | 32-bit | 952 KB | 50097ec217ce0ebb9b4caa09cd2cd73a | 8cd3018c4170072464fbcd7cba563df1fc2b884c |
12.0.21005.1 | 32-bit | 952 KB | 8d33db65c9be283b0d488cc1efa65a8e | 587d7c4c25cae5a71c7986caf28a73e2ffbfbecf |
Copies uploaded by users to a public DLL catalogue, read on 14 October 2026. We list their checksums so you can identify a file; we do not offer them for download and we did not verify each one against Microsoft's signature.
Questions people ask
I have the newest Visual C++ installed. Why is msvcr120.dll still missing?
Because the newest package is the 2015-2022 runtime, version 14, with files named msvcp140.dll and vcruntime140.dll. msvcr120.dll belongs to Visual C++ 2013, version 12, and only the 2013 redistributable installs it. The two never replace each other, so a PC with older and newer programs needs both, each in x64 and x86.
Microsoft says Visual C++ 2013 is no longer supported. Is it safe to install?
Yes. No longer supported means Microsoft no longer fixes the 2013 runtime, not that it is withdrawn. Microsoft still links the final 12.0.40664.0 installers for programs that need them, and they are signed by Microsoft. Install that final build rather than an older 2013 installer bundled with a program.
What is the difference between msvcr120.dll and msvcp120.dll?
msvcr120.dll is the C runtime: memory, files, strings and maths for programs built with Visual Studio 2013. msvcp120.dll is the C++ Standard Library built on top of it. A C++ program usually needs both, and the redistributable installs them together, so an error naming either file has the same fix.
Is msvcr120.dll a virus?
The genuine file is a signed Microsoft library and is harmless. Malware packages have carried it next to other files, so where a copy sits matters more than its name. Check your copy with the tool on this page; how attackers have used the file is covered on the security page linked above.
Can I delete msvcr120.dll to free space?
No. The file is under 1 MB, and every program built with Visual Studio 2013 that uses the shared runtime stops starting without it. Uninstalling the 2013 redistributable from Installed apps has the same effect.
Will System File Checker (sfc /scannow) restore it?
No. System File Checker repairs Windows' own protected files, and msvcr120.dll in System32 belongs to the Visual C++ 2013 redistributable. Repairing or reinstalling that package is the direct fix. Run sfc when the errors name Windows files instead.
Related guides
How to fix Bootstrapper.exe error in Windows?
Sources
- Microsoft: Latest supported Visual C++ Redistributable downloads
- Winbindex, the Windows binaries index (m417z)
File data read on October 14, 2026.
The editors who write and check uGetFix guides and reference pages. File facts are read from Microsoft's own installers and documentation, and every page shows the date its data was read.
Questions and experiences
Ask about this page: members and our editors answer. Reading is open; writing needs a free account.
…