delphi dll窗体的制作和调用

一.制作dll窗口

1.添加 dll Project

右键ProjectGroup1 -> Add New Project

选择Delphi Projects->ActiveX->ActiveX Library

 

2.添加窗体到 dll Project

右键Project1->Add New->VCL Form

 

3.向新建的窗体添加外部调用代码

1). 添加接口函数声明

在 Interface 区域添加

function Createform():string;stdcall;

2).添加接口函数

在implementation下加入

function Createform(capt:string):string;stdcall;

var Form1: TForm1;

begin

    Form1:=Tform1.Create(application);

    Form1.show;

    Form1.caption:=capt;

end;

3).添加动态链接库声明

右键Project1.dll->View Source

在exports 添加 

Createform name 'Form1';

二.调用dll 窗口

1.声明调用的函数

在调用的窗口代码的implementation下

 

const

gdi32='Project1.dll';

function Createform ():string;stdcall;external gdi32 name 'Form1';

 

2.调用执行

procedure TForm3.Button1Click(Sender: TObject);

begin

Createform();

end;

 

完成窗口创建于调用

 

三.调用dll函数数据传递

创建方法创建窗口相同,只要在函数使用返回值

 

四.动态加载dll

1.在interface 添加声明

GetPlusResult = function (int1,int2:Integer):Integer; stdcall;

 

2.调用dll函数

procedure TForm3.Button1Click(Sender: TObject);

   var Int3: Integer;

      DLLHandle: THandle;

      Func: GetPlusResult;

begin

  try

  @Func := GetProcAddress(DLLHandle, 'GetPlusResult');

  if Assigned(@Func) then

  begin

    Int3 := Func(3,5);

    ShowMessage(IntToStr(Int3));

  end;

 

  finally

      FreeLibrary(DLLHandle);

           end; 

end;   

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值