Visual Studio 11 and handling msvcr110.dll

24,180

Solution 1

As the comment by Hans Passant says, Microsoft does not permit the debug dll to be redistributable; they are only available when Visual Studio is installed.

Even if you are able to rebuild your projects as release builds, you may get a new problem on machines when you try to run the projects, namely, missing mvcr110.dll.

In this case, and Visual Studio need not be installed, you can get the missing dll from Microsoft. Microsoft provides downloadable installers for these redistributable dll at:

http://www.microsoft.com/en-us/download/details.aspx?id=30679

Run the appropriate installers.

VSU3\vcredist_arm.exe , VSU3\vcredist_x64.exe , VSU3\vcredist_x86.exe

Solution 2

You need to downgrade the "Platfrom Toolset" property for each of your projects from v110 to v100(or v90).

To change the project toolset In Visual Studio, in Solution Explorer, open the shortcut menu for your project and then choose Properties.

In the Property Pages dialog box, open the Configuration drop-down list and then select All Configurations.

In the left pane of the dialog box, expand Configuration Properties and then select General.

In the right pane, select Platform Toolset and then select the toolset you want from the drop-down list. For example, if you want to compile with the Visual Studio 2010 toolset, select Visual Studio 2010 (v100).

Choose the OK button.

Solution 3

That one is a DLL from Microsoft VS 2011/2 qutoing from http://www.rhyous.com (it talks about msvcrt100.dll but it's the same principle):

"This msvcr100.dll is the Microsoft Visual C++ Redistributable dll that is needed for projects built with Visual Studio 2010. The dll letters spell this out. MS = Microsoft, V = Visual, C = C program language, R = Run-time, 100 = Version "

If you create a C++ project in Visual Studio 2010, this file is probably needed. you need to install the MS redistributable, but seems it's not yet available see this thread - http://social.msdn.microsoft.com/Forums/en-US/parallelcppnative/thread/8963c3d9-26ec-4748-af95-7c696a27c431

I would guess that your compiler is still the VS2011 one, that's why your program depends on vs2011 DLLs..

Share:
24,180
Admin
Author by

Admin

Updated on September 06, 2020

Comments

  • Admin
    Admin over 3 years

    I decided to try out Visual Studio 11, concluded that I don't like it and uninstalled it promptly. It seems quite a few of my old projects now crash with the following error.

    The program can't start because MSVCR110D.dll is missing from your computer. Try reinstalling the program to fix this problem.

    Unfortunately my understanding of the problem ends here, the solutions I've come across seem to suggest to change the runtime library to Multi-Threaded which results in even more errors that I don't have the knowledge or patience to deal with.

    In short the question would be, how can I undo the changes Visual Studio 11 made, whatever they are.

  • Adam Goodwin
    Adam Goodwin about 11 years
    This solved a problem I was having with OpenCV and VS 2012. Thanks a lot.
  • fiat
    fiat almost 11 years
    +1; tip for noobs (me) - even if your OS is x64, you may need x86 (maybe because my cpp is targeting win32? not sure)