Seite 1 von 1

SHGetFileInfo_() und DestroyIcon_()

Verfasst: 30.05.2009 13:54
von HeX0R
Moin,

für ein Projekt arbeite ich mit SHGetFileInfo_(), um die zugeordneten Icons von verschiedenen Files zu bekommen und sie in ein Treegadget einzupflegen.

Das funktioniert auch wunderbar.

Nun habe ich zu Testzwecken auch mal riesige Ordner benutzt und gesehen, dass der Speicherverbrauch rapide ansteigt.

MSDN sagt, ich muß das Icon wieder destroyen, nachdem es nicht mehr benötigt wird.

Also habe ich einfach direkt nach dem Einsetzen ins Treegadget das Icon wieder destroyed.
Das funktioniert auch, der Speicherverbrauch ist wieder in normalen Bahnen angekommen, aber ist das so überhaupt richtig?

Das Icon ist doch eigentlich noch in Gebrauch, oder ist da eine Kopie im Treegadget?

Verfasst: 30.05.2009 14:13
von ts-soft
Das Icon ist nach dem Zuordnen in der Imagelist des TreeView. Dasselbe
gilt für ListIcon usw.

Verfasst: 30.05.2009 14:14
von Fluid Byte
Das TreeGadget hat seine eigene ImageList. Von daher, ja, es gibt eine Kopie.

[edit]
Verdammt seis du ts-soft! :lol:

Verfasst: 30.05.2009 14:24
von HeX0R
Habt Dank :allright: