WinDbg中的Calls窗口显示的调用栈内容有点少

fly4free 2012-09-06 01:19:15
[不知道这个类型的帖子放哪里合适呢]

有一个自己写的程序崩溃了,我用了 CrashRpt库 做了dmp转储

当用windbg查看的时候,发现:
1. 用 !analyze -v 命令的时候,显示出了我的程序出现问题的位置,包含了我的函数名字。

2. 用 Calls 窗口看,却看不到我的函数名。这个 和 k命令显示的栈内容一样
用 !analyze -v命令能看到的栈顶是:kernel32!RaiseException+0x52

Call窗口所显示的最下面的是:kernel32!ValidateLocale+0xa0d2


!analyze -v 命令后显示的结果中,有关线程id ,我也看了,和 Processes and Threads 窗口中所选择的是一样的。
(出现异常的函数 与 crInstall 的调用处于同一个线程)

我并不问有关crashrpt的事,我依稀记得有能切换 Calls窗口显示内容的命令(不是切换线程,貌似是往深了显示,但.kframes 不好使……)
...全文
271 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
fly4free 2012-12-01
  • 打赏
  • 举报
回复
引用 3 楼 mianhuaqiang 的回复:
主要是想知道CrashRpt的用法 然后放到我写的程序里,非常感谢!
开源官网就有。
fly4free 2012-12-01
  • 打赏
  • 举报
回复
引用 5 楼 tiger9991 的回复:
没怎么用过windbg,请教下你所说的Calls和我们常用的callstack的有优势么?
就是“调用栈”窗口。子窗口标题就是“Calls”。
引用 4 楼 xumaojun 的回复:
可以参考window高效调试.
我还真有这本书,还没看几页,有难度啊…… 这书讲概念吗?比如这两个上下文的区别?
九州剑王 2012-11-29
  • 打赏
  • 举报
回复
!dt这个好像能看单个变量;!kv看栈
傻X 2012-11-29
  • 打赏
  • 举报
回复
没怎么用过windbg,请教下你所说的Calls和我们常用的callstack的有优势么?
xumaojun 2012-11-28
  • 打赏
  • 举报
回复
可以参考window高效调试.
mianhuaqiang 2012-11-28
  • 打赏
  • 举报
回复
主要是想知道CrashRpt的用法 然后放到我写的程序里,非常感谢!
mianhuaqiang 2012-11-28
  • 打赏
  • 举报
回复
楼主能不能把你写的这个例子 发给我一份 我正在研究这一块 谢谢啊 邮箱1284989290@qq.com
fly4free 2012-09-06
  • 打赏
  • 举报
回复
晕了,找到一篇文章,看到命令就试,发现 .ecxr 就切换到我想要的地方了。

This command also instructs the debugger to use the context record that is associated with the current exception as the register context.

附加问一下,这两种上下文有什么区别吗? 都各是什么?有别的命令可以达到同样效果吗?(可以经过各种手动,看寄存器值等复杂繁琐操作经过,只要有方法,我觉得这样可以帮助理解区别吧……)
如果嫌麻烦,可以给链接或者书籍的章节页码,谢谢~

由于自己解决,所以就对本楼提的问题提供答案线索的,看情况给分~

16,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