在离线环境中安装Visual Stuido 2017

0x00 写在前面的废话

因为工作上大多数都是在离线环境中进行的,进出离线环境很麻烦,所以之前很长一段时间都在使用VS2010。后来尝试换了VS2013,一切顺利,只要把安装镜像拷进去安装即可。再后面.NET Core 1.0出来后,尝试在离线环境中安装VS2015,结果遇到了很多坑。其中最坑的就是安装过程中会提示xxx文件损坏无法继续安装。刚开始真的以为是下载过程中安装文件损坏,结果重新下载了几次发现还是提示损坏。然后就到网上去搜索,也没结果。后来想用VS Code开发也可以,就装个.NET Core的SDK。结果仍然提示文件损坏,不过这次查到原因,因为离线环境中缺乏安全证书无法自动下载,导致安装文件验证通不过,进而提示文件损坏。按照网上教程从有证书的电脑上把证书导出,在离线环境中导入,安装就正常了,VS2015也正常了。

0x01 下载Visual Studio 2017

点下面地址下载所需要的版本的安装程序
后面假设下载的是:vs_community.exe

0x02 下载离线资料

直接运行vs_community.exe就是在线安装。
要离线安装的话需要开个命令行,到vs_community.exe所在目录。或者在vs_community.exe所在目录空白处按住shift点右键,选择在此处打开命令行。
然后执行vs_community.exe --layout c:\vs2017layout,即可把离线资料下载至:c:\vs2017layout。如果想下载中文版本可以加入--lang参数:vs_community.exe --layout c:\vs2017layout --lang zh-CN,--lang参数支持的语言列表:
* cs-CZ ,Czech
* de-DE ,German
* en-US ,English
* es-ES ,Spanish
* fr-FR ,French
* it-IT ,Italian
* ja-JP ,Japanese
* ko-KR ,Korean
* pl-PL ,Polish
* pt-BR ,Portuguese - Brazil
* ru-RU ,Russian
* tr-TR ,Turkish
* zh-CN ,Chinese - Simplified
* zh-TW ,Chinese - Traditional
如果要全部下载体积是很大的,而且很多功能都用不到。可以在命令行用--add参数选择要离线的资料。例如我常用的就是Web和Desktop,所以就用下面命令离线:
vs_community.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --includeOptional --lang zh-CN
.NET Desktop和Office开发:
vs_community.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.Office --includeOptional --lang en-US
C++ Desktop开发:
vs_community.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended --lang en-US
--layout参数如果为空则默认为当前目录,我不喜欢输入路径,所以习惯把vs_community.exe剪切到要下载的目录,shift+右键开命令行,--layout参数为空,直接下载到当前目录。

0x03 导入安全证书

想想之前装VS2015的经历现在VS2017太体贴了。下载离线资料的目录中有个叫`certificates`的目录,点进去双击安装里面的安全证书,采用默认配置无脑下一步即可,遇到输入密码的地方空着就行。

0x04 安装Visual Studio 2017

比较建议的方式就是如何离线的就如何安装。例如我离线时用的:
vs_community.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --includeOptional --lang zh-CN
那么安装时就用:
vs_community.exe --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --includeOptional
当然也可以直接运行setup.exe

0x05 感受

因为工作大多在离线环境中,所以对各类开发工具离线环境中的使用都比较关心。感觉VS2015是最复杂的一版VS了,最小安装体积也很大,各种不方便。早期的.NET Core也是,过度依赖nuget,为了在离线环境中使用还得搭个nuget服务(不过这个也没啥好说的,搭个nuget服务确实方便),再考进来一大堆包。相比之下VS2017好多了。
 

更多内容欢迎访问我的博客:http://www.durow.vip

