Delphi动态链接库学习

Demo

环境 delphi 6

1、新建DLL 文件,File—New—Other—OK。

代码为:

library ProTestDLL;

{ Important note about DLL memory management: ShareMem must be the   first unit in your library's USES clause AND your project's (select   Project-View Source) USES clause if your DLL exports any procedures or   functions that pass strings as parameters or function results. This   applies to all strings passed to and from your DLL--even those that   are nested in records and classes. ShareMem is the interface unit to   the BORLNDMM.DLL shared memory manager, which must be deployed along   with your DLL. To avoid using BORLNDMM.DLL, pass string information   using PChar or ShortString parameters. }

uses   SysUtils,   Classes,   Dialogs;

{$R *.res}

Procedure  PrintHanYu; begin   ShowMessage('动态连接库文件'); end;

exports   PrintHanYu;

begin

end.

2、调用DLL文件,编译DLL文件,新建窗体文件,键入代码。

unit Unit1;

interface

uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs;

type   TForm1 = class(TForm)     procedure FormCreate(Sender: TObject);   private     { Private declarations }   public     { Public declarations }   end;

var   Form1: TForm1;

implementation

{$R *.dfm}

procedure PrintHanYu;external 'proTestDLL.dll';

procedure TForm1.FormCreate(Sender: TObject); begin   PrintHanYu; end;

end.

注意:DLL文件必须和主项目文件在同一文件夹下

 

posted on 2012-11-30 15:38  为学日损  阅读(205)  评论(0编辑  收藏  举报

导航