Qt5 程序封包exe

今天接到一个需求,编写需求完了要封包,在其他程序中调用这个外部exe

愁啊! 没弄过!一顿百度

1.把release的exe文件单独放入一个文件夹中

 

2.执行qt自带的windeployqt工具来打包

点电脑开始-->选择项目的编译方式

 有很多中编译方式,gcc,msvc什么的,因为我的项目是32位 msvc编译的,所以我选择 2019 32-bit

弹出cmd

 进入到刚刚我们拷贝exe的文件路径,这里是拷贝以后的,新的exe的路径

 输入指令: windeployqt -qmldir qml的路径 拷贝后的exe

这里需要注意!也是坑我最久的地方,刚开始我是输入windeployqt 新exe 但是打包出来的exe执行后没有东西显示,后来发现是没有加qml文件

我的可执行exe是InstallLoadingDemo.exe

qml文件路径在exe的上一级的InstallLoadingDemo/qml中

如果带qml文件的话我的指令就是

windeployqt -qmldir ../InstallLoadingDemo/qml InstallLoadingDemo.exe

不带qml的指令是

windeployqt InstallLoadingDemo.exe

ps:把我的程序名替换即可

 执行后,就打包成功了。

 因为我的需求要在main函数中传参,所以输入如图指令试了下,是成功了

3.接下来封包

我用的是 Enigma Virtual Box 百度下载即可

 下面的输出虚拟文件的名称和路径是自动填充的,可以修改,我一般不会修改路径

 点击文件选项,选中压缩文件,会让生成的文件内存小一点

 

点击添加,添加什么呢,就添加刚刚执行的exe文件的目录下的相关库

 这里有个小提示,网上的教程都是一个文件一个文件加,文件夹也是一个一个加,太麻烦了!我随手试了一下拖动,可以的,直接把除了exe之外的所有文件和文件夹直接拖入会方便很多

 使用默认就行,确定即可

 最后一步,打包

 

在生成目录下,多了一个exe,就可以直接运行了。不过为什么这个exe这么大,不清楚,可能是有的库没有用到的也被封进去了,先成功再说吧! 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值