当前位置: 传客网 > Delphi封装类到DLL

Delphi封装类到DLL

2017-01-06 作者:winner

因为个人需要研究了一下封装类到DLL。把他发表出来

用Delphi封装类到DLL。

 

一个公共单元


 1 unit ITest;
 2
 3 interface
 4
 5 type
   IT = interface
     function GetString:string;
     procedure ShowMsg(p:PChar);
     procedure Msg;
10   end;
11
12 implementation
13
14 end.

 

类单元,这个写在DLL里面的


 1 unit UTest;
 2
 3 interface
 4
 5 uses
   SysUtils,
   Windows,
   ITest;
 9
10 type
11   TTest = class(TInterfacedObject,IT)
12   private
13     i:Integer;
14   protected
15
16   public
17     constructor Create; //override;
18     destructor Destroy; override;
19     function GetString:string;
20     procedure ShowMsg(p:PChar);
21     procedure Msg;
22   published
23
24   end;   
25
26 implementation
27
28 constructor TTest.Create;
29 begin
30   i:=0;
31 end;
32
33 destructor TTest.Destroy;
34 begin
35   inherited;
36 end;
37
38 function TTest.GetString:string;
39 begin
40   Result := 'Test string';
41 end;
42
43 procedure TTest.ShowMsg(p:PChar);
44 begin
45   MessageBox(0,p,'Test',MB_OK);
46 end;
47
48 procedure TTest.Msg;
49 begin
50   Inc(i);
51   MessageBox(0,'Test MessageBox',PChar(IntToStr(i)),MB_OK);
52 end;
53
54 end.


DLL的prj


 1 library Test;
 2
 3 uses
   SysUtils,
   Classes,
   ITest in 'ITest.pas',
   UTest in 'UTest.pas';
 8
 9 {$R *.res}
10
11 function TestCreate:IT; stdcall;
12 begin
13   Result := TTest.Create;
14 end; 
15
16 exports
17   TestCreate; //用此初始化
18
19 begin
20 end.


 

DLL部分就这样了,到EXE部分调用


 1 uses
   ITest;  //引用单元
 3
 4 function TestCreate:IT; stdcall; external 'Test.dll' name 'TestCreate'; //引用DLL函数
 5
 6 //声明作为测试
   private
     AA:IT;
     BB:IT;
10
11 procedure TForm1.FormCreate(Sender: TObject);
12 begin
13   AA:= TestCreate;
14   BB:= TestCreate;
15 end;
16
17 procedure TForm1.Button1Click(Sender: TObject);
18 begin
19   Button1.Caption := AA.GetString;
20 end;
21
22 procedure TForm1.Button2Click(Sender: TObject);
23 begin
24   AA.ShowMsg('123abc');
25 end;
26
27 procedure TForm1.Button3Click(Sender: TObject);
28 begin
29   AA.Msg;
30 end;
31
32 procedure TForm1.Button4Click(Sender: TObject);
33 begin
34   BB.Msg;
35 end;



效果图
 
转载自http://www.cnblogs.com/ruguo/archive/2012/08/26/2657821.html

评论:
封装到DLL里面可以发布你的DLL让别人引用,可以不用公开你的代码。还有在中大型软件中利用接口是很普遍的形式,便于多个程序员合作编写,这样可以使不同功能分开……
 
恐怕你还非得引用 sharemem.pas 才行,不然放别人电脑上会报错。


