Delphi exe动态调用加载bpl 报地址错误的解决方法
2016-04-12 14:47
726 查看
加载bpl:
ModuleInstance1: HMODULE;
ModuleInstance1 := LoadPackage('TestA.bpl');
显示窗口:
var
frm: TCustomForm;
begin
frm := CreateFormByClassName('TTestForm');
try
frm.ShowModal;
finally
frm.Release;
end;
end;
function CreateFormByClassName(const ClassName: string): TCustomForm;
var
AClass: TPersistentClass;
begin
AClass := GetClass(ClassName);
If AClass = nil then
exit;
Result := TComponentClass(AClass).Create(Application) as TCustomForm;
// 或Result:=TCustomForm(TComponentClass(AClass).Create(Application));
end;
------------------------------------------------------------------------------------------------------------------------
问题出现在取值AClass时总提示为nill,
原因可能为:主程序exe没有勾选 build with run package
ModuleInstance1: HMODULE;
ModuleInstance1 := LoadPackage('TestA.bpl');
显示窗口:
var
frm: TCustomForm;
begin
frm := CreateFormByClassName('TTestForm');
try
frm.ShowModal;
finally
frm.Release;
end;
end;
function CreateFormByClassName(const ClassName: string): TCustomForm;
var
AClass: TPersistentClass;
begin
AClass := GetClass(ClassName);
If AClass = nil then
exit;
Result := TComponentClass(AClass).Create(Application) as TCustomForm;
// 或Result:=TCustomForm(TComponentClass(AClass).Create(Application));
end;
------------------------------------------------------------------------------------------------------------------------
问题出现在取值AClass时总提示为nill,
原因可能为:主程序exe没有勾选 build with run package
相关文章推荐
- delphi bpl插件系统开发(转)
- Delphi指针相关的操作符
- Delphi调用动态库
- Delphi RxRichEdit高级操作
- delphi 怎么把image上的图片粘贴到剪切板上
- delphi 中 image 控件加载bmp、JPG、GIF、PNG等图片的办法
- Delphi 保存写字板程序, 并进行打印
- Delphi中使用GDI+进行绘图(2)
- Delphi中使用GDI+进行绘图(1)
- Delphi/C#之父首次访华:55岁了 每天都写代码
- Delphi Android程序启动过程
- 关于Delphi XE2的FMX的一点点研究之消息篇
- 吐血整理 Delphi系列书籍 118本(全)
- Delphi实现文件关联
- delphi 注册表操作(读取、添加、删除、修改)完全手册
- delphi socket客户端连接服务端时的错误
- 关于Delphi7中日期函数StrtoDate的正确用法 win7报错
- delphi 修改代码补全的快捷键(由Ctrl+Space 改为 Ctrl + alt + Space)
- Delphi 对泛型TList的的改进(TSimpleList)
- Delphi中Frame的使用方法(2)