Qt5 程序封包exe

2024-01-23 05:08
文章标签 exe 程序 qt5 封包

本文主要是介绍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这么大,不清楚,可能是有的库没有用到的也被封进去了,先成功再说吧! 

这篇关于Qt5 程序封包exe的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/635317

相关文章

如何用java对接微信小程序下单后的发货接口

《如何用java对接微信小程序下单后的发货接口》:本文主要介绍在微信小程序后台实现发货通知的步骤,包括获取Access_token、使用RestTemplate调用发货接口、处理AccessTok... 目录配置参数 调用代码获取Access_token调用发货的接口类注意点总结配置参数 首先需要获取Ac

基于Python开发PDF转Doc格式小程序

《基于Python开发PDF转Doc格式小程序》这篇文章主要为大家详细介绍了如何基于Python开发PDF转Doc格式小程序,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用python实现PDF转Doc格式小程序以下是一个使用Python实现PDF转DOC格式的GUI程序,采用T

将java程序打包成可执行文件的实现方式

《将java程序打包成可执行文件的实现方式》本文介绍了将Java程序打包成可执行文件的三种方法:手动打包(将编译后的代码及JRE运行环境一起打包),使用第三方打包工具(如Launch4j)和JDK自带... 目录1.问题提出2.如何将Java程序打包成可执行文件2.1将编译后的代码及jre运行环境一起打包2

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

javafx 如何将项目打包为 Windows 的可执行文件exe

《javafx如何将项目打包为Windows的可执行文件exe》文章介绍了三种将JavaFX项目打包为.exe文件的方法:方法1使用jpackage(适用于JDK14及以上版本),方法2使用La... 目录方法 1:使用 jpackage(适用于 JDK 14 及更高版本)方法 2:使用 Launch4j(

PHP执行php.exe -v命令报错的解决方案

《PHP执行php.exe-v命令报错的解决方案》:本文主要介绍PHP执行php.exe-v命令报错的解决方案,文中通过图文讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录执行phpandroid.exe -v命令报错解决方案执行php.exe -v命令报错-PHP War

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听

EMLOG程序单页友链和标签增加美化

单页友联效果图: 标签页面效果图: 源码介绍 EMLOG单页友情链接和TAG标签,友链单页文件代码main{width: 58%;是设置宽度 自己把设置成与您的网站宽度一样,如果自适应就填写100%,TAG文件不用修改 安装方法:把Links.php和tag.php上传到网站根目录即可,访问 域名/Links.php、域名/tag.php 所有模板适用,代码就不粘贴出来,已经打

跨系统环境下LabVIEW程序稳定运行

在LabVIEW开发中,不同电脑的配置和操作系统(如Win11与Win7)可能对程序的稳定运行产生影响。为了确保程序在不同平台上都能正常且稳定运行,需要从兼容性、驱动、以及性能优化等多个方面入手。本文将详细介绍如何在不同系统环境下,使LabVIEW开发的程序保持稳定运行的有效策略。 LabVIEW版本兼容性 LabVIEW各版本对不同操作系统的支持存在差异。因此,在开发程序时,尽量使用

CSP 2023 提高级第一轮 CSP-S 2023初试题 完善程序第二题解析 未完

一、题目阅读 (最大值之和)给定整数序列 a0,⋯,an−1,求该序列所有非空连续子序列的最大值之和。上述参数满足 1≤n≤105 和 1≤ai≤108。 一个序列的非空连续子序列可以用两个下标 ll 和 rr(其中0≤l≤r<n0≤l≤r<n)表示,对应的序列为 al,al+1,⋯,ar​。两个非空连续子序列不同,当且仅当下标不同。 例如,当原序列为 [1,2,1,2] 时,要计算子序列 [