Ian*_*oyd 3 winapi gdi resource-leak
我对我的应用程序进行了一夜间压力测试,今天早上软件因Windows错误而崩溃.
发生错误是因为该进程明显超出了GDI句柄:
Process Explorer
任务管理器
接下来要弄清楚我正在泄漏哪种GDI资源(例如笔,画笔,位图,字体,区域,DC).为此我转向了NirSoft的GDIView:
GDI可以处理什么,不是任何已知的GDI类型?
答案是 GDI HFONT处理.
这是一个Windows 8问题,GDIView无法显示字体句柄.
我用钩子拦截每一个电话:
并记录每个句柄的创建,以及它允许的堆栈跟踪.最后,我可以报告任何取消删除字体.