Witam,
mam interfejs obsługi pluginów, w którym przekazuję do DLL panel, na którym chciałbym z poziomu biblioteki DLL tworzyć np. przyciski.
Aplikacja rodzic
function GetNotificationPanel(out NotificationPanel: TPanel): HRESULT; stdcall;
function TfrmMain.GetNotificationPanel(out NotificationPanel: TPanel): HRESULT;
begin
result := S_OK;
NotificationPanel := pnlNotifications;
end;
Biblioteka DLL
var
FNotificationPanel: TPanel;
begin
ap.GetNotificationPanel(FNotificationPanel);
end;
Jeżeli chcę utworzyć np. TButton na panelu FNotificationPanel, to przy przypisywniu Parent, wyrzuca
Cannot assign TFont to TFont
Rozumiem, że Aplikacja rodzic ma własną obsługę VCL i biblioteka DLL swoją więc mogą się ze sobą kłócić, ale pytanie brzmi w jaki sposób rozwiązać ten problem?
Tworzenie bibliotek w paczkach .bpl odpada. Założeniem mają być DLL, które można tworzyć w różnych językach programowania do programu.