标签: crash-dumps

我怎么知道崩溃转储的CLR版本?

我有一个从.NET应用程序崩溃的minidump.有没有办法知道使用Windbg或其他工具的故障机器(生成故障转储)的CLR版本(例如mscorwks.dll的版本)?

debugging clr windbg crash-dumps

9
推荐指数
2
解决办法
3802
查看次数

在我的应用程序中生成/创建mdump文件

我正在寻找一种方法来生成我的应用程序中的minidump文件,类似于ProcDump所做的,但是使用代码并且不必提取3dparty工具来完成它.

不想使用ProcDump的主要原因是:
1)二进制文件的大小会大大增加(这是一个问题,因为我的应用程序是免费软件,带宽不是免费的).
2)感觉很脏.
3)我无法移植该应用程序来运行Windows Mobile.

我的要求是:
1)能够在fatale崩溃中生成mdump文件.
2)能够"暂停"应用程序执行转储,并且contiune将是一个奖励
.
如果这不是一个真正的选项,有没有办法动态地获取当前上下文中的局部变量值?

旁注:我确实读过这篇文章,但它已经很老了,所以我非常犹豫不决我的工作.
似乎IE 9或网站存在问题,因此我遇到了标签问题.

c# exception crash-dumps

8
推荐指数
2
解决办法
1113
查看次数

Google Breakpad示例

有没有人有任何谷歌破解配置的例子?我可以很好地构建它,但是,文档有限.我想看一些示例,例如如何修改崩溃报告发送到的位置.

c++ crash-reports crash-dumps google-breakpad

8
推荐指数
1
解决办法
3704
查看次数

如何从minidumps中提取堆栈跟踪?

我有一大堆minidump,它们是在应用程序运行期间通过MiniDumpWriteDump记录的.minidump是在具有与我的开发机器不同的操作系统版本的机器上创建的.

现在我正在尝试编写一个程序,使用dbghelp.dll从minidump中提取堆栈跟踪.我正在走MINIDUMP_MODULE_LIST并调用SymLoadModule64,但是无法从公共符号服务器下载pdbs(kernel32等).如果我在符号路径中添加"C:\ Windows\System32",它会找到dll并下载符号,但当然它们与minidump中的dll不匹配,因此结果没用.

那么如何告诉dbghelp.dll下载并使用正确的pdbs?

[编辑]

我忘了声明SymLoadModule64只接受文件名而没有版本/校验和信息,所以很明显只有SymLoadModule64,dbghelp无法找出要下载的pdb.

这些信息实际上在MINIDUMP_MODULE_LIST中可用,但我不知道如何将其传递回dbghelp API.

有一个SymLoadModuleEx,它需要额外的参数,但我不知道这是我需要的,或者我应该传递给其他参数.

[编辑]

到目前为止没有运气,但我注意到在调试SDK中还有dbgng.dll与dbghelp.dll一起分发.MSDN看起来很好,并说它与windbg使用的引擎相同.也许我可以使用它来提取堆栈跟踪.

如果有人能指出我使用dbgeng.dll处理可能有用的minidumps的一些介绍,因为MSDN只记录单个组件,但不记录它们如何一起工作.

windows debugging minidump crash-dumps dbghelp

8
推荐指数
1
解决办法
4245
查看次数

你如何解决Android系统库崩溃问题(libwebcore.so)

我的Android webview崩溃,adb logcat的错误转储告诉我libwebcore.so是导致分段错误的库.你怎么解决这个问题?

我最初的研究把我带到了这样的线程:如何在Android中使用addr2line,实质上是说获取库的非剥离版本并使用addr2line实用程序来查明导致分段错误的确切行

上面的帖子说"在obj/local/armeabi下使用.so文件,因为这是非剥离版本"......但我在/ usr/local/android-ndk-r6下找不到libwebcore.so 或者我的Mac上的/ usr/local/android-sdk-mac_86,我只在Android设备上的/ system/lib下找到了一个剥离版本的libwebcore.so .

有没有办法让我可以得到一个非剥离版本的libwebcore.so?或者我不是以正确的方式解决这个问题?


作为参考,这里是adb logcat吐出的错误转储:

I/DEBUG   (   65): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   (   65): Build fingerprint: 'google/passion/passion:2.3.4/GRJ22/121341:user/release-keys'
I/DEBUG   (   65): pid: 611, tid: 618  >>> com.swishly.gap <<<
I/DEBUG   (   65): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000
I/DEBUG   (   65):  r0 00000002  r1 002f9564  r2 00000003  r3 …
Run Code Online (Sandbox Code Playgroud)

android crash-dumps android-ndk

8
推荐指数
1
解决办法
4019
查看次数

