从C ++调用Visual Basic函数

时间:2014-07-29 20:58:08

标签: c++ vb.net calling-convention

我有一个包含.cpp文件和.vb文件的项目。在我的一个.vb文件中,我有一个函数,我需要在我的.cpp文件中调用该函数。 即 在.cpp:

If (TrueFunction() == true){
}

在.vb:

Private Function TrueFunction() As Boolean
Return true
End Function

如果我尝试调用TrueFunction,则报告为未定义。我用这两种语言都不好,所以请原谅我的例子中的任何错误。

任何帮助表示赞赏!谢谢!

2 个答案:

答案 0 :(得分:1)

这不可能就是这样。两者互操作的方法是通过COM或C ++ / CLI混合模式DLL。通过COM公开你的VB组件,然后在C ++中你可以实例化COM对象并调用这个TrueFunction方法。

请参阅:

答案 1 :(得分:1)

C ++和VB.NET之间有一些不同的互操作选项。它们都不涉及vb和cpp源代码之间的互操作。

这是一个很好的getting started guide

  1. COM interop - C# examples但同样适用于VB.NET
  2. C style interop(又名p / invoke) - Again C# examples
  3. Create a managed wrapper in C++