TListViewやTTreeViewでのDrag処理でメモリリークが発生して困ってます。
詳細:
DragKindをdkAutomaticにして、さらにOnDragOverで、Acceptをtrueにしてやる。
これを実行し、ドラッグしたまま、TreeViewやListViewの中と外をいったりきたりさせると、使用メモリ量がみるみる増えていきます。
現象は、WinXpでタスクマネージャ使って確認しました。
同じexeをWin2000で動かすと、現象は起きません。
9x系ではタスクマネージャがないので確認しにくいですが、システムモニタで見る限りでは起こってないみたいです。
Delphiのバージョンは6+update2です。
Delphi6はXpは正式対応じゃないみたいなので、ひょっとしたらDelphi7では直ってるのかも知れませんが、手元に6しかないので確認できません。
どなたか回避策とか知ってたりしたら嬉しいなぁ・・・
Delphi5+winXPでは確認できませんでした。
# Delphi5のDragKindにはdkAutomaticはなく、DragModeにdmAutomaticがあったのでこれで試しました
http://www.yks.ne.jp/~hori/MemCheck.html
にある、memcheckを使えば、たぶん追えるんじゃないですか?
追い切れなくても、メモリリークしているかどうか確認はできます。
あ、DragModeのほうですね。すみません。
Delphi5では起きませんか・・う〜む・・。
MemCheck試してみます。
ツイート | ![]() |