C++ 如何调试vs2005中另一个调用的exe

C++ 如何调试vs2005中另一个调用的exe,c++,debugging,visual-studio-2005,C++,Debugging,Visual Studio 2005,VS2005 c++ 我有一个包含2个exe和几个dll的sln A.exe调用B.exe而不是B.exe调用其他dll 我想在B.exe和dll的代码中插入断点 但如果我在启动项目中设置了A.exe,则B和dll中的断点无效 如果我在启动项目中设置了B.exe,那么不仅B.exe运行,而且A.exe对我来说是必需的 因为很多事情都必须由一个 如果将A和B都设置为启动项目,则可以调试B,但您知道 当一个运行时,它将调用另一个B,所以2 B.exe在sametime运行,这不是我想要的 所以,任何

VS2005 c++

我有一个包含2个exe和几个dll的sln A.exe调用B.exe而不是B.exe调用其他dll

我想在B.exe和dll的代码中插入断点
但如果我在启动项目中设置了A.exe,则B和dll中的断点无效

如果我在启动项目中设置了B.exe,那么不仅B.exe运行,而且A.exe对我来说是必需的 因为很多事情都必须由一个

如果将A和B都设置为启动项目,则可以调试B,但您知道 当一个运行时,它将调用另一个B,所以2 B.exe在sametime运行,这不是我想要的

所以,任何人都可以帮助我,很长一段时间以来,我对此感到很无聊


任何建议都非常感谢

您可以调试任意多个Bs—只需启动足够多的Visual Studio 2005实例,在MSVC 2005的每个实例中打开您的项目,选择调试->“附加到进程”并选择所需的B进程实例。

您可以使用

您可能需要先运行此命令,然后才能在VisualStudio命令提示符下使其工作

vsjitdebugger.exe /regserver
然后,当执行B.exe时,应该会出现一个弹出窗口,要求您调试它


在源代码中,还可以插入以中断调试器。

Visual Studio 2005支持附加到多个正在运行的进程。调试/附加到进程。。。只需调试A,让它启动B,然后连接到它。谢谢伙计,我制作了一个示例解决方案,包括一个shell.exe、一个dllcall.exe和一个dlltest.dll,它与您的方法一起工作,但在我的原始解决方案中,这是一个巨大的解决方案,由QT制作,它不工作,我不知道为什么,因为QT?无法回答这个问题。我从不使用它。它应该可以工作,所以这看起来很奇怪。多谢老兄,同样的“附加到流程”方法,但在我上面提到的原始解决方案中仍然无法工作。我觉得非常有趣,vs如何知道流程的源代码在哪里,大多数流程只是一个进程或一个应用程序,仅供使用,我很抱歉,我仍然不能理解你说的话,我需要更多的时间来理解和尝试它,但仍然感谢你。我了解了你的文章,它似乎是微软的官方解决方案,非常好,虽然我没有真正尝试它,因为我没有权力更改我的注册表,你知道,它是静止的
vsjitdebugger.exe /regserver