자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Delphi bpl모듈 load는 되는데,, class를 못찾는거 같아요..
2015.04.08 22:57
procedure TFrm_Main_.Button1Click(Sender: TObject);
var
Module : HMODULE;
tmpclass : TPersistentClass;
bplForm : TForm;
begin
Module := LoadPackage('PkgSample1.bpl');
if Module <>0 then
begin
tmpclass := GetClass('TForm1'); if tmpclass = nil then {여기서 nil을 반환합니다. 분명히 TForm1 이 존재하는데 말이죠..}
Begin
ShowMessage('PkgSample1.bpl에서 "TForm1"를 찾지 못하였습니다.');
exit;
End; bplForm := TFormClass(tmpclass).Create(Self);
bplForm.Show;
end; UnloadPackage(Module);
end;
Delphi bpl모듈 load는 되는데,, class를 못찾는거 같아요..
2015.04.08 22:57
procedure TFrm_Main_.Button1Click(Sender: TObject);
var
Module : HMODULE;
tmpclass : TPersistentClass;
bplForm : TForm;
begin
Module := LoadPackage('PkgSample1.bpl');
if Module <>0 then
begin
tmpclass := GetClass('TForm1');
var
Module : HMODULE;
tmpclass : TPersistentClass;
bplForm : TForm;
begin
Module := LoadPackage('PkgSample1.bpl');
if Module <>0 then
begin
tmpclass := GetClass('TForm1');
if tmpclass = nil then {여기서 nil을 반환합니다. 분명히 TForm1 이 존재하는데 말이죠..}
Begin
ShowMessage('PkgSample1.bpl에서 "TForm1"를 찾지 못하였습니다.');
exit;
End;
Begin
ShowMessage('PkgSample1.bpl에서 "TForm1"를 찾지 못하였습니다.');
exit;
End;
bplForm := TFormClass(tmpclass).Create(Self);
bplForm.Show;
end;
bplForm.Show;
end;
UnloadPackage(Module);
end;
end;
구글에서 "delphi loadpackage getclass"로 검색하니 첫번째 아래 글이 보입니다. 아래 링크가 도움 될 것 같습니다.
http://stackoverflow.com/questions/702246/loadpackage-calls-initialize-but-registerclass-wont-work