应用使用 Microsoft Endpoint Manager 的管理员更新(SCCM 或 Intune)

本文档介绍 Visual Studio 管理员更新的不同类型和特征。 在本文中,你将了解如何以及何时应在整个组织中分发这些选项、可用的配置选项以及如何查看报表和故障排除。

先决条件

有关使用管理员更新的先决条件的详细信息,请参阅 启用管理员更新

请记住,管理员更新是更新,而不是初始安装。 他们假定已在计算机上安装 Visual Studio。 换句话说,应用管理员更新不会启动全新的安装。

了解 Visual Studio 管理员更新

发布到Microsoft更新系统的 Visual Studio 管理员更新包可通过三个分发渠道获得:

  1. Windows Server Update Servers (WSUS) 通道,该通道通常由 Microsoft Endpoint Manager 设备管理解决方案的 SCCM Configuration Manager 部分控制。
  2. 适用于企业的 Windows 更新 Microsoft 更新通道,通常由 Microsoft Endpoint Manager 设备管理解决方案的 Intune 部分控制。 目前,仅向此通道发布安全更新。
  3. Microsoft 更新目录通道,可在其中下载包并使用它更新布局或更新客户端实例

绝大多数客户端计算机都通过 WSUS/SCCM 或适用于企业的 Windows 更新/Microsoft Update/Intune 通道进行更新。 在这两种方案中,Visual Studio 管理员更新将发布到Microsoft更新服务器,然后它被本机 Windows 更新客户端代理检测为可用且适用。

Visual Studio 管理员更新包包含客户端计算机上的 Visual Studio 安装程序需要能够下载和启动更新的信息。 Visual Studio 安装程序从客户端计算机配置为下载更新的任何位置下载实际产品更新二进制文件 - 从 Internet 或从布局中下载。

管理员更新包不包含足够的信息来执行产品的干净安装,也不包含任何实际的产品二进制文件。 Visual Studio 管理员更新是累积更新,这意味着具有更高产品版本号和更高发布日期的任何 Visual Studio 更新都是较旧、较低版本的超集。

注意

默认情况下,客户端计算机的 SYSTEM 帐户将下载并安装 Visual Studio 管理员更新,这意味着 SYSTEM 帐户必须具有计算机的管理权限,并且还必须有权访问 Internet 或网络布局位置才能下载更新的产品位

Visual Studio 管理员更新仅适用于仍在支持的 Visual Studio 服务版本。 有关在特定时间段内仍支持哪些 Visual Studio 服务基线的详细信息,请参阅 Visual Studio 产品生命周期和服务。 所有受支持的 Visual Studio 维护基线都将保持安全。

管理员更新的类型和特征

Visual Studio 有三种类型的管理员更新:

  • 安全更新 适用于所有 Visual Studio 版本(例如企业版、专业版、社区版等),并且它们包含有限的、高度定向和兼容的服务级别更改。 安全更新不会将客户端提升到更高次要版本,它们旨在为已处于特定次要版本的客户端提供安全漏洞修复。 安全更新中至少有一个安全修补程序,但安全修补程序可能或可能不在客户端计算机上安装的组件或工作负荷中。 例如,我们可以修复 .NET 组件中的安全漏洞,我们将更新标记为安全更新,但它实际上不会对仅安装C++组件的客户端计算机产生任何有意义的影响。 安全更新还可能包含其他可靠性修补程序或其他必要的组件更新。 安全更新将发布到前面列出的所有三个分发通道。

  • 功能更新 使 IT 管理员能够将组织中的计算机提升到较新的 Visual Studio 次要版本。 功能更新仅适用于企业中常见的 Visual Studio 版本,例如企业版、专业版和生成工具 SKU。 所有功能更新将仅作为“功能包”发布到 Microsoft 更新目录,可在其中选择性地将其手动导入到 SCCM Configuration Manager。 功能更新具有累积性质,将包含附加的质量改进和之前的安全补丁。

  • 质量更新 也仅适用于企业中常见的 Visual Studio 版本,并且它们包含有限的、高度针对性和兼容的服务级别更改。 质量更新不会将客户端提升到较高的次要版本级别。它们旨在为已处于特定次要版本级别的客户端提供性能和可靠性修补程序或其他必要的组件更新。 质量更新会随着安全更新一起累积,因此只有当安全修补程序已独立发布时,更新才会包含这些修补。 质量更新还将仅作为“更新”发布到 Microsoft 更新目录,可在其中选择性地将其手动导入到 SCCM Configuration Manager

对管理员更新的标题进行解码

