如何找到程序崩溃的地方

时间:2010-05-21 10:14:56

标签: c++ visual-studio-2008 multithreading debugging windows-xp

我有一个程序在运行“发布”版本时崩溃(试图读取错误的内存地址),但在visual studio调试器中运行“debug”版本时没有报告任何问题。

当程序崩溃时,操作系统询问我是否要打开调试器,如果我说是,那么我会看到一个箭头指向我在某个汇编程序列表中的位置,我不熟悉它适当(我在30年前学会了6502汇编程序)。有什么方法可以让我确定源代码中的违规内存读取位置在哪里?

2 个答案:

答案 0 :(得分:5)

您需要在启用调试信息的情况下构建程序(即使对于发布版本也可以执行),并且调试器必须可以访问调试信息(* .pdb文件)(只需将其复制到可执行文件旁边)。 /> VS应该能够向您显示源,堆栈和其他所有内容。

答案 1 :(得分:0)

除了 sbi 告诉你的内容之外,只想补充一点。有适用于Windows的Microsoft调试工具。这个软件包包含一本好书“调试帮助”。即使您不打算使用WinDbg来分析崩溃,您也可能会发现阅读“调试帮助”非常有用。

相关问题