使用Visual Studio Installer打包Unity的exe应用

news2024/11/16 16:02:08

前言

Unity在PC端更新软件的方法。

一、下图是Unity发布出来的应用

在这里插入图片描述

二、安装Microsoft Visual Studio Installer Projects插件

(1)打开vs,我这里用的是vs2019
(2)点击扩展->管理扩展,如果没有安装过,在联机里面搜索到Microsoft Visual Studio Installer Projects插件,下载安装即可。
在这里插入图片描述

三、创建安装项目

(1)选择Setup Project项目,点击下一步
在这里插入图片描述

(2)设置项目名称,点击创建按钮
在这里插入图片描述

四、目录介绍

(1)文件夹介绍
Application Folder:应用的主要存放目录,需要将要打包的资源全部导入这个文件夹下面。
User’s Desktop:安装完成后显示在桌面的文件,接下来我会将应用的快捷方式放到这里面。
User’s Programs Menu:用户应用菜单界面,左下角打开的程序界面。

在这里插入图片描述
(2)工程属性介绍
选中我们项目,会看到一些项目属性:

Author:作者名称,随便填,最好是公司名称。
ProductName:项目名称
ProductCode:项目ID,卸载程序或者快捷方式等需要用到
RemovePreviousVersions:设置成true,这样在版本升级的时候才会删除之前的旧版本,不然那旧版本任然会保留。
Version:版本号,在升级以后需要更改版本号,不然安装的时候会提示已经安装。就不允许再次安装了。
在这里插入图片描述

五、开始打包,