调试混合模式(C#,C++)应用程序

我正在调试混合模式(托管和非托管)应用程序的问题.

实际问题在非托管代码中.

我已将SOS dll加载到Windebugger中.但是由于我已经加载了SOS dll,因此向我显示调用堆栈只有托管模式.我如何看到非托管代码的调用堆栈?

c# windbg crash-dumps sos

8
推荐指数
1
解决办法
980
查看次数

Linux内核模块崩溃调试:一般保护错误:0000 [#1] SMP

我有一个内核模块,用于分割传入的rtp数据包和合并rtp传出数据包.程序在2/3天内崩溃一次.如果可以找到模块崩溃的确切行,对我来说会非常方便.我在下面给出了崩溃转储.是否可以从崩溃转储中找到代码中的确切行?

    PID: 1256   TASK: ffff88020fc71700  CPU: 0   COMMAND: "rtpproxy"
 #0 [ffff880212faf2f0] machine_kexec at ffffffff8103bb7a
 #1 [ffff880212faf360] crash_kexec at ffffffff810bb968
 #2 [ffff880212faf430] oops_end at ffffffff8169fad8
 #3 [ffff880212faf460] die at ffffffff81017808
 #4 [ffff880212faf490] do_general_protection at ffffffff8169f5d2
 #5 [ffff880212faf4c0] general_protection at ffffffff8169eef5
    [exception RIP: pkt_queue+388]
    RIP: ffffffffa00f3fa0  RSP: ffff880212faf578  RFLAGS: 00010292
    RAX: ffff8802110ae400  RBX: ffff880213a53f38  RCX: 00015d910000a20f
    RDX: 497d74565cede60c  RSI: 000000006df1ed57  RDI: 00000000e46e0cfc
    RBP: ffff880212faf728   R8: ffff880211a8b000   R9: ffff880212fafa60
    R10: ffff880212fafbc8  R11: 0000000000000293  R12: 00000000134ab2b4
    R13: 000000008386615c  R14: 00000000000000e3  R15: 00000000000000e3
    ORIG_RAX: ffffffffffffffff …
Run Code Online (Sandbox Code Playgroud)

kernel crash-dumps kernel-module linux-kernel

8
推荐指数
1
解决办法
3万
查看次数

崩溃转储 - WinDbg - 强制PDB文件匹配不起作用?

我有一个客户应用程序的崩溃转储,它是用我在WinDbg中分析的dll(发布版本,没有原始符号)的旧版本构建的.

为了获得更多信息,我在发布模式下使用相同的编译器版本重建了带符号的dll,我相信与最初构建dll时相同的设置.我将符号文件添加到我的符号路径,但是WinDbg扩展名!itoldyouso告诉我转储中的模块与PDB文件不匹配.启用S​​YMOPT_LOAD_ANYTHING也没有帮助.

!itoldyouso告诉我他们不匹配,因为模块没有pdb sig(值0),而不是我创建的重新创建的符号文件(使用有效的pdb sig).我如何让它们匹配?

debugging symbols windbg crash-dumps

8
推荐指数
2
解决办法
1万
查看次数

导致崩溃转储的Java错误的解决方法

我开发的一个程序偶尔会因为这个错误而崩溃JVM:http://bugs.java.com/bugdatabase/view_bug.do?video_id = 8029516.遗憾的是,Oracle尚未解决该漏洞,并且错误报告称没有已知的解决方法.

我试图通过在KeyWatcher线程中调用.register(sWatchService,eventKinds)来修改bug报告中的示例代码,方法是将所有挂起的注册请求添加到我在KeyWatcher线程中循环但仍在崩溃的列表中.我猜这与sWatchService上的同步效果相同(就像尝试过的bug报告的提交者一样).

你能想出办法解决这个问题吗?

java windows multithreading nio crash-dumps

8
推荐指数
1
解决办法
561
查看次数

安装调试工具来分析Windows 7上的小型转储

我一直在尝试安装'调试工具',以便尝试分析转储文件服务器崩溃(Windows Server 2008 R2).

我过去常常这样做,但我找不到如何安装/找到Windows 7的调试工具.

我已经阅读了这篇知识库文章:http://support.microsoft.com/kb/315263.

然后,我尝试从以下文章(http://msdn.microsoft.com/en-us/windows/hardware/gg463009.aspx)下载"Windows调试工具" .我选择"将Windows调试工具安装为独立组件",下载文件并进行安装.

它安装成功,但我仍然找不到文件.这对我来说似乎是一个愚蠢的问题,但我无法以任何方式找到调试工具!我甚至试图下载上面提到的Windows 7调试工具(http://www.microsoft.com/en-us/download/details.aspx?id=8279),但再次无法找到它们!

任何帮助将非常感激

windows crash minidump crash-dumps

7
推荐指数
2
解决办法
1万
查看次数