我有以下情况:
我正在尝试在 Windows 8 中使用 Visual Studio 2012、opencv 2.4.1。然后当我尝试运行我的应用程序时,我收到以下消息错误:
我知道以前在 stackoverflow 中询问过有关丢失 MSVCP100D.dll 的问题,但发生了一些不同的事情:当我在计算机中查找 dll 时,我注意到我有一个 MSVCP110D.dll,这可能是第一个的更高版本。
有人可以回答这里发生了什么。
我有以下情况:
我正在尝试在 Windows 8 中使用 Visual Studio 2012、opencv 2.4.1。然后当我尝试运行我的应用程序时,我收到以下消息错误:
我知道以前在 stackoverflow 中询问过有关丢失 MSVCP100D.dll 的问题,但发生了一些不同的事情:当我在计算机中查找 dll 时,我注意到我有一个 MSVCP110D.dll,这可能是第一个的更高版本。
有人可以回答这里发生了什么。
您没有安装 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 之间链接二进制文件。