Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is MSVCP100D.dll? [duplicate]

Possible Duplicate:
Application has failed to start because MSVCP100D.dll was not found, reinstalling app may help…

I compiled my program using Microsoft visual C++ 2010 Express Edition and tried to run it on another machine that did not have the same compiler.

As I double clicked it, and there was message saying MSVCP100D.dll file was found missing.

  • What sort of file is this?
  • Why did the application fail to start?
  • What can I do to start the application there?
like image 622
Suhail Gupta Avatar asked Jul 05 '11 09:07

Suhail Gupta


2 Answers

This is the C++ runtime library dll. You've used the debug version, which won't be found in a user's computer. Compile your program in release mode. This will add a dependency in MSVCP100.dll, which is most likely to be present.

In any case, you must make sure that the dll will be present in user's machine. You can do that by creating an installer or by prompting the user to install the Microsoft Visual C++ 2010 Redistributable Package.

In summary:

  • Compile your code in release mode
  • Create an installer or use another way to copy the needed dlls to user's machine
like image 176
kgiannakakis Avatar answered Oct 09 '22 05:10

kgiannakakis


What about statically linking your program instead? I have done this in order to avoid this hassle (of either creating an installer, or asking a user to install another package and having to point/handhod them in that direction)

like image 25
Daniel Chisholm Avatar answered Oct 09 '22 05:10

Daniel Chisholm