查找、安装和管理 Visual Studio 的扩展

本文介绍如何在 Visual Studio 中查找、安装和管理扩展包。 扩展是在 Visual Studio 内运行的代码包,提供了新的或者改进后的功能。 这些扩展可以是控件、示例、模板、工具或其他组件,用于向 Visual Studio 添加功能,例如 Live Share 或者 GitHub Copilot

若要了解如何创建 Visual Studio 扩展,请参阅 Visual Studio SDK。 若要了解如何使用扩展,请参阅 Visual Studio Marketplace 上的单独扩展页。 如需了解如何查找扩展,请参阅 Visual Studio 2022 中我最喜欢的扩展在哪儿?博客文章。

注意

若要详细了解当前处于预览版阶段的新扩展性模型,请参阅使用 VisualStudio.Extensibility 生成更好的扩展(预览版 3)博客文章。

本文介绍如何在 Visual Studio 中查找、安装和管理扩展包。 扩展是在 Visual Studio 内运行的代码包,提供了新的或者改进后的功能。 这些扩展可以是控件、示例、模板、工具或其他组件,用于向 Visual Studio 添加功能,例如 Live Share 或者 GitHub Copilot

若要了解如何创建 Visual Studio 扩展,请参阅 Visual Studio SDK。 若要了解如何使用扩展,请参阅 Visual Studio Marketplace 上的单独扩展页。

使用扩展管理器

在 Visual Studio IDE 中,扩展管理器是用于查找、安装和管理 Visual Studio 扩展的工具。 要打开扩展管理器,请选择扩展>管理扩展。 或者,在搜索框中键入扩展,然后选择管理扩展

Visual Studio 中扩展管理器的屏幕截图。

Visual Studio 中扩展管理器的屏幕截图。

左侧窗格按照 Visual Studio Marketplace(浏览)上提供的扩展、已安装的扩展以及有可用更新的扩展对扩展进行分类。 漫游选项卡列出了你在任何计算机或 Visual Studio 实例上安装的所有 Visual Studio 扩展。 它旨在让你更轻松地找到自己喜欢的扩展程序。

查找并安装扩展

你可以从 Visual Studio Marketplace 或 Visual Studio 中的“扩展管理器”安装扩展。

若要从 Visual Studio 中安装扩展,请执行以下操作:

  1. 选择扩展>管理扩展。 找到要安装的扩展。 (如果知道扩展的名称或部分名称,则可以在搜索框中进行搜索。)

  2. 选择安装

下载完成后,你会在扩展管理器顶部看到一条通知:“你的更改已安排好。 修改将在 Microsoft Visual Studio 关闭时开始。”

扩展管理器中通知的屏幕截图。

下载完成后,你将在“管理扩展”对话框底部看到一条通知:“扩展已计划安装。 Visual Studio 的所有实例都关闭后,系统将安装你的扩展。”

扩展管理器中通知的屏幕截图。

如果尝试安装具有依赖项的扩展,安装程序将确定它们是否已安装。 如果未安装,则“扩展管理器”将列出安装该扩展之前必须先安装的依赖项。

在不使用扩展管理器的情况下进行安装

可在 Visual Studio Marketplace 以外的位置获取已打包在 .vsix 文件中的扩展。 扩展>扩展管理器对话框无法检测到这些文件,但可通过双击该文件,或者选择文件然后按下 Enter 键来安装 .vsix 文件。 如果遇到权限问题,请确保正在以管理员身份运行 Visual Studio。 此后,只需按照说明操作。 当扩展安装完成后,可以使用“扩展管理器”对话框启用、禁用或卸载此扩展。

注意

  • Visual Studio Marketplace 包含基于 .vsix 的扩展和基于 .msi 的扩展。 扩展管理器不能启用或禁用基于 .msi 的扩展。
  • 如果基于 .msi 的扩展包含 extension.vsixmanifest 文件,则该扩展会出现在扩展管理器对话框中。

卸载或禁用扩展

如果要停止使用一个扩展,你可以将其禁用或卸载。 禁用扩展是使扩展保持安装状态,但不加载。 找到扩展,然后选择卸载禁用。 重新启动 Visual Studio 以卸载禁用的扩展。

