作者james999 (無傷大雅)
看板C_Sharp
標題[問題] 沒有勾CLR選項,C#想引用C++的dll..
時間Mon Dec 4 19:19:15 2017
最近在開發C#專案,其中有項功能必須引用C++的dll,
不過該C++ dll在編譯時並未將CLR選項打勾,
所以當C#嘗試加入參考時失敗,
想請問這樣是否還能使用呢?
該用什麼方法,謝謝大家。
https://goo.gl/6Dd28i
這篇有勾CLR後,C#參考後有用了DllImport.
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.116.193.176
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_Sharp/M.1512386358.A.0FE.html
1F:推 yeo1987: C dllexport的static function可在C#以DllImport呼叫; 12/04 19:45
2F:推 groovy2016: 把程式貼上來? 12/04 19:45
3F:→ yeo1987: 以CLR撰寫的Managed類型加入參考就能使用 12/04 19:46
y大您好,
所以C dllexport的static function才能被C#呼嗎?
如果不是的話就不行囉?
因為上述範例網頁中是有勾選CLR,
所以才可以加入參考?那為何又需要DllImport呢@@
程式碼..
https://github.com/xiongziliang/ZLMediaKit
※ 編輯: james999 (61.230.199.171), 12/04/2017 20:53:28
4F:推 yeo1987: 你可以看範例網頁中的CppMathFunc.h, "ref class" 12/05 00:31
5F:→ yeo1987: .NET Assembly才能被.NET加入參考 12/05 00:32
6F:→ yeo1987: 關鍵字"C++/CLI", 查查相關的資訊 12/05 00:32
7F:→ yeo1987: DllImport的部分可以查"P/Invoke" 12/05 00:34
8F:→ james999: 謝謝!問題已解決~~~ 12/08 01:16