在 Visual Studio 中分发具有依赖项的 C++ 应用程序
Distribution of C++ application with dependencies in Visual Studio
我是初级程序员。我开发了一个 Visual Studio C++ 项目,其中包含大量依赖项:Boost、指纹识别库和 Windows 生物识别框架。至于今天,我知道 Windows 生物识别框架可以从标准 Windows 更新下载,我并不担心,据我所知,该应用程序已准备好搜索 link WBF依赖电脑本身。
我担心的是:用这个 .exe 需要的所有资源和依赖项(Boost 和指纹识别 SDK)打包可执行文件的最简单方法(不是最有效,我需要速度)这样我可以最大程度地减少分发麻烦,即缺少此dll,请重新安装应用程序之类的,而无需在客户端计算机中编译所有内容?
我在这里看到了几种方法:复制项目配置中列出的 dll,更改为静态 linking...但我不知道这是否是最简单的方法.我几乎不相信自己的能力,而且这些方法看起来很手动,想知道是否有自动的方法来做这些事情?
与在任何系统中一样,您需要包含您的应用程序链接的每个 .dll 库以及您的应用程序使用的每个外部资源(图像、配置文件...)。我通常使用 http://www.jrsoftware.org/isinfo.php 来制作我的 Windows 发行版。
非常好用。
我不熟悉指纹库或 WBF,但大部分 Boost 都位于 headers 中,因此它会在您编译应用程序时编译。有些,如线程库和系统特定调用(例如获取 CPU 核心计数)是静态链接到的库。
提供的指纹库是什么格式?动态地,至少会有一个 .dll 和相应的导入 .lib 文件。您的应用程序在编译后静态链接到导入器,并在 运行 时间内绑定到库。或者,该库可以包含在一个大的、单一的 .lib 中,在编译后链接到您的应用程序。如果您有这两个选项,并且只想分发二进制文件,请使用静态链接。
我是初级程序员。我开发了一个 Visual Studio C++ 项目,其中包含大量依赖项:Boost、指纹识别库和 Windows 生物识别框架。至于今天,我知道 Windows 生物识别框架可以从标准 Windows 更新下载,我并不担心,据我所知,该应用程序已准备好搜索 link WBF依赖电脑本身。
我担心的是:用这个 .exe 需要的所有资源和依赖项(Boost 和指纹识别 SDK)打包可执行文件的最简单方法(不是最有效,我需要速度)这样我可以最大程度地减少分发麻烦,即缺少此dll,请重新安装应用程序之类的,而无需在客户端计算机中编译所有内容?
我在这里看到了几种方法:复制项目配置中列出的 dll,更改为静态 linking...但我不知道这是否是最简单的方法.我几乎不相信自己的能力,而且这些方法看起来很手动,想知道是否有自动的方法来做这些事情?
与在任何系统中一样,您需要包含您的应用程序链接的每个 .dll 库以及您的应用程序使用的每个外部资源(图像、配置文件...)。我通常使用 http://www.jrsoftware.org/isinfo.php 来制作我的 Windows 发行版。 非常好用。
我不熟悉指纹库或 WBF,但大部分 Boost 都位于 headers 中,因此它会在您编译应用程序时编译。有些,如线程库和系统特定调用(例如获取 CPU 核心计数)是静态链接到的库。
提供的指纹库是什么格式?动态地,至少会有一个 .dll 和相应的导入 .lib 文件。您的应用程序在编译后静态链接到导入器,并在 运行 时间内绑定到库。或者,该库可以包含在一个大的、单一的 .lib 中,在编译后链接到您的应用程序。如果您有这两个选项,并且只想分发二进制文件,请使用静态链接。