Can Visual Studio be made to debug child processes

2019-01-10 20:21发布

This is similar to this question, but I wanted to flesh it out a bit. (I'm new here, if I should instead do a "bump" answer on the previous question instead, please let me know.)

In WinDBG, I can use the .childdbg 1 command to tell it to break when a child process is spawned, or I can launch it with the -o command-line option. This is very useful in some situations, so it's surprising that (as far as I can see) Visual Studio doesn't support it. It seems like it ought to be pretty easy to clear the DEBUG_PROCESS_ONLY_THIS_PROCESS flag on CreateProcess(), and VS already supports debugging multiple processes.

So, am I missing some option in Visual Studio to enable this? If not, is there a technical rationale for why they have chosen not to support it?

2条回答
Viruses.
2楼-- · 2019-01-10 21:13

There is now a power tool that lets you attach to child process: Introducing The Child Process Debugging Power Tool

查看更多
Fickle 薄情
3楼-- · 2019-01-10 21:18

Not possible (AFAIK, any many others...) but you have several workarounds:

  1. Use this macro, it comes from the Chrome team which need to deal with a lot of child processes debugging.
  2. Put your child process on Image Execution Options so that they will automatclly open in a debugger. Then select the current active instance of Visual Studio.
查看更多
登录 后发表回答