使用Qt Installer Framework制作安装包还是比较简单的,不过像我一样的新手即使使用官方模板也难免遇到问题。
1、下载Qt Installer Framework安装成功。
2、将安装的Qt Installer Framework目录下的bin路径加入环境变量。
3、将发布的程序.exe和依赖包放入Demo中的data文件夹。
这里出现的一个问题把我整的一个多小时,就是直接放文件,如果文件较多,制作安装包是制作不了的,会提示内存不足相关错误。
所以需要将一部分大文件压缩成.7z文件放入data,Qt Installer Framework会自动解压。
4、修改配置文件,这里就忽略了。
5、使用CMD命令窗口进入制作的安装包项目目录,执行:
binarycreator.exe -c config/config.xml -p packages GTodo安装包.exe -v
不出意外的话就能在项目同目录出现制作好的安装包了(上面代码中的“GTodo安装包.exe”就是程序安装包名称)。
6、官方文档没心情研究,结果发现制作的安装包并没有桌面图标啥的问题。
研究了下installscript.qs文件脚本,以下的参考代码:
function Component()
{
}
Component.prototype.createOperations = function()
{
component.createOperations();
if (systemInfo.productType === "windows") {
component.addOperation("CreateShortcut", "@TargetDir@/GToDo.exe", "@DesktopDir@/GToDo.lnk", "workingDirectory=@TargetDir@", "description=打开主程序");
component.addOperation("CreateShortcut", "@TargetDir@/GToDo.exe", "@StartMenuDir@/GToDo.lnk", "workingDirectory=@TargetDir@", "description=打开主程序");
component.addOperation("CreateShortcut", "@TargetDir@/README.txt", "@StartMenuDir@/README.lnk", "workingDirectory=@TargetDir@", "description=打开README文件");
component.addOperation("CreateShortcut", "@TargetDir@/maintenancetool.exe", "@StartMenuDir@/卸载 GToDo.lnk", "workingDirectory=@TargetDir@", "description=卸载程序");
}
}