调试本机(ANSI C DLL)和托管(C#Assembly)代码

时间:2010-08-25 09:46:37

标签: debugging visual-studio-2010 dll native managed

我在调试包含原生ANSI C DLL项目和托管C#/ WPF应用程序项目的解决方案时遇到了一些麻烦。

我使用LoadLibrary / GetProcAddress Win32 API函数调用DLL导出的函数(DllImport属性不适用于我的程序,因为用户选择了DLL)。这两个项目都是使用Debug配置构建的。本机DLL被复制到C#程序的bin / Debug目录中。当我调试C#项目时,我无法进入本机代码。

有没有办法进入原生代码?

当我使用C#程序调试DLL项目时,它工作,但我无法进入托管代码...

我正在使用Visual Studio 2010 Professional和Visual Studio 2010 Ultimate。

LG, 多米尼克

1 个答案:

答案 0 :(得分:4)

在C#Project:Project + Properties,Debug选项卡中,勾选“Enabled unmanaged code debugging”。从托管代码单步执行到非托管代码是行不通的。您需要在要调试的DLL函数上设置断点。