delphi BPL编程 RTTI和getClass 之间的脱节,请高手指点
然后在主程序中,使用getclass(TMYForm);再动态生成一个对象使用之.
新的RTTI编程,不需要注册,直接使用,方式如下
var
LContext: TRttiContext;
LPackage: TRttiPackage;
LClass: TRttiType;
aForm: TForm;
hPack: HMODULE;
begin
hPack := LoadPackage('orpFlow.bpl');
if hPack = 0 then
begin
ShowMessage('载入流程模块失败!');
exit;
end;
for LPackage in LContext.GetPackages() do
begin
if SameText(ExtractFileName(LPackage.Name), 'orpFlow.bpl') then
begin
LClass := LPackage.FindType('utMyMain.TMyForm');
if LClass <> nil then
begin
aForm := GetTypeData(LClass.Handle)^.ClassType.Create as TForm;
aForm.Create(Application);
aForm.Show;
这种方法可以实现基本功能.
问题在于:GetClass返回值是 TPersistentClass ,=class of TPersistent;
RTTI方式的返回值是TClass,=Class of TObject;
两者不一致!!!!!
在一些老的接口中,新的RTTI方式无法接上.
请问高手有什么方法,可以打通这个断崖,从而使得BPL编程更加有灵活性?
相关推荐
Delphi反编译工具详解:从RTTI机制到实操技巧
在逆向工程中,PE文件的可读性很大程度上取决于编译器留下的元数据。Delphi编译器默认生成的RTTI(运行期类型信息)与DFM窗体资源,使得类名、方法名、控件布局等关键信息直接暴露在可执行文件中,让反编译从“猜谜”变为“拼图”。无论是老版本D7的稳定结构,还是新版本11/12的复杂元数据,理解这些机制都是高效分析的前提。从原理出发,结合工具链的选型与实操流程,介绍了IDR、Ghidra等工具在不同场景下的应用,并讨论了加壳、BPL动态库等特殊情况的处理思路。对于安全研究人员、逆向工程师或开发者而言,掌握这
政府科技管理者如何提升科技成果转化项目进场交易的备案效率?.docx
政府科技管理者如何提升科技成果转化项目进场交易的备案效率?
山区道路边坡落石隐患检测数据集VOC+YOLO格式241张1类别.md
【重要提示】本页面仅为资源介绍,不含外部下载地址 亲爱的 CSDN 用户: 感谢你浏览本资源页面,在这里提前向大家说明相关情况,避免后续产生误解。本资源我设置的初衷是 0 积分免费分享文档介绍,希望可以无偿给到有需要的朋友。但 CSDN 平台存在自动调控机制,系统会根据资源下载热度、文件体积、平台规则等因素,自动修改资源所需下载积分,页面显示为 1 积分、2 积分或更高积分都属于平台自动调整结果,并非我手动修改设置,我没有权限自主锁定积分数值。 如果你打开页面后,发现下载所需积分不为 0,请务必谨慎考虑是否下载。一旦你支付积分完成下载,后续遇到资源内容和描述不符、文件损坏等问题,我无法承担对应的积分损失,也没有渠道为你办理积分退还。在此强烈建议,只有页面明确显示 0 积分的时候,再进行下载操作。 同时特别说明:这份资源介绍文案里,没有附带任何外部下载地址。资源本身是通过 CSDN 官方上传通道上传的附件,正常情况下直接点击页面自带的下载按钮即可获取文件。页面找不到外部下载链接属于正常情况,并非资源缺失。 如果因为平台积分显示异常,导致你被扣取积分,积分退款、积分异常相关问题,请直接联系 CSDN 官方客服咨询处理。平台规则由官方制定,我无法干预积分变动,望各位理解。
高空作业栏杆检测数据集VOC+YOLO格式230张3类别.md
【重要提示】本页面仅为资源介绍,不含外部下载地址 亲爱的 CSDN 用户: 感谢你浏览本资源页面,在这里提前向大家说明相关情况,避免后续产生误解。本资源我设置的初衷是 0 积分免费分享文档介绍,希望可以无偿给到有需要的朋友。但 CSDN 平台存在自动调控机制,系统会根据资源下载热度、文件体积、平台规则等因素,自动修改资源所需下载积分,页面显示为 1 积分、2 积分或更高积分都属于平台自动调整结果,并非我手动修改设置,我没有权限自主锁定积分数值。 如果你打开页面后,发现下载所需积分不为 0,请务必谨慎考虑是否下载。一旦你支付积分完成下载,后续遇到资源内容和描述不符、文件损坏等问题,我无法承担对应的积分损失,也没有渠道为你办理积分退还。在此强烈建议,只有页面明确显示 0 积分的时候,再进行下载操作。 同时特别说明:这份资源介绍文案里,没有附带任何外部下载地址。资源本身是通过 CSDN 官方上传通道上传的附件,正常情况下直接点击页面自带的下载按钮即可获取文件。页面找不到外部下载链接属于正常情况,并非资源缺失。 如果因为平台积分显示异常,导致你被扣取积分,积分退款、积分异常相关问题,请直接联系 CSDN 官方客服咨询处理。平台规则由官方制定,我无法干预积分变动,望各位理解。
ti-cgt-c2000-22.6.0.LTS-windows-x64-installer
ti-cgt-c2000-22.6.0.LTS-windows-x64-installer


语言基础/算法/系统设计

