在Visual Studio Windows应用中的VB或C#与C ++之间进行通信

时间:2019-05-08 13:27:39

标签: c# c++ vb.net visual-studio communication

Tl; dr我正在寻找一些示例代码,这些示例代码向我展示了如何在VB或C#中调用C ++函数,反之亦然,当它们都在同一个应用中且没有DLL时。


我已经获得了一个旧的Borland C ++应用程序,可以转换为MS Visual Studio 2015并进行更新。请注意,我主要是一名嵌入式开发人员,几年前我在Borland IDE上都没有多少Windows编码经验。

有很多我们想重用而不是重新编码的C ++代码。幸运的是,它非常模块化。

很显然,我们不能重用Borland Form的定义,所以我将手动重新创建它并重用大部分代码。

除了Visual Studio不再支持GUI的C ++。


[更新]来自@Panagiotis的评论

  

Visual Studio不再支持GUI的C ++。不对。 MFC可以作为可选组件进行安装。

A,由于公司政策,我无法安装MFC。而且,即使有可能改变上述政策,也要等到项目结束很久之后才能这样做。我不能改变它,无论什么:-( [/更新]


谷歌搜索建议我可以以某种方式使用Qt或旧版本的MFC。我宁愿避免那样。

因此,我想我将在一个小时左右的时间内用VB或C#激活一个GUI,然后找到一种使其与现有代码进行通信的方法。

我看到以下可能性:

  • 如果IDE不提供C ++表单设计器,则可以通过C ++在运行时创建GUI
  • 函数直接从VB / C#调用C ++并返回 o在两者之间发送Windows消息,但不需要它,并且可以在非可视文件中包含一个消息(以及如何将其传达给GUI)?即我只想要一个消息队列
  • 使用原始套接字进行通信
  • 以某种方式将现有C ++代码插入DLL?但是反过来,它将使用原始套接字和TCP与另一台设备进行通信

让我们更喜欢分发一个.EXE,这对于不是Windows程序员(或VB或C#)的人来说是最简单的方法,并且有示例链接吗?

0 个答案:

没有答案