.net - 如何在 Windows 中从非托管 C++ 代码调用托管 .NET 代码,反之亦然?

标签 .net c++ pinvoke unmanaged managed

我有一个使用 VC 6.0 开发的纯 C++ 应用程序。我希望此应用程序使用用 C# 开发的库。如何从我的 native 可执行文件调用 C# 库中的方法?我不想将我的非托管 C++ native 应用程序转换为托管代码。同样,我该如何做相反的事情? PInvoke 是唯一的选择吗?对于相同的任何引用或指针,我将不胜感激。

最佳答案

要从非托管 C++ 调用托管代码,请使用 ClrCreateManagedInstance ,或将托管程序集中的类型导出为 COM 可见,并使用 COM。要从托管代码调用非托管代码,请使用 COM 或 P/Invoke。

关于.net - 如何在 Windows 中从非托管 C++ 代码调用托管 .NET 代码,反之亦然?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1046499/

相关文章:

.net - 将特定 .net 对象公开为 JSON

c# - 调整放置在 byte[] 数组中的图像的大小

c++ - Visual C++ Form 项目中的 Boost.asio

c# - 将带有 char* 的结构编码到 C#

.net - 将字符串从 Delphi dll 传递到 .net

c# - 读取包含希腊字符的 CSV 文件

c# - 加密函数在 windows 和 unix 上给出不同的输出

c++ - 使用 curllib 构建应用程序

c++ - 如何创建变量快捷方式

c# - 向窗口发送 CTRL-S 消息