Monday, August 31, 2015

Delphi XE9 aka 10 Seattle ist raus...

Da die neue Version jetzt draußen ist, kann ich alle Projekt umstellen und neue Versionen in den App-/Play-Store laden... (Nach 1-2 Tests)

Und meinen Vortrag an die neue Version anpassen...

Monday, August 24, 2015

Delphi-Tage

Tja jetzt bin ich gerade dabei meinen Vortrag für die Delphi Tage 2015 vor zu bereiten... Ich habe ja nur eine Stunde Zeit, aber schon Material für 3 Stunden.
Da werde ich wohl noch etwas die Themen kürzen müssen.

Monday, August 10, 2015

Fremdkomponenten unabhängig von der Delphiversion benutzen.

Wer kennt es nicht, die neue Delphi Version kommt raus und die bevorzugten Komponenten sind entweder nicht für die neue Version geeignet oder müssen - weil nur DCU vorhanden - wieder neu gekauft werden.

Natürlich gibt es oft gute Gründe eine neue oder aktualisierte Version zu kaufen, aber wenn ich die neue Features nicht benötige? Warum soll ich dann wieder Geld ausgeben?

Die Lösung heißt: Mach doch einfach eine DLL daraus...

Das einfachste ist - die Funktionen die benötigt werden mit einem Interface wrappen - und dieses dann mit einem Funktionsaufruf auf die DLL initialisieren.

Die DLL sieht dann ganz einfach aus.

library fuerAlleDelphiVersionen;

Type
  TMyLibrary = class(TInterfacedObject,IMyLibrary)
    private
      FMyLibrary : TFremdComponente;
    Public
       Constructor Create;
       Destructor Destroy;override;
      // Meine Funktionen...
  end;

Procedure GetInterface(out TheInterface:IMyLibrary);stdcall;
begin
  TheInterface := TMyLibrary.Create;
end;

Constructor TMyLibrary.Create;
begin
  Inherited;
  FMyLibrary := TFremdComponente.Create;
end;

Destructor TMyLibrary.Destroy;override;
begin
  FMyLibrary.Free;
  Inherited;
end;

Exports
  GetInterface;

begin
end.