c++ - 打包 OpenCV Dll 以分发 C++ DLL
问题描述
我在 Visual Studio 2017 上使用 C 包装器在 C++ 中创建了一个 DLL,并且我正在使用该OpenCV
库。我安装在我的电脑上,在我的项目中添加和文件OpenCV
的路径,这样我就可以在其他程序中使用我的 DLL。准确地说,我现在在一个文件夹上有 OpenCV ,我的 Visual Studio 解决方案在..lib
.dll
C:\opencv\...
C:\MG\DLL\MyDll.sln
但是,为了在另一台计算机上使用它,我将无法安装OpenCV
,所以我必须找到如何打包OpenCV
库以将正确的文件与我的.dll
文件一起分发。也许我必须将文件复制到.dll
我OpenCV
的 DLL 的同一文件夹中?
我不知道如何处理这个问题,因为在互联网上我看到一些人在谈论例如CMake
,其他人包括项目中的一些文件,......
此外,我尝试使用可以添加使用我的 C++ DLL 的 C# 插件的软件来模拟这一点。在这种情况下,我重命名OpenCV
文件夹以确保与该文件夹的链接已断开。如果我复制的.dll
文件OpenCV
,重命名的安装文件夹后插件不再起作用OpenCV
。
提前感谢您分享您的经验/知识;)
解决方案
您需要做的就是将所需的 OpenCV DLL 文件复制到您的可执行文件夹中
也许我必须将 OpenCV 的 .dll 文件复制到我的 DLL 的同一文件夹中?
是的,这正是您需要做的。您甚至可以在您的开发环境中检查您正在链接的 DLL,这些是要复制的
推荐阅读
- php - 从AJAX发送到php文件时如何区分表单数据和jQuery变量?
- excel - 检查文件夹是否打开 vba 然后将其显示在顶部
- python - 将列表中的元素连接为 n,n 个字符
- matlab - 如何将矩阵与向量相乘并得到矩阵的结果?
- javascript - 将值传递给输入值已更改的存储过程
- salt-stack - saltstack抱怨“无效的返回者”
- groovy - JMeter断言:比较变量时出错
- eclipse - STM32 的 System Workbench 中没有此类文件错误
- javascript - BitGo 中的授权问题 - 已登录
- csv - 如何通过python比较2个CSV文件的特定列