WinDbg常用命令

WinDbg在分析Windows内存和程序崩溃方面非常有帮助,在学习之前,我们需要了解一些常用命令。

~ 显示所有线程
~* 显示所有线程
~. 显示当前活动线程
~# 显示最初导致异常 (或调试器附加到进程) 时处于活动状态的线程
~[线程编号] s 进入线程堆栈

1
2
3
4
0:000> ~
. 0 Id: 332a4.630d0 Suspend: 0 Teb: 0000003d`316ba000 Unfrozen
1 Id: 332a4.62208 Suspend: 0 Teb: 0000003d`316c0000 Unfrozen
2 Id: 332a4.55c6c Suspend: 0 Teb: 0000003d`316c2000 Unfrozen

在此输出的第一行中,0 是十进制线程数,332a4 是十六进制进程 ID,630d0 是十六进制线程 ID,0x316ba000是 TEB 的地址, Unfrozen 是线程状态。 线程 1 之前的句点 (.) 表示此线程是当前线程。 线程 2 之前的编号符号 (#) 意味着此线程是最初导致异常或调试器附加到进程时处于活动状态的线程。

!address 显示有关目标进程或目标计算机使用的内存的信息
!address -summary 显示摘要信息

!analyze 显示有关当前异常或 bug 检查的信息
!analyze -v 详细输出

.cls 清屏

作者

eyiadmin

发布于

2022-10-19

更新于

2024-05-31

许可协议

评论