本文适用于 Windows 上的 Visual Studio。 对于 Visual Studio for Mac,请参阅 扩展 Visual Studio for Mac 。 有关 Visual Studio Code,请参阅 Visual Studio Code 扩展 API

开发 Visual Studio 扩展需要哪些软件?

除了 Visual Studio 之外,还需要安装 Visual Studio SDK 才能开发 Visual Studio 扩展。 可以在常规安装过程中安装 Visual Studio SDK,也可以稍后安装它。 有关安装 Visual Studio SDK 的详细信息,请参阅 安装 Visual Studio SDK

可以使用 Visual Studio 扩展执行哪些类型的操作?

天空是想象不同的 Visual Studio 扩展时的限制。 当然,大多数扩展与编写代码有关,但这不必是这样。 下面是可以生成的扩展类型的一些示例:

  • 对 Visual Studio 中不包含的语言的支持,并提供语法着色、IntelliSense 和编译器和调试支持。

  • 使用更多模板、代码重构、新对话框或工具窗口扩展核心 IDE 体验的生产力工具。

  • 特定于域的设计器,适用于数据设计或云支持等方案。

    有关扩展的示例,检查 Visual Studio Marketplace 。 许多扩展都是开源的,市场包含指向其 GitHub 存储库的链接。

    可以扩展哪些 Visual Studio 功能?

    从理论上讲,你可以扩展 Visual Studio 的任何部分:菜单、工具栏、命令、窗口、解决方案、项目、编辑器等。

    在实践中,我们发现大多数人想要扩展的功能是命令、菜单和工具栏、窗口、IntelliSense 和项目。 下面是相关部分的链接:

  • 扩展菜单和命令 :将自己的项添加到 Visual Studio 菜单和工具栏。 可以使用它们启动新的 Visual Studio 功能或自己的外部帮助程序应用程序。 还可以为菜单项提供自定义快捷方式。

  • 扩展和自定义工具窗口 :扩展现有工具窗口或创建自己的工具窗口。 例如,可以将新属性添加到 “属性 ”,也可以创建新的工具窗口来添加更多功能。

  • 编辑器和语言服务扩展 :将自己的自定义项添加到为 Visual Studio 语言提供的 IntelliSense,或创建对新编程语言的支持。 可以创建新的语句完成、建议和新的 QuickInfo 工具提示。 使用灯泡,可以添加重构建议和代码修复来支持新的编程语言。

  • 扩展用户设置和选项

  • 扩展属性和属性窗口

  • 扩展 Visual Studio 的其他部分

  • Visual Studio 独立 Shell

    VSSDK 提供哪些项目模板?

    这两种主要类型的扩展是 VSPackage 和 MEF 扩展。 通常,VSPackage 扩展用于使用或扩展命令、工具窗口和项目的扩展。 MEF 扩展用于扩展或自定义 Visual Studio 编辑器。

    对于 Visual C# 和 Visual Basic 扩展,VSSDK 提供了一个空的 VSIX 项目模板,可与创建菜单命令、工具窗口和编辑器扩展的新项模板结合使用。 还可以使用此模板打包项目模板、代码片段和其他项目,以便分发给其他用户。

    对于 C++,VSPackage 向导提供用于添加菜单命令、工具窗口和自定义编辑器的代码。

    独立 Shell 模板用于打包 Visual Studio shell 版本的扩展,你可以将其品牌化并作为自己的分发。 以下文章介绍了如何开始使用每种扩展:

  • 菜单命令: 使用菜单命令创建扩展

  • 工具窗口: 使用工具窗口创建扩展

  • 编辑器扩展: 使用编辑器项模板创建扩展

  • 基本 VSPackage: 使用 VSPackage 创建扩展

  • VSIX 项目模板: VSIX 项目模板入门

    如何实现我的扩展看起来类似于 Visual Studio?

    在 Visual Studio 用户体验指南中 获取有关为扩展设计 UI 的 出色提示。

    在哪里可以找到 VSSDK 代码的示例?

    上一部分列出的每个链接都有分步演练,演示如何实现特定功能。 还可以在 Visual Studio 示例的 GitHub 上查找开源 VSSDK 示例

    如何分发扩展?

    可以在另一台计算机上安装扩展,或者将其作为 .vsix 文件发送给好友,通过双击它进行安装。 可以在 Shipping Visual Studio Extensions 中找到 有关 VSIX 包的详细信息。

    还可以在 Visual Studio Marketplace 上发布扩展,使它对大量 Visual Studio 客户可见。 有关将扩展打包到市场的示例,请参阅 演练:发布 Visual Studio 扩展 。 有关在市场中发布需要执行的操作的详细信息,请参阅 适用于 Visual Studio 的产品和扩展。

  • 扩展 Visual Studio for Mac
  • 扩展 Visual Studio Code
  •