有没有人有任何建议或教程来创建程序的崩溃报告?我想开始发送一个我一直在开发给人们的游戏,但是如果游戏因错误处理而崩溃,我希望将这些报告发送到我已注册的电子邮件地址(以及从该程序收集的数据)。有谁知道如何做到这一点?创建并发送崩溃报告
3
A
回答
4
如果您使用的是Visual Studio 2010,则可以使用内置的错误报告。然后您可以向Microsoft注册,请参阅http://msdn.microsoft.com/en-us/isv/bb190483
3
执行崩溃报告最直接的方法是在代码中使用try-catch语句。发生异常时,创建一个临时日志文件,其中包括发生崩溃的异常类型,源代码类,函数和行以及全局和本地变量/容器的数据,其中一些应包含用户输入。
您不通过电子邮件发送错误日志,但您的程序会打开一个端口并将数据发送到服务器,该服务器会持续侦听预定义的端口以获取错误报告。
更高级的错误报告可以包括内存转储和寄存器的值。为了读取内存值,一个快速而又脏的方法是使用一个指针来迭代地读取堆栈区域的值。对于寄存器值,您可以使用asm
关键字。
1
如果你想要某种开箱错误通过互联网申报的,你应该检查出EQATEC analytics
其中有一个可用的C++接口。
2
可以使用Debug Help Library中的MiniDumpWriteDump函数通过每个线程的堆栈转储创建转储文件。我相信你可以在Visual Studio中打开文件并查看它的调试器(或接近它)。
2
Maciej Sinilo's blog还有一些很好的示例代码(他也是一名游戏程序员)。代码包括如何从崩溃中获取信息(例如,它是无效的读取还是写入)以及callstack或者minidump。这足以让我开始为我们的测试系统添加一个崩溃处理程序。
希望有所帮助。
相关问题
- 1. Crashlytics不发送崩溃报告[iOS]
- 2. 向用户发送ios崩溃报告
- 3. Android - 如何发送崩溃报告?
- 4. Bugsense不发送崩溃报告,
- 5. ACRA崩溃报告,发送到崩溃多封电子邮件
- 6. 崩溃报告
- 7. 的Python - 创建有意义的崩溃日志/崩溃报告
- 8. 创建并发送简报
- 9. 崩溃报告iOS
- 10. android.database.CursorIndexOutOfBoundsException ....崩溃报告
- 11. java.lang.NullPointerException ...崩溃报告
- 12. iPhone崩溃报告
- 13. Android崩溃报告
- 14. AsyncTask崩溃报告
- 15. java.lang.ClassNotFoundException崩溃报告
- 16. HockeyApp崩溃报告
- 17. TestFlight崩溃报告
- 18. Android崩溃报告不会发送给开发者控制台
- 19. 在崩溃时,Firebase的“崩溃报告”会自动报告吗?
- 20. 如何在应用程序崩溃时向Web服务发送崩溃报告?
- 21. 如果ipad应用程序崩溃,向服务器发送崩溃报告?
- 22. ACRA - 悄悄发送崩溃报告,没有任何崩溃对话框
- 23. 崩溃报告并被Apple拒绝
- 24. 崩溃报告,并被Apple拒绝
- 25. 解析SDK崩溃报告不报告
- 26. android开发者崩溃报告
- 27. 根据崩溃报告查找iOS发生崩溃的位置
- 28. 了解发送崩溃报告时的BugSense使用情况
- 29. 如何使用ACRA发送Android崩溃报告
- 30. 如何发送django崩溃报告到谷歌文档
到目前为止,您还没有接受过很多答案。是什么让我觉得我这次能够满足你? – 2011-02-17 00:00:59
我的努力工作:搜索“SetUnhandledExceptionFilter”。在SO覆盖得很好。 – 2011-02-17 00:13:05
David Heffernan,许多回应都不是主题,而是偏离了我所要求的。 – jack 2011-02-17 00:29:39