windbg怎么查看

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windbg怎么查看相关的知识,希望对你有一定的参考价值。

1 安装windbg (从微软网站上下载,free), 运行windbg, 设置symbol path,
File- Symbol File Path,
输入SRV*C:\\websymbols*http://msdl.microsoft.com/download/symbols,
如果你已经有了symbo path, 直接输入就可以了。
2. 生成一个dump, 可以用windbg提供的adplus命令来生成,或者有一个简单的工具, IIS
Diagnostics, 这个也可以从微软下, 假设现在你的application hang 或者 crash 了,
运行这个Diagnostics, cancel弹出选择rule type的对话框,
然后选择process tab,
找到你要dump的进程, 右键生成dump就可以了, 然后可以顺便用这个工具直接分析了,还是说winbdg吧。
3. 现在dump有了, 运行windbg,打开这个dump (File- Open
Crash Dump...), 运行下面的几个命令.
.load path\\SOS.dll
(path是全路经,
一般在C:\\WINDOWS\\Microsoft.NET\\Framework\\v2.0.50727,
根据自己.net版本选不同的)
.reload -f mscorwks.dll!threads
(察看所有线程(managed),
这步一般就可以看到exception在哪一个线程了, 假设看到在 0 thread)~0s
(转到 0 thread)
!clrstack (查看call stack)
然后可以通过windbg上面的一些快捷功能打开 Process and Threads 窗口 和 call stack
窗口,双击call stack 里面的 function call, 就可以跳转到source code了。
!printException
(查看exception, 仅限于managed exception, 找到第一次被抛出来的exception address,
一看就知道哪个了)
!Printexception address
(查看具体的exception)入门结束,不求甚解,慢慢学习.
参考技术A windbg怎么查看

以上是关于windbg怎么查看的主要内容,如果未能解决你的问题,请参考以下文章

windbg 怎么调试dmp文件

windbg查看内存断点是物理地址还是虚拟地址

WINDBG,如何查看数组的内容?

我用VC编写了一个exe,但是生成的pdb怎么也无法用于windbg调试

如何使用windbg查看c#变量

通过查看Windbg中汇编指令及内存中的值去定位软件崩溃问题