博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VisualStudio Shell简介 — 界面定制
阅读量:5903 次
发布时间:2019-06-19

本文共 1134 字,大约阅读时间需要 3 分钟。

项目组成

首先我们来看一下模板自动生成的工程文件:

    

它包括两个C++工程和两个C#工程,首先我们来看两个C++的工程:

  1. VSShellStub1, 这个是系统的启动项,它是最终的exe文件的项目。
  2. VSShellStub1UI, 从名字上来看,它是对系统的UI进行一些微调的管理。

打开这两个C++工程看就知道,它们的cpp代码非常少,VSShellStub1UI中几乎没有cpp代码,VSShellStub1中也只有几个系统自动生成的cpp文件,几乎不需要手动修改。但是,它有一些配置文件,从而使得我们可以实现对系统组件的定制。

然后再来看看两个C#的工程。

  1. VSShellStub1.AboutBoxPackage, 这个是系统自动生成的一个示例的插件,提供了一个菜单和一个AboutMe的对话框,是插件的主体实现部分,我们可以在工程中增加一个或多个这样的插件。
  2. ShellExtensionsVSIX, 这个工程则是一个类似插件管理器,只有一个xml格式的配置文件,通过它可以配置哪些插件需要加载。

从中我们可以看出,这个Shell框架是一个或多个插件 + 三个配置工程来组成的。

程序基本信息的修改

通过修改后缀为Application.pkgdef的文件可以修改一些程序的基本信息,主要包括标题,图标,启动画面等。

    

组件定制

Visual Studio Shell集中模式默认是附送了许多组件的。(具体可以参看这个链接:)

    

但是,如果我们开发的不是一个GUI界面的编程语言时,往往使用不了这么多组件,这是我们就需要对组件进行定制,对组件的精简大多并不需要写代码,主要是修改配置文件。一般有这几个文件可以修改:

pkgdef文件

这个文件中主要配置了那些文件夹下的组件会被定制下来,通过删除不必要的加载路径可以屏蔽大多数组件。

    

pkgundef文件

有一些核心组件是必须加载的,因此不能通过pkgdef屏蔽,此时可以通过后缀为"pkgundef"的配置文件进行微调。

    

从其命名就可以看出,这个文件中配置的组件都会被屏蔽掉,只需要把相关包的注释放开即可。

ApplicationCommands.vsct文件

这个文件则用于屏蔽系统附送的视图、工具栏、命令等,属于进一步微调性质。

    

使用方式也是一样,放开注释即可。

通过配置文件定制

由于Visual Studio的菜单,工具栏都是可以自定义的,对于一些找不到如何定制的菜单,还可以通过自定义菜单、工具栏的方式进行定制,然后把它放到General.vssettings文件中作为默认配置发布。具体操作方法可以参看这个地址。

不过,这种方式的定制是可逆的,用户可以通过自定义菜单将其还原回来,用于个性化到还是可以。

 

转载地址:http://hwkpx.baihongyu.com/

你可能感兴趣的文章
POJ 1094 Sorting It All Out(拓扑排序)
查看>>
(转)mysql数据库表名批量修改大小写
查看>>
罗盘开放平台设计
查看>>
JAVA注解引发的思考
查看>>
1083 是否存在相等的差 (20 分)
查看>>
[java,2017-12-01] 播放音频文件
查看>>
6大设计原则
查看>>
JavaScript与DOM的关系
查看>>
前后背景色及屏幕大小获取
查看>>
谈谈-TabPagerIndicator
查看>>
DrawerLayout和ActionBarDrawerToggle
查看>>
Unity3D--学习太空射击游戏制作(四)
查看>>
"无法从静态上下文中引用非静态变量,非静态方法"
查看>>
Mybatis中的模糊查询
查看>>
sscanf()分割字符数组
查看>>
Hibernate中使用Criteria查询及注解——( EmpCondition)
查看>>
SQL Server 关系表的创建、索引创建和数据插入
查看>>
美图技术博客之地理空间距离计算优化
查看>>
[转载]jquery的extend和fn.extend 区别
查看>>
【】windows phone7 学习笔记11——启动器与选择器
查看>>