我有以下情况:
我正在尝试使用Windows 8中的visual studio 2012,opencv 2.4.1。 然后,当我尝试运行我的应用程序时,我收到以下消息错误:
我知道有关丢失MSVCP100D.dll的问题在stackoverflow之前被询问, 但是我发生了一些不同的事情:当我在计算机中查找dll时,我注意到了 我有一个MSVCP110D.dll,它可能是第一个版本的更高版本。
有人可以回答这里发生的事情。
答案 0 :(得分:7)
您没有安装Visual C ++ 2010运行时。 Visual Studio 2012安装了11.0版本,但似乎您的OpenCV已使用Visual Studio 2010进行编译,因此需要2010运行时(10.0)。你应该可以从这里得到它:http://www.microsoft.com/en-us/download/details.aspx?id=14632
因为它正在寻找 D 版本,所以你可以看到它是在Debug中构建的。从法律上讲,运行时库无法在调试中重新分发,因此您有以下选项:
在每种情况下,要部署您的应用程序,您需要包含两个版本的VC ++ redists:适用于您的应用程序的版本11和适用于OpenCv的版本10(这是必需的)。
请注意,可能无法在Visual Studio 2010和12之间链接二进制文件。