3

我通过加载类型库 (TLB) 并使用和迭代类型来获取 COM 函数的ITypeLib地址ITypeInfo。调用AddressOfMemberITypeInfo 的函数后,我面临以下异常:

System.Runtime.InteropServices.COMException (0x800288BD):操作的模块类型错误。(来自 HRESULT 的异常:0x800288BD (TYPE_E_BADMODULEKIND))在 System.Runtime.InteropServices.ComTypes.ITypeInfo.AddressOfMember(Int32 memid,INVOKEKIND invKind,IntPtr& ppv)。

我该如何摆脱这个异常?

4

1 回答 1

1

我不确定,以前没有做过这种事情,但是你说你正在加载 tlb 文件?可能是addressofmember需要加载包含com对象的dll,我认为tlb文件只是接口的描述,因此addressofmember不会有任何代码要加载。

于 2011-02-15T13:54:53.707 回答