问题标签 [qt-installer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4487 浏览

qt - 在 Qt Installer Framework (QtIFW) 安装程序中安装 VC++ Redistributables?

我正在使用 Qt Installer Framework (v2.0.1) 为我的应用程序构建安装程序。我正在为 Windows 上的 x86 和 x64 构建我的应用程序,因此我正在为每个架构构建一个安装程序,每个架构中都打包了不同的 VC++ Redistributables(来自 MSVC++2013 的 vcredist_x86.exe 和 vcredist_x64.exe)。QtIFW 文档的详细信息令人沮丧,但我发现我可以在 installscript.qs 中添加一个操作,以便在提取文件后静默运行 vcredist 安装程序:

但后来我遇到了确定我的安装程序是 x86 还是 x64 版本的问题。有没有办法从安装脚本中确定这一点?也许是一种查看要提取的文件列表的方法?或者有没有更简单的方法来完成安装 VCRedists 这个看似常见的任务?

文档只是说明了这一点:

要在最终用户的系统上安装运行时库,您需要在您的应用程序中包含适当的 Visual C++ Redistributable Package (VCRedist) 可执行文件,并确保在用户安装您的应用程序时执行它。

但它没有提供有关如何“确保执行”的任何细节。

0 投票
3 回答
2724 浏览

qt - Qt 安装程序,覆盖以前的版本

我正在使用最新的 Qt Installer 版本 2.0.3 我为我的应用程序创建了一个安装程序,但是当我尝试安装它时,我收到以下错误消息:“您选择的文件夹已经存在并包含一个安装。选择不同的目标安装”

如何指示 Qt 安装程序覆盖旧版本?这是官方支持的吗?

0 投票
0 回答
1328 浏览

qt - Qt 安装卡在“未知剩余时间”并且无法继续

尝试在我的 Windows 10 机器上安装 Qt 64 位版本时出现“未知剩余时间错误”,并且下载卡住并且没有继续进行,如下面的屏幕截图qt_installation_stuck_screenshot所示。

如何继续下载?

0 投票
2 回答
1188 浏览

qt - Qt Installer Framework - 删除维护工具

我正在使用 Qt Installer Framework (2.0.3) 创建我的程序的安装程序。一切正常,我的程序安装完美。

但是,我想删除(或根本不安装)默认包含的维护工具。我已阅读文档和示例,并在网上搜索过,但我没有找到任何解决此问题的方法。我发现最接近的是配置文件中的“MaintenanceToolName”元素。我还希望有一个选项可以防止完全安装维护工具。如果我也可以删除 Licenses 文件夹,那就太好了。

简而言之:有没有办法删除或阻止安装维护工具(及其相关文件)?

谢谢!

0 投票
1 回答
1395 浏览

qt - Qt 安装程序框架卸载程序

是否有“卸载程序”的 Qt 安装程序框架的脚本或示例?我想使用维护工具删除一些文件夹。

0 投票
0 回答
477 浏览

c++ - QT 安装程序:加载共享库时出错

我正在尝试按照他们的手册设置 QT 安装程序(我在 Ubuntu 中):

https://doc.qt.io/qtinstallerframework/ifw-getting-started.html

我只是用 qmake 和 make 命令编译它,显然没有问题。生成了二进制文件,没有错误消息。但是当我尝试运行任何二进制文件时,我会收到以下消息:

“加载共享库时出错:libinstaller.so.1:无法打开共享对象文件:没有这样的文件或目录”

我可以看到 libinstaller.so.1 位于 QT Installer lib 文件夹中。但我不知道如何链接它。

$ls库/

lib7z.a libinstaller.so.1 libinstaller.so.1.0.0 libinstaller.so libinstaller.so.1.0

0 投票
3 回答
1696 浏览

qt - Qt 安装程序框架撤消 Mkdir 操作

我使用 qt 安装程序框架来创建安装程序。在安装步骤中,我调用 component.addOperation("Mkdir", dataDir); // dataDir is a dataLocationDir like C:\Users\Stranger\AppData\Local\MyAppName 了当我安装的程序运行时,它会将一些文件夹和文件放入 dataLocationDir 中,这样,当我运行卸载时,“Mkdir”操作的 UNDO 步骤无法正常工作。我尝试像这样使用“执行”命令: component.addOperation("Execute", "mkdir " + dataDir, "UNDOEXECUTE", "del /S /F" + dataDir); 我也尝试过 component.addOperation("Execute", "cmd /C mkdir " + dataDir, "UNDOEXECUTE", "cmd /C del /S /F" + dataDir); ,但是这种方法取消并出现错误“无法启动:'mkdir my/path'(未定义程序)”

0 投票
0 回答
456 浏览

qt - Qt 安装程序框架连接到 NextButton

我尝试将页面 TargetDirectory 的 NextButton 与一个函数连接:

但问题是 findChild 返回 0。我试过了

这有效。有谁知道如何捕捉下一个按钮的点击信号?

谢谢你。

0 投票
1 回答
582 浏览

qt-installer - Qt Installer 项目:如何生成 package.xml 和 config.xml

我试图让我的 Qt Installer 项目更舒适。

我需要将有关我的应用程序和组件(config.xml 和 package.xml)的信息集中在一个文件中。我不想跳转到具有相同名称的不同文件并在 xml 标签之间搜索可变元素。

我的第一个想法是在安装程序项目的 *.pro 文件中正确执行此操作。我将变量部分放在安装程序项目文件的标题中。但是我需要将生成xml的代码放在哪里?

这样做的更好(本机/舒适/跨平台)方法是什么?

0 投票
0 回答
394 浏览

c++ - Qt Installer Framework,安装程序在有多个提升操作时崩溃

这是我尝试部署的第一个应用程序。我需要安装程序与已安装文件之一建立符号链接,并将用户添加到不同的组。我目前正在使用component.addElevatedOperation("CreateLink", <linkPath>, <targetPath>)component.addElevatedOperation("Execute", "usermod -a -G dialout id") 完成此操作。安装程序使用 IFW 的binarycreator. 运行安装程序时会出现问题。如果我尝试安装包含这些操作的组件,安装程序会冻结。它在我输入 sudo 密码后立即冻结。如何让安装程序成功运行这些命令?