Re: 程序crash了,但是堆栈都是系统文件mshtml和ole32
转储分析
程序crash了,但是堆栈都是系统文件mshtml和ole32
qiliu3
2014-03-05, 10:06 上午
请教一下张老师,程序crash了,但是堆栈都是系统文件mshtml和ole32,像这种情况需要怎么继续查找线索呢?谢谢!
0961f618 77d474ff 0961f648 77d473dc 00000000 kernel32!UnhandledExceptionFilter+0x127
0961f620 77d473dc 00000000 0961fba0 77cfc550 ntdll!__RtlUserThreadStart+0x62
0961f634 77d47281 00000000 00000000 00000000 ntdll!_EH4_CallFilterFunc+0x12
0961f65c 77d2b499 fffffffe 0961fb90 0961f798 ntdll!_except_handler4+0x8e
0961f680 77d2b46b 0961f748 0961fb90 0961f798 ntdll!ExecuteHandler2+0x26
0961f6a4 77d2b40e 0961f748 0961fb90 0961f798 ntdll!ExecuteHandler+0x24
0961f730 77ce0133 0061f748 0961f798 0961f748 ntdll!RtlDispatchException+0x127
0961f730 76e4f02d 0061f748 0961f798 0961f748 ntdll!KiUserExceptionDispatcher+0xf
0961fa8c 76f3d6e0 006b7ec8 0961fb38 06cacb00 ole32!GetCurrentComApartment+0x5e [d:\w7rtm\com\ole32\com\dcomrem\aprtmnt.cxx @ 74]
0961faa0 76e161e5 00000000 006949e8 006949e8 ole32!InitChannelIfNecessary+0x10 [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1018]
0961fb14 69aa98c6 00000000 000927c0 00000001 ole32!CoWaitForMultipleHandles+0x81 [d:\w7rtm\com\ole32\com\dcomrem\sync.cxx @ 98]
0961fb3c 69b14988 00000000 69920000 0961fb54 mshtml!CDwnTaskExec::ThreadExec+0x11e
0961fb4c 69d6a6f3 0961fb60 76cc336a 006949e8 mshtml!CExecFT::ThreadProc+0x3f
0961fb54 76cc336a 006949e8 0961fba0 77d09f72 mshtml!CExecFT::StaticThreadProc+0xd
0961fb60 77d09f72 006949e8 6581e7f7 00000000 kernel32!BaseThreadInitThunk+0xe
0961fba0 77d09f45 69d6a6e6 006949e8 00000000 ntdll!__RtlUserThreadStart+0x70
0961fbb8 00000000 69d6a6e6 006949e8 00000000 ntdll!_RtlUserThreadStart+0x1b
切换context到
0961f798,堆栈就是下面的这一段,包括!analyze -v分析结果和堆栈都是匹配的,就是这一段
0961fa8c 76f3d6e0 006b7ec8 0961fb38 06cacb00 ole32!GetCurrentComApartment+0x5e [d:\w7rtm\com\ole32\com\dcomrem\aprtmnt.cxx @ 74]
0961faa0 76e161e5 00000000 006949e8 006949e8 ole32!InitChannelIfNecessary+0x10 [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1018]
0961fb14 69aa98c6 00000000 000927c0 00000001 ole32!CoWaitForMultipleHandles+0x81 [d:\w7rtm\com\ole32\com\dcomrem\sync.cxx @ 98]
0961fb3c 69b14988 00000000 69920000 0961fb54 mshtml!CDwnTaskExec::ThreadExec+0x11e
0961fb4c 69d6a6f3 0961fb60 76cc336a 006949e8 mshtml!CExecFT::ThreadProc+0x3f
0961fb54 76cc336a 006949e8 0961fba0 77d09f72 mshtml!CExecFT::StaticThreadProc+0xd
0961fb60 77d09f72 006949e8 6581e7f7 00000000 kernel32!BaseThreadInitThunk+0xe
0961fba0 77d09f45 69d6a6e6 006949e8 00000000 ntdll!__RtlUserThreadStart+0x70
0961fbb8 00000000 69d6a6e6 006949e8 00000000 ntdll!_RtlUserThreadStart+0x1b
Re: 程序crash了,但是堆栈都是系统文件mshtml和ole32
格蠹老雷
2014-03-05, 17:16 下午
似乎是放在TEB里的COM数据被破坏了,如果需要帮忙,把dump文件压缩一下,发到我的信箱里
http://advdbg.org/books/dbgwars/feedback.aspx