自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一竿残照.金棣@CSDN.NET

脚往哪儿,路往哪儿

  • 博客(11)
  • 收藏
  • 关注

原创 停止更新

本blog停止更新,转入blog.csdn.net/jalphi

2006-03-29 19:32:00 1436 1

原创 bpl插件系统开发(5)

在这样的构想下,我们来做一个demos,我们来定义如下的被IMisDriver驱动的接口,加入现在能想到的简单的应用,我们要作的工作如下定义被驱动的接口 撰写IMisDriver的一个实现,用它来驱动各个接口,IMisDriver通过调用TPluginLoader的获得接口实例. 撰写每个接口的实现,并生成多个bpl 用TPluginLoader来载入这些插件, 主程序,实例化一个TPluginL

2005-12-03 21:56:00 1699 1

原创 bpl插件系统开发(4)

  我们可以想像这样一个系统,与mvc的思想比较相同,controller负责整个系统的调度,当用户执行了某个action后,controller将其处理后用某个特定的view来呈现给用结果.这就是mvc先看看这个图这图是我用Together6.1画的,关心的设计思想,而不是代码本省,而且together本身也不支持pascal语法生成(不知道有没有插件)其中的IMisDriver就是mvc中的T

2005-12-03 21:55:00 1884 1

原创 bpl插件系统开发(3)

  上篇说了一些理论的东西,现在总结一下,我们的程序发布时应该想这样子:主程序   一个完全由接口驱动的程序,它调用各种接口完成软件的功能.(当然并不是绝对的,如果你的某个功能并不需要外部来提供的化)插件s(注意,加了s复数形式)   放在同一目录下,一个完整的插件应该有两个同名文件,一个是含有实现某接口的bpl,一个是描述该插件功能的xml.主程序启动时,将加载所有的插件,在运行过程中调用某个接

2005-12-03 21:38:00 1866

原创 bpl插件系统开发(2)

  插件规范-----------插件必须实现一个接口,该接口通过GetObject,SetObject方法让容器和插件能够交互数据.IPlugin = interface         [{48BF4000-B028-4B57-9955-B1A8305DA394}]         function GetRunResult: TObject; //用于向容器返回执行Execute后的结果

2005-12-03 21:37:00 1773

原创 bpl插件系统开发(1)

  半路出家的delphier一如我,对于win32api式的调用有着近乎厌恶的抵触情绪,我很早以前看c++的教程时看到lptrXXXXX的变量就头大,以至于到现在都不会用c++,都不曾写成功过那怕一个hello world程序,所以对于dll式的导出函数后面加stdcall使用右到左的参数调用方式,总觉得没有delphi的美感.再加上看到了许多bpl可以导出类,而dll很麻烦的文章,更是坚定了我

2005-12-03 21:36:00 2265 1

原创 Midas攻略

 用midas已经很久了,昨天看了一些midas的源码,有点心得,下面写一下如何开发一个请求响应模式的midas系统系统的结构    client端的ClientDataset直接连接Server端的Provider,可以构成最简单的Midas系统,但是这种系统的缺点是很明显的,1.需要在Client上注册appserver,就算你发现了可以写注册表,解决这个问题,仍然增加了部署的复杂

2005-02-23 12:35:00 2442 2

原创 在intelliJ idea 中使用Courier New字体,并能正确显示中文

宋体的英文字母太辍了点,改打开idea/jre/lib/font.properties.zh,有下面的部分 dialoginput.plain.0=Courier New,ANSI_CHARSETdialoginput.plain.1=/u5b8b/u4f53,GB2312_CHARSETdialoginput.plain.2=WingDings,SYMBOL_CHARSETdia

2004-11-12 17:28:00 4355 2

原创 序列化FastReport

   原本在开发一个报表插件,因为需要远程传输,因此需要序列化报表,序列化FastReport有两种方式,    1.仅序列化数据,由客户端接受到数据,并呈现报表,这种方式需要在客户端存储报表格式文件xxx.Frf,    2.序列化FastReport的结果集(即,得到数据后可以存成的frp文件),这样frf文件不需要在客户端存在.我倾向于采用这种方式,毕竟客户端越轻越好.    简单打开一个表

2004-06-23 15:23:00 1292

原创 如何将一组数据感知控件进行集体操作

   许多时候你需要把界面中的所有数据感知控件的Readonly都设为true或false,你会怎么做呢? 最早的时候我这样:枚举每个类型,如果有更多,代码将会很多 for i := 0 to ComponentCount - 1 do begin         if Components[i] is TDBMemo then begin             TDBMemo(Componen

2004-06-23 10:16:00 1472 2

原创 一个简单Tracer类,用来为应用写入跟踪

===================类的代码=========================={*******************************************************} {                                                       } {       CodeMachine                

2004-06-11 10:21:00 1719

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除