本文详细介绍了 VS2019 离线安装的相关步骤,以桌面开发为主下载 C++桌面开发、.NET 桌面开发相关的工作负载、MFC 可选组件及帮助查看器。

工作负载(Workload)

离线安装需要先根据开发的项目类型下载相关的 工作负载(Workload)。工作负载包含多个依赖项,分为必需(Required)建议(Recommended)可选(Optional) 三种类型。如下图所示:


以 C++桌面开发为例,ATL 是建议组件,而 MFC 是可选组件。



在下载工作负载或可选组件时,需要先选择 VS 版本(本文下载版本为 VS2019 社区版),因为不同的版本依赖项类型可能不同。如在 VS2017 中 .NET Framework 4.7.2 的 SDK 及目标包为可选类型,在 VS2019 中则为必需类型。

VS2017 中的 .NET Framework 4.7.2:


VS2019 中的 .NET Framework 4.7.2:


VS2019 工作负载的详细介绍可以看这里

下载安装工具

这里下载 Visual Studio 引导程序,该文也讲解了如何根据不同的开发类型下载相关的工作负载。 如下图:


桌面开发(C++ & .NET)

在命令行下输入下面的命令下载 C++桌面开发、.NET 桌面开发工作负载及推荐组件。

1vs_community__891427824.1534167097.exe --layout .\vs2019_layout --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Workload.ManagedDesktop --includeRecommended --lang en-US zh-CN

命令含义:

  1. vs_community__891427824.1534167097.exe:前一步下载的 Visual Studio 引导程序
  2. --layout:指定 VS2019 相关组件的下载目录,设置为当前目录下的 vs2019_layout 目录。
  3. --add:添加将要下载的工作负载,添加的是 NativeDesktopManagedDesktop
  4. --includeRecommended:安装相关工作负载的推荐组件(另一个参数 --includeOptional 将会下载选定的工作负载中可选的组件,会导致下载的安装包过大,不建议使用。)
  5. --lang:下载指定的语言包,本人下载了英文(en-US)、中文(zh-CN)

下载完成后如下图所示:


vs_community.exe 的详细命令参数可以看这里

MFC 可选包

MFC 相关的工具包在工作负载 Microsoft.VisualStudio.Workload.NativeDesktop 中属于可选包,需要单独下载。

1vs_community__891427824.1534167097.exe --layout .\vs2019_layout --add Microsoft.VisualStudio.Component.VC.ATLMFC --lang en-US zh-CN

帮助查看器(HelpViewer)

帮助查看器属于独立工作负载,也需要单独下载。

1vs_community__891427824.1534167097.exe --layout .\vs2019_layout --add Microsoft.Component.HelpViewer --lang en-US zh-CN

安装包大小

经过以上步骤下载完毕后,安装包的大小如下图所示,比 VS2017 的还少占用了部分空间(在安装 VS2017 时,这几个工作负载及组件下载后占用 3.15G 空间)。


安装

下载完毕后,将网络断开或将其拷贝到其它未联网的电脑上,然后进入 vs2019_layout 目录,双击 vs_setup.exe 进行安装。


查看 MFC 可选组件及帮助查看器是否选中:



修改安装目录:VS2019 默认安装在 C 盘,将占用大量的磁盘空间,建议修改在其它盘。然后点击右下角的 安装 进行安装。


安装过程如下:


在安装过程中出现了如下警告,点击 继续 安装(安装后创建测试工程暂未发现异常,先不处理)。


创建工程

安装完成后,分别创建 MFC 工程及 WinForm 工程进行测试。

创建新项目:


以 MFC 为例创建项目,在搜索框中输入 MFC 或 选择语言(C++)、平台(Windows)、项目类型(桌面),然后点击 MFC 应用,根据后面的向导界面修改工程选项,如下图所示:


WinForm 项目的创建与 MFC 类似,在搜索框中输入 WinForm 即可,或将语言改为 C#,如下图所示:


编译创建的工程,可以看到全部生成成功。


- - - End - - -



欢迎扫码订阅我的微信公众号,阅读其它相关文章。

本文作者: Lzl678
本文链接: https://www.cnblogs.com/Lzl678/p/10651100.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!

