在离线环境中安装Visual Stuido 2017
在离线环境中安装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
更多的可选择组件可参照:https://docs.microsoft.com/en-us/visualstudio/install/workload-component-id-vs-enterprise
--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://durow.vip