gpt4 book ai didi

c++ - 在 Visual Studio 中调试使用 CreateProcess 生成的进程

转载 作者:IT老高 更新时间:2023-10-28 21:45:00 30 4
gpt4 key购买 nike

我创建了一个生成子进程的 Windows/C++/WTL 应用程序。这两个进程通过匿名管道进行通信。

我希望能够调试子进程。

由于在 Visual Studio 2008 中父项目和子项目都在同一个解决方案中,有没有办法告诉 VS2008 我希望调试器同时调试这两个进程?

当我用父进程启动调试器时,调试器不会在子进程代码中的任何断点处中断。

而且由于子进程是由父进程生成的,所以我想不出一种简单的方法来在子进程生成时附加子进程(可能通过 VS2008 的另一个实例)。

非常感谢任何见解!

最佳答案

多种选择:

  • 您可以使用 Debug + Attach 使用一个调试器实例来调试多个 .exe。然而,我总是使用两个 Visual Studio 实例,在第二个中使用 Debug + Attach。

  • 您可以在子代码中放置一个 __debugbreak(),JIT 调试器窗口会提示您选择一个调试器。

  • 您可以使用“图像文件执行选项”注册表项在子 .exe 启动后自动启动调试器。添加一个名为 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\YourApp.exe 的键,将其“Debugger”值设置为“vsjitdebugger.exe”

  • 有一个VS add-in这让它变得更容易了,我自己还没有尝试过。

关于c++ - 在 Visual Studio 中调试使用 CreateProcess 生成的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3574853/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com