首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

DrawText内存储器泄露

2013-11-04 
DrawText内存泄露今天在用BCB6写一个滚动字幕的时候,在定时器中使用API的::DrawText,结果运行的时候察看进

DrawText内存泄露
今天在用BCB6写一个滚动字幕的时候,在定时器中使用API的::DrawText,
结果运行的时候察看进程管理器,发现内存按照定时器的间隔定时泄露4K的内存,
我将定时器中的DrawText函数写成最简单的一段代码
void __fastcall TForm1::tmr1Timer(TObject *Sender)
{
    HDC dcPaint = ::GetDC(this->Handle);
    if(::GetClientRect(this->Handle, &recShowBottomText))
    {
        HFONT hfontold = SelectObject(dcPaint, hBottomText);
        ::DrawTextA(dcPaint, "1", 1, &recShowBottomText, DT_LEFT|DT_VCENTER|DT_SINGLELINE);
        SelectObject(dcPaint, hfontold);
    }
    ::ReleaseDC(this->Handle, dcPaint);
}
这段代码是一个FORM上面的定时器的处理函数,请问有没有童鞋碰到过相同的问题
[解决办法]
内存增长不一定代表泄露,你把它最小化一会,再恢复看看,
[解决办法]
DrawText也会内存泄露?持续运行一段时间看什么情况

热点排行