Visual Studio插件开发,第一步

时间:2009-12-09 09:43:09

标签: visual-studio plugins vsx

我想为visual studio制作一个插件......但我不知道从哪里开始。 虽然很容易找到Eclipse插件开发的指南,但我很难找到VS插件开发的好指南。

我想我在这里要问的是,我从哪里开始?

4 个答案:

答案 0 :(得分:11)

我建议从这里开始:http://www.mztools.com/resources_vsnet_addins.aspx 这是VS加载项开发人员的一组很好的资源。创建VS加载项非常简单。一些关键字,如果你想搜索更多:VS加载项(插件不是很常用),VS可扩展性,VS自动化。

答案 1 :(得分:11)

开始指向工具,文档等的最佳位置......是Visual Studio Extensibility Dev Center on MSDN

您接下来要做的事情取决于您要构建的内容。如果你只想要一个简单的插件(也许是一个针对the Visual Studio Automation model: EnvDTE运行一些代码的菜单命令),你可以做一个Addin。 (其他项目类型下的Addins内置模板 - > New Project对话框中的可扩展性。)

如果您希望您的扩展程序成为“一等公民”(即完整的API访问权限,如框中的其他扩展名),则应下载Visual Studio SDK并创建VSPackage。

虽然Visual Studio仍然(甚至在2010年)基本上是基于COM的应用程序,但是有托管库(例如Microsoft.VisualStudio.Shell。*)和用于完成多种扩展的互操作程序集。

Visual Studio 2010中的编辑器是使用托管代码和uses MEF as its extensibility model重建的。您还可以在Visual Studio SDK for 2010中找到基于MEF的编辑器扩展的模板。

答案 2 :(得分:4)

有一个codeplex项目here,它展示了如何创建一个VS插件,但我发现它非常复杂,而且比特定的实现更详细,而不是通用的“插件入门” '指南......

无论如何 - 它可能是你的起点:)

答案 3 :(得分:3)

从未为Visual Studio开发过单个插件,但这是我的想法。

VS的插件在历史上一直是构建的噩梦:所有这些COM接口都是从各种奇怪的端口伸出来的,WEIRD_CONSTANTS_IN_GLOBAL_SCOPE等等。如果我要开发一个VS插件,我会定位Visual Studio 2010,就像它们一样比如,在这方面确实更好。

此外,如果您的插件与C#/ VB.NET代码有关,请考虑为ReSharper编写插件。