我正在尝试设置一种在 Windows 上调试多个 C 应用程序的方法。我遇到的问题是,这些应用程序的设计是这样的:第一个应用程序(starter.exe)使用对系统(“launch.exe”)的调用来运行另一个应用程序(launch.exe)。然后,此 launch.exe 应用程序可以使用对 CreateProcess() 的调用来运行其他应用程序。
其中一些应用程序可能只运行短暂的时间,或者可能很快崩溃,这导致我无法及时手动将 gdb 连接到进程。我也只希望将 gdb 用于使用 gcc 编译的应用程序子集(starter.exe,一些由 launch.exe 创建的应用程序),其余的在 VS2012 中编译。最好 gdb 具有立即运行“继续”的默认行为,以免中断控制流。
有没有合理的方法可以在 Windows 中实现此目的?如果可能的话,我想避免更改应用程序。
在搜索中,我遇到了 gdb 的 --waitfor 命令,但不幸的是,我的平台似乎不支持该命令。
最佳答案
是的。您正在寻找Image File Execution Options注册表项。
您希望将“Debugger ”值设置为该进程的 gdb 命令行。
关于c - 当进程启动时自动附加 gdb 并继续,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24917290/