如何调试超出初始断点的子进程

Jon*_*han 1 windbg breakpoints

我的应用程序有 a.exe,它启动 b.exe 并与其通信。顺序是:

  1. a.exe 启动 b.exe,并等待来自 b.exe 的事件,超时时间为 10 秒
  2. b.exe 启动、注册为 COM 服务器并发出事件信号
  3. a.exe调用COM接口中的方法
  4. b.exe接口方法被调用。<<<<<我想在这里打破

我想中断b.exe接口方法调用。目前,我这样做:

  1. 在windbg下运行a.exe
  2. 进入.childdbg 1
  3. 等到 b.exe 启动,并且其初始断点中断。
  4. 在 b.exe 中设置另一个断点并继续。我必须在10秒内完成,否则a.exe会超时并杀死b.exe。

我设法做到了,但有时 10 秒的超时会过去。有更好的方法吗?

Jon*_*han 5

阅读我的问题,我找到了答案 - 让初始断点设置真正的断点:

.childdbg 1
sxe -c "bm b!*MyMethod*;g" ibp
sxd epr
Run Code Online (Sandbox Code Playgroud)