【发布时间】:2012-08-07 17:40:40
【问题描述】:
我一直在寻找一种从 C++ DLL 项目调用在 C# EXE 项目(VS 2008)中编写的函数的方法。如果可能的话,我可以将 C# 代码作为 C++ 项目本身的一部分。我所能找到的只是从 C++ 调用 C# DLL。
最终我想从 VB6 调用 C# 代码,但我以这种方式提出问题,因为我不相信没有中间步骤就可以采用后一种方式。
谢谢,
伊恩
【问题讨论】:
标签: c# c++ visual-c++
我一直在寻找一种从 C++ DLL 项目调用在 C# EXE 项目(VS 2008)中编写的函数的方法。如果可能的话,我可以将 C# 代码作为 C++ 项目本身的一部分。我所能找到的只是从 C++ 调用 C# DLL。
最终我想从 VB6 调用 C# 代码,但我以这种方式提出问题,因为我不相信没有中间步骤就可以采用后一种方式。
谢谢,
伊恩
【问题讨论】:
标签: c# c++ visual-c++
最终我想从 VB6 调用 C# 代码,但我以这种方式提出问题,因为我不相信没有中间步骤就可以采用后一种方式。
您可以将 C# 类注册为对 COM 可见,然后直接从 C++ 或 VB6 调用它们。
有关详细信息,请参阅 MSDN 上的Example COM Class,以及Interoperability。
【讨论】:
您可以使用 /CLR 选项编译您的 c++ 项目,然后在其中调用 C#。为此,您需要包含 vcclr.h,然后为您需要调用的每个 dll 添加一条 using 语句。
#include <vcclr.h>
#using <System.dll>
【讨论】: