VS2022打包C#安装包(最新、最全)

开发c#的一个小工具到打包环境碰壁了,在网上找了很多资料耶踩了很多坑,耗时1hour才打包完毕,避免以后碰到类似的问题再次记录,自认为步骤比较全面,如果有帮助麻烦点个赞呗!!!

一、Microsoft Visual Studio Installer Projects插件安装

  1. 打开VS2022后找到菜单栏 工具->管理扩展;

VS
2. 搜索框中联机搜索 Microsoft Visual Studio Installer Projects,找到如图所示插件,点击下载;
在这里插入图片描述

  1. 下载完成后,点击关闭退出VS2022,或直接退出VS2022。关闭VS2022后,会弹出安装Microsoft Visual Studio Installer Projects,点击修改进行安装,等待安装完成

二、 创建打包程序

执行这一步的前提需要有可运行的exe程序,且知道exe所属路径。
例如:我待打包的项目为WeTool,我的WeTool.exe路径在…\WeTool\bin\Debug下
在这里插入图片描述

1.新建Setup project项目
在这里插入图片描述

2.配置新项目,项目名称及软件打包的exe名称。
在这里插入图片描述
3.选择打包项目,右键选择View->文件系统
在这里插入图片描述
4.将整个bin\Debug路径下的文件(包括文件夹)Ctrl+A全选,直接拖到Application Folder中。
在这里插入图片描述
5.选择Application Folder->选中主程序exe->单击右键->Create Shortcut to WeTool.exe
在这里插入图片描述
6.选择Shortcut to %sWeTool.exe修改Name乌鹅工具箱.exe;
在这里插入图片描述
7.点击User's Programs Menud->Add->Folder,新建文件夹WeTool;
在这里插入图片描述
8.将重命名后的乌鹅工具箱.exe分别复制到User's DesktopUser's Programs Menu,分别是桌面快捷方式和开始菜单快捷方式。

在这里插入图片描述
9.选择User's Desktop\乌鸦工具箱.exe单击右键->Icon->Browser->Application Folder选择文件夹中的.ico图标文件;
在这里插入图片描述

三、创建卸载程序

1.选择Application Folder->add->文件
在这里插入图片描述
2.添加C:\Windows\System32\msiexec.exe文件;
在这里插入图片描述
3.Application Folder->msiexec.exe->Create Shortcut to msiexec.exe在这里插入图片描述

4.选中项目->属性->复制ProductCode
在这里插入图片描述
5.选择Shortcut to %smsiexec.exe,右键属性,重命名为卸载乌鹅工具箱.exe,并且在Arguments中填写/x{ProductCode}
比如:/x {31FD7BD1-44BE-46B3-B732-7EFBF5D98CDC}(/x 后有一个空格注意)

在这里插入图片描述
6.复制卸载乌鸦工具箱.exeUser's Programs Menu\WeTool文件夹下;
在这里插入图片描述
7.选择User's Programs Menu\WeTool\卸载乌鸦工具箱.exe单击右键->Icon->Browser->Application Folder选择文件夹中的.ico图标文件;
在这里插入图片描述

四、下载.Net Framework 4.7.2 到安装包

1.下载ndp472-kb4054530-x86-x64-allos-enu.exe,微软官网下载链接
2.下载ndp472-kb4054530-x86-x64-allos-chs.exe,微软官网下载链接
3.官网下载 .NET Framework
在这里插入图片描述
4.官网下载.NET
在这里插入图片描述

五、打包.Net Framework 4.7.2

1.准备好提前下载的ndp472-kb4054530-x86-x64-allos-enu.exe和下载ndp472-kb4054530-x86-x64-allos-chs.exe
在这里插入图片描述

2.将ndp472-kb4054530-x86-x64-allos-chs.exe复制到
路径:C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX472\zh-Hans
在这里插入图片描述

3.将ndp472-kb4054530-x86-x64-allos-enu.exe复制到
路径:C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX472\
注意:这个没有zh-Hans
在这里插入图片描述
4.选中 WeToolSetup项目->属性->Prerequisites...
在这里插入图片描述

5.选择.Net Framework 4.7.2 ->从与我的应用程序相同的位置下载系统必备组件
在这里插入图片描述

六.生成项目

1.选择项目,点击生成。
在这里插入图片描述

七、处理无目标位置问题

现象:打包的安装包执行安装后,桌面快捷方式的属性中没有目标位置信息,我重新打包又试了几次,以为是再程序打包的时候设置有问题,结果都没有找到原因,没有办法只有需求网络资源,网络上有朋友说VS创建的快捷方式不是标准的,是VS制作的安装包的问题,但是可以对VS制作的安装包msi文件进行修正。

