怎样使OpenCV-VS开发环境下生成的exe文件可独立运行(找到exe运行时需要的依赖DLL文件)

  • Post author:
  • Post category:其他


要使VS编译生成的exe文件能脱离我们的OpenCV-VS开发环境单独运行,关键是找到其运行所需要的依赖DLL文件。

怎么知道其运行时需要哪些依赖DLL文件?

使用工具“Dependencies”即可查看,这个工具的百度网盘下载链接:

链接:

https://pan.baidu.com/s/15t3QKhvQf5SXEFA5X-f7rQ


提取码:f591

这个工具的GitHub地址:

https://github.com/lucasg/Dependencies

下载解压后找到 DependenciesGui.exe 打开软件。

接着打开自己需要分析的exe文件。

打开之后便可看到该exe文件运行时所需要的依赖DLL文件了,如下图所示:

上面截图中画红线的便是其运行时需要的依赖DLL文件。并且该软件还为我们指明了这些依赖DLL文件的路径,我们根据路径依次复制到exe文件所在的文件中。再把该exe所在的文件夹复制到没有安装OpenCV-VS开发环境中的系统中,即可正常运行由VS生成的exe文件了。

在另一台没有配置OpenCV-VS开发环境的电脑上,没有这些依赖DLL文件时的情况如下图所示:

在另一台没有配置OpenCV-VS开发环境的电脑上,有这些依赖DLL文件时的情况如下图所示:

我把上面这个可独立运行的exe所在文件夹及相关文件打包,提供下载地址给大家,大家可以下载下来试一下,百度网盘下载链接:

https://pan.baidu.com/s/13eVLj17OA-VMiBhnZAPX2Q

提取码:7l49

Tips:

①上面的MSVCR110D和MSVCP110D是微软Visual Studio的重要的dll文件,不仅在系统文件夹下“C:\Windows\SysWOW64”有,在VS的安装文件夹下也有,直接搜索VS的文件夹即可找到,如下面的截图所示。博主在这里建议大家使用VS安装文件夹中的这些DLL文件,以达到最大兼容性。

②exe文件执行时调用依赖文件首先是看其所在的文件夹下有没有相应的DLL文件,然后再按照DLL文件所在的路径去找寻,所以我们把DLL文件复制到其所在文件夹下后exe文件可正常运行。



版权声明:本文为wenhao_ir原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。