知识大全 Dll 中导出类 --Delphi 实战[3]

Posted 函数

篇首语:我活着是为学习,而学习并不是为活着。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Dll 中导出类 --Delphi 实战[3]相关的知识,希望对你有一定的参考价值。

Dll 中导出类 --Delphi 实战[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  当然 在该单元的 Use 列表中应当将 TFrmTest TFrmTest 以及 TFrmTest 所在的单元包含进来 而 TFrmTest 的实现可以象这样 :

TFrmTest = Class(TMyBaseForm)

protected

function GetTitle: PChar; override;

end;

function TFrmTest GetTitle: Pchar;

begin

result := Hello from TFrmTest ;

end;

  末了 别忘了将 GetClassCount 和 GetClassByIndex 加到 Exports 列表中 然后 Build 该 Dll 工程的时候 请将 Project option package  中的 使用运行包 use runtime package 打勾 至于具体的原因后面讲

  至此 Dll 方面的工作告一段落

  第三步 主程序驱动引擎的实现 :

  这一步相对来说容易些 无非是动态加载 Dll 然后调用 GetClassCount 函数 接着调用 GetClassByIndex 关键的代码 :

Var AClass: TMyBaseClass;

AForm: TMyBaseForm;

I iCount: integer;

blResult: Boolean;

begin

   // 略去加载动态库的部分 假定 FPGetClassProc 指向 GetClassCount 函数 FPGetClassByIndexProc 指向 GetClassByIndex 则 :

iCount := FPGetClassProc;

for I := to iCount do

begin

AClass := FPGetClassByIndex(I blResult);

if blResult then

begin

AForm := AClass Create(Application);

AForm Caption := AForm GetTitle;

AForm Show;

end;

end;

// …

end;

  注意一点 和 Dll 相似 创建输出文件的时候 也需要选择使用运行时间包 这是因为 如果不使用运行时间包 将导致相同的类在内存中有多个副本 因而对它们使用 Is 操作符的将返回 False 的结果

cha138/Article/program/Delphi/201311/24859

相关参考

知识大全 Dll 中导出类 --Delphi 实战[2]

Dll中导出类--Delphi实战[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  暂不探讨

知识大全 Delphi学堂之用Delphi制作DLL小结

Delphi学堂之用Delphi制作DLL小结  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!一Dl

知识大全 Delphi 中动态链接库(dll)的建立和使用[2]

Delphi中动态链接库(dll)的建立和使用[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 Delphi 中动态链接库(dll)的建立和使用[1]

Delphi中动态链接库(dll)的建立和使用[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 如何在Delphi中调用.Net编写的DLL中的函数

如何在Delphi中调用.Net编写的DLL中的函数  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 Delphi向Word中导出数据

Delphi向Word中导出数据  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  数据导出到wor

知识大全 设定构建路径实战[3]

基于Eclipse的工具开发:设定构建路径实战[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 骆驼沙漠之舟的什么本领在动物中是出类拔萃的

骆驼沙漠之舟的什么本领在动物中是出类拔萃的骆驼是反刍动物,所以紧接在真胃的前面有三个室,其中最大的一个是瘤胃。由于在解剖上不同于其他普通反刍动物的瘤胃,里面有许多肌肉带,而这些肌肉带可以把瘤胃分隔成几

仪表管线敷设中导压管的最大长度规定有哪些?

(1)气体分析取样管10m。  (2)压力在50Pa以内30m。  (3)其他压力导压管路50m。

仪表管线敷设中导压管的最大长度规定有哪些?

(1)气体分析取样管10m。  (2)压力在50Pa以内30m。  (3)其他压力导压管路50m。