掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
アイコンハンドルの破棄について (ID:65935)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
http://msdn2.microsoft.com/en-us/library/ms647761.aspx 英語にそのまま書いてある通りぢゃん。超訳してみる < psfi で指す SHFILEINFO 構造体の hIcon メンバに SHGetFileInfo が < icon ハンドルを返す場合、それが不要になった時 DestroyIcon で < 破棄するのはあなたの責任です。 > 前どこかのサイトには破棄しなくてもいいよう事が書いてあったので どこか知らないけど、本家本元の解説のほうを信じるのが筋だろうね つまるところ、こーいう話って良く聞く 「特定条件で malloc() したメモリを free() しなくていいか」論争 int main() { char* p=malloc(1000); return 0; } ここで free せずに終了してるのは是か非か?と同等な話しぢゃないの そのアイコンハンドルをプログラム終了時点までずっと使い続けるか? 単に話はそれだけだと思うのだが。 ・使い続けるなら DestroyIcon せずに終了しても問題ないだろう (むしろ破棄→再取得のコストがかかるのが無駄っぽい) ・使い続けないなら適宜破棄しなきゃならん。リソースリークするから。 LoadImage も LR_SHARED 非指定の時は ・使い終わったら破棄するといい (メモリの節約になる) ・明示破棄しなくてもプログラム終了時点で破棄される とある。ごく普通に malloc/free と同じ挙動をするようだぞ
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.