0 Id: 15f4.e60 Suspend: 1 Teb: 7ffdf000 Unfrozen # ChildEBP RetAddr Args to Child 00 0012fe80 77d693f3 00456cd8 0012feec 00456cf3 ntdll!KiFastSystemCallRet*** WARNING: Unable to verify checksum for PlayDemo.exe*** ERROR: Symbol file could not be found. Defaulted to export symbols for PlayDemo.exe - 01 0012fe84 00456cd8 0012feec 00456cf3 0012febc USER32!NtUserWaitMessage+0xcWARNING: Stack unwind information not available. Following frames may be wrong.02 0012febc 004561c3 000325ea 00000113 00000001 PlayDemo!PerfgrapFinalize+0x428f803 0012fee4 0045644f 0012fef8 00456459 0012ff14 PlayDemo!PerfgrapFinalize+0x41de304 0012ff14 00401713 00000000 004c9034 002a2893 PlayDemo!PerfgrapFinalize+0x4206f05 0012ff50 004c26f7 00400000 00000000 002a2893 PlayDemo!_GetExceptDLLinfo+0x2a606 0012ff88 75f51174 7ffd5000 0012ffd4 77c4b3f5 PlayDemo!PerfgrapFinalize+0xae31707 0012ff94 77c4b3f5 7ffd5000 57cfea49 00000000 kernel32!BaseThreadInitThunk+0xe08 0012ffd4 77c4b3c8 00401414 7ffd5000 00000000 ntdll!__RtlUserThreadStart+0x7009 0012ffec 00000000 00401414 7ffd5000 00000000 ntdll!_RtlUserThreadStart+0x1b
问题:标红颜色的那行提示,代表我匹配不到PlayDemo的符号文件,但ntdll的符号文件我是匹配成功的,那么-->是不是我下面绿字的栈信息是不是就不对了呢?(因为PlayDemo的符号不对,栈回溯出现问题)
谢谢您的回复。
因为栈回溯是以递推方式产生的,上面的不对,有可能影响下面的。但这也不是绝对的,WinDBG会使用默认的规则递推寻找,有时是可能跨越模糊区域,进入到有符号的部分继续递推的。比如本例中,根据经验,绿色部分大体是正确的。