VS2019 离线安装方法详解的更多相关文章

  1. Android SDK离线安装方法详解(加速安装) 转

    AndroidSDK在国内下载一直很慢··有时候通宵都下不了一点点,最后只有选择离线安装,现在发出离线安装地址和方法,希望对大家有帮助! 离线安装包下载地址:http://dl.vmall.com/c ...

  2. Android SDK离线安装方法详解(加速安装)

    AndroidSDK在国内下载一直很慢··有时候通宵都下不了一点点,最后只有选择离线安装,现在发出离线安装地址和方法,希望对大家有帮助 一,首先下载SDK的安装包,android-sdk_r10-wi ...

  3. SQL Server2012 安装方法详解

    SQL Server2012 安装方法详解 - MonkeyBrothers的博客 - CSDN博客 https://blog.csdn.net/monkeybrothers/article/deta ...

  4. Linux离线安装Ruby详解

    很多时候我们会发现,真实的生成环境很多都没有外网,只有内网环境,这个时候我们又需要安装Ruby,则不能提供yum命令进行在线安装了,这个时候我们就需要下载安装包进行离线安装.本文主要简单介绍如果离线安 ...

  5. Linux 离线安装Rubygems详解

    很多时候我们会发现,真实的生成环境很多都没有外网,只有内网环境,这个时候我们又需要安装RubyGems,则不能提供yum命令进行在线安装了,这个时候我们就需要下载安装包进行离线安装.本文主要简单介绍如 ...

  6. Mysql压缩包版的安装方法详解

    Mysql安装的时候可以有msi安装和zip解压缩两种安装方式.zip压缩包解压到目录,要使用它还需对它进行一定的配置.下面对Mysql压缩包版的安装方法进行详细的描述,要是此文有不正确的认识,希望大 ...

  7. ADS2008 安装方法详解及文件下载

    一.我的安装的过程及方法 正常安装的方法: 1.- Install the program. 2.- Copy "license.lic" into "C:\ADS200 ...

  8. Zend Studio 13.6.1 汉化及安装方法详解

    Zend Studio 13.6.1是一套专业开发人员使用的集成开发环境 (IDE),具备功能强大的专业编辑工具和调试工具,支持PHP语法加亮显示,支持语法自动填充功能,支持书签功能,支持语法自动缩排 ...

  9. GreenPlum 安装方法详解

    一.安装环境准备 1.磁盘环境准备 磁盘分区典型配置如下: 文件系统 文件格式    大小  /        ext3   50GB,Linux系统的根目录,所有的目录都挂在这个目录下面,建议大小为 ...

随机推荐

  1. [翻译]Java排错指南 - 5 确定崩溃何地发生

    原文地址: https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/crashes001.html 这几天公司其他组遇到 ...

  2. ubuntu上配置nginx实现反向代理

    反向代理 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客 ...

  3. 【Python3爬虫】为什么你的博客没人看呢?

    我相信对于很多爱好和习惯写博客的人来说,如果自己的博客有很多人阅读和评论的话,自己会非常开心,但是你发现自己用心写的博客却没什么人看,多多少少会觉得有些伤心吧?我们今天就来看一下为什么你的博客没人看呢 ...

  4. Python的线程池

    #!/usr/bin/env python # -*- coding: utf-8 -*- """ concurrent 用于线程池和进程池编程而且更加容易,在Pytho ...

  5. 【面试】Spring事务面试考点吐血整理(建议珍藏)

    Spring和事务的关系 关系型数据库.某些消息队列等产品或中间件称为事务性资源,因为它们本身支持事务,也能够处理事务. Spring很显然不是事务性资源,但是它可以管理事务性资源,所以Spring和 ...

  6. Kafka学习资料

    博客系列: Apache Kafka简介Apache Kafka安装和使用Apache Kafka核心概念kafka核心组件和流程—控制器kafka核心组件和流程—协调器kafka核心组件和流程—日志 ...

  7. Struts2笔记_拦截器

    A.拦截器是什么 --- Interceptor:拦截器,起到拦截Action的作用. ---Filter:过滤器,过滤从客户端向服务器发送的请求. ---Interceptor:拦截器,拦截是客户端 ...

  8. Python二级-----------程序冲刺3

    1. 根据输入字符串 s,输出一个宽度为 15 字符,字符串 s 居中显示,以“=”填充的格式.如果输入字符串超过 15 个字符,则输出字符串前 15 个字符.提示代码如下:‪‬‪‬‪‬‪‬‪‬‮‬‪ ...

  9. Cookie 数据浅谈

    Cookie 是一些数据, 存储于你电脑上的文本文件中. 当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息.   Cookie 的作用就是用于解决 "如 ...

  10. 安装odoo小程序商城模块报错 KeyError: u'oejia_weshop'

    错误截图如下 检查模块目录名是否不是 oejia_weshop,比如 oejia_weshop-master,注意odoo的模块名不能随便更改,odoo小程序商城模块目录名必须是oejia_wesho ...