我有一個C程序,我創建了一個DLL文件。我正在使用Windows Vista和Visual C++。從C#程序的DLL訪問方法
現在我需要從該C#代碼的Main()方法訪問該DLL中的方法。什麼是這樣做的步驟?
到目前爲止,我已經添加了DLL文件作爲參考,然後我該怎麼辦?
這僅僅是一個例子:
int main1(void) {
prinf("Hello World");
}
請注意,這個類也使我們的其他的.lib功能,但我能成功創建DLL出來。 (我不知道這是否相關)
現在我需要從我的C#Main()中訪問此方法;
[STAThread]
static void Main()
{
// I need to call that main1() method here
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
添加對本機C DLL的引用是不可能的。顯然你並沒有使用真正的C DLL,也許是C++/CLI。在這種情況下沒有什麼特別的要求,你公開的「ref class」聲明可以直接在C#程序中使用。 –
是的,它是一個C++/CLI項目。根據你的答案,它似乎可以直接完成,說'ref class'你的意思是我的C類嗎?我如何讓它公開? 我到目前爲止所做的步驟是,添加dll作爲參考,並添加了以下語句'using detect.h',並嘗試從C#,Main()方法中訪問它,如: 'detect.the_method_i_need()',但它沒有像那樣工作。 HELP – illep