visual studio打包QT工程发布exe安装包

news2024/11/15 6:11:08

一、实验环境

软件版本下载链接
visual studioMicrosoft Visual Studio Community 2022 (64 位) - Current 版本 17.7.5
QTv6.6.3
NSISv3.10官网 或 百度云1234
Windows11

二、程序准备

1、程序生成

使用 visual studio 打开工程,选择 Release 模式后,点资源生成。
在这里插入图片描述
Release 资源生成后,打开工程目录下,进入 x64/Release 文件夹 下可以看到工程资源。
在这里插入图片描述

三、程序打包

1、依赖生成

  1. 打开QT命令框,一般从Windows启动界面搜索QT,匹配出现QT MSVC命令框点击即可。也可根据实际安装路径寻找。
    在这里插入图片描述
    在这里插入图片描述
  2. cd 进入已经生成的 Release 资源目录,我的程序资源目录为D:\my_project\c++_project\OfflineDataParser\x64\Release)
    在这里插入图片描述
  3. 因为 Release 文件夹下资源缺少QT等组件依赖,所以需使用Qt自带的 windeployqt.exe 工具,用于拉取依赖创建应用程序发布包。包名为工程生成的exe文件
    windeployqt 包名
    
    在这里插入图片描述
    下图为依赖拉取完毕的目录资源截图
    在这里插入图片描述

3、发布文件夹准备

  1. 新建程序发布版本文件夹,例如我的程序当前版本为v2.0.2,在目录下创建v2.0.2文件夹,并将程序 logo 复制到当前目录下。
    在这里插入图片描述
  2. 进入” v2.0.2” 目录,创建” nsis” 文件夹(用于存放nsis配置文件) 和 ” 依赖” 文件夹(用于存放程序资源)
    在这里插入图片描述
  3. 进入”依赖” 文件夹,创建 “配置” 和 ”源” 两个文件夹
    ” 配置” 文件夹存放程序所用到的自定义资源,例如我的程序用到config外部资源。
    在这里插入图片描述
    ”源” 文件夹存放 Release 生成的资源。将 之前 Release 文件夹下所有文件复制到 ”源” 文件夹下,同时将里面的程序包移动到 “v2.0.2“ 文件夹下,我的程序包名为 ”OfflineDataParser.exe“
    在这里插入图片描述在这里插入图片描述

2、安装NSIS

  1. 安装NSIS程序,安装过程这里不做过多介绍,下图为NSIS程序已经安装完成的主界面。
    在这里插入图片描述

3、新建NSIS脚本

  1. 新建NSIS脚本
  • 点击文件 -> 新建脚本:向导 -> 弹窗(下一步),按照提示填入信息,如下图咱们填写应用打包的程序名为 ”番茄“,版本改为 2.0.2 ,点击下一步。
    在这里插入图片描述

  • 选择程序 logo 图标
    在这里插入图片描述

  • 修改发布程序名称为 “番茄”,然后选择选择发布安装程序文件路径,在 “v2.0.2” 下创建 “番茄” 文件夹,然后打开保存。
    在这里插入图片描述

    • 选择安装语言为中文,点击下一步
      在这里插入图片描述
  • 如果没有授权文件 则清空,下一步
    在这里插入图片描述

  • 删除默认路径程序文件,添加 ”依赖/OfflineDataParser.exe“ 文件,添加 依赖文件夹下的 “配置” 和 ”源“ 文件夹,点击下一步
    在这里插入图片描述

  • 下一步
    在这里插入图片描述

  • 下一步
    在这里插入图片描述

  • 下一步
    在这里插入图片描述

  • 选择保存脚本,以便下次发布程序新版本时用作模板,点击完成
    在这里插入图片描述
    在这里插入图片描述

  • 已经生成的脚本模板
    在这里插入图片描述

4、编译发布

  1. 编译脚本
    在这里插入图片描述
  2. 完成编译
    在这里插入图片描述
    自此发布 exe 安装包完毕。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1861298.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【面试题】MySQL数据库

目录 什么是视图,视图的作用是什么?什么是索引?MySQL中有哪些类型的索引?简述索引设计原则?简述索引的数据结构?简述Hash 和 B 树索引的区别?列出MySQL中导致索引失效的情况?简述数据…

永洪bi里topN的设置/用法

要实现的效果:实现通过输入参数,进行图表top的排序筛选 图示: 筛选前: 输入3,看top3的值: 输入-3,看倒数3个的值: 设置步骤: 1️⃣:添加一个“文本参数组件…

干货!车间生产管理的主要内容及管理方法,建议收藏

作为一名车间主管,我深知车间现场管理对于整个生产流程的重要性。车间是企业生产的核心区域,是产品从原材料转化为成品的关键环节。因此,有效的车间现场管理不仅能确保生产过程的顺利进行,还能提高生产效率、降低成本,…

招聘统计关于候选人的体验

我们生活在一个由感觉驱动的世界里。企业花费大量的时间和资源来改变用户体验、员工体验和产品用户体验。在招聘中,最重要的是候选人的体验。面对不断变化的候选人期望和招聘技术,作为与组织建立强烈关系的大门,改善候选人的感受是一个持续的…

python无法安装scipy怎么办

python安装scipy时出现以下错误&#xff1a; from scipy.misc import imread Traceback (most recent call last):File "D:/Pyproject/qq_Spider/create_cloud.py", line 14, in <module>from scipy.misc import imread ModuleNotFoundError: No module named …

功能测试【测试用例模板、Bug模板、手机App测试★】

