-//\r
-// System.Runtime.InteropServices.ComTypes.ITypeInfo2.cs\r
-//\r
-// Author:\r
-// Kazuki Oikawa (kazuki@panicode.com)\r
-//\r
-\r
-#if NET_2_0\r
-using System;\r
-\r
-namespace System.Runtime.InteropServices.ComTypes\r
-{\r
- [ComImport]\r
- [Guid("00020412-0000-0000-C000-000000000046")]\r
- [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]\r
- public interface ITypeInfo2 : ITypeInfo\r
- {\r
- void GetTypeKind (out TYPEKIND pTypeKind);\r
- void GetTypeFlags (out int pTypeFlags);\r
- void GetFuncIndexOfMemId (int memid, INVOKEKIND invKind, out int pFuncIndex);\r
- void GetVarIndexOfMemId (int memid, out int pVarIndex);\r
- void GetCustData (ref Guid guid, out object pVarVal);\r
- void GetFuncCustData(int index, ref Guid guid, out object pVarVal);\r
- void GetParamCustData(int indexFunc, int indexParam, ref Guid guid, out object pVarVal);\r
- void GetVarCustData(int index, ref Guid guid, out object pVarVal);\r
- void GetImplTypeCustData(int index, ref Guid guid, out object pVarVal);\r
- [LCIDConversion (1)]\r
- void GetDocumentation2(int memid, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll);\r
- void GetAllCustData(IntPtr pCustData);\r
- void GetAllFuncCustData(int index, IntPtr pCustData);\r
- void GetAllParamCustData(int indexFunc, int indexParam, IntPtr pCustData);\r
- void GetAllVarCustData(int index, IntPtr pCustData);\r
- void GetAllImplTypeCustData(int index, IntPtr pCustData);\r
- }\r
-}\r
-#endif
\ No newline at end of file
+//
+// System.Runtime.InteropServices.ComTypes.ITypeInfo2.cs
+//
+// Author:
+// Kazuki Oikawa (kazuki@panicode.com)
+//
+
+using System;
+
+namespace System.Runtime.InteropServices.ComTypes
+{
+ [ComImport]
+ [Guid("00020412-0000-0000-C000-000000000046")]
+ [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
+ public interface ITypeInfo2 : ITypeInfo
+ {
+ new void AddressOfMember (int memid, INVOKEKIND invKind, out IntPtr ppv);
+ new void CreateInstance ([MarshalAs (UnmanagedType.IUnknown)] object pUnkOuter, [In] ref Guid riid, [MarshalAs (UnmanagedType.IUnknown)] out object ppvObj);
+ new void GetContainingTypeLib (out ITypeLib ppTLB, out int pIndex);
+ new void GetDllEntry (int memid, INVOKEKIND invKind, IntPtr pBstrDllName, IntPtr pBstrName, IntPtr pwOrdinal);
+ new void GetDocumentation (int index, out string strName, out string strDocString, out int dwHelpContext, out string strHelpFile);
+ new void GetIDsOfNames ([In, MarshalAs(UnmanagedType.LPArray, ArraySubType = (UnmanagedType.LPWStr), SizeParamIndex=1)] string[] rgszNames, int cNames, [Out, MarshalAs (UnmanagedType.LPArray, SizeParamIndex=1)] int[] pMemId);
+
+ new void GetImplTypeFlags (int index, out IMPLTYPEFLAGS pImplTypeFlags);
+ void GetTypeKind (out TYPEKIND pTypeKind);
+ void GetTypeFlags (out int pTypeFlags);
+ new void GetFuncDesc (int index, out IntPtr ppFuncDesc);
+ new void GetMops (int memid, out string pBstrMops);
+ new void GetNames (int memid, [Out, MarshalAs (UnmanagedType.LPArray, SizeParamIndex=2)] string[] rgBstrNames, int cMaxNames, out int pcNames);
+ new void GetRefTypeInfo (int hRef, out ITypeInfo ppTI);
+ new void GetRefTypeOfImplType (int index, out int href);
+ new void GetTypeAttr (out IntPtr ppTypeAttr);
+ new void GetTypeComp (out ITypeComp ppTComp);
+ new void GetVarDesc (int index, out IntPtr ppVarDesc);
+ void GetFuncIndexOfMemId (int memid, INVOKEKIND invKind, out int pFuncIndex);
+ void GetVarIndexOfMemId (int memid, out int pVarIndex);
+ void GetCustData (ref Guid guid, out object pVarVal);
+ void GetFuncCustData(int index, ref Guid guid, out object pVarVal);
+ void GetParamCustData(int indexFunc, int indexParam, ref Guid guid, out object pVarVal);
+ void GetVarCustData(int index, ref Guid guid, out object pVarVal);
+ void GetImplTypeCustData(int index, ref Guid guid, out object pVarVal);
+ [LCIDConversion (1)]
+ void GetDocumentation2(int memid, out string pbstrHelpString, out int pdwHelpStringContext, out string pbstrHelpStringDll);
+ void GetAllCustData(IntPtr pCustData);
+ void GetAllFuncCustData(int index, IntPtr pCustData);
+ void GetAllParamCustData(int indexFunc, int indexParam, IntPtr pCustData);
+ void GetAllVarCustData(int index, IntPtr pCustData);
+ void GetAllImplTypeCustData(int index, IntPtr pCustData);
+ new void Invoke ([MarshalAs (UnmanagedType.IUnknown)] object pvInstance, int memid, short wFlags, ref DISPPARAMS pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, out int puArgErr);
+ [PreserveSig]
+ new void ReleaseTypeAttr (IntPtr pTypeAttr);
+ [PreserveSig]
+ new void ReleaseFuncDesc (IntPtr pFuncDesc);
+ [PreserveSig]
+ new void ReleaseVarDesc (IntPtr pVarDesc);
+ }
+}