dump解决方案

这里指的是对release版本的程序发布出去之后crash的处理。

这里有一强文总结的非常完整:http://www.cppblog.com/Walker/articles/146153.html , 收集minidump应该是大多数人的方案。

其中提到的google breakpadhttp://code.google.com/p/google-breakpad/ 相当之强大,提供了一整套跨平台的解决方案,这里有一个不错的入门资料:http://bigasp.com/archives/450 。

对于windows上的,这里还有一个轻量级的实现:http://code.google.com/p/crashrpt/ 。

鉴于万恶的微软在vs2005(VC8)以上的版本中修改了CRT库的内容,导致客户端经常弹出“RunTime Error”却收集不到dump。原因是新版crt库在出现错误时将错误直接抛给默认的异常调试器,而不再通知应用程序设置的异常处理函数(多tm坑爹啊~)。这里有一篇通过api hook的解决方法:http://www.cppblog.com/lai3d/archive/2011/08/25/154358.html

原文地址:https://www.cnblogs.com/konlil/p/2154247.html