Hallo Guido,
Zitat von
Guido Eisenbeis:
Eine(n) hab ich noch:
Zitat von
IngoD7:
Natürlich immer fein mit Image1.Picture.Icon.ReleaseHandle;
freigeben.
An welcher Stelle des Codes würdest du das aufrufen?
Wann immer ich das aktuell angezeigte Icon (das belegt ja Speicher) nicht mehr anzeigen möchte (und ja daher das
Handle auch nicht mehr benötige). Das kann also auch sein, wenn ich Icon.Handle ein anderes
Handle (also quasi ein anderes Icon) zuweise. Da würde ich vorher das alte
Handle releasen. So steht's auch in der Online-Hilfe zu Icon.ReleaseHandle.
Zitat von
Guido Eisenbeis:
Ich kann aber das Icon nicht freigeben, solange ich es in Image1 noch benötige. Muss man sich da noch bei Programmende drum kümmern, oder erfolgt dann eine Freigabe automatisch?
Das weiß ich leider nicht. Ich weiß nicht, wie Delphi bzw. ein Delphi-Compilat oder auch Windows selbst bei Programmende mit zuvor durch
API-Funktionen belegten Speicherbereichen umgeht.
Mangels dieses Wissens würde ich es (sicherheitshalber) immer selbst freigeben - wie oben gesagt, wann immer ich dieses Icon nicht mehr brauche. Das kann auch (erst) bei Programmende sein.