
调试
文章平均质量分 76
xkxjy
这个作者很懒,什么都没留下…
展开
-
HEAP: Free Heap block XXXX modified at XXXX after it was freed
开发过程中,有时候会遇到堆异常的情况HEAP: Free Heap block 39b998 modified at 39b9c0 after it was freed原创 2011-02-28 12:46:00 · 3118 阅读 · 0 评论 -
让程序崩溃时自动写minidump
<br />首先在合适的地方调用<br />LPTOP_LEVEL_EXCEPTION_FILTER pOdk = SetUnhandledExceptionFilter(MyUnhandledExceptionFilter);<br /> <br />MyUnhandledExceptionFilter的实现如下:<br />LONG WINAPI MyUnhandledExceptionFilter( __in struct _EXCEPTION_POINTERS* Except原创 2011-04-01 20:09:00 · 741 阅读 · 0 评论 -
获取调试符号文件
摘自: http://support.microsoft.com/kb/311503/zh-cn使用 Symbol Server 技术Microsoft Symbol Server 是使用随 Debugging Tools for Windows 软件包一起提供的 SymSrv 技术 (SymSrv.dll) 构建的。SymSrv 会生成本地符号高速缓存,以进行快速、自动的符号解析。转载 2011-12-08 22:34:14 · 697 阅读 · 0 评论 -
HEAP: Free Heap block XXXX modified at XXXX after it was freed 的处理
HEAP: Free Heap block XXXX modified at XXXX after it was freed 的处理环境:Windows XP SP3,VC2008在开发过程中,偶尔会遇到程序提示 HEAP异常的情况以下讨论限于Debug模式常见提示如下vc的输出窗口提示:翻译过来就是 某个已经释放的堆空间被修改了,就是某块动态申请(malloc原创 2011-12-01 22:38:33 · 3180 阅读 · 0 评论 -
Visual C++ Runtime Error 调试
程序偶尔会出现:Microsoft Visual C++ Runtime Library Runtime Error! Program: [APPPATH] Abnormal program termination同时带有红色叉叉的对话框。 打开VC,附加对应的进程,在线程选项卡里查找类似MessageBox的字样,找到的那个就是弹出对话框的线程,右键,转到线程,查看调用堆栈,原创 2011-06-10 23:41:00 · 1018 阅读 · 0 评论 -
使用VC进行调试
1、函数断点对于没有代码的函数,可以根据函数名称下断点CreateFileWkernel32.dll!_CreateFileW@28() - 0x48 bytes // 观察函数 call stack> kernel32.dll!_CreateFileW@28() + 0x2 bytes显示命令窗口:Ctrl+Alt+A 或者 View=>Other Windows=原创 2012-02-05 13:33:28 · 384 阅读 · 0 评论