Entwickler-Ecke

Sonstiges (Delphi) - Klasse in DLL erstellen, wie freigeben?


Kroko - Fr 12.10.07 12:58
Titel: Klasse in DLL erstellen, wie freigeben?
Ich habe in einer DLL eine Klasse erstellt, greife auf diese zu, klappt alles 1a.
Nun mein Problem, ich möchte ja keine Speicherlöcher erzeugen, also wie gebe ich die Klasse optimal wieder frei?
(a) vom Programm aus per Klasse.Free
(b) in der DLL mit einer eigene Klassefree-Prozedure
(c) oder wie?

PS: Meine DLL-Erfahrungen beschränken sich auf die letzen zwei Tage!

Danke!


Delete - Fr 12.10.07 13:06

Klassen in DLLs? Das ist eigentlich keine gute Idee, da du zwei Speichermanager hast, einen in deiner Anwendung und einen in der DLL. Dies Problem kann man zwar mit der ShareMem.dll von Borland, die man dann mit ausliefern muss umgehen, ist aber nicht sehr schön. Oder man nimmt Borland spezifische DLLs nämlich BPLs.

Du müsstes uns mal sagen, wie die es gelöst hast. Aber aus dem Bauch heraus würde ich sagen, dort wieder freigeben, wo sie erzeugt wurde.


Kroko - Fr 12.10.07 13:08

Ich verwende ShareMem!