离线安装Visual Studio 2022

发布于:2024-12-21 ⋅ 阅读:(18) ⋅ 点赞:(0)

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:

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服务。

cd /d D:\localVSlayout
python -m http.server 8001

4.执行离线安装

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

#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 Learnicon-default.png?t=O83Ahttps://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 Learnicon-default.png?t=O83Ahttps://learn.microsoft.com/zh-cn/visualstudio/install/workload-component-id-vs-community?view=vs-2022

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