有没有办法调试从C#DllImport调用的c ++ dll?

Tae*_*hin 19 c# c++ pinvoke

我想知道是否有任何方法可以在VS 2010中调试从C#PInvoke调用的c ++ dll.我试图将项目附加到c#应用程序但它没有工作 - 没有停在断点处.

我还尝试在C++项目中使用OutputDebugString记录任何内容,但没有使用PInvoke调用打印.尽管存在这些问题,但实际功能运行良好.

任何建议将被认真考虑.

Han*_*ant 37

两者都需要打开相同的选项:项目>属性>调试选项卡>勾选"启用非托管代码调试"选项.

您现在可以在本机DLL代码中设置断点,一旦C#项目加载DLL,它就会从空心变为实心.由于使用了非托管调试引擎,OutputDebugString()输出将转到"输出"窗口.

  • 您还必须在启动项目的属性中设置此选项,而不仅仅是在使用非托管代码的项目中. (3认同)