1.有時候需要用C#調用外部的dll,例如c++寫的dll,首先需要保證dll的編譯環境與本項目的環境是相同的,例如都是x86位或者x64位
2.調用聲明和dll內的聲明一致:
function Test_Add(A,B:Integer):Integer;stdcall;external 'Test.dll';
例如c++寫的函數是兩個int的參數,調用方式為stdcall,返回為int類型,在C#調用時需要同樣聲明。
[DllImport("Test.dll", EntryPoint = "Test_Add", ExactSpelling = false, CallingConvention = CallingConvention.StdCall)]
public static extern int Add(int a, int b);