当我的进程崩溃时,如何打印以记录核心转储文件堆栈,C ++ over windows? 我知道在Unix中有一种方法可以使用一些信号处理程序,但从来没有自己做过。 我怎么能在Windows中做(不想使用ACE)?
感谢。
答案 0 :(得分:2)
Windows等效的核心转储称为Minidump,您可以使用MiniDumpWriteDump编写一个。这里有一篇关于codeproject的文章:http://www.codeproject.com/KB/debug/postmortemdebug_standalone1.aspx
答案 1 :(得分:0)
您可以设置自己的顶级异常处理程序,并使用dbghelp库遍历堆栈以获取调用堆栈。您还可以生成应用程序崩溃转储this。
答案 2 :(得分:0)
如果您正在寻找堆栈助行器,请查看由Jochen Kalmbach创建的this one。运行时,它会让您以任何您喜欢的方式记录堆栈跟踪。然而,常见的方法是要求Windows创建转储(完整或迷你)。