C# tlbimp不';t为接口生成包装器不包括在';图书馆';部分

C# tlbimp不';t为接口生成包装器不包括在';图书馆';部分,c#,com,idl,tlbimp,C#,Com,Idl,Tlbimp,我正在尝试为COM库创建COM包装器类。我首先使用MIDL将.IDL编译成.TLB,然后使用TlbImp生成托管包装程序集。但是,我发现一些接口没有包含在托管包装中,原因是“库”部分没有提到它们 有没有办法让最终托管包装程序集包含所有接口,而不是更改.IDL并在“库”中手动写入所有接口?您能否提供有关缺少哪种接口的更多详细信息,通常tlbimp在创建RCW@MrinalKamboj谢谢你的回复。这是一个内部COM库,因此我无法直接共享其.IDL。基本上,IDL中定义了一些接口,但“库”部分中缺少

我正在尝试为COM库创建COM包装器类。我首先使用MIDL将.IDL编译成.TLB,然后使用TlbImp生成托管包装程序集。但是,我发现一些接口没有包含在托管包装中,原因是“库”部分没有提到它们


有没有办法让最终托管包装程序集包含所有接口,而不是更改.IDL并在“库”中手动写入所有接口?

您能否提供有关缺少哪种接口的更多详细信息,通常tlbimp在创建RCW@MrinalKamboj谢谢你的回复。这是一个内部COM库,因此我无法直接共享其.IDL。基本上,IDL中定义了一些接口,但“库”部分中缺少这些接口。TlbImp似乎只为“库”中提到的接口和类生成包装,这是我的问题。这是正确的。对于这样的接口,您必须手动声明它们。一些高级MIDL声明,如
[out,size_is(,*pSize)]
,将需要自定义封送处理。在
库中未定义或引用的接口首先不会进入TLB文件。由于它们不在TLB中,TlbImp从未看到它们,也不可能为它们生成包装器。