任务 - 当应用程序崩溃时,需要找到崩溃原因。
我看到了使用 AdPlus 获取故障转储然后将其加载到 WinDbg 进行分析的建议。
我所做的是将 WinDbg 附加到进程并等待 WinDbg 显示异常后程序崩溃进行调试。
使用 AdPlus 而不是直接将 WinDbg 附加到进程中是否有任何优势?
我想说 ADPlus 只对非技术人员更好。
对于开发人员来说,将过程加载到 WinDbg 中要方便得多。
在您的情况下,使用 AdPlus 创建转储没有任何优势。如果您可以在目标机器上附加 WinDbg 和调试,并且手头有完整的堆,那是您可以获得的最好的。
一般来说,AdPlus 只是一个包装 CDB 的 VB 脚本,它是一个控制台调试器。当您使用它时,CDB 会有效地调试您的程序,就像 WinDbg 一样。使用 AdPlus 获得的好处是简单的配置和通知选项。此外,由于它旨在创建转储,因此它做得很好 - 创建每个转储文件夹等。但这只是方便 - 就您查找错误的基本需求而言,在您的情况下,我会坚持使用 WinDbg。