用delphi.net写的一个package(文件名Form1.dll),里面封装了几个winform窗体.
一个主程序mainprog.exe通过setup.xml文件动态加载Form1.dll文件,怎么样加载dll将dll里封装的窗体显示出来???高人指点一下.
procedure TWinForm.LoadFromDll(var strDllPath:String ;var strFrmName:String);
var
aPack: Assembly;
aType:System.&Type; frmForm:Form;
begin
aPack:=Assembly.Load(strDllPath);
if Assigned (aPack) then
begin
aType:=aPack.GetType(strFrmName);
if Assigned (aType) then
begin
frmForm:=(Form(aPack.CreateInstance(strFrmName)));//这行出错,是不是哪有问题??????
frmForm.Show;
end
else
MessageBox.Show ('Form class not found');
end
else
MessageBox.Show('Package not found');
end;
一个主程序mainprog.exe通过setup.xml文件动态加载Form1.dll文件,怎么样加载dll将dll里封装的窗体显示出来???高人指点一下.
procedure TWinForm.LoadFromDll(var strDllPath:String ;var strFrmName:String);
var
aPack: Assembly;
aType:System.&Type; frmForm:Form;
begin
aPack:=Assembly.Load(strDllPath);
if Assigned (aPack) then
begin
aType:=aPack.GetType(strFrmName);
if Assigned (aType) then
begin
frmForm:=(Form(aPack.CreateInstance(strFrmName)));//这行出错,是不是哪有问题??????
frmForm.Show;
end
else
MessageBox.Show ('Form class not found');
end
else
MessageBox.Show('Package not found');
end;
frmForm:=(Form(aPack.CreateInstance(strFrmName)));//这行是不是有错啊?????
高手指点一下啊........