QT QIFW Windows下制作安装包(一)

一、概述

1、QIFW是一款基于QT框架开发的跨平台安装框架。QIFW是QT Installer FrameWork的缩写,支持Windows、Linux和macos等多种平台。QIFW可以帮助开发者创建自己的安装程序,将它们打包到通用的安装包中,并提供可视化的界面进行安装。 

2、QIFW官网文档Qt Installer Framework概述 |Qt Installer Framework手册icon-default.png?t=N7T8https://doc.qt.io/qtinstallerframework/ifw-overview.html

3、QIFW下装地址 Index of /official_releases/qt-installer-frameworkicon-default.png?t=N7T8https://download.qt.io/official_releases/qt-installer-framework/

二、安装QIFW

1、下装QIFW

2、双击下装的exe,进行安装

 

 3、选择目录

4、剩下默认安装

 

三、 准备程序安装包

1、QT Windos平台下打包应用程序-CSDN博客

 四、开始制作软件安装包

1、创建一个目录,用来制作软件安装包

2、将我们的安装QIFW 拷到这里

3、将我们打包的程序整个拷贝到里面

4、创建config目录,注意名称不要错

4、在config目录里面创建一个config.xml配置文件

 

5、config里面的代码

<?xml version="1.0" encoding="UTF-8"?>
<Installer><Name>app</Name><Version>1.0.0</Version><Title>app Installer </Title><Publisher>app</Publisher><StartMenuDir>app</StartMenuDir><TargetDir>@rootDir@/app</TargetDir>
</Installer>

< Name> :软件名称
< Version> :版本号
< Title>: 安装程序窗口标题
< Publisher> :发布者名称
< StartMenuDir>: 要生成的windows开始菜单目录
< TargetDir> :默认安装路径

6、创建一个packages包目录

7、 在packages目录里面创建一个新子目录,名称为我们软件包的名称, 即app

8、在上一步创键的目录里面创建一个data和meta文件夹

9、将我们的打包程序压缩为7z格式的压缩包 

10、将这个压缩包放到第8步里面data的目录里面 

11、 在第8步的meta文件夹里面创建一个package.xml和安装脚本installscript.qs

package.xml代码

<?xml version="1.0" encoding="UTF-8"?>
<Package><DisplayName>app</DisplayName><Description>需要安装的组件</Description><Version>1.0.0-1</Version><ReleaseDate></ReleaseDate><Default>script</Default><Script>installscript.qs</Script><ForcedInstallation>true</ForcedInstallation>
</Package>

 installscript.qs代码


function Component()
{
}function operationForWindows()
{	component.addOperation("CreateShortcut", "@TargetDir@\\app.exe", "@TargetDir@\\app.lnk","workingDirectory=@TargetDir@", "iconPath=@TargetDir@\\app.png",s"iconId=0", "description=start app");var desktoppath = QDesktopServices.storageLocation(0);component.addOperation("Copy", "@TargetDir@\\app.lnk", desktoppath +"\\app.lnk");
}Component.prototype.createOperations = function()
{component.createOperations(); operationForWindows();
}

 12、打开终端

13、找到制作软件包程序,并将路径考到命令行

 

14、拷贝命令

binarycreator -f -c config/config.xml -p packages app -v

 15、执行命令

 16、安装包已经生成了

17、双击app.exe

 

  

18、快捷方式已经在桌面生成好了

19、双击运行

 20、卸载软件,找到软件的安装目录

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/216232.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql:用SHOW CREATE TABLE tbl_name查看创建表的SQL语句

https://dev.mysql.com/doc/refman/8.2/en/show-create-table.html 可以用SHOW CREATE TABLE tbl_name查看创建表的SQL语句。 例如&#xff0c;SHOW CREATE TABLE test_table;表示查询创建test_table表的SQL语句&#xff1a;

刘元昌:期待更多年轻人的第一杯精酿是失眠企鹅

12月7日下午&#xff0c;2023&#xff08;第十八届&#xff09;大河财富中国论坛盛大开启。作为先行论坛&#xff0c;2023新消费峰会火热开场。此次峰会以“提质新消费 释放新活力”为主题&#xff0c;集论坛、演绎、展示、互动为一体&#xff0c;把峰会变身“秀场”&#xff0…

腾讯-轻量应用服务器centos7中宝塔安装MySQL8.0出现内存不足

目录 前言 出现的问题: 解决方法&#xff1a; 编译安装&#xff1a; 极速安装 其他 我的其他博客 前言 说实话&#xff0c;本人也就是个穷学生买不起啥大的服务器啥的&#xff0c;整了个2核 2内存的服务器 用宝塔按mysql5.5是没问题的&#xff0c;一切换8.0就提醒内存不足…

UE5 - ArchvizExplorer与Map Border Collection结合 - 实现电子围栏效果

插件地址&#xff1a; https://www.unrealengine.com/marketplace/zh-CN/product/archviz-explorer https://www.unrealengine.com/marketplace/zh-CN/product/map-border-collection ArchvizExplorer扩展&#xff1a; https://download.csdn.net/download/qq_17523181/8843305…

freemarker+Aspose.word实现模板生成word并转成pdf

需求&#xff1a;动态生成pdf指定模板 实现途径&#xff1a;通过freemarker模板&#xff0c;导出word文档&#xff0c;同时可将word转为pdf。 技术选择思路 思路一&#xff1a;直接导出pdf 使用itext模板导出pdf 适用范围 业务生成的 pdf 是具有固定格式或者模板的文字及其…

数据采集网关:工业数据采集上云

