离线安装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

相关推荐
小蕾Java1 小时前
PyCharm 软件使用各种问题 ,解决教程
ide·python·pycharm
丶丶dsfsdfdsf3 小时前
Java浪潮之巅从字节码到云原生的演进与思考
visual studio
周杰伦_Jay7 小时前
【Git操作详解】Git进行版本控制与管理,包括分支,提交,合并,标签、远程仓库查看
大数据·ide·git·科技·分类·github
小二·8 小时前
mac下解压jar包
ide·python·pycharm
YoungHong199214 小时前
一行配置解决claude code 2.0版本更新后 vscode 插件需要登录的问题
ide·vscode·编辑器
Blue桃之夭夭14 小时前
git和VScode
ide·git·vscode
shimly1234561 天前
vscode 指定连接其它版本的 linux
ide·vscode·编辑器
Yupureki1 天前
从零开始的C++学习生活 6:string的入门使用
c语言·c++·学习·visual studio
苏苏码不动了1 天前
Android Studio 虚拟机启动失败/没反应,排查原因。提供一种排查方式。
android·ide·android studio
Yield & Allure1 天前
IDEA在plugins里搜不到mybatisx插件的解决方法
java·ide·intellij-idea