我知道如何使用ADPlus或DebugDiag生成崩溃转储文件,但我想知道是否有办法在客户的计算机上执行此操作,而无需安装这些工具…具体而言,我希望能够configuration我的应用程序使用registry值,例如)在严重故障的情况下生成故障转储。 更具体地说,我需要能够从C#应用程序做到这一点,但如果有必要,我不介意P / Invoke。 谢谢!
我刚刚开始查看转储文件,以帮助我分析工作环境中w3wp进程在生产环境中的崩溃情况。 我想知道,一个小型转储和一个完整转储文件有什么区别?
我正在使用Visual Studio 2010专业版和Windows Vista。 首先,我有这个代码。 正如你所看到的,它会使程序崩溃! using System; namespace Crash { class Program { static void Main(string[] args) { string a = null; if (a.Length == 12) { // ^^ Crash } } } } 程序将在if语句中崩溃。 现在,我想知道,它是如果陈述坠毁。 如果我从Visual Studio“开始不debugging”,Crash.exe崩溃。 它使用了1356kb的内存。 我得到closures程序/debugging的Vista选项。 如果我selectdebugging,我可以打开一个新的Visual Studio实例,它指向我在if语句上的NullReferenceException。 这很好。 现在让我假设它在另一台计算机上崩溃,我让他们通过任务pipe理器给我一个转储文件。 这是54,567kb。 为什么这么大! 这是巨大的! 无论如何,我对这个(略)感兴趣不大 如果我用Windbg打开那个垃圾堆,那么我对未经训练的眼睛就没有什么用处了: Microsoft (R) Windows Debugger Version […]
我的程序是用C ++编写的。 用gcc编译,用-g3 -O0 -ggdb标志。 当它崩溃时,我想打开它的核心转储。 它创build核心转储文件,还是我需要做一些事情来启用核心转储创build,在程序本身,或在计算机上执行它? 这个文件的创build地点是什么?
你好堆栈溢出! 一个简单的问题是:是否可以将自定义错误数据embedded到自动生成的iOS崩溃转储中,当我的应用程序在设备上崩溃时从我的用户获得? 例如:我的SQlite数据库将不会因为某种原因(例如,数据库文件已损坏)操作..我无法从此错误恢复,所以我抛出一个exception,并embedded在例外详细的SQLite错误消息。 问题是,应用程序的崩溃转储将不包含exception消息,因此知道应用程序崩溃的条件并不容易。 有没有人知道一种方法把东西放入崩溃转储报告? 或者你有任何其他推荐的方式向开发者报告生产崩溃? 谢谢 !
如何使用WinDbg分析转储文件?
我已经捕获了在64位Windows操作系统上运行的32位.NET应用程序的故障转储。 在分析过程中,有人发现我有一个64位转储,并告诉我,由于误位,不能分析这个转储。 当使用Windows任务pipe理器创build转储时,我不知道我做错了什么。 这一直适用于32位操作系统。 我怎么能把一个良好的转储,特别是在正确的位?