WinDbg环境变量

Mic*_*use 1 debugging windbg environment-variables

使用WinDbg调试可执行文件时,是否可以在调试开始为调试会话设置环境变量之前指定要运行的批处理脚本?

我正在尝试模拟将运行该可执行文件的自动化测试环境。变量包含诸如当前内部版本号是什么,结果目录在哪里以及第三方工具目录在哪里等信息。我可以将这些代码硬编码到应用程序中以进行自己的测试,但这很丑陋:)。

当然这是在Windows操作系统上,我宁愿不使用其他调试器。

如果WinDbg不直接支持此功能,那么实现此功能的最佳方法是什么?

bk1*_*k1e 5

WinDbg的-o选项使它自动附加到所有子进程,这对于调试从另一个程序启动的程序很有用。如果运行windbg -o cmd.exe /c myscript.bat,WinDbg将调试cmd.exe(您可以跳过)以及该实例实例产生的每个子进程cmd.exe。如果批处理文件在运行您要调试的命令之前运行了许多其他命令,这可能会很烦人,但是这些sx*命令(例如sxn ibp; sxe ld:mymodule)应该能够减少烦恼。

另一种方法是在Image File Execution Options启动EXE时使用注册表项附加WinDbg(或cdb / ntsd)。