数据采集网关&#xff0c;以其高效、便捷的特点&#xff0c;成为了现代工业物联网数据采集处理的重要工具。它是连接不同数据源和数据接收设备的桥梁&#xff0c;将各种形式和格式的数据快速、安全地汇聚到一起。通过数据采集网关&#xff0c;企业可以轻松实现数据的整合、转换…

函数创建与使用

函数使用的原因 函数是设计出来是为了完成某项功能的代码块。只要调用就能执行。实现代码复用。代码复用是不是复制&#xff0c;而是同样的代码不用写很多。只要用调用的代码来写&#xff0c;就能完成。将功能代码放到某个地方。函数的设计就是为了代码复用。 声明函数和调用…

【算法题】字符统计及重排(js)

解法&#xff1a; const str "xyxyXX"; const str1 "abababb"; function solution(str) {const strArr str.split("").sort((a, b) > a - b);const map new Map();for (let i 0; i < strArr.length; i) {if (map.has(strArr[i])) {m…

摇头机,舞台灯,白色家电,3D打印,医疗器械等安防芯片步进驱动选型GC系列,低成本,大电流

GLOBALCHIP新一代的安防产品用的芯片&#xff0c;GC3901 GC3909 GC3910 GC3911 GC8548 GC8549 GC6609 GC6610 GC2003 GC2803 GC2804步进驱动 达林顿选型型号&#xff0c;采用12V H 桥驱动器。其中最大持续电流(A)可达2.5A。其中GC6610&#xff0c;GC6609 是36V&#xff0c;低成…

14-Kafka-Day02

第 4 章 Kafka Broker 4.1 Kafka Broker 工作流程 4.1.1 Zookeeper 存储的 Kafka 信息 &#xff08;1&#xff09;启动 Zookeeper 客户端。 bin/zkCli.sh 因为你在配置kafka的时候指定了它的名字。 &#xff08;2&#xff09;通过 ls 命令可以查看 kafka 相关信息。 [zk: …

超越边界:Mistral 7B挑战AI新标准,全面超越Llama 2 13B

引言 在人工智能领域&#xff0c;模型的性能一直是衡量其价值和应用潜力的关键指标。近日&#xff0c;一个新的里程碑被设立&#xff1a;Mistral AI发布了其最新模型Mistral 7B&#xff0c;它在众多基准测试中全面超越了Llama 2 13B模型&#xff0c;标志着AI技术的一个重大进步…

深兰科技“汉境”入选2023年湖北省人工智能十大优秀应用案例

11月18日&#xff0c;央视“专精特新制造强国”城市大会在湖北武汉召开。会上&#xff0c;正式发布了“湖北省工业互联网标识十大优秀应用案例”&#xff0c;由深兰科技(武汉)股份有限公司基于AIGC多模态融合大模型技术开发打造的江汉路步行街元宇宙场景应用——汉境&#xff0…

Java异步编程之利器:Guava异步编程实践

第1章&#xff1a;引言 - 为什么要用Guava进行异步编程&#xff1f; 大家好&#xff0c;我是小黑&#xff01;今天咱们要聊的是Guava在异步编程中的应用。首先&#xff0c;让我们搞清楚为什么要用Guava来处理异步任务。在Java的世界里&#xff0c;异步编程是个老话题了&#x…

漏洞复现--速达进存销管理系统任意文件上传

免责声明&#xff1a; 文章中涉及的漏洞均已修复&#xff0c;敏感信息均已做打码处理&#xff0c;文章仅做经验分享用途&#xff0c;切勿当真&#xff0c;未授权的攻击属于非法行为&#xff01;文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…

vue项目 treeselect校验不生效

使用treeselect时&#xff0c;el-form表单检验rules不生效&#xff0c;使用blur与change都无效&#xff0c;我的解决方法代码如下&#xff1a; 在treeselect标签里使用select方法&#xff0c;该方法为选择一个项后发出&#xff0c;在每次选择组织的时候都进行unitId的校验。 …

KaiwuDB 获评信通院 2023 大数据“星河”标杆案例

12月6日&#xff0c;由中国信息通信研究院、中国通信标准化协会大数据技术标准推进委员会(CCSA TC601) 共同组织的 2023 大数据“星河(Galaxy)”案例评选结果正式公示&#xff0c;“基于 KaiwuDB 的台区云储能示范项目”历经多环节严苛评审&#xff0c;从累计 706 份申报项目中…

el-table表格出现滚动条的时候,内容和表头对不齐

1&#xff0c;在获取表格数据完成后的位置加 this.$nextTick(() > {this.$refs.templateData.doLayout(); })2,要记得在上加上ref <el-table ref"templateData" ></el-table>加完之后的

IDEA使用小技巧

常用的基本设置 界面字体 File | Settings | Appearance & Behavior | Appearance 编辑区字体 File | Settings | Editor | Color Scheme | Color Scheme Font Use color scheme font instead of the default 控制台字体 File | Settings | Editor | Color Scheme | Conso…

免费安装office流程(官方自动批量激活)

全程不需要第三方软件&#xff0c;所有用到的工具都是微软官方的&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 基于KMS的 GVLK&#xff1a;https://learn.microsoft.com/zh-cn/deployoffice/vlactivation/gvlks 首先我们需要去下载 office 软件部署工具&a…

神经网络是如何工作的? | 京东云技术团队

作为一名程序员&#xff0c;我们习惯于去了解所使用工具、中间件的底层原理&#xff0c;本文则旨在帮助大家了解AI模型的底层机制&#xff0c;让大家在学习或应用各种大模型时更加得心应手&#xff0c;更加适合没有AI基础的小伙伴们。 一、GPT与神经网络的关系 GPT想必大家已…