我想从C ++代码创建一个dll并在C#中使用它。有没有从C ++创建COM对象的解决方案?
我不想使用System.Runtime.InteropServices
。
非常感谢
答案 0 :(得分:4)
当然你可以用C ++编写COM +对象。 Here's a tutorial
答案 1 :(得分:4)
答案 2 :(得分:1)
有三种方法可以解决这个问题。
1)使用C#中的PInvoke调用本机方法。
2)使用C ++ - CLI创建一个向C#公开本机功能的层。这是我推荐的方法性能明智。
3)将C ++ dll编写为COM对象并从C#进行访问。需要COM知识,因此需要开发成本。
答案 3 :(得分:0)
你可以使用ATL,它太简单了,你只需要注册dll。之后,您可以在所有c#programms中使用它