WinDbg没有显示确切的崩溃点 [英] WinDbg does not show exact crash point

查看:91
本文介绍了WinDbg没有显示确切的崩溃点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我正在使用WinDbg作为默认调试器.我尝试调试多线程VC ++(MFC/COM)应用程序.

WinDbg不显示确切的崩溃点,并且在不同的时间显示不同的位置.例如.有时它会显示在WaitforSingleObject(), Sleep(), _endthread()等中.

转储显示
"WARNING: Stack unwind information not available. Following frames may be wrong."

最终,经过大量分析后发现,为COleDateTime对象分配了0x793406fff(最大值)时发生了崩溃.

注意:我已经下载了WinXP平台的完整符号.

我很想知道为什么WinDbg中会发生这种行为.

当我对单线程应用程序尝试相同的操作时,Windbg显示了正确的崩溃点.任何人都可以帮助我了解内部细节,也可以帮助我获得确切的信息.解决此问题将有助于我们快速解决许多问题.

-------------------------------------------------- ----------------------

Hi,

I am using WinDbg as my default debugger. I tried to debug my multi threaded VC++ (MFC/COM) application.

WinDbg does not shows the exact crash point and shows different locations at different times. E.g. Sometimes it shows in WaitforSingleObject(), Sleep(), _endthread() etc.

Dump shows
"WARNING: Stack unwind information not available. Following frames may be wrong."

Finally after huge analysis found that crash happened in COleDateTime object when it is assigned with 0x793406fff (maximum value).

Note: I have downloaded the complete symbols for WinXP platform.

I am interested to know why this type of behavior happens in WinDbg.

When I tried the same with single threaded application Windbg shows the correct crash point. Can anyone help me out in knowing the internal details and also help me to get the exact point. Solving this will help us to resolve many problem quickly.

------------------------------------------------------------------------

Hi John,
Thanks for your input.
I can debug the same and fix the problem.

I am very much interested to know why WinDbg shows wrongly only in multi threaded environment.

Is there any way to resolve this issue and get the exact crash point from WinDbg.

Thanks in advance.

Regards,
Dhamo.

推荐答案

遇到类似问题时,我最终只是在输出窗口中编写了一些跟踪语句(手动操作)分配了线程ID,这样我就可以知道哪个线程发布了跟踪消息.

当然,使用google("c ++调试多线程应用"),您可能已经在147千个结果中找到了此链接:

http://msdn.microsoft.com/en-us/library/ms164746.aspx [ ^ ]

When I had problems like that, I ended up just writing a crap-load of trace statements to the output window (with the manually assigned thread ID so I could tell what thread posted the trace message).

Of course, using google ("c++ debugging multithreaded apps"), you could have found this link among 147 THOUSAND results:

http://msdn.microsoft.com/en-us/library/ms164746.aspx[^]


这篇关于WinDbg没有显示确切的崩溃点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