从PyCharm到VisualStudioC++的COD调试

2024-10-03 02:36:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试调试Caffe for WindowsPyCaffe中的问题。在

由于bug in Python Tools for Visual Studio,ptv无法工作,所以我使用PyCharm并尝试通过visualstudio2013附加到PyCaffe的进程。也就是说,我在Python脚本上运行PyCharm调试器,在调用PyCaffe的Python入口点处设置了断点。在

调试PyCharm中的python脚本,调用VC++中的C++编写的模块,我想调试C++中的这些模块。因此,我试图附加到PyCharm或Python进程,并在VS中设置断点

问题是断点不是在VisualStudioC++代码中在PyCaffe的入口点开机。在

有没有人成功地让这种东西发挥作用,或者有其他的方法来做这件事?在


Tags: 模块in脚本for进程toolsbugcaffe
2条回答

几年前我也遇到过类似的问题 调试用户模式驱动程序希望从RPC自动加载,我找到的解决方案是:

  1. 从Microsoft下载免费的Windows调试工具(取决于您的x86或x64系统)。在
  2. 在C代码中希望断点生效的地方添加“uasm int 3”(这是针对硬件断点的asm指令)。在
  3. 编译C程序,通常使用调试信息(这一部分很重要,因为可以帮助调试器找到源文件),这应该不会造成任何问题。在
  4. 将调试器附加到正在运行的进程(在我的例子中是资源管理器进程),在您的情况下应该是第一次调用库的进程,例如,如果PyCharm为新的python代码创建了一个进程,则需要将调试器附加到该进程(您可以通过在python中设置断点来管理这一点,如果你不想让进程崩溃的话,你可以给我一个进程挂机的机会。。。已检测到问题需要关闭”,您知道您要查找的进程是谁。在

这可能是痛苦的第一次,但对我来说相当有效,因为你 可以看到从一个程序到另一个程序的数据流

我们附加到一个进程,并允许在没有从VS调试器启动的代码中设置断点。但是一个重要的问题是我们经常在VS中调试/运行应用程序,例如,我们调试在IIS下运行的Web代码,我们将附加到IIS进程或其他进程。在

您的项目与上面的示例不同,您在Pycharm(不是VS)中运行/调试应用程序,但是您希望使用VS Attach to process函数,因此它会有一个限制。正如您所说的,在PyCharm调试脚本,并希望调用C++,这样您就可以检查PyHARTHART是否支持与V/P/>中的附件工具类似的特性。

相关问题 更多 >