Habe folgendes Problem:
Delphi-Quellcode:
unit ServiceStarter;
constructor TServiceStarter.Create(service: TServiceInterface)
begin
while ...
do
// für jeden Thread eine Instanz
begin
service := TServiceInterface.Create;
end;
end;
In einer anderen
Unit passiert dann das Folgende:
Delphi-Quellcode:
srvStarter: TServiceStarter;
service1: TService1; // TService1 ist von TServiceInterface abgeleitet!!
//...
srvStarter := TServiceStarter.Create(service1);
Jeder Service ist von TServiceInterface abgeleitet (natürlich macht jeder Service immer etwas extra dazu ...)
Der ServiceStarter muss mitjedwelchen klar kommen! Aber dazu muss ich die Generalität behalten, also in
der
Unit ServiceStarter mit der BasisKlasse (TServiceInterface) arbeiten. Die Folge ist, dass ich nur den Konstruktor der Basisklasse aufrufen kann ...
dabei bräuchte ich für jeden Service den eigenen Konstruktor aufzurufen.
Ich hoffe, dass ich das ganze richtig beschrieben habe ...
vielleicht könnte jemand mit ein paar Ratschlägen helfen!
Danke