Kommt sofort.
Das Innere des Plugins ist leider etwas komplizierter zu erlären.
Kurzfassung. Es wird eine TList mit den Parameter übergeben und ich bekomme eine TList mit den Ergebnissen zurück.
Code:
DLL:
frame:TFrame1 im Plugin Private definiert.
procedure TPlugin.getFrame(Parameters,Erg: TList);
begin
frame:=TFrame1.Create(nil);
frame.Top:=10;
setV(Erg,frame); // Ergebnisse schreiben
end;
Programm:
frame:TFrame1 in der Form als Private definiert.
procedure TForm1.Button1Click(Sender: TObject);
begin
Plugin_Load(TPlugin,'BASE'); // Laden der Plugins
Plugins.PluginNr[0].CallFunction('getFrame',[]); // Aufruf der Funktion
frame:=TFrame1(Plugins.PluginNr[0].getResultObject(0)); // Objekt holen
frame.Parent:=self;
frame.Top:=0;
frame.Left:=0;
frame.Width:=100;
frame.Height:=100;
frame.Show;
end;