WinDBG命令概览(中) - 元命令
元命令(Meta-Command)用来提供标准命令没有提供的常用调试功能, 与标准命令一样, 元命令也是内建在调试器引擎或者WinDBG程序文件中的. 所有元命令都已一个点(.)开始, 所以元命令也被称为点命令(Dot Command).
按照功能, 可以把元命令分成如下几类.
- 显示和设置调试会话和调试器选项.
- 用于符号选项的.symopt- Set Symbol Options
- 用于符号路径的.sympath- Set Symbol Path, 和.symfix- Set Symbol Store Path.
- 用于程序源文件的.srcpath- Set Source Path, .srcnoisy- Noisy Source Loading, .srcfix- Use Source Server
- 用于扩展命令模块路径的.extpath- Set Extension Path
- 用于匹配扩展命令的.extmatch- Display All Matching Extensions
- 用于可执行文件的.exepath- Set Executable Path
- 设置反汇编选项的.asm- Change Disassembly Options
- 控制表达式评估器的.expr- Choose Expression Evaluator
- 控制调试会话或者调试目标.
- 重新开始调试会话的.restart- Restart Kernel Connection(Kernel Mode) 或 Restart Target Application(User Mode)
- 放弃用户态调试目标(进程)的.abandon- Abandon Process
- 创建新进程的.create- Create Process
- 附加到存在进程的.attach- Attach to Process
- 打开转储文件的.opendump- Open Dump File
- 分离调试目标的.detach- Detach from Process
- 用于杀掉进程的.kill- Kill Process
- 管理扩展命令模块
- 加载模块的.load- Load Extension DLL
- 卸载模块.unload- Unload Extension DLL和.unloadall- Unload All Extension DLLs
- 显示已加载模块的.chain- List Debugger Extensions
- 管理调试器日志文件
- 显示信息 .logfile- Display Log File Status
- 打开 .logopen- Open Log File
- 追加 .logappend- Append Log File
- 关闭 .logclose- Close Log File
- 远程调试
- 用于启动remote.exe服务的.remote- Create Remote.exe Server
- 用于启动调试引擎服务器的.server- Create Debugging Server
- 列出可用服务器的.servers- List Debugging Servers
- 用于向远程服务器发送文件的.send_file- Send File
- 用于结束远程进程服务器的.endpsrv- End Process Server
- 用于结束引擎服务器的.endsrv- End Debugging Server
- 控制调试器
- 让调试器睡眠一段时间的.sleep- Pause Debugger
- 唤醒处于睡眠状态的调试器的.wake- Wake Debugger
- 启动另一个调试器来调试当前调试器的.dbgdbg- Debug Current Debugger
- 编写命令程序
- 包括一系列类似C语言关键字的命令, 如
- .if, .else, .elsif, .foreach, .do, .while. .continue, .catch, .break, .continue, .leave, .printf, .block. 在<软件调试>一书第30章的第18节有介绍命令程序的编写方法.
- 显示或者转储调试目标数据
- 产生转储文件的.dump- Create Dump File
- 将原始内存数据写到文件的.writemem- Write Memory to File
- 显示调试会话时间的.time- Display System Time
- 显示线程时间的.ttime- Display Thread Times
- 显示任务列表的.tlist- List Process IDs
- 以不同格式显示数字的.formats- Show Number Formats
- 可以列出所有元命令和每个命令的简单说明的.help- Meta-Command Help