当前位置: 首页 > news >正文

把qml程序制作成安装包(Windows)

先检查一下有没有安装Qt Installer FrameWork

需要用到Qt自带的打包工具: Qt Installer FrameWork,虽然有点拉胯,但是也能用用。一般放在Qt目录下的Tools文件夹下,如果没有看到,就去在线下载器去下载一下。

 步骤1

随便在哪新建一个文件夹,然后把你写的程序的.exe文件拷贝到这个文件里。

步骤2 

 在拷贝了自己写的.exe文件的文件夹路径中输入cmd打开命令行窗口,然后在Qt文件夹中找到对应的编译的版本下的windeployqt的程序,把这个程序直接拖入黑窗口中,接着输入 --qmldir,接着找到你编译的版本下面的qml文件夹,把路径复制到后面,最后把你的程序名称和后缀输进去,回车,打包完成!

 

 步骤3

虽然打包完成了,文件夹多了很多其它文件,其中的.exe文件也能双击正常运行,但是这是一个文件夹,并不是我们想要的安装包。所以,我们还要在Qt\Tools\QtInstallerFramework\4.8\examples目录下找个样例文件夹复制一份出来,这里我选择 startmenu 这个文件夹,因为里面的文件相对少一些。复制到哪里?随便哪里都行,为避免麻烦难找,我选择复制到放自己写的exe的同级目录中。

 复制好之后,我们把前面我们打包好的文件夹中的文件全部复制到这个 startmenu 文件夹中的

startmenu\packages\org.qtproject.ifw.example\data 下面。里面有一个README文件不用管它,你嫌它不顺眼也可以直接删掉~

步骤4

修改2个xml文件,目的是在安装程序打开后显示的是你自己的程序名称和一些介绍以及相关内容,因为我们复制的是qml自带的打包样例,如果你无所谓可以跳过这步。

首先打开startmenu下的config下的xml文件,可以用vscode打开。打开之后我们对相关内容进行编辑。

 还有一个名为package的xml文件在startmenu\packages\org.qtproject.ifw.example\meta目录下。

 

改完之后保存即可。

步骤5

打开拷贝过来的样例文件夹startmenu,路径栏中输入cmd按回车打开命令行窗口。

接着找到Qt\Tools\QtInstallerFramework\4.8\bin路径下的 binarycreator程序,直接拖到黑窗口中。

然后输入:-c config/config.xml -p packages -v Test.exe 

耐心等待一会,直到文件中出现一个带光盘图标的程序就说明成功了!

  

http://www.lryc.cn/news/367181.html

相关文章:

  • 内网中redis无法连接访问问题
  • Unix环境高级编程第二版:深入探索与实战解析
  • SSL/TLS和HTTPS
  • 苹果将推出“Apple Intelligence”AI系统,专注于隐私和广泛应用|TodayAI
  • 配置Kubernetes资源管理Secret与ConfigMap
  • 韩顺平0基础学java——第19天
  • 嵌入式学习——Linux高级编程复习(目录IO、软硬连接、makefile)——day38
  • makefile与进度条
  • 操作系统总结
  • SpringCloud整合OpenFeign实现微服务间的通信
  • 老师必备!一文教你如何高效收集志愿填报信息
  • 创建 MFC DLL-使用DEF文件
  • 如何将HTTP升级成HTTPS?既简单又免费的方法!
  • 数据仓库之核心模型与扩展模型分离
  • 大龄职场人的春招机遇:技术岗位主导,高薪与挑战并存
  • 家宽动态公网IP,使用docker+ddns 实现动态域名解析
  • 【力扣刷题 动态规划】LeetCode 139 单词拆分、LeetCode 300 最长递增子序列 ✌
  • 【位运算】【前缀和】个人练习-Leetcode-1177. Can Make Palindrome from Substring
  • 最小相位系统
  • css系列:进度条
  • QT中为程序加入超级管理员权限
  • 共识算法之争(PBFT,Raft,PoW,PoS,DPoS)
  • 抽象的java入门1.3.0
  • 【Oracle生产运维】表空间可用性告警排查处理
  • mac Network: use --host to expose
  • ChatGPT-4o体验demo
  • FPGA SPI采集ADC7606数据
  • html three.js 引入.stl模型示例
  • 从零手写实现 nginx-11-文件处理逻辑与 range 范围查询合并
  • Java算法-力扣leetcode-167. 两数之和 II - 输入有序数组