【问题标题】:Running WinDbg in headless mode在无头模式下运行 WinDbg
【发布时间】:2015-01-15 00:14:16
【问题描述】:

有没有办法在纯无头模式下使用 WinDbg ? 我的用例是我应该能够在不启动 WinDbg GUI 的情况下在命令行上为 minidump 模仿“!analyze -v”命令。

【问题讨论】:

  • 如何使用 cdb 作为你的调试器(WinDbg 的控制台版本),然后在注册表中配置默认​​调试器以启动:cdb.exe -c "!analyze -v" -p %ld -e %ld
  • 让我试一试。感谢您的及时回复
  • 所以我发现 cdb 很有用并且可以达到我的目的。谢谢:)

标签: c++ windows debugging windbg crash-dumps


【解决方案1】:

使用 Windows 调试工具,还有cdb,控制台调试器。

要调试故障转储,请使用-z "<dump>" 选项。要立即运行命令,请使用-c "<command>"。要将所有内容输出到文件中,您可以使用通常的 DOS 重定向输出 > <file> 或使用 .logopen <file> 打开日志文件。要在分析后退出 CDB,请使用q。

您要确保符号设置正确,因此请包含.symfix <path>;.reload。我更喜欢在命令中使用.symfix <symbolpath> 而不是-y <symbolpath>,所以我可以随时在日志中检查它是否已正确设置。

完整的命令行(使用重定向)

"<windbgpath>\cdb.exe" -z "<dumpfile>" -c ".symfix <symbolpath>;.reload;!analyze -v;q" > "<logfile>"

重定向的缺点:行尾只有LF。当调试器启动时,您会收到很多噪音。

完整的命令行(使用日志文件)

"<windbgpath>\cdb.exe" -z "<dumpfile>" -c ".logopen <logfile>;.symfix <symbolpath>;.reload;!analyze -v;.logclose;q"

【讨论】:

    猜你喜欢
    • 2018-08-12
    • 2019-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-22
    • 2021-01-01
    • 1970-01-01
    相关资源
    最近更新 更多