能力值:
( 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
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
从VS2010抓取的堆栈,能看到很有用的信息,例如:
testmfc!CtestmfcDlg::OnBnClickedOk+0x86 [c:\vc\testmfc\testmfc\testmfcdlg.cpp @ 165],这样几乎定位到出错的行号上,为什么同一个可执行程序,都是在出错时,抓取的堆栈区别这么大呢?请大家帮忙分析下,谢谢啦。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
虽然我不懂,但是希望有人能解决
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
十分感谢。这个问题折腾我好几天啦,哈哈
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
大概是没加载符号文件吧?
|
能力值:
( LV8,RANK:130 )
|
-
-
7 楼
你没有切换线程,你当前的调用栈这是调试器的调用栈,你看那个ntdll!DbgBreakPoint。这是你调试器停下来当时的调用栈,你要切到你要看的那个线程上看。~s <n>.再 kb.
|
能力值:
( LV8,RANK:130 )
|
-
-
8 楼
.dump -mf c:\VC\x.dmp
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
能说的详细点吗?如何切换到那个线程啊?谢谢啦
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
调试符号的确加载的有问题,正在折腾。但估计不完全是调试符号的问题,毕竟使用VS2010能弄到完整的堆栈。
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
实验了一次,堆栈跟之前一样,唉。不知道哪儿的错啊
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
哈哈,太感谢您啦,找到不少有用信息,哈哈。
|
能力值:
( LV8,RANK:130 )
|
-
-
13 楼
要是有用就结个帖呗。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
哈哈,的确有用。不过我的问题还没完全解决。我先接贴,把经验值给您,哈哈,后续再开帖子继续研究。谢谢啦。
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
收到我的分数没?收到回个消息,哈哈,我第一次给人分数,哈哈
|
能力值:
( LV8,RANK:130 )
|
-
-
16 楼
好了。
|
|
|