为多个版本的 Visual Studio 开发 Visual Studio 插件

2023-12-27

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

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

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

I saw this https://stackoverflow.com/questions/1886747/making-an-extension-for-multiple-versions-of-visual-studio问题可能看起来重复,但被接受的答案没有回答问题,所以......


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

VS2008 不支持扩展名 (.vsix),您需要为其编写部署为 msi 的 VSPackage。您也将无法访问 VS2010 中引入的许多新功能(更轻松的编辑器集成以及通过 MEF 访问 VS 服务),但是诸如操作解决方案/项目/文件之类的基本内容应该没问题并且适用于所有版本(例如使用DTE http://msdn.microsoft.com/en-us/library/envdte.dte.aspx应该可以)。

据我记得对于 VS2008 你还需要获得PLK http://blogs.msdn.com/b/vsxfaq/archive/2008/04/23/how-to-create-a-package-load-key-plk-for-a-vspackage.aspx,2010 年和 2012 年不再需要。

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

另请记住,VS2008 是 .Net 3.5,因此您的代码应使用 .net 3.5 及其支持可移植的 c# 版本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为多个版本的 Visual Studio 开发 Visual Studio 插件 的相关文章

随机推荐

  • 使用nodejs对cassandra表上100,000个用户的记录应用更新查询。连接繁忙问题

    我正在使用 cassandra 3 x 和节点 10 13 0 我的工作记忆中有 100 000 个用户的数据 在给定代码中的地图 sortedRowMap 中 我通过迭代用户使用的地图 有 100 000 条记录 来更新所有记录 但它给我
  • 在字嵌入层中使用来自 fasttext 的 OOV 令牌中的子字信息 (keras/tensorflow)

    我有自己的 Fasttext 模型 并用它训练了带有词嵌入层的 keras 分类模型 但是 我想知道如何利用模型的子词信息来处理 OOV 单词 由于词嵌入层通过索引操作来查找词向量 而 OOV 词没有索引 即使 OOV 标记有索引 我如何为
  • MarkDown 源代码中的正则表达式惰性量词和否定类

    我正在浏览MarkDown http daringfireball net projects markdown John Gruber 用 Perl 编写的代码 有一个名为 Detab将制表符转换为空格 同时保留文本的缩进 有问题的代码行是
  • 无法解析模块“./index”

    过去几天 我的代码中一直收到无法解析模块索引的消息 并找到了临时解决方案 但无法找到永久修复 在过去的几天里 我一直收到此错误 并且当我运行 npm start reset cache 时找到了临时解决方案 但是每当我再次运行 react
  • 在 Google Colaboratory 上安装 faiss

    我尝试按照说明进行操作缪斯计划 https github com facebookresearch MUSE 他们需要 PyTorch 和 Faiss PyTorch 易于安装 但我发现安装有问题Faiss https github com
  • Bulma css 与 select2 jquery 插件

    我尝试实施select2 https select2 github io examples html插件使用Bulma http bulma io documentation elements form css框架 但前端看起来很混乱 我使
  • Gradle 编译依赖项未包含在 Jar 中

    我有一个 jar build plugins jar 其中包含一个 gradle 插件 该插件是在 build gradle 中使用此构建的 apply plugin java dependencies compile gradleApi
  • 服务器端 javascript - 经典 asp

    在客户端 JavaScript 中 this 运算符是窗口对象 经典 asp 服务器端 javascript 中的 this 运算符是什么 在下面的代码中 当在经典 ASP 服务器端运行时 this 引用是什么 test function
  • MySQL 版本与发行版号

    键入 mysql version 在 Linux shell 中执行命令 我得到以下信息 mysql Ver 14 12 Distrib 5 0 77 for redhat linux gnu i686 using readline 5 1
  • ANDROID - 使用 openCV 进行颜色检测 - 如何?

    我的目标是使用 HSV 颜色空间以仅显示黄色对象的方式显示脱粒图像 我使用这个代码 基于 openCV 2 3 1 android 示例给出的代码 protected Bitmap processFrame VideoCapture cap
  • 如何在 Refit 中禁用 urlencoding get-params?

    我使用 Refit 进行 RestAPI 我需要创建相同的查询字符串api item c 14 c 74 在改装界面中我创建了方法 Get item Task
  • Angular 2 Header组件标题根据状态动态变化

    我有一个使用 Angular 2 的设计 其中标题组件 导航栏组件和主体组件加载所有其他组件 如下图所示 Header 导航 其他组件加载的位置 此部分可能嵌套 组件 子组件 所以基本上 在标题组件中 我想显示当前状态 在当前状态的底部 我
  • OSX Lion 上的 SDL 与 g++

    有人知道如何在 OSX Lion 上设置 SDL 简单直接媒体层 以便我可以使用 g 编译我的代码吗 我已阅读该包附带的 自述文件 并将框架文件夹放置在相关目录中 但是 这似乎还不够 谁能帮我 我不想使用Xcode 如果您不使用 XCode
  • 新安装的 WAMP 中有奇怪的字符吗?

    我越来越奇怪的人物在我新安装的本地 WAMP 中 我刚刚从 ftp 在线下载了所有 php 文件 并在本地 mysql 服务器上恢复了备份 仅当文本包含以下内容时才会出现此问题符号或特殊字符 PHP MySQL 排序规则 latin1 sw
  • ThreadJob:无法从 BeginProcessing、... EndProcessing 方法的重写之外调用 WriteObject 和 WriteError?

    我已经安装了 ThreadJob 并且以下代码工作正常 commands r1 Start Sleep Seconds 3 r1 r2 Start Sleep Seconds 3 r2 jobs commands ForEach Objec
  • 为什么我的所有线程都使用 sleep() 进行睡眠?

    我在网上看到了下面一段关于 Linux 线程的代码 但是当我运行它时 所有线程似乎都在睡眠 而不仅仅是主线程 为什么 另外 如果没有 sleep 5 线程创建成功 语句会运行 3 次而不是 2 次 有人可以解释一下这种行为吗 谢谢 编译使用
  • 从解决方案自动生成类图?

    有没有一个免费的工具可以为我们创建类图 我们希望在解决方案上运行它 并让软件为我们生成类和相互关系的完整图表 最好有类似 UML 的图表 我们目前有 VSTS 2008 如果能内置它就太好了 您可以在 Visual Studio 中创建类图
  • Java 读取带有补充 unicode 字符的字符流

    我在使用 Java 读取补充 unicode 字符时遇到问题 我有一个文件可能包含补充集中的字符 任何大于 uFFFF 的字符 当我设置 InputStreamReader 使用 UTF 8 读取文件时 我希望 read 方法为每个补充字符
  • 设计模式:异常/错误处理

    是否有任何资源 网络或书籍 描述异常处理 错误处理设计模式 有很多关于如何编写干净代码的文献 也有很多涉及设计模式的书籍 然而 我从未见过任何设计模式涵盖以下问题 在何处以及如何最好地处理错误 以及如何最好地将低级函数中出现的错误向上传播到
  • 为多个版本的 Visual Studio 开发 Visual Studio 插件

    我的任务是为 Visual Studio 开发一些扩展以供我们内部使用 这些必须支持几个不同版本的 Visual Studio VS2008 2010 和 2012 VS2005 是一个很好的选择 但不是必需的 我希望以尽可能一致的方式开发