Getting Started with the Visual Studio 2008 ShellThe Microsoft Visual Studio 2008 Shell provides a core integrated development environment (IDE) to help you build and ship specialized languages and development tools. You can find the Visual Studio 2008 SDK and the Visual Studio 2008 Shell redistributables at the Visual Studio Extensibility (VSX) Developer Center. For details on other new features in the SDK, visit the VSX team blog. This article covers the features and customization points contained in the Visual Studio Shell, as well as what to download and how to start building your own Shell instance - to see an overview of the Shell and the two modes (the integrated Shell and the isolated Shell), see Visual Studio 2008 Shell. FeaturesThe following table lists the features included in the Visual Studio Shell. The features listed apply to both the Visual Studio Shell (isolated mode) and the Visual Studio Shell (integrated mode).
Visual Studio Shell Customization Points (isolated mode)These primary customization points help you personalize your own Visual Studio Shell (isolated mode) instance:
What to Download to Create a Visual Studio Shell InstanceTo create a Visual Studio Shell instance you will need to Visual Studio 2008 SDK and the Visual Studio 2008 Shell runtime from the Visual Studio Extensibility (VSX) Developer Center. With these two products you’ll be able to begin developing and testing your own Shell instance. The following table summarizes purposes of the different software packages:
How to Extend Visual Studio and the Visual Studio ShellNote: this article assumes the reader has some knowledge of the concepts behind writing extensions to Visual Studio. If you are new to building extensions for Visual Studio please visit http://msdn2.microsoft.com/en-us/vsx/default.aspx to get started. The Visual Studio 2008 Shell documentation contains additional information on building for the Visual Studio Shell. When you create a VSPackage to extend Visual Studio, you can deploy your package into Visual Studio, the Visual Studio Shell (integrated mode) or the Visual Studio Shell (isolated mode). Here is an overview of how to target each scenario: Visual StudioTargeting Visual Studio is no different than using previous releases of the Visual Studio SDK and developing packages. For more information and resources, visit the Visual Studio Extensibility (VSX) Developer Center. Note: Express editions are not extensible; you can only create VSPackages for Visual Studio Standard and above. The Visual Studio Shell (integrated mode)Development and deployment of VSPackages for the Visual Studio Shell (integrated mode) is similar to the Visual Studio scenario. To create the Shell instance, your setup program will need to include the Visual Studio 2008 Shell (integrated mode) Redistributable Package in addition to your VSPackage and any other assets that you may have. The Shell Load key is not needed for deploying the Visual Studio Shell (integrated mode). For more information, see the Visual Studio 2008 Shell (Integrated Mode) Setup and User Guide. The Visual Studio Shell (isolated mode)Creating a VSPackage for the Visual Studio Shell (isolated mode) is a little different than the other two scenarios because you will also need to create your own stub .exe, and VSPackages need to be registered differently. Note that these are the only real differences; there is both source- and binary- level compatibility for VSPackages across Visual Studio and the Visual Studio Shell edit add-ins. When you deploy a VSPackage that targets an isolated Shell instance, you create package definition files (.pkgdef) that contain the registry information that you would normally apply directly to the registry if you were targeting Visual Studio or an integrated Shell instance. If you are using the managed package framework for your extension, you can easily produce such package definition files by using the /pkgdeffile:Myfile.pkgdef switch with the regpkg.exe tool that ships with the Visual Studio SDK. Once you have produced the .pkgdef files, you just need to place them into a special folder along with your package binary, and your instance of the Visual Studio Shell (isolated mode) will automatically detect and install this new package when it is run with the /setup switch. Usually, you will run <yourAppName> /setup as a custom action in your setup program. When you are building on the isolated Shell, you will also need to create your own stub .exe file. This is logically equivalent to devenv.exe for Visual Studio, and it is automatically generated for you when you are choosing to create a Shell instance with the Visual Studio SDK. As part of your setup program, you will also need to install this .exe, in addition to your VSPackage and the redistributable package. For more information, see the help documentation for the Visual Studio 2008 Shell (Isolated Mode). Questions?Post technical questions on the Visual Studio Extensibility Forum. |