2012-03-07 466 views
3

我想在我的應用程序中同時使用C++和C#。在C++和C#之間進行通信?

C#用於GUI設計和C++處理。

但我對此沒有任何認識。如何溝通他們。

我不知道我在哪裏開始和研究。

有人可以告訴我關於這項技術的概況?如果有人有關於這個話題的文件,請給我。

我正在使用Visual Studio 2010進行開發。

非常感謝,

牛逼& T組

+1

這是一個關於如何在c#中使用C++庫的例子。 http://www.functionx.com/csharp2/libraries/cppcli.htm – v01d 2012-03-07 11:37:18

+3

重複? http://stackoverflow.com/questions/574801/call-c-library-in-c-sharp – Guillaume 2012-03-07 11:39:11

+0

他們是非常有用的,我會讀它們。謝謝大家。 – TTGroup 2012-03-07 11:47:48

回答

2

這取決於你的應用程序的架構應該是,比如,你可以創建兩個不同的應用一個是核心,另一個是GUI和通過消息傳遞。

在Windows上,例如,可以使用Windows message queue來讓兩個端點相互通信。

4

您正在尋找的技術是C++/CLI,它是C++的專有語言擴展,允許與.Net代碼交互。

其基本思想是這樣的:您可以像以前一樣在可移植的ISO C++中編寫C++庫。然後在C++/CLI中爲你想從C#調用的那些C++組件(或任何其他.Net語言)添加一個瘦包裝器。 請注意,C++/CLI僅用於編寫與.Net交互的代碼。不要試圖在CLI中編寫實現,因爲最終會得到不可移植的代碼,並且可能比純C++版本難以維護。

1

您可以使用C++ CLI或本機C++。 C++ CLI是託管代碼,本地C++將不受CLR的管理。兩者之間的選擇取決於您的使用情況。 C++ CLI有一定的限制。

1

它完全取決於架構和要求。你可以用C++(lib)編寫處理指令,在GUI中使用它們。可以在VS 2010中輕鬆完成

相關問題