在WinDbg中开始debugging的基本设置和任务是什么?

引用自己,从这个问题有没有什么书“教”WinDbg? :

使用Visual Studiodebugging器,我知道我在哪里给定点,这是非常容易和方便的设置,以便当前断点(源代码)+反汇编+调用堆栈+局部variables+ …都有道理一起。 在这一点上,我需要一些先进的WinDbg命令,但是我觉得我从来没有达到足够的程度来确定我在debugging应用程序的位置以运行任何高级命令。

考虑到这一点:给定的二进制文件(或者可能是一个转储文件),在WinDbg中需要什么第一步来获得一个debugging会话,你可以真正地分析任何东西?

哪些设置? 哪个窗户? 哪个持久的环境variables? 等等。

以前我写过这个: 如何使用WinDbg来分析VC ++应用程序的崩溃转储?

在弄乱了一些(多)之后,看起来真的是WinDbg糟糕的用户界面。 我现在已经设法得到一个标准的程序,让我一半开始:

我发现以下设置必须完成,常见的可以保存到WinDbg中的工作区文件中:

  • 1st – 设置符号文件路径。 这是非常重要的,基本上每次启动都必须完成。 (您可以预先设置Microsoft符号,但是如果您不使用符号服务器作为专用符号,则每次开始调试转储文件时都必须手动将路径放到正确的PDB文件中。

    这样一个路径的例子:

    C:\Windows\symbols\dll;SRV*C:\temp\symbols*http://msdl.microsoft.com/download/symbols;C:\my_debbugger\Application_X\Symbols_for_Dump_7

    第一部分可以在WEW文件中设置,最后一部分最好加上.symbols+

  • 第二 – 我发现以下窗口很有用: 命令提示符进程和线程调用堆栈本地手表 。 命令提示符应该是最大的,因为你花的时间最多。

  • 3rd – 线程命令~ – 在帮助文件中查找它。 它允许你在线程之间切换,通过在屏幕上显示调用堆栈和本地代码,你应该开始感觉“你在哪里”。

  • 4th – 显示存储在转储中的异常上下文的.ecxr