(1)添加需要打包的内容,全选拖进去即可。
在这里插入图片描述
(2)添加应用icon,应用需要icon格式为.ico格式。
右键单击Application Folder->Add->文件,选择icon图标文件。
![在这里插入图片描述](https://img-blog.csdnimg.cn/8995761e27dc481595fa38420f51490d.png在这里插入图片描述
3、添加安装卸载文件
文件右键单击Application Folder->Add->文件,选择C:\Windows\System32\msiexec.exe文件加进来。
在这里插入图片描述

在这里插入图片描述
4、创建应用的快捷方式
(1)右键单击exe,选择Create Shortcut to New Unity Project.exe.
在这里插入图片描述
(2) 设置快捷方式属性
a、属性介绍
在这里插入图片描述
b、Arguments:找到项目的peoductCode ,记得前面加上/x,如下图设置
在这里插入图片描述
c、将快捷方式拖动到User’s Desktop文件夹下。
在这里插入图片描述

5、卸载程序生成
(1)同快捷方式的创建方法一样,在msiexec.exe上右键单击,选择Create Shortcut to New Unity Project.exe
.在这里插入图片描述
(2)属性设置,设置和快捷方式一样。名称自行填写,由于是卸载程序,我这里命名uninstall。在这里插入图片描述

六、设置完毕,开始生成

a、右键单击生成即可
在这里插入图片描述
b、msi文件即为我们的安装程序
在这里插入图片描述
c、双击安装应用即可
在这里插入图片描述
d、安装完成桌面上会看到上面设置的快捷方式
在这里插入图片描述
e、对应的安装目录下也有我们的安装包和卸载程序,点击卸载程序可以将我们的应用卸载掉。当有版本更新的额时候也会替换卸载掉旧版本,特别注意前面设置说到的版本设置问题,不然更新升级会有问题。
在这里插入图片描述

七、Unity里面的更新方案

当检测到有更新的时候,下载我们上面制作的安装包,然后使用Application.OpenURL()方法打开文件,打开的同时调用Application.Quit()方法退出当前应用,这个时候就可以安装新的软件了,旧软件也会被卸载掉。

注意,改了版本号以后,会出现一个选项,选择“是”

在这里插入图片描述

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

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

相关文章

注册 openAI 与 ChatGPT 一起对话

文章目录1. 背景2. 注册短信接受平台3. 注册 OpenAI 账号3.1 邮箱注册3.2 手机验证4. 登陆并对话5. 场景预备条件:科学上网 1. 背景 ChatGPT 是有史以来向公众发布的最好的人工智能聊天机器人。它由旧金山人工智能公司 OpenAI 构建,该公司还负责 GPT-3 …

坚鹏:中国邮政储蓄银行银行业同业竞争策略分析培训圆满结束

数字化转型背景下,中国邮政储蓄银行厦门市分行为了更好地落实总行十四五战略,特别举办了2022年管理干部赋能培训班。 银行业的竞争越来越激烈,银行数字化转型成为实现银行高质量发展的重要突破口,中国邮政储蓄银行厦门市分行充分认…

塔望3W消费战略案丨聚焦川崎火锅料,回归赛道一梯队

川崎 火锅料 客户:上海新川崎食品有限公司 品牌:川崎 服务:3W消费战略 品牌全案 项目背景 上世纪90年代,一句“吃火锅,没川崎怎么行”,响彻大江南北,让川崎走进千家万户,成为当时…

体育锻炼与饮食相结合:调节肠道菌群来预防治疗代谢性疾病

谷禾健康 久坐不动的生活方式已逐渐成为现代社会很多人的一种常态,因此导致2型糖尿病 、肥胖、心血管疾病和非酒精性脂肪肝等代谢性疾病的发病率上升。 ★ 代谢性疾病严重危害人体健康 根据世界卫生组织数据库,2019年,代谢风险(即…

ubantu 配置及解决问题

1、安装GCC出现等待缓存锁 需要将其冲突的删除,利用下面三个代码后重新输入下载即可。 sudo rm /var/lib/dpkg/lock-frontend sudo rm /var/cache/apt/archives/lock sudo rm /var/lib/dpkg/lock2、开启共享文件夹: 参考以下链接,在进行的…

【KubeEdge】V-1.12.1 使用helm安装,并启用kubectl log/exec高级特性

内容提要: 云端使用helm安装cloudcore边缘端使用keadm join纳管到云端修改边缘端配置使其支持IptableManger把服务部署到边缘端,并体验kubeclt logs/exec ------------------------------------------------------------------------------------------…

基于MicroPython的ESP32开发

很久前入手了一块ESP32 DEVKIT V1,当时基于C_SDK开发。最近想搞下MicroPython,就又把这块板子找出来了。 一、先下载支持MicroPython的ESP32固件 去MicroPython官网下载对应的固件 我选择了最新版本固件。下载下来。 二、通过flash_download_tool_3.…

NodeJs

视频学习 Nodejs 基础 前提条件 学习Node.js 之前你必须掌握的知识 HTMLCSSJavaScript DOM APIBOM APIAjax API 如果你已经掌握或者学习了以上的知识,那么我们先来回顾一下以上的一些知识点 浏览器为什么能执行Java代码 不同的浏览器具有不同的JavaScript解析…

【Applied Algebra】物理学中的群论漫谈1:群论基础

物理学中的群论漫谈1:群论基础与希尔伯特空间 我准备开一个新系列谈谈群论在物理学中的应用,这样有两个好处:一是可以明白群论以及相关数学概念的具体应用,以此来举一反三懂得这些理论工具如何使用;而是可以通过这样的应用例子反过来更好地理解这些代数概念;参考书是约什(A.W.J…

myBaits Expert Whole Genome Enrichment (WGE) 从复杂的DNA来源捕获全基因组DNA

myBaits Custom WGE 是捕获全部核基因组序列的生物素化 RNA 探针,适用于从复杂的宏基因组样本(如环境或古代 DNA)中批量富集全基因组内源性 DNA。定制此探针无需考虑基因组是否已测序,仅需要提供研究生物或近缘生物的高质量基因组 DNA 样本。 使用传统的…

云原生|kubernetes|CKA备考和一些应试小技巧

前言: CKA认证相对来说还是比较简单的,在圣诞节前参与了2022的cka的考试,还算顺利的一次通过了。 在考前,也参考了一些前辈的备考经验和应试技巧,但考完后发现,很多资料说的并不准确,究其原因…

Spring Boot 一个注解解决重试机制

前言 在实际工作中,重处理是一个非常常见的场景,比如: 发送消息失败。 调用远程服务失败。 争抢锁失败。 这些错误可能是因为网络波动造成的,等待过后重处理就能成功。通常来说,会用try/catch,while循环之类的语法来进行重处理,但是这样的做法缺乏统一性,并且不是很方便…

嵌入式C语言设计模式 --- 抽象工厂模式

1 - 什么是抽象工厂模式? 前面两篇文章,讲述了工厂模式里面的两种:简单工厂模式和工厂方法模式,这两种设计模式都有其各自的优缺点和适用场景。本篇文章继续讲述最后一种工厂模式,抽象工厂模式。(Abstract Factory Pattern) 抽象工厂模式,是一种为访问类提供一个创建一…

白盒测试和黑盒测试的区别

白盒测试和黑盒测试的区别白盒测试和黑盒测试都是计算机领域行业用以检查程序的状态,确定实际运行状态与预期状态是否一致的重要环节,来看看他们有什么不一样吧。 白盒测试技术 (White Box Testing) : 深入到代码一级的测试,使用这…

【Maven基础】单一架构案例(四)

第七节 业务功能:显示奏折列表 1、流程图 2、创建组件 2.1、创建 WorkServlet 2.1.1、创建 Java 类 刚开始是空的,还没有写方法: public class WorkServlet extends ModelBaseServlet {private MemorialsService memorialsService new M…

零售行业交易数据分析——RFM模型分类及可视化(Python实现)

内容简介 接上一篇文章《客户终身价值(CLTV)计算和回归预测模型》,本文继续分析一年的零售交易数据,从用户的角度,使用RFM模型对用户进行打分归类,并对结果进行可视化展示。 数据集介绍 数据集包含一家在英国注册的在线零售公司…

一文带你搞懂 MySQL 事务

目录 1、事务的基本操作 2、事务的ACID属性 3、事务隔离级别 4、多版本并发控制( MVCC ) 5、深入理解隔离级别 什么是事务? 事务就是一组DML语句组成,这些语句在逻辑上存在相关性,这一组DML语句要么全部成功&…

基于OpenCV提供的人脸识别算法LBPH实现人脸识别

本文通过学习LBPH人脸识别算法,简要了解人脸识别技术的原理,实现人脸采集、训练人脸模型实现人脸识别。 文章目录一、 LBPH人脸识别算法概述二、 人脸识别技术原理三、 关键模块四、 实验准备1. 第三方库2. 新建相关文件夹3. 实验环境五、 人脸采集与检测…

【自学Java】Java开发环境搭建

Java开发环境搭建 Java开发环境搭建 Java 的开发环境主要使用 JDK。我们这边介绍的 JDK 版本是 1.8。我们可以直接从 Oracle 官网上面下载。JDK 下载地址: https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html如下图: 由于在…

如何使用css实现三角形?

​ 一、前言 ​ 通常情况下,我们会使用图片或者svg去完成三角形效果图,但如果单纯使用css如何完成一个三角形呢? 实现过程似乎也并不困难,通过边框就可完成 二、实现过程 在以前也讲过盒子模型,默认情况下是一个矩形…