C# 如何调试使用p/invoke调用的本机代码
我正在使用jetbrains公司的Rider和CLion(我喜欢他们的工具)。我有一个用C编写的应用程序,可以与用C(OpenSSL)编写的库进行互操作 我知道,在VisualStudio中,我可以勾选“调试本机代码”框并完成它(只要我有PDB),但我要让rider和clion一起玩得很好,这真是一段艰难的时光 下面是我如何连接两个调试器的方法:C# 如何调试使用p/invoke调用的本机代码,c#,pinvoke,clion,rider,C#,Pinvoke,Clion,Rider,我正在使用jetbrains公司的Rider和CLion(我喜欢他们的工具)。我有一个用C编写的应用程序,可以与用C(OpenSSL)编写的库进行互操作 我知道,在VisualStudio中,我可以勾选“调试本机代码”框并完成它(只要我有PDB),但我要让rider和clion一起玩得很好,这真是一段艰难的时光 下面是我如何连接两个调试器的方法: 从rider中启动应用程序,让它在我要调试的代码之前命中断点 在CLion中加载OpenSSL源代码 运行ps-ef | grep TLS查找托管进程
ps-ef | grep TLS
查找托管进程ID所以我想知道,如何使用Rider和CLion在同一个应用程序中调试托管代码和本机代码?通常一个进程只能连接一个调试器。挑一个。@DavidHeffernan啊,我明白了。。。这有点棘手,因为如果无法在某一点停止托管代码,我将永远无法及时附加c调试器…您可以修改代码以启用它。或者让您的C调试器启动主机进程但挂起。