QT项目打包成软件进行发布的三种方式

QT项目打包成软件进行发布的三种方式目录 一 打包成绿色便携版 二 打包成单文件版 三 打包成可安装版本 本教程对应的 IDE 是 Qt Creater 和 Visual Studio 保证绿色便携版能正常运行才能够打包成单文件版本和可安装版本 一 打包成绿色便携版 特点 给别人发送的时候需要先制作成一个压缩包文件 解压即用 使用 Qt 自带的程序即可

大家好,我是讯享网,很高兴认识大家。

目录

一、打包成绿色便携版

二、打包成单文件版

三、打包成可安装版本


本教程对应的IDE是Qt Creater和Visual Studio。

保证绿色便携版能正常运行才能够打包成单文件版本和可安装版本。

一、打包成绿色便携版

特点:给别人发送的时候需要先制作成一个压缩包文件,解压即用。

使用Qt自带的程序即可。

1、首先给软件添加一个图标(exe软件的图标,而不是主窗口左上角的图标),推荐网站

图标分享 | 30 个免费 icon 下载网站 - 知乎

2、找到图标后下载.ico文件的图片到本地

3、如果用的是Qt Creator,就放到工程文件根目录,然后在Qt Creator中修改pro文件,例如我的ico文件名为myApp.ico,那么我在pro文件的最后一行加上RC_ICONS = myApp.ico

4、如果用的是VS,就右键项目,选择添加资源,选择icon文件,然后选择我们刚才下载的.ico文件

5、编译运行即可

6、将项目改为Release版本,这里不是必须的,改了的好处是发布的软件的体积比较小


讯享网

 然后在类似于build-PaintSystem-Desktop_Qt_5_15_14_MinGW_64_bit-Debug的编译输出的目录找到对应版本下的exe程序

可以看到,我在Release环境下编译出来的exe文件只有107KB

而在Debug环境下编译出来的exe文件则有6M多!

 7、新建一个文件夹,把exe文件复制过去。我这里是D:\MyQtReleaaseApps\PaintSystem

   

8、打开QT自带的软件,我这里的编译器是MinGW,所以选择MinGW版本

 

 9、进入到刚才新建的目录

 10、执行windeployqt 编译出来的exe文件名

 11、执行完毕就会发现在刚才新建的目录下多了很多新文件,这都是执行刚才的命令QT自动帮我们拉取过来的运行我们的exe必须的依赖环境,在这个文件夹内双击运行我们的exe,一切正常之后就可以把这个文件夹打包发给别人了!这就是绿色便携版。

如果运行还提示缺少某个dll,那就需要我们手动将这个dll复制到我们新建的目录下。

二、打包成单文件版

上面的绿色便携版的不便之处是,发送给别人的时候还需要先压缩一下,别人接受后还需要先解压再使用,就很不方便,因此单文件版就应运而生。

特点:给别人发送的是一个包含运行环境的exe文件,双击即可使用。

使用Enigma Virtual Box

官网 Software Protection, Software Licensing, Software Virtualization

安装过程就不说了,一路next就行。

1、选择待封包的主程

2、 选择增加-----增加文件夹[递归],然后选择刚才新建的文件夹,确认即可

3、点击文件选项-----压缩文件,然后确定即可

 

 4、最后一步,点击执行封包

 5、然后在我们刚才新建的文件夹下会多出来一个_boxed.exe结尾的exe文件,这个就是单文件版,可以直接把这个exe文件发送给别人,双击即可使用。

三、打包成可安装版本

特点:给别人发送安装包,需要先安装再使用。

使用Inno Setup

官网 Inno Setup

安装过程就不说了,一路next即可

1、选择新建,直接Next

 2、设置软件的名称,软件版本号,发布者,软件的官网。

 3、设置软件的安装文件夹,默认即可

 4、设置可执行文件,设置可执行文件的依赖环境

 5、设置关联的文件格式

 6、设置开始菜单和桌面快捷方式

 7、设置安装信息,如果设置了许可文件,那么双击安装包会先弹出来该文件的内容,同意了才能进行安装。

 8、设置安装模式

 9、设置安装语言

 10、设置安装包制作后的存放位置、安装包的名称、安装包的图标(不设置是默认图标)、安装密码

 11、设置#define编译指令

 12、点击Finish

 13、编译脚本,选择是,然后设置保存脚本的位置,完成即可在第十步设置的文件夹看到制作的安装包,双击即可安装。

小讯
上一篇 2025-03-26 17:52
下一篇 2025-03-30 14:37

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/67613.html