Microsoft does not offer an ISO image for Visual Studio 2017, we need to make it ourselves by running web installer with some command-line arguments. Here are the links to official pages:
Create an offline installer for Visual Studio 2017
Visual Studio 2017 workload and component IDs
Example to grab community edition:
1 |
vs_community.exe --layout C:\folder --add workload_id_list --lang en-US |
Layout parameter is mandatory, it points to a folder where the downloaded files would be saved.
Workload_id_list is a list of component IDs, separated by space. If you skip it, all components will be downloaded.
[UPDATE 2017-06-21]
Workloads contain only the recommended components. As mentioned by geoyar, you need to include optional components manually.
Component | ID | Description |
---|---|---|
Visual Studio core editor (included with Visual Studio Community 2017) | Microsoft.VisualStudio.Workload.CoreEditor | The Visual Studio core shell experience, including syntax-aware code editing, source code control and work item management. |
Azure development | Microsoft.VisualStudio.Workload.Azure | Azure SDK, tools, and projects for developing cloud apps and creating resources. |
Data storage and processing | Microsoft.VisualStudio.Workload.Data | Connect, develop and test data solutions using SQL Server, Azure Data Lake, Hadoop or Azure ML. |
.NET desktop development | Microsoft.VisualStudio.Workload.ManagedDesktop | Build WPF, Windows Forms and console applications using the .NET Framework. |
Game development with Unity | Microsoft.VisualStudio.Workload.ManagedGame | Create 2D and 3D games with Unity, a powerful cross-platform development environment. |
Linux development with C++ | Microsoft.VisualStudio.Workload.NativeCrossPlat | Create and debug applications running in a Linux environment. |
Desktop development with C++ | Microsoft.VisualStudio.Workload.NativeDesktop | Build classic Windows-based applications using the power of the Visual C++ toolset, ATL, and optional features like MFC and C++/CLI. |
Game development with C++ | Microsoft.VisualStudio.Workload.NativeGame | Use the full power of C++ to build professional games powered by DirectX, Unreal, or Cocos2d. |
Mobile development with C++ | Microsoft.VisualStudio.Workload.NativeMobile | Build cross-platform applications for iOS, Android or Windows using C++. |
.NET Core cross-platform development | Microsoft.VisualStudio.Workload.NetCoreTools | Build cross-platform applications using .NET Core, ASP.NET Core, HTML, JavaScript, and CSS |
Mobile development with .NET | Microsoft.VisualStudio.Workload.NetCrossPlat | Build cross-platform applications for iOS, Android or Windows using Xamarin. |
ASP.NET and web development | Microsoft.VisualStudio.Workload.NetWeb | Build web applications using ASP.NET, ASP.NET Core, HTML, JavaScript, and CSS. |
Node.js development | Microsoft.VisualStudio.Workload.Node | Build scalable network applications using Node.js, an asynchronous event-driven JavaScript runtime. |
Office/SharePoint development | Microsoft.VisualStudio.Workload.Office | Create Office and SharePoint add-ins, SharePoint solutions, and VSTO add-ins using C#, VB, and JavaScript. |
Universal Windows Platform development | Microsoft.VisualStudio.Workload.Universal | Create applications for the Universal Windows Platform with C#, VB, JavaScript, or optionally C++. |
Visual Studio extension development | Microsoft.VisualStudio.Workload.VisualStudioExtension | Create add-ons and extensions for Visual Studio, including new commands, code analyzers and tool windows. |
Mobile development with JavaScript | Microsoft.VisualStudio.Workload.WebCrossPlat | Build Android, iOS and UWP apps using Tools for Apache Cordova. |
Unaffiliated components | Component.GitHub.VisualStudio | GitHub extension for Visual Studio |
Unaffiliated components | Microsoft.Component.Blend.SDK.WPF | Blend for Visual Studio SDK for .NET |
Unaffiliated components | Microsoft.Component.HelpViewer | Help Viewer |
Unaffiliated components | Microsoft.Net.Component.3.5.DeveloperTools | .NET Framework 3.5 development tools |
Unaffiliated components | Microsoft.VisualStudio.Component.DependencyValidation.Community | Dependency Validation |
Unaffiliated components | Microsoft.VisualStudio.Component.LinqToSql | LINQ to SQL tools |
Unaffiliated components | Microsoft.VisualStudio.Component.TestTools.Core | Testing tools core features |
Unaffiliated components | Microsoft.VisualStudio.Component.TypeScript.2.0 | TypeScript 2.0 SDK |
This table is not all you need. It does not include all recommended and optional components. For example, to install VC++ ATL support you have to explicitly enter this component to command line.