Micaps3.2二次开发实例教程-3

第三节        Micaps3.2与SharpDevelop

说到Micaps3.2开发,不得不提到SharpDevelop。

Micaps3.0、3.1的插件架构是Micaps团队核心开发人员自定义的一套架构,虽然实现了插件基本功能,但没有详细的插件文档,非开发团队内部人员学习掌握起来难度较大。从Micaps3.2开始使用SharpDevelop架构,这是一套十分成熟的开源插件框架,网上有大量文档可以参考,很容易找到开发人员交流,二次开发更加容易。

虽然Micaps3.2采用了SharpDevelop架构,但开发人员似乎刻意回避这个情况,不仅开发文档中未提及SharpDevelop,并且将代码中将所有有关SharpDevelop字符都替换掉了,甚至将部分核心类名都改了,二次开发中,你需要尽量发挥想象力,猜测Micaps3.2中的类对应的SharpDevelop类名,以完成所需功能。这给二次开发带来不小难度。这里我整理少量Micaps对SharpDevelop修改的内容。

SharpDevelop库名

Micaps库名

备注

ICSharpCode.SharpDevelop.dll

Micaps.Core.dll

核心插件库

ICSharpCode.Core.WinForms.dll

Micaps.Framework.dll

UI处理部分

ICSharpCode.SharpDevelop.dll

Micaps.dll

核心功能

表1:库名对照表

SharpDevelop关键字

Micaps关键字

备注

Workbench

Workspace

 

Pad

ToolWindow

 

表2: 关键字对照表

SharpDevelop的插件架构依赖一个被称作做插件树的结构实现,插件树以XML文件形式表示。开发人员在开发插件时,需先将插件的各类信息写入一个后缀为.Addin的XML文件。主程序在启动时,会搜索插件目录中所有的插件.Addin文件,并将它插入插件树中。在程序运行中,根据插件树里的信息加载实现插件的功能。

比如我们现在要编写插件为SharpDevelop的工具条增加一个按钮,可以在该插件的.Addin文件中给出该按钮的名称、显示内容、图标、位置以及实现该按钮单击动作功能的类名,然后在插件代码中实现该类,主程序启动后即可找到并根据此按钮的描述信息添加按钮,单击按钮后调用插件代码。当然,这一切都需要有严格的协议,任何一处有问题主程序都无法识别,插件也无法加载运行。

SharpDevelop插件架构功能十分强大,我会在后面的以实例方式进行讲解。但仅靠我的教程是无法完全搞懂的,要深入学习,建议大家学习《C#软件项目开发全程剖析——全面透视SharpDevelop软件的开发内幕》一书。

CodeProject上还有一篇Sharpdevelop开发人员写的:《使用SharpDevelop构建插件应用程序》的文章和源码,很有参考价值:

http://www.codeproject.com/Articles/12587/Building-Applications-with-the-SharpDevelop-Core


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值