在这里插入图片描述

1.下载工具orca工具(msi文件编辑工具) orcaMis

2.安装orca后,用orca打开msi安装包,在左边的Table列表中找到Shourtcut表,在右边记录中找到桌面快捷方式的记录,修改该记录的Target属性为 [TARGETDIR]应用程序名称.exe
在这里插入图片描述

(3)保存修改后的msi文件,重新安装后生成的快捷方式就可以查找图片和更改图标了。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【异常处理】BadSqlGrammarException低级SQL语法异常

报错 org.springframework.jdbc.BadSqlGrammarException: ### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use …

极狐GitLab 如何设置 Markdown 中的图片大小

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 使用极狐GitLab 进行代码托管或者 CI/CD,都避免不了…

奔跑不息的鞋履行业再迎分化,百丽时尚逆势而上?

新事物的诞生带来新生机的同时,从来也都是伴有腥风血雨的。 就如,互联网电商之于服装鞋履新零售。 据悉,近日鞋履业头部之一的千百度在历经多次转型失败后,最终还是走上了“老大哥”百丽时尚的老路——退市进行私有化转型。此外…

java基础-锁之volatilesynchronized

文章目录 volatilevolatile内存语义volatile的可见性volatile无法保证原子性volatile禁止重排优化硬件层的内存屏障volatile内存语义的实现下面是基于保守策略的JMM内存屏障插入策略。下面是保守策略下,volatile写插入内存屏障后生成的指令序列示意图下图是在保守策…

阿里云2核2G服务器61元和99元性能测评

阿里云2核2G服务器多少钱?99元一年,轻量云服务器是61元一年。2核2G服务器性能如何?性能很不错,不限制CPU性能,99元2核2G服务器是ECS经济型e实例,61元2核2G服务器是轻量应用服务器,都是3M公网带宽…

数据结构与算法-归并排序

引言 在计算机科学的广阔领域中,数据结构与算法犹如两大基石,支撑着软件系统高效运行。本文将深度剖析一种基于分治策略的排序算法——归并排序,并探讨其原理、实现步骤以及优缺点,以期帮助读者深入理解这一高效的排序方法。 一、…

想打造爆款AI应用?ai虚拟数字人制作助你一臂之力

如今,随着人工智能技术的飞速发展,AI应用已经渗透到我们生活的方方面面。而在这个充满竞争和创新的时代,不少企业都在努力寻找打造爆款AI应用的机会。其中,AI虚拟数字人制作可以为他们提供一臂之力。 AI虚拟数字人制作是指利用人…

如何制作聊天机器人:人工智能驱动的世界中开发人员的注意事项

作者:来自 Elastic Aditya Tripathi 世界每天都越来越受到人工智能的推动。 事实上,你很难找到尚未宣布将人工智能以某种方式集成到其技术堆栈中的科技公司。 愤世嫉俗者可能会说这是一个过渡阶段,但人工智能如此受欢迎的原因是它是一组多功能…

Docker本地部署Redis容器结合内网穿透实现无公网ip远程连接

文章目录 前言1. 安装Docker步骤2. 使用docker拉取redis镜像3. 启动redis容器4. 本地连接测试4.1 安装redis图形化界面工具4.2 使用RDM连接测试 5. 公网远程访问本地redis5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定TCP地址远程访问 前言 本文主要介绍如何在Ub…

护眼台灯哪个品牌最好?2024五款主流台灯实测推荐!

对很多家长来说,孩子的健康比什么都重要。不过现在的儿童青少年近视率却非常高,正因为如此护眼台灯就一直是家长十分关注的灯具。可如今市场中却存在很多劣质产品,忽视产品做工以及选材用料等问题,导致照明体验感差、使用不方便&a…

【YOLO系列】YOLOv9论文超详细解读(翻译 +学习笔记)

前言 时隔一年,YOLOv8还没捂热,YOLO系列最新版本——YOLOv9 终于闪亮登场! YOLOv9的一作和v7一样。v4也有他。 他于2017年获得台湾省National Central University计算机科学与信息工程博士学位,现在就职于该省Academia Sinica的…

Maya笔记 软选择

文章目录 1什么是软选择2注意3如何打开软选择3.1方法一3.2方法二 4调整软选择的范围5衰减模式5.1体积模式5.2表面模式 6衰减曲线 1什么是软选择 也就是渐变选择,从中心点向外影响力度越来越小 软选择针对的是点线面这些模型元素 下图中展示了对被软选择的区域移动…