http://msdn.microsoft.com/en-us/library/ms235636.aspxに表示される単純なC++ DLLをC#コンソールアプリケーションにバインドしようとしましたが、実行時にDLL内でEntryPointNotFoundExceptionが発生します。私のテストクラスはC#でDLLをバインドするときにEntryPointNotFoundExceptionが発生する
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'という名前のメソッドをエクスポート可能として宣言していないと仮定します。 –