qt程序打包成单一文件EXE (一)

平台 qt5.7
(一)界面标题栏图,编译生成exe的图标ico 添加 ,在qt帮助里setting application icon 里有说明
n.1 把ico放到项目同目录下
n.2 创建一个myapp.rc 文件,并写入下面内容
IDI_ICON1 ICON DISCARDABLE "app.ico"
n.3 在项目文件.pro文件里加入下面内容

RC_FILE = myapp.rc






(二) 查找所需dll
Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,如果自己去复制dll,很可能丢三落四,导致exe在别的电脑里无法正常运行。因此 Qt 官方开发环境里自带了一个工具:windeployqt.exe。以官方 Qt 5.7.0+MinGW 开发环境为例:
从开始菜单-->Qt 5.7.0-->5.7-->MinGW 5.3.0 (32-bit)-->Qt 5.7 for Desktop (MinGW 5.3.0 32 bit),可以打开 Qt 命令行,从这里就可以执行 windeployqt 工具。
集成开发环境 QtCreator 目前生成图形界面程序 exe 大致可以分为两类:Qt Widgets Application 和 Qt Quick Application。
1、Qt Widgets Application

1)首先用 QtCreator 新建一个 Qt Widgets Application 项目,直接用默认的 QMainWindow 程序就可以了,项目名字假定是 Login,然后以 Release 方式编译生成可执行程序。



2)生成的程序运行正常之后,找到项目的生成目录,进入它的项目生成目录,拷贝出可执行程序(exe文件),例如放置在 D:\qtapp
3)然后从开始菜单打开 Qt 命令行,
a.输入命令 :cd /d D:\QtApp 进入目录,
b.然后使用 windeployqt 工具命令:windeployqt server.exe,
c.之后就可以看见windeployqt 工具自动复制的插件文件夹和dll文件、qm文件。这时候得到的就完整的可执行程序发布集合,依赖关系都解决好了。
4)之后通过其他的打包方式,或者使用Qt的install进行打包,即可生成单一可执行程序用于安装发布。
2、Qt Quick Application
       新建方式和生成Widgets程序相同,只是在查找依赖的时候不同,需要使用命令windeployqt TestQt.exe --qmldir 指定qml目录,进行复制依赖,之后打包方式也相同。


(三)第二节打包成单一EXE
打包工具,这里选用Enigma Virtual Box
Enter Input File Name中,选择exe
       Enter Output File Name,输出文件名称
       点Add按钮,将前面准备好的dll文件,添加进来,(添加文件夹会把其子文件夹一起添加)
       点Files Options,勾选Enable Files Virtualization和Compress files,OK

       最后,点Process,大告成。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值