我想为视觉工作室制作一个插件......但我不知道从哪里开始。虽然很容易找到 Eclipse 插件开发指南,但我很难找到一个好的 VS 插件开发指南。
我想我在这里想问的是,我从哪里开始?
我想为视觉工作室制作一个插件......但我不知道从哪里开始。虽然很容易找到 Eclipse 插件开发指南,但我很难找到一个好的 VS 插件开发指南。
我想我在这里想问的是,我从哪里开始?
我建议从这里开始:http ://www.mztools.com/resources_vsnet_addins.aspx 对于 VS 插件开发人员来说,这是一组很棒的资源。创建 VS 插件非常简单。一些关键字如果要搜索更多:VS add-in(插件不是很常用),VS 扩展性,VS 自动化。
指向工具、文档等的最佳起点是MSDN 上的 Visual Studio 可扩展性开发中心。
您接下来要做什么实际上取决于您要构建的内容。如果您只想要一个简单的插件(可能是针对Visual Studio 自动化模型运行一些代码的菜单命令:EnvDTE ),您可以做一个插件。(在“新项目”对话框中的“其他项目类型”->“可扩展性”下有内置插件的模板。)
如果您希望您的扩展成为“一等公民”(即像框中的其他扩展一样完整的 API 访问),您应该下载 Visual Studio SDK 并创建一个 VSPackage。
尽管 Visual Studio 仍然(即使在 2010 年)主要是基于 COM 的应用程序,但仍有托管库(例如 Microsoft.VisualStudio.Shell.*)和互操作程序集用于完成多种扩展。
Visual Studio 2010 中的编辑器在托管代码中重新构建,并使用 MEF 作为其可扩展性模型。您还可以在 Visual Studio SDK for 2010 中找到基于 MEF 的编辑器扩展的模板。
这里有一个 codeplex 项目,它展示了如何创建一个 VS 插件,但我发现它非常复杂,并且比通用的“插件入门”指南更详细地介绍了具体的实现......
无论如何-这可能是您的起点:)
从来没有为 Visual Studio 开发过一个插件,但这里是我的想法。
VS 插件在历史上是一场噩梦:所有这些 COM 接口都从各种奇怪的末端伸出,WEIRD_CONSTANTS_IN_GLOBAL_SCOPE 等。如果我要开发一个 VS 插件,我会以 Visual Studio 2010 为目标,正如他们所说,是在这方面真的更好。
此外,如果您的插件与 C#/VB.NET 代码有关,请考虑为 ReSharper 编写插件。