在C#中实现IUnknown

ser*_*0ne 4 .net c# interface iunknown

我一直在寻找一个如何在C#中实现IUnknown的例子,但是没有找到任何合适的参考或解决方案.

它应该像......一样简单吗?

public interface IUnknown
{
    UInt32 AddRef();
    UInt32 QueryInterface([In] IntPtr riid, [Out] IntPtr ppvObject);
    UInt32 Release();
}
Run Code Online (Sandbox Code Playgroud)

......或者还有更多吗?

Seb*_*edl 7

你为什么要实现IUnknown?这是一个COM接口.如果要与COM进行互操作,请使用.Net/COM桥,它为您实现IUnknown.

  • 这不是一个答案。如果您不明白问题的可行性,请询问。 (2认同)

小智 6

[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface ISomeInterface
{
   ...
}
Run Code Online (Sandbox Code Playgroud)

此属性执行 ISomeInterface : IUnknown { ... }