-
-
win8 MFC memory leak bug
-
发表于:
2013-3-14 18:11
5802
-
这不是个技术贴。
这几天组里出现一个问题,发注方在做长时间测试时,发现软件的登录画面一直有内存泄漏,给我们发来,说软件有问题,让查。后来经过层层的排出和测试,最后发现这个不是我们软件的bug,是微软的。
这里提醒下国内的IT企业,如果有涉及到MFC 的 combo-box的组件的,在combo-box失去焦点的时候会发生内存泄漏。
影响的平台为WIN8 32bit 和 WIN8 64bit
WIN7 xp无影响。
测试步骤如下:
新建一个对话框,按OK按钮的时候弹出另一个对话框,在另一个对话框上放一个combo-box组件,属性 type 值为 Dropdown,然后编译。
打开主程序,按OK按钮,弹出另一个对话框,按3下TAB键(其实只要做到让combo-box获得焦点就行),按OK或者回车让第二个对话框关闭。以此重复,如果开着性能监视的话就会发现,内存使用一直在涨,在win7下就没事。
我的测试结果如下图:
测试程序在这:
win8.rar
部分代码:
void Cwin8Dlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
//OnOK();
test t;
t.DoModal();
}
test 是另一个对话框的类名。其他的 都是编译器默认生成的。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!