相关推荐

  • delphi对.net2.0webservice封装问题

    delphi调用WebService一直发生500错误,可是同样的Service用.net调用,xmlspy调用都没有问题。因此估计Delphi对Service的封装有问题。跟踪发现:竟然没有参数传递给Webservice,参数或者是nul

  • iOS封装actionSheet,选择照相或从相册选择图片—有坑

    这是一个所有人都会用到的一个功能,这也是基本所有人都会封装的功能,功能简单,但是这篇文章所要展示的是在封装过程中可能遇到的一个深深的坑。封装第一步:知道这项功能具体是干什么的,有一个具体的目标封装第二步:确立需求关系,你需要传入什么数据才能

  • 中国封装用陶瓷外壳行业市场深度评估及十三五投资价值预测咨询报告

    【报告主要内容】封装用陶瓷外壳,封装用陶瓷外壳行业报告,封装用陶瓷外壳市场,封装用陶瓷外壳投资分析,封装用陶瓷外壳项目投资,封装用陶瓷外壳前景,封装用陶瓷外壳发展,封装用陶瓷外壳销售渠道,封装用陶瓷外壳产能,封装用陶瓷外壳可行性,封装用陶瓷

  • 先进封装技术的广泛应用将改变半导体产业竞争

    我国半导体封装业相比IC设计和制造最接近国际先进水平,先进封装技术的广泛应用将改变半导体产业竞争格局,我国半导体封装业在“天时、地利、人和”有利环境下有望在国际竞争中实现“弯道超车”。  半导体封装地位提升  随着摩尔定律的不断微缩化以及1

  • DELPHI线程封装 就是一个 事件等待过程

    typeTSyncProc=recordSyncRec:PSynchronizeRecord;Signal:THandle;end;PSyncProc=^TSyncProc;varSyncList:TList=nil;ThreadLock:

  • 太阳能庭院灯 二正装封装和覆晶封装优缺点LED封装可以简单分为正装芯片封装与覆晶封装

    光输出更高效率更高:欧司朗光电半导体正使用搭载薄膜技术的高效芯片装备其径向红外LED(IRED)。这一改变将影响采用T1(3mm)和T1¾(5mm)封装及表面贴装径向(SMR)封装、波长为850nm和950nm的发射器的整个产

  • Ghost系统封装

    系统封装主要应用在光盘镜像的制作上面  如果你了解GHOST使用方法那就应该对封装有一定的了解或者说印象。  系统封装,说简单就是把系统制作成镜像的方法刻录到光盘,用在系统安装上面.系统封装,不同于系统的正常安装。最本质的区别在于系统封装是

  • 半导体封装技术的发展趋势

    封装的作用及电子封装工程的地位过去,人们对"封装技术"的理解,仅限于连接、组装等,涉及的范围很窄,且多以一般的生产技术来对待。随着电子信息产业的迅猛发展,"封装技术"也逐步演变为"电子封装工程"。在讨论电子封装:I:程的发展趋势时,需要摆脱

  • 封装系统

    一、前期基础工作:1、准备所需工具软件*一张光盘启动盘,要有GHOST8.0以上.*S&R&S_V9.5.智能系统封装工具*DEPLOY.CAB(在系统安装光盘:\SUPPORT\TOOLS目录下自带)注意:WIN2

  • 系统封装完整教程

     系统封装主要应用在光盘镜像的制作上面:  如果你了解GHOST使用方法那就应该对封装有一定的了解或者说印象。  系统封装,说简单就是把系统制作成镜像的方法刻录到光盘,用在系统安装上面.系统封装,不同于系统的正常安装。最本质的区别在于系统封

  • 《板级封装和制造技术现状》

    高性能、低成本的封装需求驱动着半导体行业开发创新的解决方案。将晶圆级封装转变为大尺寸的板级封装是降低整体成本的一条新途径。到2017年板级封装产业规模将达到1.09亿美元,到2020年将达到4.05亿美元。StatusofPanel-Lev

  • IC封装知识

    一、什么叫封装  封装,就是指把硅片上的电路管脚,用导线接引到外部接头处,以便与其它器件连接。封装形式是指安装半导体集成电路芯片用的外壳。它不仅起着安装、固定、密封、保护芯片及增强电热性能等方面的作用,而且还通过芯片上的接点用导线连接到封装

  • IC封装知识

    一、什么叫封装封装,就是指把硅片上的电路管脚,用导线接引到外部接头处,以便与其它器件连接。封装形式是指安装半导体集成电路芯片用的外壳。它不仅起着安装、固定、密封、保护芯片及增强电热性能等方面的作用,而且还通过芯片上的接点用导线连接到封装外壳

  • MOSFET的封装形式

    封装技术也直接影响到芯片的性能和品质,对同样的芯片以不同形式的封装,也能提高芯片的性能。所以芯片的封装技术是非常重要的。以安装在PCB的方式区分,功率MOSFET的封装形式有插入式(ThroughHole)和表面贴装式(SurfaceMou

  • led硬灯条 二正装封装和覆晶封装优缺点LED封装可以简单分为正装芯片封装与覆晶封装

    #\u4E8C\u6B63\u88C5\u5C01\u88C5\u548C\u8986\u6676\u5C01\u88C5\u4F18\u7F3A\u70B9LED\u5C01\u88C5\u53EF\u4EE5\u7B80\u5355\u

  • 制作封装母盘

    制作封装母盘安装好原版XP系统后,很认真地进行--减肥、清理、优化等工作。整理好后,把它备份成GHO文件,长久保存下来。对嗜好封装的朋友很有用。当你要做封装作业时,二三分钟内就可以把GHO文件还原到桌面来进行重新封装作业的。有了这个GHO文

  • 全手动封装教程+SRS9.80102详细的完整教程

     前言:其实现在无论小兵的Nowprep1.8还是天空的ES3,都算是很智能的封装工具了。封装系统技术经历了几年的折磨才有至今的如此完善,之前已经有不少前辈写过类似的教程,今天我在次写系统封装教程,教程以手动封装系统附加s&r&am

  • ghost封装教程

    封装前首先请确认好你已经准备好了以下封装工具软件(一)“死性不改”智能封装工具S&R&S_V9.6或9.7(9.7需要注意几个问题下面我会详细说明);(二)DllCacheManager备份还原工具用于备份DLL(可以帮你剩

  • 《先进封装产业现状-2015版》

    物联网(IoT)带动半导体产业整合之潮也反映到高度动态的先进封装领域。先进封装需求和市场规模正在不断增长。行业焦点正转向集成和晶圆级封装(WLP),实现功能驱动的技术路线图和成本/性能曲线。StatusoftheAdvancedPackag

  • 封装技术大史记

    封装技术大史记对于CPU,大家已经很熟悉了,相信你可以如数家珍似地说出各款CPU的型号特点。但谈到CPU和其他大规模集成电路的封装,真正熟悉的人便寥寥无几了。所谓封装是指安装半导体集成电路芯片用的外壳,它不仅起着安放、固定、密封、保护芯片和

返回
顶部