5

我的任务是为 Visual Studio 开发一些扩展供我们内部使用。这些将必须支持几个不同版本的 Visual Studio(VS2008、2010 和 2012 - VS2005 会很好,但不是必需的)。我想以尽可能一致的方式开发这些,尽可能多地重用代码,同时将其适应这些工具的现有项目结构,即 Visual Studio 2012 .sln。

开发这种扩展的最好/最简单的方法是什么?VSPackage 项目?我可以制作一个在 VS2012 中开发的兼容 2008 的 VSPackage 吗?

我目前正在编写的扩展所需的功能非常基本 - 我需要创建工具菜单命令,可能是自定义工具窗口。我的要求可能会在以后发生变化,但目前我不需要编辑器装饰或类似的东西。

我看到这个问题似乎是重复的,但被接受的答案并没有回答这个问题,所以......

4

1 回答 1

3

这实际上取决于您的扩展程序要做什么。

VS2008 不支持扩展(.vsix),您需要为它编写部署为 msi 的 VSPackage。您也将无法访问 VS2010 中引入的许多新功能(更容易的编辑器集成和通过 MEF 访问 vs 服务),但是诸如操作解决方案/项目/文件之类的基本内容应该没问题并且适用于所有版本(例如使用DTE应该可以)。

据我记得,对于 VS2008,您还需要获得 PLK,而 2010 和 2012 不再需要它。

我没有尝试在VS2012中开发2008包,但你绝对可以在2012年开发2010扩展。

还要记住 VS2008 是 .Net 3.5,所以你的代码应该使用 .net 3.5 和它支持可移植的 c# 版本。

于 2012-11-21T17:08:03.397 回答