如有转载,请注明出处:http://blog.csdn.net/embedded_sky
遇到一个win下面dump的问题,环境:VS2010
工程中引用了几个第三方库libxml 、cjson以及其他的DLL,VS2010单步调试时提示如下:
Windows已经在XXX.exe中触发一个断点。
其原因可能是堆被损坏,这说明XXX.exe或它所加载的任何DLL中有BUG。
原因也可能是用在XXX.exe有焦点时按下了F12。
输出窗口可能提供了更多诊断信息。
输出窗口提示信息:
Critical error detected c0000374
程序中断处为 memcpy.c 或malloc.c 且调试时中断的位置不一样。最终VS2010单步调试无法找出bug的位置(还没有运行到bug处便已经中断)
解决办法如下:安装Debug工具gflags(或者下载Windows调试工具集包含global flags)
打开如下图:

在Windows环境下,针对VS2010提示'Windows已经在XXX.exe中触发一个断点'的问题,文章介绍了如何利用Debug工具gflags进行设置,以避免在调试时过早中断。通过在gflags中配置Image File并指定Debugger为vsjitdebugger.exe,可以使得调试器在错误发生时正确定位bug。调试完成后,需记得关闭gflags的Debug设置,以恢复程序正常运行。

488

被折叠的 条评论
为什么被折叠?



