windows平台上python和C语言混编时如何对C语言进行调试
如果有可用的Microsoft Visual Studio,
1)打开您的DLL所在的Visual Studio项目(或创建一个新项目)。
2)如果您设置了用于调试的DLL(已使用调试信息构建了它,并且它将是您的python程序将使用的那个),则可以在DLL代码中设置断点。
3)像平常一样启动要调试的程序(python程序)。
4)返回到Visual Studio IDE,然后转到Debug(调试)
菜单。选择Attach to Process(附加到进程)
选项。然后,您将获得所有正在运行的进程的列表。
5)选择要调试的进程,它将是python程序,或者是正在运行程序的运行时。如图1所示:
图1:步骤4)-5)
6)等待您的一个断点被击中,或者您可以尝试Break All
从“调试”菜单中尝试a 来暂时停止程序。
这是一种开始调试的通用方法,不仅可以调试python程序,还可以调试需要调试该程序正在使用的DLL的任何程序。
请注意,如果您使用调试信息自己构建了DLL,并且被python应用程序利用,则上述建议最有效。如果它是没有源代码的第三方DLL,则仍然可以从Visual Studio进行调试,但是将需要了解汇编语言(因为源代码通常不可用)。
答案来源:https://stackoverflow.com/questions/27154325/how-to-debug-a-windows-dll-used-inside-python