Deutsch
Forum

Muss ich ein Icon von LoadImage/LoadIcon wieder zerstören?

 

Jac
de
Lad
Muss ich ein Icon, dass ich mit den APIs LoadIcon/LoadImage usw. lade eigentlich wieder zerstören (mit DeleteObject)?
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
03.12.2007  
 




Frank
Abbing
Wenn in der API-Beschreibung nichts darüber steht, kannst du davon ausgehen, dass es nicht nötig ist.
 
03.12.2007  
 




Jac
de
Lad
Habs mal nachgeschlagen:


When you are finished using a bitmap, cursor, or icon you loaded without specifying the LR_SHARED flag, you can release its associated memory by calling one of the functions in the following table.

Resource Release function
Bitmap DeleteObject
Cursor DestroyCursor
Icon DestroyIcon

The system automatically deletes these resources when the process that created them terminates, however, calling the appropriate function saves memory and decreases the size of the processs working set.


Also habe ich bis jetzt immer Speicher sinnlos belegt und nicht freigegeben...schlecht!
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
03.12.2007  
 




Frank
Abbing
Mach dir keinen Kopf. Windows ab XP gibt Speicher für Programme automatisch frei, falls es das Prog nicht schon getan hat.
 
03.12.2007  
 



Da hat Frank sicher recht, ich aber auch meine das es unabhängig vom OS zum guten Stil gehört wenn man genutzte Objekte auch wieder freigibt.
 
03.12.2007  
 




Jac
de
Lad
Ja, eben, deswegen die Frage. Also muss ich eine Tonne Handles speichern...
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
04.12.2007  
 




Jörg
Sellmeyer
Mit den neuen Arraymöglichkeiten ist das ja kein Thema mehr
KompilierenMarkierenSeparieren
Declare hIcon&[]

WhileLoop 0,Rnd(1000)

    hIcon&[&Loop] = Create(hIcon,....)

Wend

WhileLoop 0,SizeOf(hIcon&[]) -1

    DeleteObject hIcon&[&Loop]

Wend

 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
04.12.2007  
 



Richtig, eine Tonne Handles speichern!

Ich erzeuge hierfür oft eine Funktion Trashcan[pseudo]klasse, als Param das Handle und gibt es auch per Return wieder zurück, dadurch geht folgendes:
KompilierenMarkierenSeparieren
 
04.12.2007  
 




Jac
de
Lad
Cool, danke. Die Array-Variante gefällt mir besonders gut.
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
04.12.2007  
 




Dieter
Zornow
Ich bezweifle ernsthaft, dass man die APIs LoadIcon/LoadImage wieder freigeben muss, wenn etwas wieder freigegeben werden muss, dann steht es wie Frank schon schrieb direkt bei der Beschreibung der API dabei und bei den beiden steht es nicht dabei.
@Jac, wo hast du denn den Text herausgenommen.

Gruss aus Bangkok

Dieter
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
04.12.2007  
 




Jac
de
Lad
Aus der MSDN-Library.
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
04.12.2007  
 



Hm LoadIcon wurde von Loadimage abgelöst - könnte man also davon ausgehen das LoadIcon intern auch Loadimage benutzt.

Zu Loadimage steht in MSDN u.A. folgendes: [...] 

MSDN
Remarks

When you are finished using a bitmap, cursor, or icon you loaded without specifying the LR_SHARED flag, you can release its associated memory by calling one of the functions in the following table.


Ist also nur die Frage ob Roland LR_SHARED gesetzt hat. (ich vermute er hat es nicht gesetzt, sei denn, er hat es unabsichtlich nicht entfernt)

Für den Fall gilt also: bitte natürlich deleteobject anwenden!
 
04.12.2007  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

5.050 Betrachtungen

Unbenanntvor 0 min.
Rainer Hoefs02.05.2023
Jörg Sellmeyer24.06.2018
Uwe Lang03.09.2012
Rolf Koch16.01.2011

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie