【问题标题】:Windows Debugger Road-MapWindows 调试器路线图
【发布时间】:2011-02-20 02:52:01
【问题描述】:

似乎 Microsoft 生产了数十种调试器和调试工具,这造成了关于应用哪种工具以及何时应用的选择和问题的迷宫。例如,有 windbg - 和 Visual Studio 中内置的调试器。两者都可以访问小型转储。为什么我会选择一个而不是另一个?

博士。 Watson 是过去默认的事后崩溃分析工具。它现在已被“问题报告和解决方案”取代。哪个又被服务器上的 IIS 异常监视器取代?也许所有这些都建立在“Microsoft CDB 调试器”之上,或者这可能是另一个重复的工具? ADPlus 是另一个基于 CDB Debugger 的产品。迷宫似乎没完没了。

有人可以提供所有这些工具的分类法或路线图的链接,其中的 cmets 已被弃用(Watson 博士?)以及调试学生应该吸收哪些“工具方向”?我敢肯定,这里没有提到许多工具和基础库。也很高兴知道它们之间的依赖关系(例如使用 CDB 调试器的 ADPlus)。

我发现this link 很有帮助,因为它回答了我提出的一些问题——尽管材料已经过时了。是否有任何其他资源可以提供类似简单的比较/对比结果?

【问题讨论】:

    标签: windows debugging crash-dumps


    【解决方案1】:

    CDB and NTSD 之间没有区别,除了它们如何生成新窗口。选择何时在命令行调试器上使用 Visual Studio 有时是个人选择的问题,但有时命令行是更好的工具。一旦您熟练使用命令行调试器,您就可以更快地完成任务。我怀疑仍然存在一些场景,您只能使用命令行调试器调试特定问题,但我想不出任何手头。您错过的第三个调试器是 kd,它是内核调试器。如果您想调试内核模式的东西(即您编写的设备驱动程序),这确实是您唯一的选择。

    CDB、NTSD 和 KD 都是 debugging tools for Windows 的一部分,它们本身也是 DDK 的一部分。 Visual Studio 不依赖于其他调试包,反之亦然。

    Watson 之类的不是调试器。他们只是观察和报告。我怀疑最好的建议是使用适合您问题的任何一个。我的意思是,有很多工具可用于各种不同的 MS 技术。例如。 Orca 用于 MSI 数据库。所有这些产品都是不相关的,通常由不同的部门发布和维护,等等。因此,我怀疑你会找到显示它们之间关系的图表,因为它们是如此多样化。

    【讨论】:

      猜你喜欢
      • 2014-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多