VisualStudio Shell是微软效仿Eclipse推出的一个免费的VisualStudio内核,开发者可以通过在其上挂载插件(和传统的VS插件一样),从而快速开发自己的程序。它是Visual Studio SDK的一个扩充包。

Visual Studio Shell有两种部署形式:

  1. 集成模式(Integrated Mode):开发的插件包融合到标准的Visual Studio环境,成为Visual Studio的一部分。
  2. 独立模式(Isolated Mode):开发的插件包融合进一个独立的Visual Studio框架,可以部署到没有安装Visual Studio的机器中。

Visual Studio Shell推出有一定的年头了(自VS2008起都一直附带了),不过貌似其应用并不多。虽然基于VisualStudio的插件本身并不少,但是基于VisualStudio Shell独立模式的比较强大的例子并不是很多,一个比较给力的实例还是微软自己推出的Python Tools for Visual Studio

个人感觉VS Shell的独立模式还是非常强大的,起码它比AvalonDock之类的停靠框架要成熟完善得多,不过限制也要大得多就是了。

环境搭建

Visual Studio Shell是和Visual Studio的版本相关的,以Visual Studio Shell 2012为例,搭建其开发环境包括如下几个部分:

  1. Visual Studio 2012
  2. Visual Studio 2012 SDK
  3. Visual Studio 2012 Shell

这三样都可以在微软的这个地址集中下载:http://www.microsoft.com/visualstudio/chs/downloads,还是非常方便的。

需要注意的是:Visual Studio 2012 Shell的独立模式是用到了MFC的(集中模式没有测试,不知道)。因此,安装Visual Studio的时候需要把MFC给勾选上,否则编译不过。不过,其开发过程用不到MFC相关知识的,不会MFC也不要紧。

简单的示例

环境搭建好后,我们就可以直接通过Visual Studio Shell的模板创建项目了:

创建完项目后,按Ctrl+F5直接运行,就可以看到看到和Visual Studio 2012基本一致的环境了(我装的是Visual Studio 2013 Preview,截图实际是VS2013 Shell,不过也差不多就是啦):

不过,这个环境是可以按照我们的需求来定制的,下一篇文章中再介绍如何对其进行定制。

VisualStudio Shell简介的更多相关文章

  1. VisualStudio Shell简介 — 集成插件

    Visual Studio Shell只是提供了一个内核,我们还需要在其基础上补充功能,从而实现我们自己的IDE.Visual Studio Shell的插件开发和Visual Studio插件开发是 ...

  2. VisualStudio Shell简介 — 界面定制

    项目组成 首先我们来看一下模板自动生成的工程文件:      它包括两个C++工程和两个C#工程,首先我们来看两个C++的工程: VSShellStub1, 这个是系统的启动项,它是最终的exe文件的 ...

  3. shell 简介

    shell 简介 shell既是一种命令语言,也是一种程序设计语言.作为命令语言,它交互式地解析和执行用户输入的命令:作为程序设计语言,他定义了各种变量和参数,并提供了许多的高级语言才具有的控制结构, ...

  4. shell之路【第一篇】shell简介与入门

    shell简介 1.Shell 诞生于 Unix,Unix的第一个脚本语言,是与 Unix/Linux 交互的工具,单独地学习 Shell 是没有意义的,shell使用的熟练程度反映了用户对Unix/ ...

  5. Microsoft.VisualStudio.Shell.14.0.dll 文件位置

    "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Platform\Shel ...

  6. Shell简介:1分钟理解什么是Shell 脚本语言 解释器 以及编译器和编译语言

    Shell简介:1分钟理解什么是Shell 脚本语言 解释器 以及编译器和编译语言 现在我们使用的操作系统(Windows.Mac OS.Android.iOS 等)都是带图形界面的,简单直观,容易上 ...

  7. Linux Shell系列教程之(一)Shell简介

    本文是Linux Shell系列教程的第(一)篇,更多shell教程请看:Linux Shell系列教程 想要学习linux,shell知识必不可少,今天就给大家来简单介绍下shell的基本知识. S ...

  8. vs2017添加引用提示“找不到 Microsoft.VisualStudio.Shell.Interop.IVsReferenceManager 服务的实例”解决方案

    vs2017添加引用提示“找不到 Microsoft.VisualStudio.Shell.Interop.IVsReferenceManager 服务的实例” 不知道是不是安装时候的问题?解决方法: ...

  9. shell(shell简介)

    1.shell 简介 Shell 是一个 C 语言编写的脚本语言,它是用户与 Linux 的桥梁,用户输入命令交给 Shell 处理,shell是一个命令解释器,是一个工具箱, Shell 将相应的操 ...

随机推荐

  1. NodeJS05

    商品分类模块 分类model const mongoose = require('mongoose') const schema = new mongoose.Schema({ name: { typ ...

  2. PHP基础壹

    <?php //<!--//注释方式-->//<!--//echo 后面跟字符串:-->//<!--print("123");-->//& ...

  3. 设置EntityFramework中decimal类型数据精度问题(EF默认将只会保留到2为精度)

    原文:设置EntityFramework中decimal类型数据精度 EF中默认的decimal数据精度为两位数,当我们数据库设置的精度大于2时,EF将只会保留到2为精度. e.g. .19990将会 ...

  4. SQL Server 重新编译存储过程的方式有三种

    SQL Server 中,强制重新编译存储过程的方式有三种: sp_recompile 系统存储过程强制在下次执行存储过程时对其重新编译.具体方法是:从过程缓存中删除现有计划,强制在下次运行该过程时创 ...

  5. asp.net 存储过程 输出参数 取不到值

    这是MSDN上的明确解释:当您将 Command 对象用于存储过程时,可以将 Command 对象的 CommandType 属性设置为 StoredProcedure.当 CommandType 为 ...

  6. Java常用实体类

    System类 访问系统属性 - 遍历 package org.zln.usefulclass.system; import java.util.Properties; /** * Created b ...

  7. hdu 1426 Sudoku Killer (dfs)

    Sudoku Killer Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  8. POJ 1375 Intervals | 解析几何

    参考了这个博客 #include<cstdio> #include<algorithm> #include<cstring> #include<cmath&g ...

  9. BZOJ1565 [NOI2009]植物大战僵尸 【最大权闭合子图 + tarjan缩点(或拓扑)】

    题目 输入格式 输出格式 仅包含一个整数,表示可以获得的最大能源收入.注意,你也可以选择不进行任何攻击,这样能源收入为0. 输入样例 3 2 10 0 20 0 -10 0 -5 1 0 0 100 ...

  10. BZOJ[Sdoi2014]数表 莫比乌斯反演

    [Sdoi2014]数表 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 2383  Solved: 1229[Submit][Status][Disc ...