在离线环境中安装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. Bash特殊变量:$0, $#, $*, $@, $?, $$实战

    在linux下配置shell参数说明 前面已经讲到,变量名只能包含数字.字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量. 例如,$ 表示当前Shell进程的ID,即pid ...

  2. npm安装项目出错

    F:\ajax>npm install iview --savenpm WARN saveError ENOENT: no such file or directory, open 'F:\aj ...

  3. jquery input 搜索自动补全、typeahead.js

    最近做个一个功能需要用到自动补全,然后在网上找了很久,踩了各种的坑 最后用typeahead.js这个插件,经过自己的测试完美实现 使用方法:在页面中引入jquery.jquery.typeahead ...

  4. ucloud mysql

    [root@--- bin]# yum install mysql-server Loaded plugins: fastestmirror Setting up Install Process Lo ...

  5. python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'解决办法

    .原因是官网的是python2语法写的,看官手动把官网的HTMLTestRunner.py改成python3的语法: 参考:http://bbs.chinaunix.net/thread-415474 ...

  6. GitHub 系列之「向GitHub 提交代码」

    1.SSH 你拥有了一个 GitHub 账号之后,就可以自由的 clone 或者下载其他项目,也可以创建自己的项目,但是你没法提交代码.仔细想想也知道,肯定不可能随意就能提交代码的,如果随意可以提交代 ...

  7. 【HTTP原理】TCP/IP三次握手和四次挥手

    HTTP连接 HTTP协议即超文本传送协议(Hypertext Transfer Protocol),是web联网的基础,也是手机联网常用的协议之一,http协议是建立在TCP协议之上的一种应用. H ...

  8. BDD测试之selenium控制滚动条

    一.对于页面存在滚动条,可以通过插入JS控制滚动条(最常用的方法) (1)将滚动条移动到指定坐标位置处 ((JavascriptExecutor) driver).executeScript(&quo ...

  9. BZOJ_1598_[Usaco2008 Mar]牛跑步_A*

    BZOJ_1598_[Usaco2008 Mar]牛跑步_A* Description BESSIE准备用从牛棚跑到池塘的方法来锻炼. 但是因为她懒,她只准备沿着下坡的路跑到池塘, 然后走回牛棚. B ...

  10. 好几个div(元素)找到最后一个

    <div> <div></div> <div></div> <div></div> </div> //找 ...