VS2017、VS2019没有Setup安装项目(Visual Studio Installer)_解决方案
前言: VS2010中有一个自带的安装部署项目,叫:Visual Studio Installer ,我们通常称为:setup项目,是一个用于自定义安装部署的项目方案。但是在VS2017,VS2019中均不见了,安装程序组件中也没有,通过强大的谷歌和百度,发现有一个扩展方案,在VS市场里有一个可用的VS扩展,一般还很难找:
先把下载地址粘贴给各位:
VS2017,VS2019 下载Setup(Visual Studio Installer)项目扩展地址: https://marketplace.visualstudio.com/items?itemName=VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects
我的另一篇博文也提及过这个问题:https://www.cnblogs.com/lxhbky/p/10616524.html
VS2010自带安装项目截图:
VS2017,VS2019新扩展安装图:
完美的找到了它,只是它是英文版的,不过可以对照着2010的中文版操作,功能没有什么变化。
下面是自定义安装程序的操作方法:
安装项目主要有:左侧3个菜单(项目主要文件,用户桌面,用户开始菜单),一个需要配置的项目属性(系统必备安装环境)
1-添加项目主要文件:在项目文件右键->ADD->项目输出->选择winform项目-主输出,然后安装程序会自动把依赖的文件全部加进来,非常好使。最后别忘了关键的异步,把服务的config文件单独再拉进来:
2-添加用户桌面文件:一般我们会在用户桌面生成一个程序的入口文件的快捷方式,就是启动项目的文件。在项目文件中,选中winformEXE文件,右键创建快捷方式,然后拖到用户桌面左边的:用户桌面菜单中。
3-添加用户程序菜单也一样,放入一个入口文件的快捷方式文件,一般还有再加一个卸载该程序的文件入口:
首先,我们需要在项目文件中,Add一个微软提供可供卸载程序的一个程序集: C:\Windows\System32\msiexec.exe, 然后同样创建一个快捷方式,拖入到用户程序菜单中,右键快捷方式属性,在参数中输入:\x {projectcode}
其中projectCode,是需要在setup项目的属性中(不是右键属性哦,选中安装项目,属性窗口中的属性),可以找到,然后粘贴进去,就完成了卸载程序快捷方式的创建:
4-设置安装程序的运行环境及必备系统组件:选中setup安装项目,这次是右键点击属性添加系统必备组件,如下图:
最后编译setup项目,就可以了,找到Debug下的文件,就可以进行傻瓜式一键安装了,自定义安装文件一共就产生了2个文件,类似于安装包的作用,把我们的发布后的文件又进行了一次压缩,漂亮啊:
注意:默认自定义安装项目,是不编译的,除非你单独编译安装项目。 你如果你是编译的解决方案,那么你其实并没有编译安装项目,解决方案中可以设置安装项目编译:
5-添加快捷方式图标,图标需要在项目文件中添加几张ICO类型的图标文件,添加好之后,可以在快捷方式的属性栏的ICON中选择添加的图标文件。这一步可忽略,主要是为了美观!
效果图:
用户菜单快捷菜单入口:
桌面快捷方式入口:
总结:由于没有太多的时间整理,先这样写吧,基本上把我自己使用这个winform+window服务这种组合项目,在发布过程中以及,怎么创建自定义安装包来快速,部署到测试中,遇到的问题说全了,希望可以帮助到遇到类似问题的道友。。。
以后再整理文章的结构。。。
VS2017、VS2019没有Setup安装项目(Visual Studio Installer)_解决方案的更多相关文章
- 解决记录:win10 无法安装VS2017,visual studio installer下载进度始终为0
问题描述:win10 下无法安装VS2017,visual studio installer下载进度始终为0,点击取消按钮后,也没有反应,visual studio installer也关闭不掉: 具 ...
- Visual Studio Installer打包安装项目VS2015
使用VS2015的Visual Studio Installer打包安装项目,虽然整体操作很简单,但还是有几个特殊的点需要记一下,故写下此博客方便以后查阅 第一步,创建安装项目 如下: 里面最左侧的框 ...
- Visual Stdio 2015打包安装项目的方法(使用Visual Studio Installer)
首先在官网下载VS2015的Visual Studio Installer 1.创建安装项目 里面最左侧的框框有三个文件夹 1.“应用程序文件夹”即"Application Folder&q ...
- 解决 win10 无法安装VS2019,visual studio installer下载进度始终为0
解决 win10 无法安装VS2019,visual studio installer下载进度始终为0 目录 解决 win10 无法安装VS2019,visual studio installer下载 ...
- Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案
原文:Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案 如果你是用Visual Studio自带的打包项目打包了一个I ...
- Visual Studio 开发(一):安装配置Visual Studio Code
一.为何使用Visual Studio Code 在学习音视频开发的时候,使用到了C和C++,在回顾复习C和C++的知识的时候,需要编写一些代码来加强理解. 虽然,有在线的语言编辑工具https:// ...
- Windows10系统如何安装Microsoft Visual Studio 2015及最小子数组和求解
一.Windows10系统如何安装Microsoft Visual Studio 2015. 1.首先到Visual Studio官方网站(https://www.visualstudio.com/v ...
- .NET Framework 2.0/3.0/3.5 以 v90 平台工具集为目标。请确保在计算机上安装了 Visual Studio 2008
今天在Visual Studio2010下面开发C++应用的时候发现“.NET Framework 2.0/3.0/3.5 以 v90 平台工具集为目标.请确保在计算机上安装了 Visual Stud ...
- 在linux系统中安装VSCode(Visual Studio Code)
在linux系统中安装VSCode(Visual Studio Code) 1.从官网下载压缩包(话说下载下来解压就直接可以运行了咧,都不需要make) 访问Visual Studio Code官网 ...
随机推荐
- 二叉树,AVL树和红黑树
为了接下来能更好的学习TreeMap和TreeSet,讲解一下二叉树,AVL树和红黑树. 1. 二叉查找树 2. AVL树 2.1. 树旋转 2.1.1. 左旋和右旋 2.1.2. 左左,右右,左右, ...
- javascript 易漏点
javascript 是一种解释型语言,不是java或c++那样的编译语言.javascript指令以普通文本形式传递给浏览器,然后依次解释执行.它们不必首先“编译”成只有计算机处理器能理解的机器码. ...
- 函数上下文this
一般来说谁调用上下文都指向谁,具体有以下几种情况: 1.函数用圆括号调用,函数的上下文是window 注意:所有的全局变量都是window的属性,而函数里边定义的变量谁的属性也不是. 2.函数作为对象 ...
- 树莓派配置watchdog
安装watchdog apt install watchdog 编辑/etc/modules,添加bcm2708_wdog 编辑/etc/watchdog.conf watchdog-device = ...
- 基于elk 实现nginx日志收集与数据分析。
一.背景 前端web服务器为nginx,采用filebeat + logstash + elasticsearch + granfa 进行数据采集与展示,对客户端ip进行地域统计,监控服务器响应时间等 ...
- Python_从字符串中提取号码
import re telNumber = '''Suppose my Phone No. is 0535-1234567,yours is 010-12345678,his is 025-87654 ...
- Netty中如何序列化数据
JDK提供了ObjectOutputStream和ObjectInputStream,用于通过网络对POJO的基本数据类型和图进行序列化和反序列化.该API并不复杂,而且可以被应用于任何实现了java ...
- PAT1041: Be Unique
1041. Be Unique (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue Being uniqu ...
- c语言之单链表的创建及排序
今天对之前学习过的链表知识进行简单的总结顺便写点代码:创建一个链表有头插法跟尾插法两种,在下面代码中我们为结点分配的内存实在堆上分配的,因此需要我们手动释放,释放用free()函数 下面代码贴出具体代 ...
- SSM-SpringMVC-14:SpringMVC中大话注解式开发基础--呕心沥血版
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 注解的基础我不再多啰嗦,百度一搜很多,很详细啊,我就讲一下SpringMVC中的注解入门 通过注解的方式定义 ...