离线安装Visual Studio 2022

1.下载 Visual Studio 引导程序

以community版本为例,即下载vs_community.exe文件。

2.创建Layout

比如我需要安装unity3d、python、nodejs的相关的开发,我需要安装以下模块:

Microsoft.VisualStudio.Component.Unity

Microsoft.VisualStudio.Workload.ManagedDesktop

Microsoft.VisualStudio.Workload.Python

Microsoft.VisualStudio.Workload.Node

具体工作负载和组件ID参考下面链接:

Visual Studio Community 工作负载和组件 ID | Microsoft Learn

执行以下命令创建Layout:

bash 复制代码
D:\localVSlayout\vs_community.exe ^
--layout D:\localVSlayout ^
--add Microsoft.VisualStudio.Component.Unity ^
--add Microsoft.VisualStudio.Workload.ManagedDesktop ^
--add Microsoft.VisualStudio.Workload.Python ^
--add Microsoft.VisualStudio.Workload.Node ^
--includeOptional

3.启动Http服务

将 D:\localVSlayout设置为Http服务的根目录。

以python为例启动Http服务。

python 复制代码
cd /d D:\localVSlayout
python -m http.server 8001

4.执行离线安装

设置以下脚本LayoutUri和BootstrapperName参数,然后在powershell中执行以下脚本进行安装即可。

bash 复制代码
#Do the initial installation from the web hosted layout onto the client in an elevated PowerShell script

    #ADMIN CONFIGURATION
    #Enter layout URI here.上边启动的http服务地址
    $LayoutUri = "http://localhost:8001"

    #Enter bootstrapper name which is present in layout.根据自己的版本修改
    $BootstrapperName = "vs_Community.exe"

    #Add any arguments which you intend to send to bootstrapper.
    $Arguments = "--passive --wait"

    #SCRIPT FUNCTIONALITY
    #Forming URI for bootstrapper
    Write-Verbose "LayoutUri: $LayoutUri"
    $BootstrapperUri = "$LayoutUri/$BootstrapperName"
    Write-Verbose "BootstrapperUri: $BootstrapperUri"

    $Arguments += " --layoutUri $LayoutUri"
    Write-Verbose "Arguments: $Arguments"

    #Creating temp folder and download bootstrapper
    $VSLayoutFolderPath = Join-Path -Path $env:TEMP -ChildPath VSLayout
    $BootstrapperFile = Join-Path -Path $VSLayoutFolderPath -ChildPath $BootstrapperName
    Write-Verbose "The bootstrapper path is: $BootstrapperFile"

    if (Test-Path $VSLayoutFolderPath)
    {
    Write-Verbose "The directory exists - $VSLayoutFolderPath"
    if (Test-Path $BootstrapperFile)
    {
    Write-Verbose "Deleting file - $BootstrapperFile"
    Remove-Item $BootstrapperFile
    }
    }
    else
    {
    Write-Verbose "Creating folder - $VSLayoutFolderPath"
    New-Item -ItemType Directory -Path $VSLayoutFolderPath
    }

    Write-Verbose "Downloading bootstrapper from - $BootstrapperUri to $BootstrapperFile"
    Invoke-WebRequest -Uri $BootstrapperUri -OutFile $BootstrapperFile
    
    Write-Verbose "Starting bootstrapper -$BootstrapperFile with arguments $Arguments"
    start-process $BootstrapperFile $Arguments

注意

本文主要参考微软官方文档,文档很详尽,本文只介绍最基础的离线安装,更多功能还是要认真阅读官方文档。

创建基于网络的安装 - Visual Studio (Windows) | Microsoft Learnhttps://learn.microsoft.com/zh-cn/visualstudio/install/create-a-network-installation-of-visual-studio?view=vs-2022#download-the-visual-studio-bootstrapper-to-create-the-layout

Visual Studio Community 工作负载和组件 ID | Microsoft Learnhttps://learn.microsoft.com/zh-cn/visualstudio/install/workload-component-id-vs-community?view=vs-2022

使用响应文件配置安装默认设置 - Visual Studio (Windows) | Microsoft Learnhttps://learn.microsoft.com/zh-cn/visualstudio/install/automated-installation-with-response-file?view=vs-2022

相关推荐
七月初七淮水竹亭~12 小时前
Pycharm 报错 Environment location directory is not empty 如何解决
ide·python·pycharm
高hongyuan12 小时前
Go语言教程-开发工具-Visual Studio
go·visual studio
green5+119 小时前
yolo11n环境配置+实例运行【wsl+pycharm+conda】
ide·pycharm·conda
Draina20 小时前
在pycharm中运行sagemath脚本的配置过程
ide·python·安全·pycharm·密码学
C++ 老炮儿的技术栈1 天前
Visual Studio 2022 MFC Dialog 添加Toolbar及Tips提示
服务器·c语言·数据库·c++·ide·算法·visual studio
Skrrapper1 天前
【编程史】IDE 是谁发明的?从 punch cards 到 VS Code
c++·ide·vscode
SUNxuetian1 天前
【Android Studio】升级AGP-8.6.1,Find Usage对Method失效的处理方法!
android·ide·gradle·android studio·安卓
AllData公司负责人2 天前
实时开发IDE部署指南
大数据·ide·开源
LIN-JUN-WEI2 天前
[ESP32]VSCODE+ESP-IDF环境搭建及blink例程尝试(win10 win11均配置成功)
c语言·开发语言·ide·vscode·单片机·学习·编辑器
MUTA️2 天前
pycharm中本地Docker添加解释器
ide·python·pycharm