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

wince内存泄露?解决办法

2012-02-23 
wince内存泄露?我使用evc开发一个应用程序,使用了timer,当timer里面没有任何人为添加的代码的时候,查看程

wince内存泄露?
我使用evc开发一个应用程序,使用了timer,当timer里面没有任何人为添加的代码的时候,查看程序内存中正在使用的内存,没有变化。当我添加这样两行代码:
CWnd* pWnd = GetDlgItem(IDC_COORD);
CDC* pDC = pWnd->GetDC();
pWnd->ReleaseDC(pDC);
就发现正在使用的内存在增加。这是怎么回事呀?
资源都释放掉了呀!


[解决办法]
你有VS2005么,用这个编译试试看。

很久很久以前,我也遇到类似的问题,
EVC下会出现内存泄露,同样的代码,在VS2005下没有问题。
[解决办法]
传说pWnd的GetDC(); 和 ReleaseDC(pDC); 是有Bug的
可以考虑使用::GetDC() 和 ::ReleaseDC(pDC) 来代替它们
[解决办法]
eVC 很古老的bug了,VS2005 好像没有类似问题了。
CWnd::GetDC CWnd::ReleaseDC 会泄漏4字节。。
解决方法同LS
用HDC代替,::GetDC() ,::ReleaseDC()。

热点排行