1
我想在C#代碼中調用C++ dll。 我的頭文件 -在C#代碼中調用C++ dll代碼
#define MLTtest __declspec(dllexport)
class MLTtest testBuilder
{
public:
testBuilder(void);
~testBuilder(void);
int testfunc (int iNumber);
};
我.CPP類
int testBuilder::testfunc (int iNumber)
{
return iNumber*2 ;
}
下面是使用該DLL我的C#代碼。
class Program
{
[DllImport(@"C:\Sources\Operations\Online.Dev\BIN\Debug\Mlt1090d64.dll", CallingConvention = CallingConvention.Cdecl, EntryPoint = "testfunc")]
public static extern int testfunc(int n);
static void Main(string[] args)
{
try
{
int x = testfunc (50);
}
catch (Exception ex)
{
}
}
}
,但我不斷收到此異常例外:
無法找到名爲DLL 「C 'testfunc' 切入點:\來源\操作\ Online.Dev \ BIN \調試\ Mlt1090d64.dll」。
沒有那不是我現在編輯的原因。它的複製粘貼錯誤在這裏:) – Dilip
@Adrian響應是正確的......如果你真的想從C#調用C++(但注意它很脆弱,這是一種痛苦,最終它並不是真的有用),請參閱http://stackoverflow.com/a/42552494/613130 – xanatos