每个管理员更新的标题是生成的更新版本。 例如

  • Visual Studio 2019 版本 16.0.0 到 16.9.0 更新 归类为“功能包”的 Visual Studio 2019 版本将应用于在客户端上获得企业许可的 Visual Studio 2019 版本(介于 16.0.0 到 16.9.0 之间),并将客户端版本更新为 16.9.0。
  • Visual Studio 2019 版本从 16.0.0 到 16.11.21 的更新 被归类为“安全更新”,将应用于企业许可使用的客户端上 16.0.0 到 16.11.20 版的 Visual Studio 2019,并将这些客户端版本更新至 16.11.21。
  • Visual Studio 2019 版本 16.11.21 安全更新 将适用于在客户端用于企业授权的 Visual Studio 2019 版本,从 16.0.0 到 16.11.20 版本,并将这些客户端版本更新至 16.11.21。
  • 分类为“安全更新”的 Visual Studio 2022 版本 17.0.3 更新将适用于当前频道或 17.0 LTSC 频道上客户端上的任何 Visual Studio 2022 版本,并将其升级到 17.0.3 版本
  • Visual Studio 2022 版本 17.1.0 更新 被归类为“功能包”,将应用于当前通道中获得企业许可使用的 Visual Studio 2022 客户端版本,并将其更新到 17.1.0 版。
  • 分类为“安全更新”的 Visual Studio 2022 版本 17.2.7 更新将适用于当前频道或 17.2 LTSC 频道客户端上的任何 Visual Studio 2022 版本,并将其升级到 17.2.7 版本
  • Visual Studio 2022 版本 17.3.7 安全更新将适用于当前频道客户端上的任何 Visual Studio 2022 版本,并将其升级到 17.3.7 版本

如果客户端实例大于所应用的管理员更新的版本,则管理员更新将不起作用。

配置客户端计算机以接收管理员更新

配置选项

可以使用一些配置选项来定制 Visual Studio 管理员更新体验,使其兼容并符合组织的部署首选项和要求。

最常见的配置选项如下所示:

  • 适用于企业的 Windows 更新 Microsoft 更新选择加入**

    必须针对适用于企业的 Windows 更新配置 Intune 管理的连接了云的客户端计算机,并选择加入 AllowMUUpdateServicePolicy,以便通过适用于企业的 Windows 更新 Microsoft 更新通道接收 Visual Studio 管理员更新。

  • Visual Studio 管理员更新选择加入

    客户端计算机需要此注册表项才能通过 WSUS 或适用于企业的 Windows 更新 Microsoft 更新通道接收管理员更新。 它是一个全局注册表项,这意味着它适用于该计算机中安装的所有 Visual Studio 实例。

  • 更新的产品位的源位置

    执行更新时,客户端计算机将从 Internet 上的 Microsoft CDN 或管理员准备和维护的网络布局共享中下载更新的产品组件。 在这两种情况下,执行更新的客户端计算机上的帐户(通常是 SYSTEM,但 可以自定义为 USER)必须同时拥有计算机上的管理权限,并且有权访问产品位的源位置。

    • 如果产品来自 Internet,那么运行更新的 SYSTEM 帐户必须至少能够访问 Visual Studio 终结点
    • 如果产品来自网络布局位置,则在成功部署管理员更新之前,必须满足以下条件:
    • 执行更新的帐户必须有权访问网络共享。 例如,如果 SYSTEM 帐户正在执行管理员更新,则需要向网络布局共享授予“域计算机”组权限。
    • 客户端计算机必须在某个时候从该网络布局位置运行引导程序。 理想情况下,原始客户端安装会使用网络布局中的引导程序进行,但也可以在同一网络位置使用更新的引导程序安装更新。 其中任一操作将在客户端计算机上嵌入与该特定布局位置的连接。
    • 必须更新(客户端连接的)网络布局位置,以获取管理员更新要部署的更新的产品位

有关所有受支持的管理员更新操作的详细列表,请参阅 控制管理员更新组策略 文档或 使用命令行参数更新 Visual Studio 文档。

配置管理员更新的方法

配置管理员更新主要有三种方法:通过 策略,通过客户端计算机上的 配置文件,或通过在 SCCM 配置管理器或 Microsoft 终端管理器 中对管理员更新部署包进行修改。

政策

管理员更新查找特定的策略配置,如为企业部署配置策略中所述的 AdministratorUpdatesEnabled。 配置策略需要客户端计算机上的管理员访问权限。

配置文件

