我嘗試在我的c#控制檯應用程序中綁定http://msdn.microsoft.com/en-us/library/ms235636.aspx中顯示的簡單C++ dll,但在運行時在DLL中添加EntryPointNotFoundException。我的測試課程是EntryPointNotFoundException當在C#中綁定C++ dll時
namespace BindingCppDllExample
{
public class BindingDllClass
{
[DllImport("MathFuncsDll.dll")]
public static extern double Add(double a, double b);
}
public class Program
{
public static void Main(string[] args)
{
double a = 2.3;
double b = 3.8;
double c = BindingDllClass.Add(a, b);
Console.WriteLine(string.Format("{0} + {1} = {2}", a, b, c));
}
}
}
什麼是不正確的?
可能的重複:http://stackoverflow.com/questions/5877349/pinvoke-and-entrypointnotfoundexception – Star
我會猜測你的CallingConvention不匹配。我還假設MathFuncsDll.dll沒有將名爲'Add'的方法聲明爲可導出的。 –