BPL插件框架的二种实现】的更多相关文章

1)非RTTI方式适用于所有的DELPHI版本 unit untMain; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, Buttons; type TFrmMain = class(TForm) Panel1: TPanel; SpeedButton1: TSpeedButton; procedure btnClick(Sender: TObj…
这是一个Delphi实现的插件框架,我耗费了相当相当相当多的精力来设计她,虽然仅闪着点我微薄智慧的光芒,但我还是决定用Wisdom来命名她,也因它是我绝无仅有的,在完成1年多后回头来看仍能相当满意的作品,所以我补充了展示她特性的Demo和管理工具,决定将她开源发布给仍在坚持着的Delphi Fans. 我发现,人年龄越大,越害怕复杂的东西,越偏向喜欢清澈简单明了的事物,因此,这个插件框架的设计我是费尽心思地往简单上整,务求扫上几眼几分钟就大概懂了原理,就能上手用起来:务求使用中只需遵守最少的使用…
WisdomPluginFramework是融合OSGI微内核理念 + Eclipse的扩展点概念而精心设计的轻量级插件框架, 由Delphi实现,但可以使用于Delphi.BCB.VC++中,提供非常强大灵活的插件调度能力,让你充分享受插件式编程的乐趣. http://www.cnblogs.com/IceAir/p/3855559.html 框架都特性 1.她是微内核的设计   什么是微内核?就是核心实现小如原子,其它一切皆是插件,通过插件的相互构织构建出大千世界.与此相对应的,那些构建了基…
前言:上篇介绍了下 MVC5 的核心原理,整篇文章比较偏理论,所以相对比较枯燥.今天就来根据上篇的理论一步一步进行实践,通过自己写的一个简易MVC框架逐步理解,相信通过这一篇的实践,你会对MVC有一个更加清晰的认识. 本文原创地址:http://www.cnblogs.com/landeanfen/p/6000978.html MVC源码学习系列文章目录: MVC系列——MVC源码学习:打造自己的MVC框架(一) MVC系列——MVC源码学习:打造自己的MVC框架(二:附源码) MVC系列——M…
JavaScript 高级框架设计 (二) 上一篇,JavaScript高级框架设计(一)我们 实现了对tag标签的选择 下来我们实现对id的选择,即id选择器. 我们将上一篇的get命名为getTag(),然后再编写一个getId(),和getClass() 然后在总的get方法中调用,这样做的好处就是模块化,便于维护. 我所有的代码都会托管到github上. 01.js var getId = function (id, result) { result = result || []; //…
插件式架构,一种全新的.开放性的.高扩展性的架构体系.插件式架构设计近年来非常流行,基于插件的设计好处很多,把扩展功能从框架中剥离出来,降低了框架的复杂度,让框架更容易实现.扩展功能与框架以一种很松的方式耦合,两者在保持接口不变的情况下,可以独立变化和发布.基于插件设计并不神秘,相反它比起一团泥的设计更简单,更容易理解.下面已C# .Net简要介绍一下插件式架构的方法. 定义插件接口,将其编译成dll namespace PluginInterface { public interface IP…
eclipse插件安装的四种方法 Eclipse插件的安装方法 1.在eclipse的主目录(ECLIPSE_HOME, 比如在我的机器上安装的目录是:D:\eclipse)有一个plugins的目录,这种方法的插件安装非常简单,只要将插件copy到这个目录下就可以 了.比如我有一个weblogic的插件(bea站点上可以下载),解压缩之后得到得到一个目录: [com.bea.eclipse.weblogic_1.1.1],我就将这个目录直接放到%ECLIPSE_HOME%\plugins目录下…
CRM里有二种方式实现字段change事件,一种是在form里,一种完全通过js来实现.本文介绍下二者的用途及区别. 1. Form里用法 这种方式估计其实也是添加一个js的function. 这种方式功能最强大,无论是前台还是后台只要这个字段有变化就会触发这里的事件. 2. 纯js Xrm.Page.getAttribute("new_actual_unit_price").addOnChange(function () { calculateExpense("new_ac…
Android的插件化已经是老生常谈的话题了,插件化的好处有很多:解除代码耦合,插件支持热插拔,静默升级,从根本上解决65K属性和方法的bug等等. 下面给大家介绍一下我们正在用的插件化框架.本片主要以类图的方式向大家介绍插件化框架的实现.下图是框架的初始化流程: 框架初始化后,就该启动插件了,下图是插件的启动流程: 这个步骤主要是初始化插件的运行环境,利用宿主的Context改造成插件的Context.接下来是插件启动Activity的流程: 该步骤主要是用宿主的Activity包装插件的Ac…
如何在Exe和BPL插件中实现公共变量共享及窗口溶入技术Demo源码 1.Delphi编译方式介绍: 当我们在开发一个常规应用程序时,Delphi可以让我们用两种方式使用VCL,一种是把VCL中的申明单元及实现单元全部以静态编译的方式编译并链接进Exe可执行文件中,这样做的好处就是发布程序时只需要发布独立的可执行文件,当我们使用了的第三方DLL.OCX等时,无需发布*.bpl等文件,但EXE程序文件的体积会较大. 另外一种是把VCL库以运行时状态(即把VCL库中的申请单元静态编译进EXE可执行文…