仅影响本地调试器的命令

时间:2014-06-27 20:28:01

标签: windbg remote-debugging

进行远程调试时,某些命令仅影响本地调试器(键入命令的调试器)。例如:

.wtitle
.cls
.browse
.cmdtree

目前这些都看起来像UI相关的命令。是否有更多命令仅在本地调试器上执行?

我的研究工作:

  • 我在谷歌上搜索一个列表,但是搜索条件可能太常见了,或者我没有把它们弄好。

  • 我也试过在WinDbg帮助中找到一个引用(.hh)本身。但到目前为止我发现的受影响的命令甚至没有记录这一事实。

我知道这是要求最喜欢的外部工具或参考。所以,如果你真的认为这是偏离主题的话,那就投票吧。

2 个答案:

答案 0 :(得分:3)

所有调试器处理(包括所有扩展执行)都在核心调试器进程中完成。因此99%以上的命令都需要转到调试器引擎(初始调试器实例) 仅在远程调试器上运行的唯一命令确实是一些与UI相关的命令。

我将调出一对有关此主题的命令,这是最常用的远程调试器:

.srcpath设置"源代码路径"在调试器引擎中。这是调试器引擎将从中获取源信息的地方 - 例如,如果调试器扩展需要获取源代码。

.lsrcpath(l - for local)设置"源代码路径"在远程调试器中。此路径将在windbg(以及cdb \ kd)中用于在UI中提取源文件。

答案 1 :(得分:0)

仍然不是完整列表,但很多commands that are not scriptable (MSDN)受到影响:

.lscrfix // works on remote client only
.lsrcpath // works on remote client only
.open 
.write_cmd_hist // writes local history only
.beep
.cls
.hh
.remote // Does not work in WinDbg anyway

但是,列表中的以下内容似乎有效:

.idle_cmd
.restart

关于.write_cmd_hist:如果要在调试会话期间保留所有命令,最好在会话开始时打开日志文件(.logopen)。