OpenCV:代码执行无法继续,DLL丢失

时间:2018-03-11 15:14:44

标签: c++ visual-studio opencv visual-studio-2017

我正在使用OpenCV编写程序,我需要功能匹配。我之前使用的是OpenCV3,但显然让SURF工作有点麻烦所以我转而使用OpenCV2.4

我下载了预先构建的库,我想在Visual Studio上使用它们,但是我遇到了问题,当我运行程序时,我得到这样的消息:

当我点击确定后,我会收到更多跟进消息,抱怨其他丢失的dll。我尝试重新安装但仍然出现此错误。

以下是我的设置:

在C / C ++>一般情况下:附加包含Directores:

C:\opencv2.4\opencv\build\include

在链接器>常规:其他库目录:

C:\opencv2.4\opencv\build\x64\vc14\lib
C:\opencv2.4\opencv\build\x64\vc14\bin

在链接器> Incput:附加依赖项:

opencv_calib3d2413.lib
opencv_contrib2413.lib
opencv_core2413.lib
opencv_features2d2413.lib
opencv_flann2413.lib
opencv_gpu2413.lib
opencv_highgui2413.lib
opencv_imgproc2413.lib
opencv_legacy2413.lib
opencv_ml2413.lib
opencv_nonfree2413.lib
opencv_objdetect2413.lib
opencv_ocl2413.lib
opencv_photo2413.lib
opencv_stitching2413.lib
opencv_superres2413.lib
opencv_ts2413.lib
opencv_video2413.lib
opencv_videostab2413.lib

我也尝试在Path下编辑环境变量我添加了include \ bin \和lib \目录。我完全不知道如何解决这个问题。我知道dll在那里。

2 个答案:

答案 0 :(得分:1)

我将bin \目录中的dll复制并粘贴到我的解决方案目录中,现在一切正常。

我不确定为什么将bin \添加到路径中并不起作用,但无论如何这里是解决该问题的方法。

答案 1 :(得分:1)

执行程序没有找到DLL。 在“链接器>常规:附加库目录”下,它期望.lib文件的路径,但在执行期间程序会搜索DLL,因此在当前文件夹和PATH文件夹中。

将Dll放入执行文件夹或修改PATH以添加DLL的文件夹(在最后一种情况下,请记住重新启动Visual Studio)。

干杯