我想从 C++ 代码创建一个 dll 并在 C# 中使用它。是否有从 C++ 创建 COM 对象的解决方案?
我不想使用System.Runtime.InteropServices
.
非常感谢
Of course that you can write COM+ objects with C++. Here's a tutorial.
有3种方法可以解决。
1) 使用 C# 中的 PInvoke 调用本机方法。
2) 使用 C++-CLI 创建一个层,将本机功能暴露给 C#。这是我推荐的性能明智的方法。
3) 将 C++ dll 编写为 COM 对象并从 C# 访问。需要 COM 知识,因此需要开发成本。
你可以使用ATL,它太简单了,你只需要注册dll。之后,您可以在所有 c# 程序中使用它