Einzelnen Beitrag anzeigen

ngott2

Registriert seit: 26. Aug 2013
81 Beiträge
 
Delphi 10 Seattle Professional
 
#1

Refcount meines Objektes geht zu früh auf 0

  Alt 24. Okt 2018, 09:04
Delphi-Version: 10 Seattle
Hallo,
ich habe eine Funktion, wo ich ein Interface übergebe. Soweit so gut. Bevor ich es als Prameter übergebe habe ich eine Liste von Objekten die von meinem Interface und TInterfaceobject erben. Nun rufe ich meine Funktion auf die das Interface erwartet mit folgenden befehl
 if meineFunktion(meineListe[lindex] as myInterface) then .
Die Funktion läuft ohne Probleme durch. Am Ende der Funktion wird der Refcount, aber auf 0 gesetzt und mein Objekt wird freigeben. Warum wird mein Refcount auf 0 gesetzt, da mein Objekt nocht in meiner TObjectlist hinterlegt ist sollte der Refcount auf 1 bleiben. Wenn ich jetzt meine Liste mit Owned Objects freigebe fliegt es mir um die Ohren weil er versucht die Objekte freizugeben. Hat jemand eine Idee?


Gruß,
ngott2

Geändert von ngott2 (24. Okt 2018 um 09:05 Uhr) Grund: Delphi Version falsch angeben.
  Mit Zitat antworten Zitat