某些设置可以在可选配置文件的客户端计算机上保留,其优点是仅设置一次,并使其适用于所有将来的管理员更新。 配置文件方法的行为类似于注册表项,并且作用于整个计算机,这意味着它将适用于客户端计算机上安装的所有 Visual Studio 实例。 配置文件的标准位置为 C:\ProgramData\Microsoft\VisualStudio\updates.config。 但是,如果要使用其他位置来存储文件,可以通过配置 UpdateConfigurationFile 策略并将值设置为配置文件的路径来执行此操作。

配置文件(采用 JSON 格式)支持选项 installerUpdateArgs,该选项是一个由逗号分隔的字符串数组,用于指定可以传入 Visual Studio 安装程序的更多开关。 如果文件的内容包含无效字段或不支持的选项,则更新将失败。 有关详细信息,请参阅 使用命令行参数安装 Visual Studio

下面是一个示例配置文件:

"installerUpdateArgs" : ["--quiet", "--keepWindowsUpdateOn"], 
"checkPendingReboot" :  "true" 

在 SCCM 或 Intune 中手动更新管理员更新包

IT 管理员可在 SCCM 或 Microsoft Endpoint Manager 中手动修改单个管理员更新包的命令行参数。我们通常不建议使用此方法,尽管在技术上是可能的。

验证、错误代码和故障排除

确定是否已更新 Visual Studio

可以使用下列方法之一来验证是否已正确安装管理员更新:

  • 在客户端计算机上,启动 Visual Studio,选择“帮助”>“关于”,验证版本号是否与预期更新标题中的最后一个数字匹配
  • 使用客户端计算机上的 vswhere 工具识别计算机上的各种 Visual Studio 版本。 有关详细信息,请参阅 用于检测和管理 Visual Studio 实例的工具。
  • 每次管理更新尝试都会在客户端计算机的 %temp% 目录中生成多个日志文件,用于捕获更新操作的进度。 按日期对文件夹进行排序,并分别查找开始 dd_updatedriverdd_bootstrapperdd_clientdd_setup 管理更新、引导程序、Visual Studio 安装程序和安装引擎的文件。 验证这些日志文件是否包含 0,指示已成功应用更新。 这些日志文件还可用于验证配置文件是否正在使用。 有关更多详细信息,请参阅 Visual Studio 日志收集工具

错误代码和条件

重要

请记住,安装更新之前,必须关闭 Visual Studio。 如果 Visual Studio 已打开或使用,将取消更新安装。

管理员更新可能会返回以下返回代码:

错误代码 定义
0 已成功安装管理更新。
1001 Visual Studio 安装程序或相关的安装进程正在运行。 更新未被应用。
1002 Visual Studio 安装程序已暂停。 更新未被应用。
1003 Visual Studio 正在使用中,因此已取消更新。 可以使用 --force 标志推翻此条件。
1004 未检测到 Internet。 更新无法联系保存更新文件的 Internet 位置。 更新未被应用。
1005 AdministratorUpdatesEnabled 注册表值设置为 0 或根本未设置。 未应用更新。
1006 AdministratorUpdatesOptOut 注册表值设置为 1。 更新未被应用。 密钥适用于管理员不应更新的客户端计算机。
1007 未安装 Visual Studio 安装程序。
1009 Visual Studio 实例配置为使用布局,但布局缺少执行更新的包。
3010 系统需要重新启动。 更新可能已应用,也可能未应用。 重新启动计算机,然后再次尝试更新。
8006 更新已取消,因为 VS 相关进程正在运行
862968 更新成功,建议重启,但不需要重启。
8007070 更新已取消,因为磁盘上没有足够的空间。
其他 尝试应用更新时出错。 更新未被应用。

有关客户端错误代码的详尽列表,请参阅 使用命令行参数安装 Visual Studio

支持或故障排除

有时,情况可能会出错。 如果 Visual Studio 安装失败,请参阅 排查 Visual Studio 安装和升级问题 以获取分步指南。

下面是更多支持选项:

  • 使用 安装聊天(仅限英语)支持选项来解决与安装相关的问题。
  • 请使用 报告问题 工具,该工具会显示在 Visual Studio 安装程序和 Visual Studio IDE 中,向我们报告产品问题。 如果你是 IT 管理员且未安装 Visual Studio,你可以提交 IT 管理员反馈
  • 建议一项功能、跟踪产品问题,并在 Visual Studio 开发人员社区中查找答案。

可以使用以下方法提供有关 Visual Studio 管理员更新的反馈或报告影响更新的问题:

另请参阅

若要了解详细信息,请浏览以下其他资源: