开源 C++ QT QML 开发(二十三)程序发布

文章的目的为了记录使用QT QML开发学习的经历。开发流程和要点有些记忆模糊,赶紧记录,防止忘记。

相关链接:

开源 C++ QT QML 开发(一)基本介绍

开源 C++ QT QML 开发(二)工程结构

开源 C++ QT QML 开发(三)常用控件

开源 C++ QT QML 开发(四)复杂控件--Listview

开源 C++ QT QML 开发(五)复杂控件--Gridview

开源 C++ QT QML 开发(六)自定义控件--波形图

开源 C++ QT QML 开发(七)自定义控件--仪表盘

开源 C++ QT QML 开发(八)自定义控件--圆环

开源 C++ QT QML 开发(九)文件--文本和二进制

开源 C++ QT QML 开发(十)通讯--串口

开源 C++ QT QML 开发(十一)通讯--TCP服务器端

开源 C++ QT QML 开发(十二)通讯--TCP客户端

开源 C++ QT QML 开发(十三)多线程

开源 C++ QT QML 开发(十四)进程用途

开源 C++ QT QML 开发(十五)通讯--http下载

开源 C++ QT QML 开发(十六)进程--共享内存

开源 C++ QT QML 开发(十七)进程--LocalSocket

开源 C++ QT QML 开发(十八)多媒体--音频播放

开源 C++ QT QML 开发(十九)多媒体--音频录制

开源 C++ QT QML 开发(二十)多媒体--摄像头拍照

开源 C++ QT QML 开发(二十一)多媒体--视频播放

推荐链接:

开源 C# 快速开发(一)基础知识

开源 C# 快速开发(二)基础控件

开源 C# 快速开发(三)复杂控件

开源 C# 快速开发(四)自定义控件--波形图

开源 C# 快速开发(五)自定义控件--仪表盘

开源 C# 快速开发(六)自定义控件--圆环

开源 C# 快速开发(七)通讯--串口

开源 C# 快速开发(八)通讯--Tcp服务器端

开源 C# 快速开发(九)通讯--Tcp客户端

开源 C# 快速开发(十)通讯--http客户端

开源 C# 快速开发(十一)线程

开源 C# 快速开发(十二)进程监控

开源 C# 快速开发(十三)进程--管道通讯

开源 C# 快速开发(十四)进程--内存映射

开源 C# 快速开发(十五)进程--windows消息

开源 C# 快速开发(十六)数据库--sqlserver增删改查

本章节主要内容是:实现qml程序的发布,在程序编译后.exe是无法打开的,所以需要进行打包发布实现直接可用。

1.制作图标

2.打包流程

3.操作流程

一、制作图标

1.图片转换图标

ico转换网址:https://convertio.co/zh/

转换完成后下载放到工程文件夹

.pro文件添加语句

RC_ICONS =ico.ico

图标效果

二、打包流程

应用程序打包发布流程总览

步骤 操作说明 关键点与注意事项
1. 编译Release版本 在Qt Creator中,将构建模式切换为 Release ,然后点击构建项目。 必须使用Release模式 ✅ 确保程序编译成功且运行正常 ❌ 不要使用Debug版本(体积大、速度慢、依赖复杂)
2. 准备发布目录 在任意位置创建一个全新的空文件夹 ,将步骤1生成的可执行文件(.exe)复制进去。 ✅ 使用英文路径 ,避免意外错误 ✅ 文件夹名称最好能体现程序名和版本号
3. 使用部署工具 从开始菜单打开与你的编译环境匹配 的Qt命令行(如Qt 5.15.2 MSVC2019 64-bit),导航到发布目录,执行命令: windeployqt your_app_name.exe 🔴 核心步骤必须使用与编译环境完全一致的Qt命令行 (如MinGW或MSVC) ✅ 工具会自动将所需的所有Qt DLL库、插件、翻译文件等复制到当前目录
4. 补充资源文件 将程序运行所需的自有资源(如图片、图标、配置文件、数据库文件等)手动复制到发布目录中。 windeployqt 只负责Qt的依赖 ✅ 需手动添加项目自身的资源文件 ✅ 保持与开发时相同的目录结构
5. 最终测试 在一台没有安装Qt和编译器的纯净Windows电脑上,运行发布目录中的可执行文件,进行完整的功能测试。 🔴 至关重要的一步 ✅ 确保所有功能正常 ❌ 如果报错(如缺少xxx.dll),说明打包不完整,需返回检查
6. 打包分发 将整个发布目录压缩成ZIP或RAR包直接分发,或使用安装包制作工具(如Inno SetupNSIS)制作专业的安装程序。 ✅ 压缩包:简单快捷 ✅ 安装程序:用户体验更专业,可以创建开始菜单快捷方式、写入注册表等

三、操作流程

选择release编译

查看编译器,需要匹配

选取和编译器匹配的MinGW,搜索里输入min会出现下图,右键打开文件位置

需要匹配编译器,所以要选64位

将release的exe拷贝到D:\myapp文件夹,启动Qt 5.14.2 (MinGW 7.3.0 64-bit),切换到该目录。

输入windeployqt命令,自动打包所需的库。这里由于只有1个窗口所一没有打包其他库,正常的程序,会把所有的库打包到myapp文件家中,再使用Inno Setup等打包发布工具就可以发布了。

直接双击myapp文件中的exe就可以直接运行了

相关推荐
KWTXX12 分钟前
制作qt小型交互音乐播放器
qt
我要升天!32 分钟前
QT -- 初识
开发语言·qt
卡提西亚34 分钟前
C++笔记-23-类和对象-多态
c++·笔记
玖笙&2 小时前
✨WPF编程进阶【7.1】动画基础
c++·c#·wpf·visual studio
QT 小鲜肉3 小时前
【C++基础与提高】第一章:走进C++的世界——从零开始的编程之旅
开发语言·c++·笔记·qt
@木辛梓3 小时前
模版 c++
开发语言·c++
oioihoii3 小时前
C++中的线程同步机制浅析
开发语言·c++
枫叶丹43 小时前
【Qt开发】布局管理器(五)-> QSpacerItem 控件
开发语言·数据库·c++·qt
月下倩影时3 小时前
ROS1基础入门:从零搭建机器人通信系统(Python/C++)
c++·python·机器人
_OP_CHEN3 小时前
C++进阶:(八)基于红黑树泛型封装实现 map 与 set 容器
开发语言·c++·stl·set·map·红黑树·泛型编程