注意

可以禁用基于 VSIX 的扩展,但不能禁用通过 MSI 安装的扩展。 只能对 MSI 安装的扩展进行卸载。

管理扩展

本部分提供关于管理组织的扩展、自动扩展更新和无响应通知的信息。

每用户扩展和管理扩展

大多数扩展都是每用户扩展,安装在 %LocalAppData%\Microsoft\VisualStudio\<Visual Studio version>\Extensions\ 文件夹中。 有几个扩展是管理扩展,安装在 <Visual Studio installation folder>\Common7\IDE\Extensions\ 文件夹中。

若要针对可能包含错误或恶意代码的扩展保护你的系统,可以限制每用户扩展,以便只在使用正常用户权限运行 Visual Studio 时加载。 这会导致在使用提升的权限运行 Visual Studio 时禁用每用户扩展。

要限制每用户扩展加载:

  1. 打开扩展选项页(工具>选项>环境>扩展)。

  2. 清除以管理员身份运行时加载每用户扩展复选框。

  3. 重新启动 Visual Studio。

自动扩展更新

Visual Studio Marketplace 中有可用的新版本时,将自动更新扩展。 检测到扩展的新版本并已在后台安装。 下次打开 Visual Studio 时,将运行该扩展的新版本。

若要禁用自动更新,可为所有扩展或仅特定扩展禁用该功能。

  • 要对所有扩展禁用自动更新,请选择扩展>管理扩展对话框中的查看设置按钮。 在选项对话框中的环境>扩展下面,清除自动更新扩展

  • 若要为特定扩展禁用自动更新,请清除“扩展管理器”右侧的扩展详细信息窗格中的自动更新此扩展选项。

故障和无响应通知

如果 Visual Studio 怀疑扩展已在之前的会话期间发生故障,将会发出通知。 Visual Studio 发生故障时,会存储异常堆栈。 下一次 Visual Studio 启动时,它会检查堆栈,同时开始处理叶和构建基础映像。 如果 Visual Studio 确定框架所属的模块属于已安装和已启用的扩展,它将显示一条通知。

如果 Visual Studio 怀疑某个扩展导致 UI 无响应,也会发出通知。

看到其中一个通知时,可以忽略它,或者可以执行以下任一操作:

  • 选择禁用此扩展。 Visual Studio 会禁用扩展,并告知是否需要重启系统才能使禁用操作生效。 你可以在扩展>管理扩展对话框中重新启用扩展。

  • 选择不再显示此消息

    • 如果通知与以前会话中的故障有关,则在出现与该扩展相关联的故障时,Visual Studio 将不再显示通知。 当无响应可与该扩展相关联,或对于可与其他扩展相关联的故障或无响应,Visual Studio 仍会显示通知。
    • 如果通知与无响应有关,则当该扩展与无响应相关联时,IDE 将不再显示通知。 Visual Studio 仍会显示与该扩展相关的故障通知,以及其他扩展与故障和无响应相关的通知。
  • 选择“了解详细信息”。

  • 选择通知末尾的 X 按钮可以取消通知。 如果扩展将来与故障或 UI 无响应相关联,则将显示新通知。

注意

UI 无响应通知或故障通知意味着当 UI 无响应或出现故障时,其中一个扩展模块在堆栈上。 但它并不一定意味着扩展导致了此问题。 可能是扩展调用的代码属于 Visual Studio,进而导致 UI 无响应或崩溃。 但是,如果导致 UI 无响应或崩溃的扩展对你不重要,那么通知还是有用的。 在这种情况下,禁用该扩展可避免将来 UI 无响应或发生故障。

示例

安装联机示例时,解决方案存储在两个位置:

  • 工作副本存储在创建项目时指定的位置。

  • 你的计算机上存储一个单独的主控副本。

你可以使用扩展>管理扩展对话框来执行这些与示例相关的任务:

  • 列出已安装示例的主控副本。

  • 禁用或卸载示例的主控副本。

  • 安装示例包,示例包是与技术或功能相关的一系列示例的集合。

  • 安装个别联机示例。

  • 当发布已安装示例的源代码更改时,查看更新通知。

  • 当存在更新通知时,更新已安装示例的主控副本。