在离线环境中安装Visual Stuido 2017的更多相关文章

  1. 在低带宽或不可靠的网络环境中安装 Visual Studio 2017

    在低带宽或不可靠的网络环境中安装 Visual Studio 2017 2017-4-141 分钟阅读时长 作者  https://docs.microsoft.com/zh-cn/visualstu ...

  2. 在离线环境中发布.NET Core至Windows Server 2008

    在离线环境中发布.NET Core至Windows Server 2008 0x00 写在开始 之前一篇博客中写了在离线环境中使用.NET Core,之后一边学习一边写了一些页面作为测试,现在打算发布 ...

  3. [转]在离线环境中发布.NET Core至Windows Server 2008

    本文转自:http://www.cnblogs.com/durow/p/5765145.html 0x00 写在开始 之前一篇博客中写了在离线环境中使用.NET Core,之后一边学习一边写了一些页面 ...

  4. 在离线环境中使用.NET Core

    在离线环境中使用.NET Core 0x00 写在开始 很早开始就对.NET Core比较关注,一改微软之前给人的印象,变得轻量.开源.跨平台.最近打算试着在工作中使用.但工作是在与互联网完全隔离的网 ...

  5. uwsgi+flask环境中安装matplotlib

    uwsgi+flask的python有自身的virtual environment,可以通过如下命令进入 . venv/bin/activate 虽然通过sudo apt-get install py ...

  6. 番外篇1:在Windows环境中安装JDK

    他山之石,可以攻玉!欢迎关注我的微信公众号 本文作为构建第一个Java程序的番外篇一,跟大家探讨下在Windows下怎么安装JDK.由于本人没有Mac,因此如果是Mac的同学,请自行百度哦! 读前预览 ...

  7. 在openstack环境中安装rackspace private cloud --1 环境准备

    在一个openstack环境中安装rackspace private cloud, 环境准备: 在good-net网络中创建3个虚拟机vm Network Detail: good-net Netwo ...

  8. Django学习系列2:django环境中安装selenium并查看selenium版本号

    在Django环境中安装selenium (django) root@ranxf-TEST:/studydisk/Python_web_TDD/superlists# conda install se ...

  9. 安装visual stdio 2017后依然报错:Unable to find vcvarsall.bat

    安装visual stdio 2017后依然报错:Unable to find vcvarsall.bat 解决办法:更新setuptools 原文章:https://blog.csdn.net/wl ...

随机推荐

  1. Linux时间子系统之(六):POSIX timer

    专题文档汇总目录 Notes:首先讲解了POSIX timer的标识(唯一识别).POSIX Timer的组织(管理POSIX Timer).内核中如何抽象POSIX Timer:然后分析了POSIX ...

  2. python实现邮件的发送

    一.163邮箱设置 进入163邮箱,点击设置中的pop3/smtp/imap 开启smtp服务,如果没有开启,点击设置,手机号验证后勾选开启即可,开启后图如下: 主要用到的就是smtp服务器:smtp ...

  3. Java 学习笔记 (七) Java 参数

    head first java page 74 实参: argument 形参: parameter 方法会运用形参, 调用的一方会传入实参. 实参是传给方法的值.当它传入方法后就成了形参, 参数跟局 ...

  4. pingo--util.go 源码阅读

    :] } var _letters = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-&qu ...

  5. oracle常用系统函数

    一.字符类函数 字符类函数是专门用于字符处理的函数,处理的对象可以是字符或者字符串常量,也可以是字符类型的列. 1.ASCII(c)和CHR(i) ASCII(c)函数用于返回一个字符的ASCII码, ...

  6. 我和Python的Py交易》》》》》》数据类型

    Python里的变量 ---门牌 Python在使用变量之前无须定义它的类型,但是必须声明以及初始化该变量. Python中给变量赋值就是声明,初始化变量(也就是创建一个相应数据类型的对象,而那些数据 ...

  7. 肝 hibernate 配置and增删改查 and 测试

    已经通宵三天撸代码了,现在的我已经养成晚上修仙写代码的节奏了.....最近 刚刚复习到了 hibernate 谈谈 这篇文章就谈谈我对这货的理解吧. 在看这篇文章之前希望你 知道sessionfact ...

  8. 自动化测试框架TestNG

    测试框架有很多,比如常用的 UI自动化测试框架 ①.java+selenium/appium+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/ ...

  9. netty源码学习

    概述 Netty is an asynchronous event-driven network application framework for rapid development of main ...

  10. 解决tomcat部署项目中碰到的几个问题

    在tomcat上部署项目并进行测试,经常会碰到各种问题.在不同的操作系统上部署,对问题的解决也会有一些差异. 1 发现问题 1.1 项目部署 先将项目达成war包,放到tomcat的webapps目录 ...