C#如何调试VC编译的DLL

 示例:

1、C++代码


/* 文件名:lib.h */
#ifndef LIB_H
#define LIB_H
extern "C" int __declspec(dllexport)add(int x, int y);
#endif



/* 文件名:lib.cpp */
#include "lib.h"

int add(int x, int y)

{
return x + y;
}

2、C# 调用代码

[DllImport(@".\mydll.dll", CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = true)]
public static extern int add(int a, int b);


VC调VC的DLL时,可以跟踪到程序里,其它的和.NET有关的就只能取得结果,跟踪不进去。

可以把C#项目属性改为启用非托管调试,在C#中调用的地方添加断点,F11进入dll函数调试


参考:http://bbs.csdn.net/topics/100049220

你可能感兴趣的:(C#如何调试VC编译的DLL)