C
cAkk
Unregistered / Unconfirmed
GUEST, unregistred user!
最近写离线阅读器的时候,发现如果使用了ListView的CustomDrawItem,<br>资源总是被耗尽,检查我的程序代码没有发现任何问题,于是用memproof<br>跟踪一下,结果发现问题出在comctrls.pas.<br><br>请大家打开这个文件,查找字符串"don't delete the stock font",<br>你会发现下面一段代码,而memproof正是指出该段代码有资源泄漏:<br><br>FCanvas.Handle := 0; // disconnect from hdc<br><font color=red>// don't delete the stock font</font><br>SelectObject(hdc, CreateFontIndirect(LogFont));<br>Result := Result or CDRF_NEWFONT;<br><br>我不明白上面的红字是什么意思? 为什么borland的工程师特意提醒<br>不要删除该字体资源,而恰恰是该代码有泄漏!<br><br>请明白人给解释一哈.并给出解决办法.<br><br>环境: pwin98+D5 (without updatepack)