科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件通过包技术扩展Visual Studio 2005

通过包技术扩展Visual Studio 2005

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

在本文中,我们将讨论微软基于包技术扩展其IDE的方式;最后,你将详细学习使用包来构建一个你自己的简单的定制编辑器的过程。

作者:朱先忠编译 来源:天极开发 2007年11月3日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
 三、 包模板中的文件

  当从“VS Integration Package”中创建一个包工程时,包创建向导将自动地把若干新文件添加到你的工程;如果你创建一个插件的话,添加的文件还要多。大多数这些文件包含一些在代码中加了注释的文档或背景信息。下面是你的工程可能包括的一个文件列表。注意,其中一些文件特定于某些类型的包。

文件名 文件菜单 工具窗口 定制编辑器 描述
Properties/AssemblyInfo.cs X X X 属性,例如标题、描述、版权和版本
CtcComponents/Guids.h X X   唯一命令标识符列表
CtcComponents/PkgCmdID.h X X   用于定义命令条的命令ID
CtcComponents/Resource.h X X   资源ID
CtcComponents/VsPackage1.ctc X X   实际布局和命令类型
Resources/Images_24bit.bmp  X   真彩色工具图标集,其中一种颜色用于透明度表示
Resources/Images_32bit.bmp X X   真彩色工具图标集,含有一个8位的alpha通道
Resources/Package.ico X X X “Help->About”对话框的示例图标
 
Resources/File.ico X     示例文件图标
EditorFactory.cs X     相应于“editor factory”的起始代码
EditorPane.cs X     所有你需要定制一个编辑器格子的起始代码
Guids.cs X X X 一个你的GUID列表,例如相应于包和命令集(必须匹配Guids.h)
Key.snk X X X 签名程序集的密钥文件
MyEditor.cs(名字可能有所不同) X     实际的Rich Text Box,用作你的编辑器;在EditorPane.cs中实例化
MyControl.cs X     MyToolWindow的UI
MyToolWindow.cs X     你的工具窗口的起始代码;一个ToolWindowPane的子类
PkgCmdID.cs X X   你的命令ID列表(必须匹配PkgCmdID.h)
VsPkg.cs X X X 实现你的包的核心代码

  四、一个详细的定制编辑器和命令的例子

  在这个例子中,我们不是把新功能添加到现有IDE,而是创建一个新的编辑器。所以,你实质上是在重建一个IDE的核心方面。

  那么,为什么要创建编辑器呢?当你想提供一个开发者可以在其中管理新文件类型或是全新语言的定制工作空间时,你可以构建一个编辑器。为了说明你能够完成的各种任务,我们可以把编辑器划分为四个类型:

  标准的基于文件的编辑器—一个通用编辑器,提供简单的文本编辑功能,并且包括基本功能,如删除和插入。

  Visual Studio核心编辑器—与IDE使用的一样的编辑器;你可以在其中使用某种Visual Studio工程类型。

  定制编辑器—它与你创建的一个定制工程类型一起工作,包括构建到你的工程中的任何独有特征。

  外部编辑器—一个独立的编辑应用程序,如记事本,你可以从你的包中进行调用。

  上面的可扩展性SDK发行中含有一个独立的帮助文件,其中包括一些优秀的创建各种编辑器教程。作为入门,下列步骤将向你介绍使用菜单命令创建一个定制编辑器的过程。其实,你有太多的自由工具可以使用,但篇幅所限,在此恕不详及。
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章