Einzelnen Beitrag anzeigen

Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.126 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Schon wieder: Warum Interfaces

  Alt 20. Okt 2016, 00:21
Also DLL geht bei mir so:

Delphi-Quellcode:
Procedure SetInterface(Var DLL:IGoogleMapsDLL);
begin
  DLL := TGoogleMaps.Create;
end;

Exports
  SetInterface;
So compiliere ich eine Unit mit dem TMS-Google Maps Komponenten in eine DLL, die ich dann problemlos von D2007 aus nutzen kann.

Und das Fenster wird in der DLL erzeugt:

Delphi-Quellcode:
function MapInit(ParentWnd: hwnd; R: TRect): hWnd; : hwnd;
begin
  FGoogleMapForm := TGoogleMapForm.CreateParented(ParentWnd);
  FGoogleMapForm.Layout.Height := R.Height;
  FGoogleMapForm.Layout.Width := R.Width;
  FGoogleMapForm.Layout.Realign;
  FGoogleMapForm.Init;(Mini,Internet,DIP91,MapStreetLevel);
  SetWindowPos(FGoogleMapForm.Layout.Handle,0,R.Left,R.Top,R.Right-R.Left,R.Bottom-R.Top,0);
  Result := FGoogleMapForm.Layout.Handle; //Frame.Handle;
end;
Fertig... So brauche ich in D2007 weder einen Link zu den TMS Units, noch muss ich wissen was die machen... Auch keine Komponenten installieren.

uvm...

Zum Beispiel linke ich so eine PDF DLL bei der ich die Units nur im XE6/DCU Format habe gegen jede Delphi Version...

Hierzu mache ich/wir "die Tage" noch einen Workshop...

Geändert von Mavarik (20. Okt 2016 um 00:23 Uhr)
  Mit Zitat antworten Zitat