有没有办法迭代windbg中的所有帧? (或为每个堆栈帧运行dv)
例如:~*e !mk -cc
将遍历所有线程并调用!mk -cc
我想要的基本上是:
对于每个线程:切换到线程:
~0s
对于该主题中的每个框架:
.frame 00
dv
只是想知道是否有办法自动化这个?
目前我能够生成一个脚本来执行:
~0s
.frame 00
dv
.frame 01
dv
.frame 02
...
但这是一个多步骤的过程,我希望将其全部自动化。
答案 0 :(得分:4)
您可以使用~e命令执行每个线程的命令。然后,您可以使用!for_each_frame为每个调用帧执行命令。例如:
~*e .echo Thread Frames and Locals:; !for_each_frame dv
包含.echo命令只是为了标记一个线程结束而下一个线程开始的位置。