2009-09-30 65 views
4

我们有一个使用DbgHelp的MiniDumpWriteDump()来编写minidump的进程崩溃处理程序。 但我知道它不是最好的办法,但目前我们没有其他选择。Minidump创建空的转储文件

问题是:某个可执行文件总是会创建0字节转储。但是对于其他流程来说,它效果很好这种行为背后的可能原因是什么?

回答

6

我们不时有我们的小型代码的问题。最后,我们将其更改为在启动时产生一个轻量级辅助进程,并在我们需要生成一个小型转储时使用一个简单的MMF与自卸车进程进行通信。

我们在转储过程中使用MiniDumpWriteDump出现种种问题。自从改为专门的倾销程序以来,这一直非常可靠。

如果可能,我建议你考虑一致。它最终没有那么多的工作。

+0

+1我们最终也这样做了。 – 2009-12-04 15:59:05

+0

@anelson,你如何从一个进程获取异常信息(我的意思是'PEXCEPTION_POINTERS')?仅仅通过指向MMF的指针就行不通,是吗? – 2016-04-06 08:35:50

+0

@TamásSzelei您不会将异常信息传递到翻斗过程,您可以从异常处理程序中触发翻斗过程。转储将包含包含异常信息的堆栈帧。 – anelson 2016-04-09 17:06:19