使用Visual Studio进行调试时保持辅助线程运行

New*_*ark 5 c# multithreading breakpoints visual-studio visual-studio-2012

我正在制作一个应用程序,它会向Visual Studio发送一步一步的按键,使其能够截取部分自己的代码逐行执行的截图.

但是当你在你的代码中遇到一个断点时,似乎所有线程都会停止,即使是那些没有达到断点的线程.有没有办法解决?当我遇到断点时,有没有办法让Visual Studio保持其他线程运行?或者我是否必须采取单独的流程?

编辑:澄清一下,当断点被击中时,我需要在遇到断点的线程上执行停止.我希望断点仅在被某个线程命中时激活.换句话说,我需要让一部分程序继续执行,同时一个线程在调试器的断点处停止.

New*_*ark 4

好吧,似乎每当您在进程中遇到断点时,该进程中的所有线程都会停止,并且似乎没有任何方法可以覆盖该行为。做我想做的事情的唯一方法是创建第二个Process,并拥有它Process负责通过外部 API 调用将虚拟按键发送到 Visual Studio。

显然,您必须有某种方式在主进程和按键进程之间进行通信。我环顾四周,发现匿名管道可能是同一台机器上运行的两个进程之间进行通信的最佳方法。