windows - 打印 windows coredump 的堆栈跟踪,无需以交互方式进入 windbg/visual studio

标签 windows visual-studio windbg minidump

我想通过调用在脚本中编写的预定义命令来获取导致崩溃的线程的堆栈跟踪,以便我运行脚本并获得包含所有线程的反向跟踪的日志文件。然后我可以解析此日志文件以查看是否存在已知问题。

最佳答案

我建议您看一下 cdb .它是 windbg 的一个功能非常全的命令行版本,应该已经与 windbg 一起安装了。

您可以告诉它打开转储、打印堆栈跟踪并使用命令行退出:

cdb -z yourdump.dmp -c "~*kv; q"

或者您甚至可以幻想并使用以下方法进行一些自动化分析:

cdb -z yourdump.dmp -c "!analyze -v; q"

这可能更有意义,因为它会在第二次机会异常抛出时尝试恢复堆栈,而仅使用 k 打印堆栈会完全错过问题。您还可以使用它输出的 FAILURE_BUCKET_ID 为您完成大部分分类工作。

从那里开始,只需在您希望执行的命令之前使用 .logopen 即可或 redirecting the commandline output to a file .

关于windows - 打印 windows coredump 的堆栈跟踪,无需以交互方式进入 windbg/visual studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24617970/

相关文章:

c++ - 如何将命名管道的流转换为套接字流? (在 Windows 上使用 C++)

c++ - Visual Studios,在 C 代码中使用预编译 header

c# - 当我使用 Visual Studio 2013 保存源代码时是否可以运行 StyleCop?

windbg - 通过 WinDbg 的值类型与引用类型

windows - 使用批处理文件打开多个 node.js 服务器

python - 如何为 Windows 制作 T9 风格的屏幕键盘?

windows - 如何从命令输出中查找和提取子字符串?

visual-studio - ASP.Net 5 Beta 8 xproj 无法打开

.net - 如何在 .NET 应用程序的转储中查找默认 TaskScheduler 的内容?

windbg - 在windbg 中有没有办法打印当前线程id 和frame id?