2011-11-30 173 views
3

我有一个我编写的C++程序,我想给它一个用户界面。有什么办法可以运行C++程序,并将程序中的信息放到VB应用程序的UI上?如何将VB程序与C++程序混合使用

+0

当你说VB,你的意思是VB.Net或者VB6 - 甚至VBA(因为你所标记的问题VBA)? – MarkJ

回答

5

当然。

使用

  • COM
  • COM互操作
  • 的P/Invoke(在VB又名Declare
  • 哦,我忘了:C++/CLR,如果你打算使用Windows只

我建议你用托管语言编写整个应用程序(例如VB.Net),并且只调用C++库函数来执行关键工作(或者您已经拥有的遗留代码)。

+0

在VB端如何处理纯粹的C接口和'Declare'? –

+1

@KerrekSB这是P/Invoke – sehe

1

你可以混合C++和.NET

最简单的是,如果你的目标你的C++代码的CLR,但你也可以混合使用.NET和本机代码。

无论哪种方式,您基本上都会让您的C++程序成为VB代码可以使用的库。

2

我认为最简单的解决方案是将您的C++代码放入DLL中,并从VB调用您的代码。看看这篇文章的详细信息...

http://www.codeproject.com/kb/DLL/XDllPt1.aspx

+0

这是一篇VB6文章 – MarkJ

+1

概念仍然是一样的...... –

+0

这些概念大致相同,但细节不同。例如,VB6'Integer'是一个.Net'Short'。 – MarkJ