Visual Studio 自动化的范围

Visual Studio 2013 中已弃用 Visual Studio 的外接程序。 你应该升级外接程序到 VS 的扩展包。 有关升级的更多信息,请参见 。常见问题:将外接程序转换为 VSPackage 扩展

Visual Studio 提供了二种级别的扩展性:外接程序和向导以及 Visual Studio SDK。

外接程序和向导

外接程序是一些可以为您节省时间和精力的应用程序,您可以在 IDE 中附加并使用它们。 外接程序是 COM 对象,可实现 Extensibility 接口,并通过 EnvDTE 程序集中包含的核心自动化对象模型来与 IDE 通信。 工具栏模型包含在 Microsoft.VisualStudio.CommandBars 中。

Visual Studio 中的各种编程语言通过各自的程序集提供附加的自动化对象。 下表显示了一些项目特定的自动化程序集。

程序集名称

描述

VSLangProj

Visual Basic 和 Visual C# 项目自动化模型。

VSLangProj2

Visual Basic 和 Visual C# 项目自动化模型。

VSLangProj80

Visual Basic 和 Visual C# 项目自动化模型。

VslangProj90

Visual Basic 和 Visual C# 项目自动化模型。

VslangProj100

Visual Basic 和 Visual C# 项目自动化模型。

Microsoft.VisualStudio.VCCodeModel

Visual C++ 代码自动化模型。

Microsoft.VisualStudio.VCProject

Visual C++ 项目自动化模型。

Microsoft.VisualStudio.VCProjectEngine

Visual C++ 项目自动化模型。

Microsoft.VisualStudio.VsWizard

Visual C++ 向导自动化模型。

因为外接程序是已编译的二进制代码,所以您的知识产权是受保护的。 您可以通过任何使用 COM 的语言(如 Visual C++、Visual Basic 和 Visual C#)实现外接程序。

对于许多开发人员而言,例如 ISVs 想要添加整个新特性到 IDE 中,外接程序会适应这些进入 Visual Studio IDE的特性,如同它们是内置的一样。

外接程序还允许您进行以下操作:

  • 将您的工具放置在 IDE 中的菜单或工具栏上。

    这样,您在编程时就可以很容易地访问它。

  • 为**“选项”**对话框创建自定义属性页。

    有关详细信息,请参阅如何:创建自定义选项页

  • 创建与 Visual Studio 工具窗口作用类似的工具窗口。

    有关详细信息,请参阅创建和控制环境窗口

  • 动态启用和禁用菜单和 Visual Studio 命令栏中的命令。

    有关详细信息,请参阅如何:添加和处理命令

  • 向 Visual Studio 中的**“关于”**对话框中添加联系和说明信息。

向导是一些应用程序,可用于逐步引导用户创建程序或完成编程任务。 例如,Visual Studio 提供了外接程序向导,以便帮助用户创建外接程序项目和部署项目。 您可以通过生成一个实现 IDTWizard 接口的项目来创建自己的向导。 通常使用**“新建项目”对话框或“新建文件”**对话框来调用向导。

Visual Studio SDK

外接程序和向导可以满足多数用户的需求。 然而,一些用户的需求可能已超出 Visual Studio 自动化模型的能力范围。 例如,用户可能希望将全新的编辑器或编程语言合并到 Visual Studio IDE 中。 若要完成此任务,可能需要以下元素:

  • 新项目类型

  • 自定义的编辑器

  • 高级调试功能

创建 Visual Studio SDK 的目的是,使您能够按此方式扩展 Visual Studio。 Visual Studio SDK 提供了一些工具和信息,以帮助您将自己的产品集成到 Visual Studio 中。 Visual Studio SDK 是一个开发人员套件和平台。 它通过提供对更多接口的访问,使您能够更细致、更全面地控制 IDE。 通过使用 Visual Studio SDK,您可以为使用您的扩展的用户提供更强大的功能。 请参阅MSDN 网站上的 Visual Studio 扩展性开发人员中心 相关详细信息。 还可以从该网站下载 Visual Studio SDK。

请参见

任务

选择适当的自动化方法

如何:创建外接程序

演练:创建向导

概念

自动化对象模型图表

其他资源

创建外接程序和向导