功能测试 Day01 web项目环境与测试流程、业务流程测试一、【了解】web项目环境说明1.1 环境的定义&#xff1a;项目运行所需要的所有的软件和硬件组合1.2 环境(服务器)的组成&#xff1a;操作系统数据库web应用程序项目代码1.3 面试题&#xff1a;你们公司有几套环境&#xff1…

IP 定位在网络安全领域的关键作用

IP 定位&#xff0c;顾名思义&#xff0c;就是通过确定网络设备所使用的 IP 地址&#xff0c;来获取其大致的地理位置信息。这一重要的技术在网络安全领域的应用范围广泛&#xff0c;且效果显著。 首先&#xff0c;IP 定位有助于快速追踪和识别网络攻击的来源。当网络遭受攻击时…

浊度传感器设备的监测控制和智慧运维

浊度传感器是一种用于测量液体中悬浮颗粒浓度从而反映液体浊度的设备。 其工作原理主要基于以下几种常见方式&#xff1a; 1. 散射光测量原理&#xff1a;当光线穿过含有悬浮颗粒的液体时&#xff0c;颗粒会使光线发生散射。传感器通过测量特定角度的散射光强度来确定浊度。散…

机器学习课程复习——线性回归

Q&#xff1a;回归和分类的区别&#xff1f; 回归是连续的&#xff0c;分类是离散的 Q:用最小二乘法对线性回归模型进行参数估计思路 例题

黑马程序员-瑞吉外卖-前六章

黑马程序员瑞吉外卖 文章目录 1、开发环境搭建1.1 数据库环境1.2 maven项目搭建1.2.1 新建项目1.2.2 整合MyBatisPlus1.2.3 整合Druid1.2.4 配置文件application.yml1.2.5 尝试启动项目1.2.6 将前端静态页面引入到项目中 2、 后台系统登录功能2.1 需求分析2.2 代码开发2.2.1 创…

Go 实现继承的方式

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

机器学习--KNN算法

目录 一、实验目的 二、实验的软、硬件平台 三、实验内容概述 四、实验设计方案 五、实验内容 一、实验目的 通过本实验掌握kNN算法的原理&#xff0c;熟悉kNN算法。 二、实验的软、硬件平台 python 3.6.5 CourseGrading在线实验环境 三、实验内容概述 1.kNN算法简介…

企智汇软件:专业项目管理系统,一体化PaaS平台!快速落地项目!

在快速变化的市场环境中&#xff0c;项目管理不再是简单的任务分配和时间跟踪&#xff0c;它更是一门需要精准决策、高效沟通和智能协作的管理工具。然而&#xff0c;面对日益复杂的项目需求、跨部门的协作挑战以及海量的信息数据&#xff0c;传统的项目管理方式往往显得力不从…

mmdeploy环境部署过程中遇到的巨坑

之前已经写了一篇mmdeploy环境部署流程&#xff0c;在使用中却发现了很多问题&#xff0c;特此记录。 注意一&#xff1a; echo "export LD_LIBRARY_PATH/root/TensorRT-8.6.1.6/lib:/root/cudnn/lib:$LD_LIBRARY_PATH" >> ~/.bashrc && \ source ~/…

【AI大模型】ChatTTS——颠覆传统,赋能未来的文本到语音技术

文章目录 一、项目介绍二、代码解释三、从技术角度进行分析四、技术细节与实现五、优缺点分析六、应用场景分析七、未来展望八、结论 一、项目介绍 随着人工智能技术的不断进步&#xff0c;语音合成&#xff08;TTS&#xff09;技术得到了飞速发展。ChatTTS项目作为一个开源的…

零基础如何制作一个GIS可视化大屏?免费无难度!

一.GIS是什么&#xff1f; GIS&#xff08;地理信息系统&#xff09;开发是一种利用计算机技术对地理信息进行处理、分析、存储和展示的技术。GIS开发可以应用在很多领域&#xff0c;如城市规划、环境保护、交通管理、农业生产等。 二.如何将GIS与数字孪生结合起来&#xff1f…

C++并发之阻塞队列(block,queue)

目录 1 概述2 实现3 测试3 运行 1 概述 最近研究了C11的并发编程的线程/互斥/锁/条件变量&#xff0c;利用互斥/锁/条件变量实现一个支持多线程并发的阻塞队列&#xff0c;队列大小没有限制。 阻塞队列是一个模板类&#xff0c;有两个模块参数&#xff0c;参数1是元素类型&…

小红书营销:解锁企业增长新引擎,与小红书集成实现精准获客

在数字化营销的新时代&#xff0c;小红书以其独特的社区文化和精准的用户定位&#xff0c;成为了品牌和企业争相入驻的热门平台。今天将探讨如何通过小红书平台进行营销获客&#xff0c;并强调与企业集成的重要性&#xff0c;以实现更高效的品牌增长。 一、小红书营销的独特优…

API的优势及应用场景(淘宝API测试的详细步骤)

一、API的优势 API的出现为应用程序间的通信提供了一种新的方式&#xff0c;它有以下优势&#xff1a; 1、降低开发难度 开发者可以通过API访问其他应用程序的数据和功能&#xff0c;避免了重复开发&#xff0c;降低了开发难度。 2、提高开发效率 API提供了一种标准化的通…

JavaWeb系列十一: Web 开发会话技术(Cookie, Session)

韩sir Cookie技术Cookie简单示意图Cookie常用方法Cookie创建Cookie读取JSESSIONID读取指定Cookie Cookie修改Cookie生命周期Cookie的有效路径Cookie作业布置Cookie注意事项Cookie中文乱码问题 Session技术Session原理示意图Session常用方法Session底层机制Session生命周期Sessi…