COM不支持泛型?复制此List<T>
的最佳方法是什么,以便在tlh文件中显示COM。
编辑::
C#::
[ComVisible(true)]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
[Guid("FA677671-5E26-4307-AD2B-19BF1E7AFF8B")]
public interface IEvents
{
IEvents[] CreateListeners();
}
在C ++中我有,
CComSafeArray<CSharp::IEvents> ppSA;
pInterface->CreateListeners(ppSA->GetSafeArrayPtr());
我的问题是我应该在这个Create实例函数中做什么,以便复制这个语句 列表evt = new List(); 在托管c#?
答案 0 :(得分:2)
不支持正确的泛型类型:
COM模型不支持泛型类型的概念。因此,泛型类型不能直接用于COM互操作。
http://msdn.microsoft.com/en-us/library/ms229590.aspx
也许这是开始的地方: