我有一个C ++项目和一个调用.exe文件的python脚本。我在其中一个cpp文件中设置断点,但它们没有被命中。我甚至无法进入这个C ++项目。 我在这里找到了类似的问题,但对于Visual Studio: Debug C++ code in visual studio from python code running in eclipse
在Eclipse中有没有类似的方法来做这个技巧? 或者是否有一些其他适用的方法来调试从另一个进程调用的C ++代码?我试图附加到这个过程,但问题是,在脚本调用之后,子进程完成得非常快,我无法抓住它的pid。
答案 0 :(得分:0)
要调试可执行文件,请使用DebugBreak函数代替程序中的断点。所以在你的C ++代码中,在你的程序中的某个地方调用DebugBreak
,最好是在开头附近 - 这将作为断点。
当您的C ++可执行文件从Python运行时,您的C ++可执行文件将“崩溃”(并非真正崩溃,但看起来确实如此)。真正发生的是调用DebugBreak
函数。
Windows操作系统通过一组消息框说“你的应用程序有问题”(注意程序确实没有问题),然后你可以选择调试它。选择“debug”选项,您要使用的调试器(将是Visual Studio),从那时起您应该可以单步执行C ++代码。