缺失MSVCP120D.dll和MSVCR120D.dll

侯:“opencv249+VS2017+vc12的lib”报错

Visual Studio 6 : vc6
Visual Studio 2003 : vc7
Visual Studio 2005 : vc8
Visual Studio 2008 : vc9
Visual Studio 2010 : vc10
Visual Studio 2012 : vc11
Visual Studio 2013 : vc12
Visual Studio 2015 : vc14
Visual Studio 2017 : vc15

分析:

因为opencv是用的249版本,所以对应的MSVCP为120版本。缺少这个msvcr120.dll是缺少vs的运行时环境,120表示版本,120应该是2010的版本,2017是141,2015是140,2013可能是130。

解决:

msvcp、msvcr120.dll属于VC++2013版,加上VS2017会出错(此时要用win32)

msvcp、msvcr140.dll属于VC++2015版,加上VS2017不会报错

方法1:换opencv版本,使用opencv3,保证opencv使用带有vc15或者vc14的版本,此时这两个版本都可以配VS2017;

方法2:侯解压出的249只有vc12、vc11,这个不能配VS2017(因为VS2017没有120版本的msvcr120d.dll,VS2017有140d.dll和141d.dll所以VS配置vc14和vc15都可以);如果使用了2017,经过尝试可以下载msvcr120d.dll放到debug下面,使用win32、x86也是可以的。

补充:

Opencv249没有opencv_world249.lib,需要将所有的lib库全部配置。

附加库目录:在VC++目录-库目录添加,或者链接器-附加库目录添加(后者更好)

把缺少的dll文件,在opencv的“F:\opencv\opencv-3.4.1-vc14_vc15\opencv\build\x64\vc15\bin”目录下的缺少的dll放到,“…Project1\Project1\x64\Debug”debug或release下。

报错MSVCP120d.dll缺少,网上下载,先配置x64,发现不行,再配置x86版本。

一个工程下面设置两个项目进行测试,设为启动项目。

猜你喜欢

转载自blog.csdn.net/weixin_41874898/article/details/109997182