【问题标题】:Developing multiple Visual Studio 2010 extensions开发多个 Visual Studio 2010 扩展
【发布时间】:2011-09-03 18:26:02
【问题描述】:

我正在使用不同的解决方案开发几个独立的 Visual Studio 扩展。当我打开其中一个并在调试器中启动实验实例时,其他解决方案(未打开)的其他扩展也会被加载。一定有一种方法可以一次只在实验实例中启动一个扩展(尤其是您当前正在开发的那个),对吧?

【问题讨论】:

    标签: visual-studio-2010 vsx visual-studio-extensions


    【解决方案1】:

    您实际上可以通过使用“RootSuffix”参数的不同、任意值(这将在注册表中创建多个单独的基本键)来创建任意数量的实验实例,但我不确定配置是否容易VSSDK 项目(例如 VsPackage 项目)发布到不同的 VS 配置单元。可能只是您在每个项目文件中设置的属性。每个实验实例都是完全独立的。

    因此您可以运行“devenv.exe /RootSuffix MyFirstInstance”和“devenv.exe /RootSuffix MySecondInstance”,每个都将使用单独的用户扩展集。这将导致分别使用注册表项 HKCU\Software\Microsoft\VisualStudio\10.0MyFirstInstance_Config 和 HKCU\Software\Microsoft\VisualStudio\10.0MySecondInstance_Config。

    自 VS2005 以来,他们似乎已经删除了很多有关此功能的文档,但这一切似乎仍然有效。

    【讨论】:

    • 忘了提及 - 您使用用于重置实验配置单元 (CreateExpInstance.exe) 的相同工具创建每个单独的实验实例,但用不同的值替换“RootSuffix”参数。
    • 如果您在包或模板项目文件(包括 Microsoft.VsSDK.Common.targets 的任何文件)中定义了一个名为 VSSDKTargetPlatformRegRootSuffix 的属性,则会在此处发布扩展文件。
    【解决方案2】:

    不是真的。在 VS 中构建并运行扩展项目时,它实际上是部署到 VS 的实验实例中,但在完成调试/运行时并没有卸载。

    最好的办法是使用脚本来重置 VS SDK 提供的实验实例。不幸的是,每次在解决方案之间切换时都必须这样做。

    在开始菜单中查找:

    Microsoft Visual Studio 2010 SDK\Tools\Reset the Microsoft Visual Studio 2010 Experimental instance.lnk

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-05
      • 2011-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多