Zitat von
hoika:
Hallo,
ohne jetzt überhaupt reinzuschauen
Interfaces unter Delphi sind
COM-Interfaces.
Die daranhängendenden Objekte werden "wild" freigegeben,
wenn das Interface seine Gültigkeit verliert.
na super
Zitat von
hoika:
Wird das Interface z.B. als lokale Variable definiert,
wird nach Beenden der Methode auch das Objekt freigegeben.
Da muss man dann Rumtricksen mit _AddRef und Release.
Deine Interfaces müssen die beiden Methoden überschreiben
und dort gar nichts tun, also keine Referenz hochzählen und Runterzählen.
Das Interface muss dann selber wieder freigegeben werden
(auf NIL setzen reicht wohl nicht).
mhm...hab das mal probiert, habe zwar die nil-Pointer-
exception nicht mehr, aber die bei freigeben der
dll bleibt
und wie geb ich das interface dann frei? free gibts ja nicht...
Zitat von
hoika:
Setze mal einen Breakpoint auf den Destructor der Klasse,
dann siehst du, was ich meine.
ehrlich gesagt, ich seh nichts
Gruß Frank