Qt5程序打包发布(Windows版)(三)
前情回顾
上一回,使用Enigma Virtual Box
将打包好的文件夹进一步变成了一个.exe文件。
但是我们熟知的软件安装方式,都是一个setup.exe
,安装完成后在桌面出现快捷方式,这如何实现?
这里使用Inno Setup
进行演示。原计划的Qt官方发布的安装包制作工具Qt Installer Framework
懒得学了,项目不用Qt了,烂尾。
一. Inno Setup下载与安装
下载地址:innosetup-6.0.3.exe
下载页面:inno Setup Downloads
安装无脑下一步即可
二. Inno Setup简单使用
一路下一步即可,除了第5步,选择要打包程序和相关文件以外
以下是详细使用过程
- 打开
Inno Setup
,选择使用向导创建新脚本文件 - 进入向导,下一步
- 软件信息,包括软件的名字、版本、发行者以及网址,自己开发玩的默认即可,下一步
- 软件安装位置和文件夹名称。我们常用的软件都在C盘的Program Files文件夹里,这里默认也是这里,当然可以调整为自定义。自行探索,本例继续默认下一步。
-
关键步骤!
此处要选择我们需要打包的程序了,依然以linechart
为例——详情可见Qt5程序打包发布(Windows版)(一)。
首先,选择打包程序的主体,本例的位置为C:\Qt\Qt5.7.0\Examples\Qt-5.7\charts\build-linechart-Desktop_Qt_5_7_0_MinGW_32bit-Release\publish
中的linechart.exe
然后选择相关的所有文件,这里点击Add folder
,选择publish
文件夹,此时弹出对话框询问是否包含内部子文件夹的文件,当然需要包含了!少了文件不好使啊!选择是
然后可以下一步了 - 开始菜单、桌面快捷方式和快速启动栏。默认即可,下一步
-
license
相关设置,如果涉及到软件license验证了,自行探索吧。默认下一步 - 安装模式,自己玩吧,默认下一步
- 选择语言,也就英语能看懂了。默认下一步
- 选择安装文件存放位置和名字,自己挑一个能找到的地方就好,也可以和整个打包的文件夹放在一起。当然了,默认下一步也可以
- 使用宏定义加强脚本文件可读性,方便人工修改,默认下一步
- 结束
- 弹窗提示,是否现在编译?是
如果前面没有设置输出安装文件的位置,此时还会提示,是否保存,是就选个位置,否就在用户文档里,这里我们放在publish
的上级菜单,新建一个output
文件夹存放 - 完成后去该文件夹下查看,有一个
test.iss
文件和一个Output
文件夹,文件夹里会有mysetup.exe
,也就是我们的最终目标。至此,打包完成,可以自己试试看,这个安装包的效果如何
三. Inno Setup散装心得
整个打包过程回忆一下,会感觉很正规,我们平时用的软件在安装过程中涉及到的地方,Inno Setup
基本都可以处理,所以有必要稍微深入了解一下这个软件
整个软件打开例子中的test.iss
文件后,看起来有点像Visual Studio
,甚至上方工具栏可以看到compile
和run
的按键其实都长得一样,所以完全可以用相同的方式理解这个软件。
主体部分为脚本编辑区,整个脚本使用的什么语言个人并不清楚,但是可读性很强,可以自己修改在向导中没有给出选择的地方。
下方就是类似编译信息报告的区域,编译完成后一行绿色的字表示编译完成。
在这里,编译和运行的概念也是与Visual Studio
非常像的。
- 首先,
test.iss
文件,是我们使用向导逐步选择后生成的脚本文件。类似于一个.cpp文件 - 然后,
test.iss
文件可以在Inno Setup
中编译,这样才能得到mysetup.exe
。类似于.cpp编译得到了.exe - 因此,运行意味着编译后直接运行
mysetup.exe
,开始安装过程。类似于编译后运行生成的.exe
以上就是Qt5程序打包发布(Windows版)的全部内容,我们从一个不能单独运行的linechart.exe
,到一个文件夹里可以单独运行的linechart.exe
,再到独立一个文件形式的linechart_boxed.exe.exe
,再最后到可以像常规软件一样安装的mysetup.exe
,逐渐实现了Qt程序的打包。
希望能给大家带来帮助