我想将 C# 方法挂接到用 C++ DLL 编写的 C++ 事件
C++ 端#include
extern "C"
{
typedef void (__stdcall *PFN_MYCALLBACK)();
int __stdcall MyUnmanagedApi(PFN_MYCALLBACK callback);
}
C#端
public delegate void MyCallback();
[DllImport("data_acquisition_sys.dll")]
public static extern void MyUnmanagedApi(MyCallback callback);
static void Main(string[] args) {
MyUnmanagedApi(
delegate()
{
Console.WriteLine("Called back by unmanaged side");
}
);
}
}
我跟着http://blogs.msdn.com/b/davidnotario/archive/2006/01/13/512436.aspx
错误
未处理的异常:System.EntryPointNotFoundException:无法在 DLL“data_acquisition_sys.dll”中找到名为“MyUnmanagedApi”的入口点。在 C:\Users\Public\Docume 中的 effect_detection_sys.Program.MyUnmanagedApi(MyCallback 回调) 中的 effect_detection_sys.Program.Main(String[] args)