我有一个 C++ DLL,它需要在 C# 类库中调用一个函数(传递一个值,返回一个值)。
我唯一的选择是给 C# DLL 一个 COM 接口并使用 IDispatch 从 C++ 调用它吗?
这是最好的方法吗?
这里有几个可供您选择的选项
该项目为类中的静态方法创建 dll 导出。然后,您可以从非托管代码调用 C# 静态方法。
一种可行的方法是通过 COM 调用它。您可以使用Regasm 工具来创建 COM 包装器。
这不是唯一的选择。
您还可以将 C++ DLL 编译为托管 DLL。
您可以将 C# DLL 作为服务托管并远程访问它。