2012-03-07 284 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中轻松完成

相关问题