0

我使用 Qt 库编写了一个可移植的 C++ 应用程序。这意味着我不能在不冒内存问题的情况下使用 MT 标志进行编译。

这给我留下了两个选择:

1) 使用安装程序部署可移植应用程序。

2) 将 C++ 依赖项打包在同一文件夹中或使用私有程序集。

1 和 2 都否定了便携式软件的想法,所以我在考虑第三种选择:

3) 在启动应用程序之前使用 IExpress 删除 C++ 依赖项。退出时,删除 C++ 依赖项。

不幸的是,选项 3 受到了一些 stackoverflow 成员的抨击。他们甚至不喜欢选项 2,这让我只有选项 1。如果我使用便携式安装程序,我可以看到选项 1 是可行的。

是否有便携式安装程序之类的东西?本质上,我希望安装程序在运行我的应用程序之前检查是否安装了所需的依赖项(就像常规安装程序一样),如果是,则继续运行我的应用程序。否则,向用户提供一个消息框,让他们可以下载它,并提供指向 URL 的链接。我知道我可以编写自己的安装程序,可以在 C++ 中执行此操作,但我想知道是否有任何安装程序已经提供此特定功能。

4

1 回答 1

0

http://qt-project.org/doc/qt-4.8/deployment.html

Windows 中 Qt 的 dll 非常小,在我看来,将它们与应用程序一起部署不是问题。

我知道没有任何程序可以将 Qt dll 放置在 Windows 上的某个位置,以便稍后另一个程序会找到(例如 c:/Windows/system32)。

我认为唯一可以期望重用库的地方是 Linux 或具有大量 Qt 应用程序的移动设备。但即便如此,您也必须确保库的版本足够高以支持您正在使用的所有功能。

希望有帮助。

于 2013-04-08T22:55:43.507 回答