2012-10-03 60 views
2

我想知道如何導出一個函數,以便我可以在其他編程語言中使用它?如何導出c#函數,以便可以從非託管環境調用它?

我想在非託管編程語言中使用dll函數。

我該怎麼辦?

+2

你還需要'.NET框架'來運行c#。 – elyashiv

+0

Ofc我需要.net框架,所以我可以運行C#來創建代碼,但我需要知道如何導出像C++那樣的函數 – Johnnie

+0

總之 - 您需要初始化.NET框架,然後使用反射調用它 –

回答

2

您將需要與對你的.NET的/tlb命令運行regasm.exe彙編,然後從C++中引用輸出類型庫(tlb)。

我以前做過這麼多次,這可能是一個痛苦,尤其是當你去部署它。我建議使用/codebase開關,該開關告訴註冊表何時在COM上下文中實例化其類時找到.NET程序集的位置。這使得它很容易在註冊表中找到,並在必要時進行修改。

相關問題