Visual Studio 如何构建一个可移植的程序

Posted

技术标签:

【中文标题】Visual Studio 如何构建一个可移植的程序【英文标题】:How to build a portable program by visual studio 【发布时间】:2015-05-14 05:54:18 【问题描述】:

我在 Win7-64bit 下使用 Visual Studio 2010 来构建一个带有 openCV 的应用程序。我完成了开发并构建了发布版本,没有错误。我还成功地在调试模式下运行了程序。然后我将.exe 文件移动到同一台计算机的其他目录中。我在 cmd.exe 中运行它,但出现错误 warning: Error opening file <../../modules/highgui/src/cap_ffmpeg_implhpp:537> 我想一些openCV库有一些依赖,但我不知道如何解决它。我的最后一个任务是我可以直接在Win7下的另一台计算机上使用那个.exe。怎么办? 我发现了一个类似的问题here。但是我没有建立.dll 文件,那我该怎么解决这个问题呢?

【问题讨论】:

【参考方案1】:

使用共享库 (DLL) 构建 OpenCV 应用程序要求 DLL 在运行时对 exe 可用(相同的文件夹或在查找路径中)。

如果您使用静态链接,则不需要任何 OpenCV DLL 即可访问。 然而,由于许可问题,ffmpeg 是动态链接的987654322@。它被称为opencv_ffmpeg*.dll

请注意,仅当您使用highgui 相关功能时才需要这样做。

【讨论】:

谢谢,我找到了问题。

以上是关于Visual Studio 如何构建一个可移植的程序的主要内容,如果未能解决你的问题,请参考以下文章

使用 Visual Studio 项目使 Opencv 可移植并消除链接错误

带有 Visual Studio 2012 RC 的 MVC 4 / Razor 中的可移植类库?

可移植的配置visual studio工程第三方库

C++ - 将 C++ 代码从 Visual Studio 移植到 Linux Eclipse IDE 时出现问题

从 Visual Studio IDE 运行时,项目无法加载图像资产

C# Visual Studio Code:构建 Hello World 可执行文件