解决VERIFIER STOP 00000900: A heap allocation was leaked.

最近调试一应用程序时,当软件退出时(dll unload),突然就不断出现“A heap allocation was leaked”的中断异常,花了许多精力去排除程序代码中所有潜在的、可能的“作案”代码,一无所获。

尝试百度,发现根本没有这方面的资料,只能人工跑代码了,代码注释得面目全非,仍旧未解决。

其实这中断完全可以跳过(Microsoft Application Verifier中取消Leak检测或者VS中忽略该异常),但是作为编程人员,不知道还好,如果发现了瑕疵而不解决的话心里着实过不去。

无奈,回归提示,在VS的内存窗口中查看输出内容中给出的“Address of the owner dll name”(其实我之前一直只注意Address of the leaked allocation, 个人疏忽),出现了关键一幕,QQPingyin.ime, 尝试禁用那个dll,问题解决。

=======================================

VERIFIER STOP 00000900: pid 0xDE0: A heap allocation was leaked.

0A37011C : Address of the leaked allocation. Run !heap -p -a <address> to get additional information about the allocation.
04023EE4 : Address to the allocation stack trace. Run dps <address> to view the allocation stack.
4E5B0FE0 : Address of the owner dll name. Run du <address> to read the dll name.
706D0000 : Base of the owner dll. Run .reload <dll_name> = <address> to reload the owner dll. Use 'lm' to get more information about the loaded and unloaded modules.


=======================================
This verifier stop is continuable.
After debugging it use `go' to continue.

=======================================


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值