首页
社区
课程
招聘
转储文件的抓取是否出错?
发表于: 2015-12-29 08:55 4396

转储文件的抓取是否出错?

2015-12-29 08:55
4396
我在WIN7系统的64位版本上抓取转储文件,在程序崩溃时,使用的WINDUG进行抓取,命令是:.dump -ma c:\VC\x.dmp,然后WINDUG打开转储文件,使用命令:!analyze -v,进行分析,发现调用栈是:
STACK_TEXT:  
WARNING: Stack unwind information not available. Following frames may be wrong.
02edfb34 772033ca 00000000 02edfb80 77b49ed2 ntdll!DbgBreakPoint
02edfb40 77b49ed2 00000000 7025079a 00000000 kernel32!BaseThreadInitThunk+0x12
02edfb80 77b49ea5 77baf7ea 00000000 00000000 ntdll!RtlInitializeExceptionChain+0x63
02edfb98 00000000 77baf7ea 00000000 00000000 ntdll!RtlInitializeExceptionChain+0x36

STACK_COMMAND:  ~1s; .ecxr ; kb

FOLLOWUP_IP:
ntdll!DbgBreakPoint+0
77b2000c cc              int     3
这样的调用栈几乎没有价值,和使用VS2010抓取的堆栈相比,信息量太少。请问,是我抓取转储文件的方式不对码?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (15)
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
下面是我使用VS2010抓取的转储文件的堆栈信息:

