将 Visual Studio 从布局部署到客户端计算机上
我们期待你的反馈!请花点时间完成此调查,并告诉我们如何改进布局体验。感谢你的支持!
若要将布局部署到客户端计算机,首先需要考虑以下主题:
- 准备布局:确保布局已准备好安装到客户端上。
- 准备客户端计算机:确保客户端计算机已准备好安装 Visual Studio,并且用户具有适当的权限。
- 在客户端计算机上配置全局策略:控制其他 Visual Studio 安装、更新、通知和下载行为。
- 配置初始客户端安装默认值:使用自定义设置初始化客户端的安装。
- 执行常规更新:保持客户端计算机更新且安全。
将 Visual Studio 从布局安装到客户端计算机上
管理员可以将 Visual Studio 布局作为安装脚本的一部分以编程方式部署到客户端工作站上。
从网络布局安装
具有管理员权限的用户可以通过运行以下命令,在无人参与模式下从网络布局安装 Visual Studio。 布局中的 response.json
提供安装的默认配置设置。
\\server\products\VS\vs_enterprise.exe --quiet --wait
如果用户选择了布局中不可用的项目,则安装程序将尝试从 Internet 上的 Microsoft 托管服务器获取这些附加文件。 若要确保安装程序安装产品时不会尝试访问 Internet,请使用 --noweb
开关。 例如,使用此命令运行安装并阻止客户端计算机访问 Internet:
\\server\products\VS\vs_enterprise.exe --noWeb --wait --passive --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --includeOptional
注意
请耐心等待。 请确保 --wait
安装程序和产品都完成相关操作。 从布局安装或更新客户端时,安装程序始终最先安装或更新,然后再安装或更新 Visual Studio 产品本身。 这两个过程都要完成才能视为成功更新。
无人参与的自动批处理文件这一过程中会执行安装或更新时,这时 --wait
选项有助于确保 vs_enterprise.exe
过程在返回退出代码之前等待安装完成。 如果企业管理员希望对已完成的安装执行其他操作(例如,将产品密钥应用于成功的安装),这就非常有用。 使用 --wait
选项可防止后续操作提前开始。 如果不使用 --wait
,则 vs_enterprise.exe
进程可能会在安装的两个部分都完成之前退出,因此将返回不准确的退出代码,该代码不能表示安装操作状态。
从内部 Intranet 位置安装
一些企业希望将布局托管在 Intranet 位置上,以更好地管理地理性能瓶颈并利用 Web 缓存。 若要将 Intranet 托管布局部署到客户端计算机上,具有管理员权限的用户必须运行类似于以下内容的提升的 PowerShell 脚本,以初始化客户端计算机上的安装。
#Do the initial installation from the web hosted layout onto the client in an elevated PowerShell script
#ADMIN CONFIGURATION
#Enter layout URI here
$LayoutUri = "http://MyCompanyIntranetSite/VS2022Enterprise/"
#Enter bootstrapper name which is present in layout.
$BootstrapperName = "vs_Enterprise.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 时与网络相关错误的疑难解答页。
在没有 Internet 访问的客户端上安装
需要确保任何脱机客户端计算机都安装了正确的证书。
从布局进行安装时,客户端的安装程序始终在布局的位置中查找 Visual Studio 包。 但是,如果安装程序尝试安装布局中未包含的组件,则会尝试从更新源获取 Visual Studio 包,管理员通常将其配置为指向自身。
如果要显式阻止 Visual Studio 安装程序尝试从 Web 上的 Microsoft 托管服务器下载任何缺失内容,可以使用 --noWeb
参数。 如果使用 --noWeb
,但布局中缺少要安装的选定组件,那么安装将会失败。 此外,如果使用 --noWeb
并且布局托管在 Intranet Web 服务器上而不是文件网络共享上,则设置将失败。
使用 --noweb
开关通常会修复错误消息“找不到与以下参数匹配的产品”。
计算机资源
请确保完整安装路径少于 80 个字符,并且计算机具有足够的存储空间。 Visual Studio 的完整安装至少需要 45 -50 GB 的磁盘空间。
错误代码
如果使用 --wait
参数,%ERRORLEVEL%
环境变量会设置为下列值之一,具体视操作结果而定:
值 | 结果 |
---|---|
0 | 操作成功完成 |
740 | 需要提升 |
1001 | Visual Studio 安装程序进程正在运行 |
1003 | Visual Studio 正在使用中 |
1602 | 操作已取消 |
1618 | 另一个安装正在运行 |
1641 | 操作已成功完成,并已启动重启 |
3010 | 操作成功完成,但安装需要重启才能使用 |
5003 | 引导程序无法下载安装程序 |
5004 | 操作已取消 |
5005 | 引导程序命令行分析错误 |
5007 | 操作被屏蔽 - 计算机不符合要求 |
8001 | Arm 计算机检查失败 |
8002 | 后台下载预检查失败 |
8003 | 不支持可选择的失败 |
8004 | 目标目录失败 |
8005 | 验证源有效负载失败 |
8006 | Visual Studio 进程正在运行 |
8010 | 操作系统不受支持。 参阅系统要求 |
-1073720687 | 连接失败 |
-1073741510 | Microsoft Visual Studio 安装程序已(通过用户或外部进程)终止 |
其他 (例如: -1、1、1603) |
发生了故障,请查看日志,了解详细信息 |
获取部署布局的支持
如果在客户端计算机上部署布局时遇到问题,请告知我们。 通过报告问题工具(会出现在 Visual Studio 安装程序和 Visual Studio IDE 中)是告知我们的最佳方式。 如果你是 IT 管理员,并且尚未安装 Visual Studio,可以在此处提交 IT 管理员反馈。 使用此工具时,如果你可以通过 VS 收集工具发送日志,这将很有帮助,可帮助我们诊断和解决问题。
对于安装相关问题,我们还提供安装聊天(仅限英语)支持选项 。
我们还提供其他支持选项。 请参阅我们的 Visual Studio 开发者社区。