MFC异常“所需资源不可用”

参考:http://bbs.csdn.net/topics/390481053

参考:http://forums.codeguru.com/showthread.php?304223-error-quot-A-required-resource-was-unavailable-quot/page2


现象:软件在运行很长一段时间后,弹出“所需资源不可用”,也或者是菜单栏、Ribbon变白、软件界面不再响应鼠标消息,但在任务管理器中发现软件不占用CPU,也没有“无响应”标识,呈现类似死锁状态。


可能原因:DC相关资源耗尽。


问题重现方式:将相应的绘图代码执行10000次以上,问题会重现。根据网上资料显示,貌似如果超过10000个资源未释放就会导致此问题出现。


处理方法:查找GetDC是否释放,查找其它手动创建资源是否在使用完之后释放(比如:CreateRectRgnIndirect创建的资源,需要使用DeleteObject 释放)。

猜你喜欢

转载自blog.csdn.net/mfkjq/article/details/73219116