2 // System.Runtime.InteropServices.ComTypes.ITypeInfo2.cs
5 // Kazuki Oikawa (kazuki@panicode.com)
10 namespace System
.Runtime
.InteropServices
.ComTypes
13 [Guid("00020412-0000-0000-C000-000000000046")]
14 [InterfaceType(ComInterfaceType
.InterfaceIsIUnknown
)]
15 public interface ITypeInfo2
: ITypeInfo
17 new void AddressOfMember (int memid
, INVOKEKIND invKind
, out IntPtr ppv
);
18 new void CreateInstance ([MarshalAs (UnmanagedType
.IUnknown
)] object pUnkOuter
, [In
] ref Guid riid
, [MarshalAs (UnmanagedType
.IUnknown
)] out object ppvObj
);
19 new void GetContainingTypeLib (out ITypeLib ppTLB
, out int pIndex
);
20 new void GetDllEntry (int memid
, INVOKEKIND invKind
, IntPtr pBstrDllName
, IntPtr pBstrName
, IntPtr pwOrdinal
);
21 new void GetDocumentation (int index
, out string strName
, out string strDocString
, out int dwHelpContext
, out string strHelpFile
);
22 new void GetIDsOfNames ([In
, MarshalAs(UnmanagedType
.LPArray
, ArraySubType
= (UnmanagedType
.LPWStr
), SizeParamIndex
=1)] string[] rgszNames
, int cNames
, [Out
, MarshalAs (UnmanagedType
.LPArray
, SizeParamIndex
=1)] int[] pMemId
);
24 new void GetImplTypeFlags (int index
, out IMPLTYPEFLAGS pImplTypeFlags
);
25 void GetTypeKind (out TYPEKIND pTypeKind
);
26 void GetTypeFlags (out int pTypeFlags
);
27 new void GetFuncDesc (int index
, out IntPtr ppFuncDesc
);
28 new void GetMops (int memid
, out string pBstrMops
);
29 new void GetNames (int memid
, [Out
, MarshalAs (UnmanagedType
.LPArray
, SizeParamIndex
=2)] string[] rgBstrNames
, int cMaxNames
, out int pcNames
);
30 new void GetRefTypeInfo (int hRef
, out ITypeInfo ppTI
);
31 new void GetRefTypeOfImplType (int index
, out int href
);
32 new void GetTypeAttr (out IntPtr ppTypeAttr
);
33 new void GetTypeComp (out ITypeComp ppTComp
);
34 new void GetVarDesc (int index
, out IntPtr ppVarDesc
);
35 void GetFuncIndexOfMemId (int memid
, INVOKEKIND invKind
, out int pFuncIndex
);
36 void GetVarIndexOfMemId (int memid
, out int pVarIndex
);
37 void GetCustData (ref Guid guid
, out object pVarVal
);
38 void GetFuncCustData(int index
, ref Guid guid
, out object pVarVal
);
39 void GetParamCustData(int indexFunc
, int indexParam
, ref Guid guid
, out object pVarVal
);
40 void GetVarCustData(int index
, ref Guid guid
, out object pVarVal
);
41 void GetImplTypeCustData(int index
, ref Guid guid
, out object pVarVal
);
43 void GetDocumentation2(int memid
, out string pbstrHelpString
, out int pdwHelpStringContext
, out string pbstrHelpStringDll
);
44 void GetAllCustData(IntPtr pCustData
);
45 void GetAllFuncCustData(int index
, IntPtr pCustData
);
46 void GetAllParamCustData(int indexFunc
, int indexParam
, IntPtr pCustData
);
47 void GetAllVarCustData(int index
, IntPtr pCustData
);
48 void GetAllImplTypeCustData(int index
, IntPtr pCustData
);
49 new void Invoke ([MarshalAs (UnmanagedType
.IUnknown
)] object pvInstance
, int memid
, short wFlags
, ref DISPPARAMS pDispParams
, IntPtr pVarResult
, IntPtr pExcepInfo
, out int puArgErr
);
51 new void ReleaseTypeAttr (IntPtr pTypeAttr
);
53 new void ReleaseFuncDesc (IntPtr pFuncDesc
);
55 new void ReleaseVarDesc (IntPtr pVarDesc
);