首页 > 解决方案 > 打包 OpenCV Dll 以分发 C++ DLL

问题描述

我在 Visual Studio 2017 上使用 C 包装器在 C++ 中创建了一个 DLL,并且我正在使用该OpenCV库。我安装在我的电脑上,在我的项目中添加和文件OpenCV的路径,这样我就可以在其他程序中使用我的 DLL。准确地说,我现在在一个文件夹上有 OpenCV ,我的 Visual Studio 解决方案在..lib.dllC:\opencv\...C:\MG\DLL\MyDll.sln

但是,为了在另一台计算机上使用它,我将无法安装OpenCV,所以我必须找到如何打包OpenCV库以将正确的文件与我的.dll文件一起分发。也许我必须将文件复制到.dllOpenCV的 DLL 的同一文件夹中?

我不知道如何处理这个问题,因为在互联网上我看到一些人在谈论例如CMake,其他人包括项目中的一些文件,......

此外,我尝试使用可以添加使用我的 C++ DLL 的 C# 插件的软件来模拟这一点。在这种情况下,我重命名OpenCV文件夹以确保与该文件夹的链接已断开。如果我复制的.dll文件OpenCV,重命名的安装文件夹后插件不再起作用OpenCV

提前感谢您分享您的经验/知识;)

标签: c++opencvdllsoftware-distribution

解决方案


您需要做的就是将所需的 OpenCV DLL 文件复制到您的可执行文件夹中

也许我必须将 OpenCV 的 .dll 文件复制到我的 DLL 的同一文件夹中?

是的,这正是您需要做的。您甚至可以在您的开发环境中检查您正在链接的 DLL,这些是要复制的

如何在 Visual Studio 2010 中部署基于 OpenCV 的独立项目?


推荐阅读