什么是Visual Studioshell(独立shell)的好处?

它是一种预先构build的GUI脚手架吗?
为什么我会希望它,而不是一个WinForms的用户界面,这是快速设置?
它给了我什么,我将不得不花时间写作?
我是否像Visual Studio 2008中获得浮动窗口和对接? 使用它有钱吗?
部署的样子是什么 – 我的应用程序是独立的EXE,还是作为在shell中运行的某种一次性软件包或存档提供的?
Eclipse RCP是一个很好的可比较的,如果是的话,他们如何比较?

Visual Studio Shell使开发人员能够通过构build简化的Visual Studio IDE快速创build和分发自己的自定义工具。

Visual Studio独立的基于shell的应用程序可以完全访问Visual Studio服务,并支持自定义和品牌。 有几种方法可以自定义一个基于shell的应用程序,如下所示:

  • 您可以使用加载项和VSPackages来扩展独立的基于shell的应用程序,就像使用它们扩展Visual Studio本身一样。
  • 要使Visual Studiofunction和菜单命令组可用或不可用,请更新应用程序的用户界面(UI)项目中的.vsct文件。
  • 要从应用程序中删除选项页面或其他Visual Studioshell组件,请更新该应用程序的.pkgundef文件。
  • 要修改外观的其他方面或行为,请更新应用程序的.pkgdef文件。
  • 当应用程序启动时,也可以指定shell的某些方面。 为此,请将调用中的参数更新为appenvstub.dll的“开始”入口点。

Visual Studio Shell可作为Visual Studio SDK的一部分免费提供。 Visual Studio Shell免版税,用于构build和部署应用程序。

您的孤立的shell应用程序可以安装在具有Visual Studio 2008 Shell(隔离模式)可再发行组件包的任何计算机上。

每个要部署的独立的基于Shell的应用程序必须具有有效的Shell加载密钥(SLK)。 SLK与应用程序唯一相关,不能用于加载任何其他应用程序。 您可以在Visual Studio扩展性开发人员中心网站上获得SLK。

获得shell加载密钥(SLK)后,您必须将其添加到您的Shell项目。 按照此过程将SLK添加到通过使用Visual Studio Shell隔离模板创build的项目。

注意:到目前为止所说的一切都已经从各种Microsoft文档页面复制和粘贴。 一个很好的开始可能是演练:一个基本的孤立壳牌应用程序 。

我想提到SQL Server Management Studio 2012在“添加/删除程序”中需要这两个条目:

  1. Microsoft Visual Studio 2010shell(隔离) – ENU
  2. Visual Studio 2010先决条件 – 英语

我知道这一点,因为我卸载了他们,打破了SSMS,并不得不从安装媒体,这两个项目再次出现的修复。

我使用集成的shell来在家里尝试IronPython,而不必安装完整的VisualStudio试用版本。 如果你习惯了这是一个不错的IDE。

综合shell与孤立shell之间似乎有很大的区别。

集成的shell是一个没有安装任何编程语言的IDE。 如果您没有VisualStudio,但想要使用Visual Studio的Python Tools等免费插件,则可以使用集成shell。

在Powerlord的答案中很好地描述了隔离的shell,它似乎是用于编程软件开发者的,因为它允许对用户界面进行品牌和修改。

似乎如果您使用独立的shell程序,您可以以可插入Visual Studio的方式构build产品。 然后,您可以将产品作为独立的VS shell分发),也可以添加到Visual Studio中。 (只是一个猜测)