STACK_TEXT:  
WARNING: Stack unwind information not available. Following frames may be wrong.
003feaac 77ba29c0 005fc958 005f0000 00000000 ntdll!RtlpNtEnumerateSubKey+0x3946
003feac8 77b5cd77 005f0000 005fc958 77b3991a ntdll!RtlUlonglongByteSwap+0x155d0
003feb34 75c6468e 005f0000 00000000 005fc960 ntdll!RtlValidateHeap+0x7a
003feb48 604b7990 005f0000 00000000 005fc960 KERNELBASE!HeapValidate+0x14
003feb5c 604b6aca 005fc980 005fc980 003feba4 MSVCR100D!CrtIsValidHeapPointer+0x40
003feb6c 604b6970 005fc980 00000001 1847f99e MSVCR100D!free_dbg+0x1aa
003feba4 604b9090 005fc980 00000001 003fecc8 MSVCR100D!free_dbg+0x50
003febb4 013934c6 005fc980 003ff01c 00439ec8 MSVCR100D!free+0x10
003fecc8 5b11f632 00000000 00000176 00000004 testmfc!CtestmfcDlg::OnBnClickedOk+0x86 [c:\vc\testmfc\testmfc\testmfcdlg.cpp @ 165]
003fed0c 5b11fd7a 003ff60c 00000001 00000000 mfc100ud+0x30f632
003fed70 5b179ac3 00000001 00000000 00000000 mfc100ud+0x30fd7a
003fedac 5b256c54 00000001 00000000 00000000 mfc100ud+0x369ac3
003fee10 5aed977a 00000001 000c0a4a 003ff60c mfc100ud+0x446c54
003fee24 5b255859 00000001 000c0a4a 1847f886 mfc100ud+0xc977a
003fef94 5b2557a2 00000111 00000001 000c0a4a mfc100ud+0x445859
003fefb4 5b251cf3 00000111 00000001 000c0a4a mfc100ud+0x4457a2
003ff034 5b2522e6 003ff60c 007d0708 00000111 mfc100ud+0x441cf3
003ff054 5b03ad0b 007d0708 00000111 00000001 mfc100ud+0x4422e6
003ff090 773162fa 007d0708 00000111 00000001 mfc100ud+0x22ad0b
003ff0bc 77316d3a 5b03acb0 007d0708 00000111 user32!gapfnScSendMessage+0x332
003ff134 7731965e 00000000 5b03acb0 007d0708 user32!GetThreadDesktop+0xd7
003ff178 773196c5 01419f20 00000000 5b03acb0 user32!GetWindow+0x3f0
003ff19c 73e14601 007d0708 00000111 00000001 user32!SendMessageW+0x4c
003ff1bc 73e14663 0043eab8 00000000 000c0a4a comctl32!GetEffectiveClientRect+0x3409
003ff1d8 73e144ed 50010001 00000001 00000000 comctl32!GetEffectiveClientRect+0x346b
003ff238 773162fa 000c0a4a 00000202 00000000 comctl32!GetEffectiveClientRect+0x32f5
003ff264 77316d3a 73d9b495 000c0a4a 00000202 user32!gapfnScSendMessage+0x332
003ff2dc 773177c4 00000000 73d9b495 000c0a4a user32!GetThreadDesktop+0xd7
003ff33c 7731788a 73d9b495 00000000 003ff378 user32!CharPrevW+0x138
003ff34c 7733c81f 00439e80 7efde000 003ff4ec user32!DispatchMessageW+0xf
003ff378 5b28def3 007d0708 00000000 6f4965c0 user32!IsDialogMessageW+0x11e
003ff390 5b25c8be 00439e80 003ff60c 003ff3b8 mfc100ud+0x47def3
003ff3a0 5b179a92 00439e80 003ff60c 005fc718 mfc100ud+0x44c8be
003ff3b8 5aed9702 00439e80 003ff60c 003ff3dc mfc100ud+0x369a92
003ff3c8 5b257ebd 00439e80 003ff60c 007d0708 mfc100ud+0xc9702
003ff3dc 5b22e92f 007d0708 00439e80 003ff3fc mfc100ud+0x447ebd
003ff3f8 5b22f9e5 00439e80 013a0358 003ff418 mfc100ud+0x41e92f
003ff408 5b22e9a5 00439e80 013a0358 003ff438 mfc100ud+0x41f9e5
003ff418 5b22e7e1 00439e80 003ff434 5b03aeb9 mfc100ud+0x41e9a5
003ff438 5b22fdbe 013a0358 003ff450 5b22e831 mfc100ud+0x41e7e1
003ff444 5b22e831 013a0358 003ff478 5b25caa7 mfc100ud+0x41fdbe
003ff450 5b25caa7 00000000 00000000 003ff60c mfc100ud+0x41e831
003ff478 5b17acd2 00000004 1847e3f6 003ff6f4 mfc100ud+0x44caa7
003ff4e4 01392581 18b7e462 00000000 00000000 mfc100ud+0x36acd2
003ff700 5b2894f4 cccccccc cccccccc cccccccc testmfc!CtestmfcApp::InitInstance+0x111 [c:\vc\testmfc\testmfc\testmfc.cpp @ 72]
003ff724 013979da 01380000 00000000 00432082 mfc100ud+0x4794f4
003ff73c 01393e0d 01380000 00000000 00432082 testmfc!wWinMain+0x1a [f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\appmodul.cpp @ 26]
003ff7e4 01393bbf 003ff7f8 772033ca 7efde000 testmfc!__tmainCRTStartup+0x23d [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 547]
003ff7ec 772033ca 7efde000 003ff838 77b49ed2 testmfc!wWinMainCRTStartup+0xf [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c @ 371]
003ff7f8 77b49ed2 7efde000 761e18ca 00000000 kernel32!BaseThreadInitThunk+0x12
003ff838 77b49ea5 01391848 7efde000 00000000 ntdll!RtlInitializeExceptionChain+0x63
003ff850 00000000 01391848 7efde000 00000000 ntdll!RtlInitializeExceptionChain+0x36
2015-12-29 08:56
0
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
从VS2010抓取的堆栈,能看到很有用的信息,例如:
testmfc!CtestmfcDlg::OnBnClickedOk+0x86 [c:\vc\testmfc\testmfc\testmfcdlg.cpp @ 165],这样几乎定位到出错的行号上,为什么同一个可执行程序,都是在出错时,抓取的堆栈区别这么大呢?请大家帮忙分析下,谢谢啦。
2015-12-29 08:58
0
雪    币: 41
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
虽然我不懂,但是希望有人能解决
2015-12-29 09:11
0
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
十分感谢。这个问题折腾我好几天啦,哈哈
2015-12-29 09:11
0
雪    币: 261
活跃值: (51)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
大概是没加载符号文件吧?
2015-12-29 10:28
0
雪    币: 581
活跃值: (215)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
7
你没有切换线程,你当前的调用栈这是调试器的调用栈,你看那个ntdll!DbgBreakPoint。这是你调试器停下来当时的调用栈,你要切到你要看的那个线程上看。~s <n>.再 kb.
2015-12-29 10:40
0
雪    币: 138
活跃值: (306)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
8
.dump -mf c:\VC\x.dmp
2015-12-29 10:47
0
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
能说的详细点吗?如何切换到那个线程啊?谢谢啦
2015-12-29 10:52
0
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
调试符号的确加载的有问题,正在折腾。但估计不完全是调试符号的问题,毕竟使用VS2010能弄到完整的堆栈。
2015-12-29 10:56
0
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
实验了一次,堆栈跟之前一样,唉。不知道哪儿的错啊
2015-12-29 10:57
0
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
哈哈,太感谢您啦,找到不少有用信息,哈哈。
2015-12-29 11:01
0
雪    币: 581
活跃值: (215)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
13
要是有用就结个帖呗。
2015-12-29 11:08
0
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
哈哈,的确有用。不过我的问题还没完全解决。我先接贴,把经验值给您,哈哈,后续再开帖子继续研究。谢谢啦。
2015-12-29 11:29
0
雪    币: 480
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
收到我的分数没?收到回个消息,哈哈,我第一次给人分数,哈哈
2015-12-29 11:33
0
雪    币: 581
活跃值: (215)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
16
好了。
2015-12-29 11:52
0
游客
登录 | 注册 方可回帖
返回
//