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

Posted

篇首语:尺有所短;寸有所长。物有所不足;智有所不明。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Dll 中导出类 --Delphi 实战[2]相关的知识,希望对你有一定的参考价值。

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

  暂不探讨这么一个抽象类提供了多少可供实用的方法和接口 因为我们要讨论的是一种技术上的可行性 假设作者定义此接口的初衷只是希望获得任意多变化的 Title 而具体 GetTitle 的返回值是什么需要靠子类来实现 并且 作者还希望子类的代码放在 Dll 中实现 与主程序分离 这样的方式很有些插件的味道 或许还能实现 Plug&Play 的某些特性 是不是挺吸引人啊?那么 下一不应该怎么做呢?

  首先主程序和 Dll 程序应当将上述声明的单元包含进来 然后 主程序负责实现一个驱动 动态加载 Dll 动态加载类 ; 而 Dll 负责实现子类

  先说 Dll 吧 Dll 应当做什么工作?

  第二步 Dll 中导出子类 :

  我们设计了以下两个导出函数 :

   .  function GetClassCount: integer; stdcall;

  告诉调用者 本 Dll 中共有几个子类 ;

   . function GetClassTypeByIndex(const iIndex: integer;

  var ClassType: MyBaseFormClass): WordBool; stdcall;

  以索引方式获得具体的子类 注意 此处的 ClassType 的类型是 MyBaseFormClass 这表明 它的值将是一个确定的自 TMyBaseForm 继承而来的类

  以下是它们可能的一种实现 :

function GetClassCount: integer;

begin

result := ; // 表明本 Dll 中导出了 个类

end;

function GetClassTypeByIndex(const iIndex: integer;

var ClassType: MyBaseFormClass): WordBool;

begin

result := True;

case iIndex of

: ClassType := TFrmTest ;

: ClassType := TFrmTest ;

: ClassType := TFrmTest ;

else

result := False;

end;

end;

cha138/Article/program/Delphi/201311/24860

相关参考

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

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

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

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

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

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

知识大全 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

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

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

知识大全 dll文件有什么方法可以查看源代码

dll文件有什么方法可以查看源代码?有几个dll文件别人给的,想看看里面代码是具体怎么写的?大神啊!DLL变成高级语言的过程叫反编译(不是反汇编...两者区别很大)....C/C++DLL别想了...

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

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

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

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