![]() |
|
#1
|
|||
|
|||
![]() Проблема в следующем: создание и вызов формы из DLL получается, а вот создание фрейма - нет. Вот как я делаю:
В DLL: Код:
library dllClient; uses SysUtils,Classes, Forms, UnitClient in 'UnitClient.pas';{Frame1: TFrame} {$R *.res} procedure FreeUnitClient(var Frm : TFrame); stdcall; begin FreeAndNil(Frm); end; function MakeUnitClient(AOwner:TComponent) : pointer; register; begin Result := TFrame1.Create(AOwner); end; exports FreeUnitClient, MakeUnitClient; В программе: Код:
procedure TForm1.sFrameBar1Items2CreateFrame(Sender: TObject; var Frame: TCustomFrame); var FrameUnitClient: TFrame; begin //Frame21Bar := TFrame2.Create(nil); //Frame := Frame21Bar; FrameUnitClient:=MakeUnitClient(nil); Frame:=FrameUnitClient; //FreeUnitClient(FrameUnitClient); end; Как правильно вызывать фреймы из DLL? Заккоментированные строки работают 100%, но этот фрейм подключен через uses.Помогите кто чем может, два дня стою на месте. |