eVC中有这样一个bug:当您使用 CWnd 类版本的 GetDC 方法和 ReleaseDC 方法 BUG: 内存泄漏。 如果打了SP4补丁,此问题是否修复?
参看微软的信息:http://support.microsoft.com/kb/819635/zh-cn
SP4也有说明修复了哪些问题,如果你怀疑的话,就直接用API.
是啊,直接用win32 api八。
在ce下使用mfc还是不太好。
想使用mfc的界面可以考虑用wtl来代替。
不要使用 CWnd 类版本 GetDC 方法和 ReleaseDC 方法。 使用 GetDC 函数和 ReleaseDC 函数。
示例代码如下:
HDC hDC;
RECT rect;
::GetClientRect (m_hWnd, &rect);
for (int i = 0; i < 1000; i++)
{
hDC = ::GetDC (m_hWnd);
::DrawText (hDC, L"Testing...", 10, &rect, DT_CENTER);
::ReleaseDC (m_hWnd, hDC);
}
运行此代码,内存泄漏不会发生