home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / oaidl.h < prev    next >
C/C++ Source or Header  |  1998-04-25  |  224KB  |  6,827 lines

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2.  
  3.  
  4. /* File created by MIDL compiler version 3.03.0110 */
  5. /* at Thu Sep 11 10:57:08 1997
  6.  */
  7. /* Compiler settings for oaidl.idl:
  8.     Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  9.     error checks: none
  10. */
  11. //@@MIDL_FILE_HEADING(  )
  12.  
  13.  
  14. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  15. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  16. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  17. #endif
  18.  
  19. #include "rpc.h"
  20. #include "rpcndr.h"
  21.  
  22. #ifndef __RPCNDR_H_VERSION__
  23. #error this stub requires an updated version of <rpcndr.h>
  24. #endif // __RPCNDR_H_VERSION__
  25.  
  26. #ifndef COM_NO_WINDOWS_H
  27. #include "windows.h"
  28. #include "ole2.h"
  29. #endif /*COM_NO_WINDOWS_H*/
  30.  
  31. #ifndef __oaidl_h__
  32. #define __oaidl_h__
  33.  
  34. #ifdef __cplusplus
  35. extern "C"{
  36. #endif 
  37.  
  38. /* Forward Declarations */ 
  39.  
  40. #ifndef __ICreateTypeInfo_FWD_DEFINED__
  41. #define __ICreateTypeInfo_FWD_DEFINED__
  42. typedef interface ICreateTypeInfo ICreateTypeInfo;
  43. #endif     /* __ICreateTypeInfo_FWD_DEFINED__ */
  44.  
  45.  
  46. #ifndef __ICreateTypeInfo2_FWD_DEFINED__
  47. #define __ICreateTypeInfo2_FWD_DEFINED__
  48. typedef interface ICreateTypeInfo2 ICreateTypeInfo2;
  49. #endif     /* __ICreateTypeInfo2_FWD_DEFINED__ */
  50.  
  51.  
  52. #ifndef __ICreateTypeLib_FWD_DEFINED__
  53. #define __ICreateTypeLib_FWD_DEFINED__
  54. typedef interface ICreateTypeLib ICreateTypeLib;
  55. #endif     /* __ICreateTypeLib_FWD_DEFINED__ */
  56.  
  57.  
  58. #ifndef __ICreateTypeLib2_FWD_DEFINED__
  59. #define __ICreateTypeLib2_FWD_DEFINED__
  60. typedef interface ICreateTypeLib2 ICreateTypeLib2;
  61. #endif     /* __ICreateTypeLib2_FWD_DEFINED__ */
  62.  
  63.  
  64. #ifndef __IDispatch_FWD_DEFINED__
  65. #define __IDispatch_FWD_DEFINED__
  66. typedef interface IDispatch IDispatch;
  67. #endif     /* __IDispatch_FWD_DEFINED__ */
  68.  
  69.  
  70. #ifndef __IEnumVARIANT_FWD_DEFINED__
  71. #define __IEnumVARIANT_FWD_DEFINED__
  72. typedef interface IEnumVARIANT IEnumVARIANT;
  73. #endif     /* __IEnumVARIANT_FWD_DEFINED__ */
  74.  
  75.  
  76. #ifndef __ITypeComp_FWD_DEFINED__
  77. #define __ITypeComp_FWD_DEFINED__
  78. typedef interface ITypeComp ITypeComp;
  79. #endif     /* __ITypeComp_FWD_DEFINED__ */
  80.  
  81.  
  82. #ifndef __ITypeInfo_FWD_DEFINED__
  83. #define __ITypeInfo_FWD_DEFINED__
  84. typedef interface ITypeInfo ITypeInfo;
  85. #endif     /* __ITypeInfo_FWD_DEFINED__ */
  86.  
  87.  
  88. #ifndef __ITypeInfo2_FWD_DEFINED__
  89. #define __ITypeInfo2_FWD_DEFINED__
  90. typedef interface ITypeInfo2 ITypeInfo2;
  91. #endif     /* __ITypeInfo2_FWD_DEFINED__ */
  92.  
  93.  
  94. #ifndef __ITypeLib_FWD_DEFINED__
  95. #define __ITypeLib_FWD_DEFINED__
  96. typedef interface ITypeLib ITypeLib;
  97. #endif     /* __ITypeLib_FWD_DEFINED__ */
  98.  
  99.  
  100. #ifndef __ITypeLib2_FWD_DEFINED__
  101. #define __ITypeLib2_FWD_DEFINED__
  102. typedef interface ITypeLib2 ITypeLib2;
  103. #endif     /* __ITypeLib2_FWD_DEFINED__ */
  104.  
  105.  
  106. #ifndef __ITypeChangeEvents_FWD_DEFINED__
  107. #define __ITypeChangeEvents_FWD_DEFINED__
  108. typedef interface ITypeChangeEvents ITypeChangeEvents;
  109. #endif     /* __ITypeChangeEvents_FWD_DEFINED__ */
  110.  
  111.  
  112. #ifndef __IErrorInfo_FWD_DEFINED__
  113. #define __IErrorInfo_FWD_DEFINED__
  114. typedef interface IErrorInfo IErrorInfo;
  115. #endif     /* __IErrorInfo_FWD_DEFINED__ */
  116.  
  117.  
  118. #ifndef __ICreateErrorInfo_FWD_DEFINED__
  119. #define __ICreateErrorInfo_FWD_DEFINED__
  120. typedef interface ICreateErrorInfo ICreateErrorInfo;
  121. #endif     /* __ICreateErrorInfo_FWD_DEFINED__ */
  122.  
  123.  
  124. #ifndef __ISupportErrorInfo_FWD_DEFINED__
  125. #define __ISupportErrorInfo_FWD_DEFINED__
  126. typedef interface ISupportErrorInfo ISupportErrorInfo;
  127. #endif     /* __ISupportErrorInfo_FWD_DEFINED__ */
  128.  
  129.  
  130. #ifndef __ITypeFactory_FWD_DEFINED__
  131. #define __ITypeFactory_FWD_DEFINED__
  132. typedef interface ITypeFactory ITypeFactory;
  133. #endif     /* __ITypeFactory_FWD_DEFINED__ */
  134.  
  135.  
  136. #ifndef __ITypeMarshal_FWD_DEFINED__
  137. #define __ITypeMarshal_FWD_DEFINED__
  138. typedef interface ITypeMarshal ITypeMarshal;
  139. #endif     /* __ITypeMarshal_FWD_DEFINED__ */
  140.  
  141.  
  142. #ifndef __IRecordInfo_FWD_DEFINED__
  143. #define __IRecordInfo_FWD_DEFINED__
  144. typedef interface IRecordInfo IRecordInfo;
  145. #endif     /* __IRecordInfo_FWD_DEFINED__ */
  146.  
  147.  
  148. /* header files for imported files */
  149. #include "objidl.h"
  150.  
  151. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  152. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  153.  
  154. /****************************************
  155.  * Generated header for interface: __MIDL_itf_oaidl_0000
  156.  * at Thu Sep 11 10:57:08 1997
  157.  * using MIDL 3.03.0110
  158.  ****************************************/
  159. /* [local] */ 
  160.  
  161.  
  162. //+-------------------------------------------------------------------------
  163. //
  164. //  Microsoft Windows
  165. //  Copyright 1992 - 1998 Microsoft Corporation.
  166. //
  167. //--------------------------------------------------------------------------
  168. #if ( _MSC_VER >= 800 )
  169. #pragma warning(disable:4201)    /* Nameless struct/union */
  170. #endif
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_v0_0_c_ifspec;
  192. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_v0_0_s_ifspec;
  193.  
  194. #ifndef __IOleAutomationTypes_INTERFACE_DEFINED__
  195. #define __IOleAutomationTypes_INTERFACE_DEFINED__
  196.  
  197. /****************************************
  198.  * Generated header for interface: IOleAutomationTypes
  199.  * at Thu Sep 11 10:57:08 1997
  200.  * using MIDL 3.03.0110
  201.  ****************************************/
  202. /* [auto_handle][unique][version] */ 
  203.  
  204.  
  205. typedef CY CURRENCY;
  206.  
  207. typedef struct  tagSAFEARRAYBOUND
  208.     {
  209.     ULONG cElements;
  210.     LONG lLbound;
  211.     }    SAFEARRAYBOUND;
  212.  
  213. typedef struct tagSAFEARRAYBOUND __RPC_FAR *LPSAFEARRAYBOUND;
  214.  
  215. /* the following is what MIDL knows how to remote */
  216. typedef /* [unique] */ struct _wireVARIANT __RPC_FAR *wireVARIANT;
  217.  
  218. typedef /* [unique] */ struct _wireBRECORD __RPC_FAR *wireBRECORD;
  219.  
  220. typedef struct  _wireSAFEARR_BSTR
  221.     {
  222.     ULONG Size;
  223.     /* [ref][size_is] */ wireBSTR __RPC_FAR *aBstr;
  224.     }    SAFEARR_BSTR;
  225.  
  226. typedef struct  _wireSAFEARR_UNKNOWN
  227.     {
  228.     ULONG Size;
  229.     /* [ref][size_is] */ IUnknown __RPC_FAR *__RPC_FAR *apUnknown;
  230.     }    SAFEARR_UNKNOWN;
  231.  
  232. typedef struct  _wireSAFEARR_DISPATCH
  233.     {
  234.     ULONG Size;
  235.     /* [ref][size_is] */ IDispatch __RPC_FAR *__RPC_FAR *apDispatch;
  236.     }    SAFEARR_DISPATCH;
  237.  
  238. typedef struct  _wireSAFEARR_VARIANT
  239.     {
  240.     ULONG Size;
  241.     /* [ref][size_is] */ wireVARIANT __RPC_FAR *aVariant;
  242.     }    SAFEARR_VARIANT;
  243.  
  244. typedef struct  _wireSAFEARR_BRECORD
  245.     {
  246.     ULONG Size;
  247.     /* [ref][size_is] */ wireBRECORD __RPC_FAR *aRecord;
  248.     }    SAFEARR_BRECORD;
  249.  
  250. typedef struct  _wireSAFEARR_HAVEIID
  251.     {
  252.     ULONG Size;
  253.     /* [ref][size_is] */ IUnknown __RPC_FAR *__RPC_FAR *apUnknown;
  254.     IID iid;
  255.     }    SAFEARR_HAVEIID;
  256.  
  257. typedef /* [v1_enum] */ 
  258. enum tagSF_TYPE
  259.     {    SF_ERROR    = VT_ERROR,
  260.     SF_I1    = VT_I1,
  261.     SF_I2    = VT_I2,
  262.     SF_I4    = VT_I4,
  263.     SF_I8    = VT_I8,
  264.     SF_BSTR    = VT_BSTR,
  265.     SF_UNKNOWN    = VT_UNKNOWN,
  266.     SF_DISPATCH    = VT_DISPATCH,
  267.     SF_VARIANT    = VT_VARIANT,
  268.     SF_RECORD    = VT_RECORD,
  269.     SF_HAVEIID    = VT_UNKNOWN | VT_RESERVED
  270.     }    SF_TYPE;
  271.  
  272. typedef struct  _wireSAFEARRAY_UNION
  273.     {
  274.     ULONG sfType;
  275.     /* [switch_is] */ /* [switch_type] */ union __MIDL_IOleAutomationTypes_0001
  276.         {
  277.         /* [case()] */ SAFEARR_BSTR BstrStr;
  278.         /* [case()] */ SAFEARR_UNKNOWN UnknownStr;
  279.         /* [case()] */ SAFEARR_DISPATCH DispatchStr;
  280.         /* [case()] */ SAFEARR_VARIANT VariantStr;
  281.         /* [case()] */ SAFEARR_BRECORD RecordStr;
  282.         /* [case()] */ SAFEARR_HAVEIID HaveIidStr;
  283.         /* [case()] */ BYTE_SIZEDARR ByteStr;
  284.         /* [case()] */ WORD_SIZEDARR WordStr;
  285.         /* [case()] */ DWORD_SIZEDARR LongStr;
  286.         /* [case()] */ HYPER_SIZEDARR HyperStr;
  287.         }    u;
  288.     }    SAFEARRAYUNION;
  289.  
  290. typedef /* [unique] */ struct  _wireSAFEARRAY
  291.     {
  292.     USHORT cDims;
  293.     USHORT fFeatures;
  294.     ULONG cbElements;
  295.     ULONG cLocks;
  296.     SAFEARRAYUNION uArrayStructs;
  297.     /* [size_is] */ SAFEARRAYBOUND rgsabound[ 1 ];
  298.     }    __RPC_FAR *wireSAFEARRAY;
  299.  
  300. typedef /* [unique] */ wireSAFEARRAY __RPC_FAR *wirePSAFEARRAY;
  301.  
  302. typedef struct  tagSAFEARRAY
  303.     {
  304.     USHORT cDims;
  305.     USHORT fFeatures;
  306.     ULONG cbElements;
  307.     ULONG cLocks;
  308.     PVOID pvData;
  309.     SAFEARRAYBOUND rgsabound[ 1 ];
  310.     }    SAFEARRAY;
  311.  
  312. typedef /* [wire_marshal] */ SAFEARRAY __RPC_FAR *LPSAFEARRAY;
  313.  
  314. #define    FADF_AUTO    ( 0x1 )
  315.  
  316. #define    FADF_STATIC    ( 0x2 )
  317.  
  318. #define    FADF_EMBEDDED    ( 0x4 )
  319.  
  320. #define    FADF_FIXEDSIZE    ( 0x10 )
  321.  
  322. #define    FADF_RECORD    ( 0x20 )
  323.  
  324. #define    FADF_HAVEIID    ( 0x40 )
  325.  
  326. #define    FADF_HAVEVARTYPE    ( 0x80 )
  327.  
  328. #define    FADF_BSTR    ( 0x100 )
  329.  
  330. #define    FADF_UNKNOWN    ( 0x200 )
  331.  
  332. #define    FADF_DISPATCH    ( 0x400 )
  333.  
  334. #define    FADF_VARIANT    ( 0x800 )
  335.  
  336. #define    FADF_RESERVED    ( 0xf008 )
  337.  
  338. /* VARIANT STRUCTURE
  339.  *
  340.  *  VARTYPE vt;
  341.  *  WORD wReserved1;
  342.  *  WORD wReserved2;
  343.  *  WORD wReserved3;
  344.  *  union {
  345.  *    LONG           VT_I4
  346.  *    BYTE           VT_UI1
  347.  *    SHORT          VT_I2
  348.  *    FLOAT          VT_R4
  349.  *    DOUBLE         VT_R8
  350.  *    VARIANT_BOOL   VT_BOOL
  351.  *    SCODE          VT_ERROR
  352.  *    CY             VT_CY
  353.  *    DATE           VT_DATE
  354.  *    BSTR           VT_BSTR
  355.  *    IUnknown *     VT_UNKNOWN
  356.  *    IDispatch *    VT_DISPATCH
  357.  *    SAFEARRAY *    VT_ARRAY
  358.  *    BYTE *         VT_BYREF|VT_UI1
  359.  *    SHORT *        VT_BYREF|VT_I2
  360.  *    LONG *         VT_BYREF|VT_I4
  361.  *    FLOAT *        VT_BYREF|VT_R4
  362.  *    DOUBLE *       VT_BYREF|VT_R8
  363.  *    VARIANT_BOOL * VT_BYREF|VT_BOOL
  364.  *    SCODE *        VT_BYREF|VT_ERROR
  365.  *    CY *           VT_BYREF|VT_CY
  366.  *    DATE *         VT_BYREF|VT_DATE
  367.  *    BSTR *         VT_BYREF|VT_BSTR
  368.  *    IUnknown **    VT_BYREF|VT_UNKNOWN
  369.  *    IDispatch **   VT_BYREF|VT_DISPATCH
  370.  *    SAFEARRAY **   VT_BYREF|VT_ARRAY
  371.  *    VARIANT *      VT_BYREF|VT_VARIANT
  372.  *    PVOID          VT_BYREF (Generic ByRef)
  373.  *    CHAR           VT_I1
  374.  *    USHORT         VT_UI2
  375.  *    ULONG          VT_UI4
  376.  *    INT            VT_INT
  377.  *    UINT           VT_UINT
  378.  *    DECIMAL *      VT_BYREF|VT_DECIMAL
  379.  *    CHAR *         VT_BYREF|VT_I1
  380.  *    USHORT *       VT_BYREF|VT_UI2
  381.  *    ULONG *        VT_BYREF|VT_UI4
  382.  *    INT *          VT_BYREF|VT_INT
  383.  *    UINT *         VT_BYREF|VT_UINT
  384.  *  }
  385.  */
  386. #if (__STDC__ && !defined(_FORCENAMELESSUNION)) || defined(NONAMELESSUNION)
  387. #define __VARIANT_NAME_1 n1
  388. #define __VARIANT_NAME_2 n2
  389. #define __VARIANT_NAME_3 n3
  390. #define __VARIANT_NAME_4 brecVal
  391. #else
  392. #define __tagVARIANT
  393. #define __VARIANT_NAME_1
  394. #define __VARIANT_NAME_2
  395. #define __VARIANT_NAME_3
  396. #define __tagBRECORD
  397. #define __VARIANT_NAME_4
  398. #endif
  399. typedef /* [wire_marshal] */ struct tagVARIANT VARIANT;
  400.  
  401. struct  tagVARIANT
  402.     {
  403.     union 
  404.         {
  405.         struct  __tagVARIANT
  406.             {
  407.             VARTYPE vt;
  408.             WORD wReserved1;
  409.             WORD wReserved2;
  410.             WORD wReserved3;
  411.             union 
  412.                 {
  413.                 LONG lVal;
  414.                 BYTE bVal;
  415.                 SHORT iVal;
  416.                 FLOAT fltVal;
  417.                 DOUBLE dblVal;
  418.                 VARIANT_BOOL boolVal;
  419.                 _VARIANT_BOOL bool;
  420.                 SCODE scode;
  421.                 CY cyVal;
  422.                 DATE date;
  423.                 BSTR bstrVal;
  424.                 IUnknown __RPC_FAR *punkVal;
  425.                 IDispatch __RPC_FAR *pdispVal;
  426.                 SAFEARRAY __RPC_FAR *parray;
  427.                 BYTE __RPC_FAR *pbVal;
  428.                 SHORT __RPC_FAR *piVal;
  429.                 LONG __RPC_FAR *plVal;
  430.                 FLOAT __RPC_FAR *pfltVal;
  431.                 DOUBLE __RPC_FAR *pdblVal;
  432.                 VARIANT_BOOL __RPC_FAR *pboolVal;
  433.                 _VARIANT_BOOL __RPC_FAR *pbool;
  434.                 SCODE __RPC_FAR *pscode;
  435.                 CY __RPC_FAR *pcyVal;
  436.                 DATE __RPC_FAR *pdate;
  437.                 BSTR __RPC_FAR *pbstrVal;
  438.                 IUnknown __RPC_FAR *__RPC_FAR *ppunkVal;
  439.                 IDispatch __RPC_FAR *__RPC_FAR *ppdispVal;
  440.                 SAFEARRAY __RPC_FAR *__RPC_FAR *pparray;
  441.                 VARIANT __RPC_FAR *pvarVal;
  442.                 PVOID byref;
  443.                 CHAR cVal;
  444.                 USHORT uiVal;
  445.                 ULONG ulVal;
  446.                 INT intVal;
  447.                 UINT uintVal;
  448.                 DECIMAL __RPC_FAR *pdecVal;
  449.                 CHAR __RPC_FAR *pcVal;
  450.                 USHORT __RPC_FAR *puiVal;
  451.                 ULONG __RPC_FAR *pulVal;
  452.                 INT __RPC_FAR *pintVal;
  453.                 UINT __RPC_FAR *puintVal;
  454.                 struct  __tagBRECORD
  455.                     {
  456.                     PVOID pvRecord;
  457.                     IRecordInfo __RPC_FAR *pRecInfo;
  458.                     }    __VARIANT_NAME_4;
  459.                 }    __VARIANT_NAME_3;
  460.             }    __VARIANT_NAME_2;
  461.         DECIMAL decVal;
  462.         }    __VARIANT_NAME_1;
  463.     };
  464. typedef VARIANT __RPC_FAR *LPVARIANT;
  465.  
  466. typedef VARIANT VARIANTARG;
  467.  
  468. typedef VARIANT __RPC_FAR *LPVARIANTARG;
  469.  
  470. /* the following is what MIDL knows how to remote */
  471. struct  _wireBRECORD
  472.     {
  473.     ULONG fFlags;
  474.     ULONG clSize;
  475.     IRecordInfo __RPC_FAR *pRecInfo;
  476.     /* [size_is] */ byte __RPC_FAR *pRecord;
  477.     };
  478. struct  _wireVARIANT
  479.     {
  480.     DWORD clSize;
  481.     DWORD rpcReserved;
  482.     USHORT vt;
  483.     USHORT wReserved1;
  484.     USHORT wReserved2;
  485.     USHORT wReserved3;
  486.     /* [switch_is][switch_type] */ union 
  487.         {
  488.         /* [case()] */ LONG lVal;
  489.         /* [case()] */ BYTE bVal;
  490.         /* [case()] */ SHORT iVal;
  491.         /* [case()] */ FLOAT fltVal;
  492.         /* [case()] */ DOUBLE dblVal;
  493.         /* [case()] */ VARIANT_BOOL boolVal;
  494.         /* [case()] */ SCODE scode;
  495.         /* [case()] */ CY cyVal;
  496.         /* [case()] */ DATE date;
  497.         /* [case()] */ wireBSTR bstrVal;
  498.         /* [case()] */ IUnknown __RPC_FAR *punkVal;
  499.         /* [case()] */ IDispatch __RPC_FAR *pdispVal;
  500.         /* [case()] */ wireSAFEARRAY parray;
  501.         /* [case()] */ wireBRECORD brecVal;
  502.         /* [case()] */ BYTE __RPC_FAR *pbVal;
  503.         /* [case()] */ SHORT __RPC_FAR *piVal;
  504.         /* [case()] */ LONG __RPC_FAR *plVal;
  505.         /* [case()] */ FLOAT __RPC_FAR *pfltVal;
  506.         /* [case()] */ DOUBLE __RPC_FAR *pdblVal;
  507.         /* [case()] */ VARIANT_BOOL __RPC_FAR *pboolVal;
  508.         /* [case()] */ SCODE __RPC_FAR *pscode;
  509.         /* [case()] */ CY __RPC_FAR *pcyVal;
  510.         /* [case()] */ DATE __RPC_FAR *pdate;
  511.         /* [case()] */ wireBSTR __RPC_FAR *pbstrVal;
  512.         /* [case()] */ IUnknown __RPC_FAR *__RPC_FAR *ppunkVal;
  513.         /* [case()] */ IDispatch __RPC_FAR *__RPC_FAR *ppdispVal;
  514.         /* [case()] */ wireSAFEARRAY __RPC_FAR *pparray;
  515.         /* [case()] */ wireVARIANT __RPC_FAR *pvarVal;
  516.         /* [case()] */ CHAR cVal;
  517.         /* [case()] */ USHORT uiVal;
  518.         /* [case()] */ ULONG ulVal;
  519.         /* [case()] */ INT intVal;
  520.         /* [case()] */ UINT uintVal;
  521.         /* [case()] */ DECIMAL decVal;
  522.         /* [case()] */ DECIMAL __RPC_FAR *pdecVal;
  523.         /* [case()] */ CHAR __RPC_FAR *pcVal;
  524.         /* [case()] */ USHORT __RPC_FAR *puiVal;
  525.         /* [case()] */ ULONG __RPC_FAR *pulVal;
  526.         /* [case()] */ INT __RPC_FAR *pintVal;
  527.         /* [case()] */ UINT __RPC_FAR *puintVal;
  528.         /* [case()] */  /* Empty union arm */ 
  529.         /* [case()] */  /* Empty union arm */ 
  530.         }    ;
  531.     };
  532. typedef LONG DISPID;
  533.  
  534. typedef DISPID MEMBERID;
  535.  
  536. typedef DWORD HREFTYPE;
  537.  
  538. typedef /* [v1_enum] */ 
  539. enum tagTYPEKIND
  540.     {    TKIND_ENUM    = 0,
  541.     TKIND_RECORD    = TKIND_ENUM + 1,
  542.     TKIND_MODULE    = TKIND_RECORD + 1,
  543.     TKIND_INTERFACE    = TKIND_MODULE + 1,
  544.     TKIND_DISPATCH    = TKIND_INTERFACE + 1,
  545.     TKIND_COCLASS    = TKIND_DISPATCH + 1,
  546.     TKIND_ALIAS    = TKIND_COCLASS + 1,
  547.     TKIND_UNION    = TKIND_ALIAS + 1,
  548.     TKIND_MAX    = TKIND_UNION + 1
  549.     }    TYPEKIND;
  550.  
  551. typedef struct  tagTYPEDESC
  552.     {
  553.     /* [switch_is][switch_type] */ union 
  554.         {
  555.         /* [case()] */ struct tagTYPEDESC __RPC_FAR *lptdesc;
  556.         /* [case()] */ struct tagARRAYDESC __RPC_FAR *lpadesc;
  557.         /* [case()] */ HREFTYPE hreftype;
  558.         /* [default] */  /* Empty union arm */ 
  559.         }    ;
  560.     VARTYPE vt;
  561.     }    TYPEDESC;
  562.  
  563. typedef struct  tagARRAYDESC
  564.     {
  565.     TYPEDESC tdescElem;
  566.     USHORT cDims;
  567.     /* [size_is] */ SAFEARRAYBOUND rgbounds[ 1 ];
  568.     }    ARRAYDESC;
  569.  
  570. typedef struct  tagPARAMDESCEX
  571.     {
  572.     ULONG cBytes;
  573.     VARIANTARG varDefaultValue;
  574.     }    PARAMDESCEX;
  575.  
  576. typedef struct tagPARAMDESCEX __RPC_FAR *LPPARAMDESCEX;
  577.  
  578. typedef struct  tagPARAMDESC
  579.     {
  580.     LPPARAMDESCEX pparamdescex;
  581.     USHORT wParamFlags;
  582.     }    PARAMDESC;
  583.  
  584. typedef struct tagPARAMDESC __RPC_FAR *LPPARAMDESC;
  585.  
  586. #define    PARAMFLAG_NONE    ( 0 )
  587.  
  588. #define    PARAMFLAG_FIN    ( 0x1 )
  589.  
  590. #define    PARAMFLAG_FOUT    ( 0x2 )
  591.  
  592. #define    PARAMFLAG_FLCID    ( 0x4 )
  593.  
  594. #define    PARAMFLAG_FRETVAL    ( 0x8 )
  595.  
  596. #define    PARAMFLAG_FOPT    ( 0x10 )
  597.  
  598. #define    PARAMFLAG_FHASDEFAULT    ( 0x20 )
  599.  
  600. #define    PARAMFLAG_FHASCUSTDATA    ( 0x40 )
  601.  
  602. typedef struct  tagIDLDESC
  603.     {
  604.     ULONG dwReserved;
  605.     USHORT wIDLFlags;
  606.     }    IDLDESC;
  607.  
  608. typedef struct tagIDLDESC __RPC_FAR *LPIDLDESC;
  609.  
  610. #define    IDLFLAG_NONE    ( PARAMFLAG_NONE )
  611.  
  612. #define    IDLFLAG_FIN    ( PARAMFLAG_FIN )
  613.  
  614. #define    IDLFLAG_FOUT    ( PARAMFLAG_FOUT )
  615.  
  616. #define    IDLFLAG_FLCID    ( PARAMFLAG_FLCID )
  617.  
  618. #define    IDLFLAG_FRETVAL    ( PARAMFLAG_FRETVAL )
  619.  
  620. #if 0
  621. /* the following is what MIDL knows how to remote */
  622. typedef struct  tagELEMDESC
  623.     {
  624.     TYPEDESC tdesc;
  625.     PARAMDESC paramdesc;
  626.     }    ELEMDESC;
  627.  
  628. #else /* 0 */
  629. typedef struct tagELEMDESC {
  630.     TYPEDESC tdesc;             /* the type of the element */
  631.     union {
  632.         IDLDESC idldesc;        /* info for remoting the element */
  633.         PARAMDESC paramdesc;    /* info about the parameter */
  634.     };
  635. } ELEMDESC, * LPELEMDESC;
  636. #endif /* 0 */
  637. typedef struct  tagTYPEATTR
  638.     {
  639.     GUID guid;
  640.     LCID lcid;
  641.     DWORD dwReserved;
  642.     MEMBERID memidConstructor;
  643.     MEMBERID memidDestructor;
  644.     LPOLESTR lpstrSchema;
  645.     ULONG cbSizeInstance;
  646.     TYPEKIND typekind;
  647.     WORD cFuncs;
  648.     WORD cVars;
  649.     WORD cImplTypes;
  650.     WORD cbSizeVft;
  651.     WORD cbAlignment;
  652.     WORD wTypeFlags;
  653.     WORD wMajorVerNum;
  654.     WORD wMinorVerNum;
  655.     TYPEDESC tdescAlias;
  656.     IDLDESC idldescType;
  657.     }    TYPEATTR;
  658.  
  659. typedef struct tagTYPEATTR __RPC_FAR *LPTYPEATTR;
  660.  
  661. typedef struct  tagDISPPARAMS
  662.     {
  663.     /* [size_is] */ VARIANTARG __RPC_FAR *rgvarg;
  664.     /* [size_is] */ DISPID __RPC_FAR *rgdispidNamedArgs;
  665.     UINT cArgs;
  666.     UINT cNamedArgs;
  667.     }    DISPPARAMS;
  668.  
  669. #if 0
  670. /* the following is what MIDL knows how to remote */
  671. typedef struct  tagEXCEPINFO
  672.     {
  673.     WORD wCode;
  674.     WORD wReserved;
  675.     BSTR bstrSource;
  676.     BSTR bstrDescription;
  677.     BSTR bstrHelpFile;
  678.     DWORD dwHelpContext;
  679.     ULONG pvReserved;
  680.     ULONG pfnDeferredFillIn;
  681.     SCODE scode;
  682.     }    EXCEPINFO;
  683.  
  684. #else /* 0 */
  685. typedef struct tagEXCEPINFO {
  686.     WORD  wCode;
  687.     WORD  wReserved;
  688.     BSTR  bstrSource;
  689.     BSTR  bstrDescription;
  690.     BSTR  bstrHelpFile;
  691.     DWORD dwHelpContext;
  692.     PVOID pvReserved;
  693.     HRESULT (__stdcall *pfnDeferredFillIn)(struct tagEXCEPINFO *);
  694.     SCODE scode;
  695. } EXCEPINFO, * LPEXCEPINFO;
  696. #endif /* 0 */
  697. typedef /* [v1_enum] */
  698. enum tagCALLCONV
  699.     {    CC_FASTCALL    = 0,
  700.     CC_CDECL    = 1,
  701.     CC_MSCPASCAL    = CC_CDECL + 1,
  702.     CC_PASCAL    = CC_MSCPASCAL,
  703.     CC_MACPASCAL    = CC_PASCAL + 1,
  704.     CC_STDCALL    = CC_MACPASCAL + 1,
  705.     CC_FPFASTCALL    = CC_STDCALL + 1,
  706.     CC_SYSCALL    = CC_FPFASTCALL + 1,
  707.     CC_MPWCDECL    = CC_SYSCALL + 1,
  708.     CC_MPWPASCAL    = CC_MPWCDECL + 1,
  709.     CC_MAX    = CC_MPWPASCAL + 1
  710.     }    CALLCONV;
  711.  
  712. typedef /* [v1_enum] */ 
  713. enum tagFUNCKIND
  714.     {    FUNC_VIRTUAL    = 0,
  715.     FUNC_PUREVIRTUAL    = FUNC_VIRTUAL + 1,
  716.     FUNC_NONVIRTUAL    = FUNC_PUREVIRTUAL + 1,
  717.     FUNC_STATIC    = FUNC_NONVIRTUAL + 1,
  718.     FUNC_DISPATCH    = FUNC_STATIC + 1
  719.     }    FUNCKIND;
  720.  
  721. typedef /* [v1_enum] */ 
  722. enum tagINVOKEKIND
  723.     {    INVOKE_FUNC    = 1,
  724.     INVOKE_PROPERTYGET    = 2,
  725.     INVOKE_PROPERTYPUT    = 4,
  726.     INVOKE_PROPERTYPUTREF    = 8
  727.     }    INVOKEKIND;
  728.  
  729. typedef struct  tagFUNCDESC
  730.     {
  731.     MEMBERID memid;
  732.     /* [size_is] */ SCODE __RPC_FAR *lprgscode;
  733.     /* [size_is] */ ELEMDESC __RPC_FAR *lprgelemdescParam;
  734.     FUNCKIND funckind;
  735.     INVOKEKIND invkind;
  736.     CALLCONV callconv;
  737.     SHORT cParams;
  738.     SHORT cParamsOpt;
  739.     SHORT oVft;
  740.     SHORT cScodes;
  741.     ELEMDESC elemdescFunc;
  742.     WORD wFuncFlags;
  743.     }    FUNCDESC;
  744.  
  745. typedef struct tagFUNCDESC __RPC_FAR *LPFUNCDESC;
  746.  
  747. typedef /* [v1_enum] */ 
  748. enum tagVARKIND
  749.     {    VAR_PERINSTANCE    = 0,
  750.     VAR_STATIC    = VAR_PERINSTANCE + 1,
  751.     VAR_CONST    = VAR_STATIC + 1,
  752.     VAR_DISPATCH    = VAR_CONST + 1
  753.     }    VARKIND;
  754.  
  755. #define    IMPLTYPEFLAG_FDEFAULT    ( 0x1 )
  756.  
  757. #define    IMPLTYPEFLAG_FSOURCE    ( 0x2 )
  758.  
  759. #define    IMPLTYPEFLAG_FRESTRICTED    ( 0x4 )
  760.  
  761. #define    IMPLTYPEFLAG_FDEFAULTVTABLE    ( 0x8 )
  762.  
  763. typedef struct  tagVARDESC
  764.     {
  765.     MEMBERID memid;
  766.     LPOLESTR lpstrSchema;
  767.     /* [switch_is][switch_type] */ union 
  768.         {
  769.         /* [case()] */ ULONG oInst;
  770.         /* [case()] */ VARIANT __RPC_FAR *lpvarValue;
  771.         }    ;
  772.     ELEMDESC elemdescVar;
  773.     WORD wVarFlags;
  774.     VARKIND varkind;
  775.     }    VARDESC;
  776.  
  777. typedef struct tagVARDESC __RPC_FAR *LPVARDESC;
  778.  
  779. typedef 
  780. enum tagTYPEFLAGS
  781.     {    TYPEFLAG_FAPPOBJECT    = 0x1,
  782.     TYPEFLAG_FCANCREATE    = 0x2,
  783.     TYPEFLAG_FLICENSED    = 0x4,
  784.     TYPEFLAG_FPREDECLID    = 0x8,
  785.     TYPEFLAG_FHIDDEN    = 0x10,
  786.     TYPEFLAG_FCONTROL    = 0x20,
  787.     TYPEFLAG_FDUAL    = 0x40,
  788.     TYPEFLAG_FNONEXTENSIBLE    = 0x80,
  789.     TYPEFLAG_FOLEAUTOMATION    = 0x100,
  790.     TYPEFLAG_FRESTRICTED    = 0x200,
  791.     TYPEFLAG_FAGGREGATABLE    = 0x400,
  792.     TYPEFLAG_FREPLACEABLE    = 0x800,
  793.     TYPEFLAG_FDISPATCHABLE    = 0x1000,
  794.     TYPEFLAG_FREVERSEBIND    = 0x2000
  795.     }    TYPEFLAGS;
  796.  
  797. typedef 
  798. enum tagFUNCFLAGS
  799.     {    FUNCFLAG_FRESTRICTED    = 0x1,
  800.     FUNCFLAG_FSOURCE    = 0x2,
  801.     FUNCFLAG_FBINDABLE    = 0x4,
  802.     FUNCFLAG_FREQUESTEDIT    = 0x8,
  803.     FUNCFLAG_FDISPLAYBIND    = 0x10,
  804.     FUNCFLAG_FDEFAULTBIND    = 0x20,
  805.     FUNCFLAG_FHIDDEN    = 0x40,
  806.     FUNCFLAG_FUSESGETLASTERROR    = 0x80,
  807.     FUNCFLAG_FDEFAULTCOLLELEM    = 0x100,
  808.     FUNCFLAG_FUIDEFAULT    = 0x200,
  809.     FUNCFLAG_FNONBROWSABLE    = 0x400,
  810.     FUNCFLAG_FREPLACEABLE    = 0x800,
  811.     FUNCFLAG_FIMMEDIATEBIND    = 0x1000
  812.     }    FUNCFLAGS;
  813.  
  814. typedef 
  815. enum tagVARFLAGS
  816.     {    VARFLAG_FREADONLY    = 0x1,
  817.     VARFLAG_FSOURCE    = 0x2,
  818.     VARFLAG_FBINDABLE    = 0x4,
  819.     VARFLAG_FREQUESTEDIT    = 0x8,
  820.     VARFLAG_FDISPLAYBIND    = 0x10,
  821.     VARFLAG_FDEFAULTBIND    = 0x20,
  822.     VARFLAG_FHIDDEN    = 0x40,
  823.     VARFLAG_FRESTRICTED    = 0x80,
  824.     VARFLAG_FDEFAULTCOLLELEM    = 0x100,
  825.     VARFLAG_FUIDEFAULT    = 0x200,
  826.     VARFLAG_FNONBROWSABLE    = 0x400,
  827.     VARFLAG_FREPLACEABLE    = 0x800,
  828.     VARFLAG_FIMMEDIATEBIND    = 0x1000
  829.     }    VARFLAGS;
  830.  
  831. typedef /* [wire_marshal] */ struct  tagCLEANLOCALSTORAGE
  832.     {
  833.     IUnknown __RPC_FAR *pInterface;
  834.     PVOID pStorage;
  835.     DWORD flags;
  836.     }    CLEANLOCALSTORAGE;
  837.  
  838. typedef struct  tagCUSTDATAITEM
  839.     {
  840.     GUID guid;
  841.     VARIANTARG varValue;
  842.     }    CUSTDATAITEM;
  843.  
  844. typedef struct tagCUSTDATAITEM __RPC_FAR *LPCUSTDATAITEM;
  845.  
  846. typedef struct  tagCUSTDATA
  847.     {
  848.     DWORD cCustData;
  849.     /* [size_is] */ LPCUSTDATAITEM prgCustData;
  850.     }    CUSTDATA;
  851.  
  852. typedef struct tagCUSTDATA __RPC_FAR *LPCUSTDATA;
  853.  
  854.  
  855.  
  856. extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_c_ifspec;
  857. extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_s_ifspec;
  858. #endif /* __IOleAutomationTypes_INTERFACE_DEFINED__ */
  859.  
  860. #ifndef __ICreateTypeInfo_INTERFACE_DEFINED__
  861. #define __ICreateTypeInfo_INTERFACE_DEFINED__
  862.  
  863. /****************************************
  864.  * Generated header for interface: ICreateTypeInfo
  865.  * at Thu Sep 11 10:57:08 1997
  866.  * using MIDL 3.03.0110
  867.  ****************************************/
  868. /* [local][unique][uuid][object] */ 
  869.  
  870.  
  871. typedef /* [unique] */ ICreateTypeInfo __RPC_FAR *LPCREATETYPEINFO;
  872.  
  873.  
  874. EXTERN_C const IID IID_ICreateTypeInfo;
  875.  
  876. #if defined(__cplusplus) && !defined(CINTERFACE)
  877.     
  878.     MIDL_INTERFACE("00020405-0000-0000-C000-000000000046")
  879.     ICreateTypeInfo : public IUnknown
  880.     {
  881.     public:
  882.         virtual HRESULT STDMETHODCALLTYPE SetGuid( 
  883.             /* [in] */ REFGUID guid) = 0;
  884.         
  885.         virtual HRESULT STDMETHODCALLTYPE SetTypeFlags( 
  886.             /* [in] */ UINT uTypeFlags) = 0;
  887.         
  888.         virtual HRESULT STDMETHODCALLTYPE SetDocString( 
  889.             /* [in] */ LPOLESTR pStrDoc) = 0;
  890.         
  891.         virtual HRESULT STDMETHODCALLTYPE SetHelpContext( 
  892.             /* [in] */ DWORD dwHelpContext) = 0;
  893.         
  894.         virtual HRESULT STDMETHODCALLTYPE SetVersion( 
  895.             /* [in] */ WORD wMajorVerNum,
  896.             /* [in] */ WORD wMinorVerNum) = 0;
  897.         
  898.         virtual HRESULT STDMETHODCALLTYPE AddRefTypeInfo( 
  899.             /* [in] */ ITypeInfo __RPC_FAR *pTInfo,
  900.             /* [in] */ HREFTYPE __RPC_FAR *phRefType) = 0;
  901.         
  902.         virtual HRESULT STDMETHODCALLTYPE AddFuncDesc( 
  903.             /* [in] */ UINT index,
  904.             /* [in] */ FUNCDESC __RPC_FAR *pFuncDesc) = 0;
  905.         
  906.         virtual HRESULT STDMETHODCALLTYPE AddImplType( 
  907.             /* [in] */ UINT index,
  908.             /* [in] */ HREFTYPE hRefType) = 0;
  909.         
  910.         virtual HRESULT STDMETHODCALLTYPE SetImplTypeFlags( 
  911.             /* [in] */ UINT index,
  912.             /* [in] */ INT implTypeFlags) = 0;
  913.         
  914.         virtual HRESULT STDMETHODCALLTYPE SetAlignment( 
  915.             /* [in] */ WORD cbAlignment) = 0;
  916.         
  917.         virtual HRESULT STDMETHODCALLTYPE SetSchema( 
  918.             /* [in] */ LPOLESTR pStrSchema) = 0;
  919.         
  920.         virtual HRESULT STDMETHODCALLTYPE AddVarDesc( 
  921.             /* [in] */ UINT index,
  922.             /* [in] */ VARDESC __RPC_FAR *pVarDesc) = 0;
  923.         
  924.         virtual HRESULT STDMETHODCALLTYPE SetFuncAndParamNames( 
  925.             /* [in] */ UINT index,
  926.             /* [in][size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  927.             /* [in] */ UINT cNames) = 0;
  928.         
  929.         virtual HRESULT STDMETHODCALLTYPE SetVarName( 
  930.             /* [in] */ UINT index,
  931.             /* [in] */ LPOLESTR szName) = 0;
  932.         
  933.         virtual HRESULT STDMETHODCALLTYPE SetTypeDescAlias( 
  934.             /* [in] */ TYPEDESC __RPC_FAR *pTDescAlias) = 0;
  935.         
  936.         virtual HRESULT STDMETHODCALLTYPE DefineFuncAsDllEntry( 
  937.             /* [in] */ UINT index,
  938.             /* [in] */ LPOLESTR szDllName,
  939.             /* [in] */ LPOLESTR szProcName) = 0;
  940.         
  941.         virtual HRESULT STDMETHODCALLTYPE SetFuncDocString( 
  942.             /* [in] */ UINT index,
  943.             /* [in] */ LPOLESTR szDocString) = 0;
  944.         
  945.         virtual HRESULT STDMETHODCALLTYPE SetVarDocString( 
  946.             /* [in] */ UINT index,
  947.             /* [in] */ LPOLESTR szDocString) = 0;
  948.         
  949.         virtual HRESULT STDMETHODCALLTYPE SetFuncHelpContext( 
  950.             /* [in] */ UINT index,
  951.             /* [in] */ DWORD dwHelpContext) = 0;
  952.         
  953.         virtual HRESULT STDMETHODCALLTYPE SetVarHelpContext( 
  954.             /* [in] */ UINT index,
  955.             /* [in] */ DWORD dwHelpContext) = 0;
  956.         
  957.         virtual HRESULT STDMETHODCALLTYPE SetMops( 
  958.             /* [in] */ UINT index,
  959.             /* [in] */ BSTR bstrMops) = 0;
  960.         
  961.         virtual HRESULT STDMETHODCALLTYPE SetTypeIdldesc( 
  962.             /* [in] */ IDLDESC __RPC_FAR *pIdlDesc) = 0;
  963.         
  964.         virtual HRESULT STDMETHODCALLTYPE LayOut( void) = 0;
  965.         
  966.     };
  967.     
  968. #else     /* C style interface */
  969.  
  970.     typedef struct ICreateTypeInfoVtbl
  971.     {
  972.         BEGIN_INTERFACE
  973.         
  974.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  975.             ICreateTypeInfo __RPC_FAR * This,
  976.             /* [in] */ REFIID riid,
  977.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  978.         
  979.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  980.             ICreateTypeInfo __RPC_FAR * This);
  981.         
  982.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  983.             ICreateTypeInfo __RPC_FAR * This);
  984.         
  985.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGuid )( 
  986.             ICreateTypeInfo __RPC_FAR * This,
  987.             /* [in] */ REFGUID guid);
  988.         
  989.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTypeFlags )( 
  990.             ICreateTypeInfo __RPC_FAR * This,
  991.             /* [in] */ UINT uTypeFlags);
  992.         
  993.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDocString )( 
  994.             ICreateTypeInfo __RPC_FAR * This,
  995.             /* [in] */ LPOLESTR pStrDoc);
  996.         
  997.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpContext )( 
  998.             ICreateTypeInfo __RPC_FAR * This,
  999.             /* [in] */ DWORD dwHelpContext);
  1000.         
  1001.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVersion )( 
  1002.             ICreateTypeInfo __RPC_FAR * This,
  1003.             /* [in] */ WORD wMajorVerNum,
  1004.             /* [in] */ WORD wMinorVerNum);
  1005.         
  1006.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefTypeInfo )( 
  1007.             ICreateTypeInfo __RPC_FAR * This,
  1008.             /* [in] */ ITypeInfo __RPC_FAR *pTInfo,
  1009.             /* [in] */ HREFTYPE __RPC_FAR *phRefType);
  1010.         
  1011.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddFuncDesc )( 
  1012.             ICreateTypeInfo __RPC_FAR * This,
  1013.             /* [in] */ UINT index,
  1014.             /* [in] */ FUNCDESC __RPC_FAR *pFuncDesc);
  1015.         
  1016.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddImplType )( 
  1017.             ICreateTypeInfo __RPC_FAR * This,
  1018.             /* [in] */ UINT index,
  1019.             /* [in] */ HREFTYPE hRefType);
  1020.         
  1021.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetImplTypeFlags )( 
  1022.             ICreateTypeInfo __RPC_FAR * This,
  1023.             /* [in] */ UINT index,
  1024.             /* [in] */ INT implTypeFlags);
  1025.         
  1026.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAlignment )( 
  1027.             ICreateTypeInfo __RPC_FAR * This,
  1028.             /* [in] */ WORD cbAlignment);
  1029.         
  1030.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSchema )( 
  1031.             ICreateTypeInfo __RPC_FAR * This,
  1032.             /* [in] */ LPOLESTR pStrSchema);
  1033.         
  1034.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddVarDesc )( 
  1035.             ICreateTypeInfo __RPC_FAR * This,
  1036.             /* [in] */ UINT index,
  1037.             /* [in] */ VARDESC __RPC_FAR *pVarDesc);
  1038.         
  1039.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFuncAndParamNames )( 
  1040.             ICreateTypeInfo __RPC_FAR * This,
  1041.             /* [in] */ UINT index,
  1042.             /* [in][size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1043.             /* [in] */ UINT cNames);
  1044.         
  1045.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVarName )( 
  1046.             ICreateTypeInfo __RPC_FAR * This,
  1047.             /* [in] */ UINT index,
  1048.             /* [in] */ LPOLESTR szName);
  1049.         
  1050.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTypeDescAlias )( 
  1051.             ICreateTypeInfo __RPC_FAR * This,
  1052.             /* [in] */ TYPEDESC __RPC_FAR *pTDescAlias);
  1053.         
  1054.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DefineFuncAsDllEntry )( 
  1055.             ICreateTypeInfo __RPC_FAR * This,
  1056.             /* [in] */ UINT index,
  1057.             /* [in] */ LPOLESTR szDllName,
  1058.             /* [in] */ LPOLESTR szProcName);
  1059.         
  1060.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFuncDocString )( 
  1061.             ICreateTypeInfo __RPC_FAR * This,
  1062.             /* [in] */ UINT index,
  1063.             /* [in] */ LPOLESTR szDocString);
  1064.         
  1065.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVarDocString )( 
  1066.             ICreateTypeInfo __RPC_FAR * This,
  1067.             /* [in] */ UINT index,
  1068.             /* [in] */ LPOLESTR szDocString);
  1069.         
  1070.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFuncHelpContext )( 
  1071.             ICreateTypeInfo __RPC_FAR * This,
  1072.             /* [in] */ UINT index,
  1073.             /* [in] */ DWORD dwHelpContext);
  1074.         
  1075.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVarHelpContext )( 
  1076.             ICreateTypeInfo __RPC_FAR * This,
  1077.             /* [in] */ UINT index,
  1078.             /* [in] */ DWORD dwHelpContext);
  1079.         
  1080.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetMops )( 
  1081.             ICreateTypeInfo __RPC_FAR * This,
  1082.             /* [in] */ UINT index,
  1083.             /* [in] */ BSTR bstrMops);
  1084.         
  1085.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTypeIdldesc )( 
  1086.             ICreateTypeInfo __RPC_FAR * This,
  1087.             /* [in] */ IDLDESC __RPC_FAR *pIdlDesc);
  1088.         
  1089.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *LayOut )( 
  1090.             ICreateTypeInfo __RPC_FAR * This);
  1091.         
  1092.         END_INTERFACE
  1093.     } ICreateTypeInfoVtbl;
  1094.  
  1095.     interface ICreateTypeInfo
  1096.     {
  1097.         CONST_VTBL struct ICreateTypeInfoVtbl __RPC_FAR *lpVtbl;
  1098.     };
  1099.  
  1100.     
  1101.  
  1102. #ifdef COBJMACROS
  1103.  
  1104.  
  1105. #define ICreateTypeInfo_QueryInterface(This,riid,ppvObject)    \
  1106.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1107.  
  1108. #define ICreateTypeInfo_AddRef(This)    \
  1109.     (This)->lpVtbl -> AddRef(This)
  1110.  
  1111. #define ICreateTypeInfo_Release(This)    \
  1112.     (This)->lpVtbl -> Release(This)
  1113.  
  1114.  
  1115. #define ICreateTypeInfo_SetGuid(This,guid)    \
  1116.     (This)->lpVtbl -> SetGuid(This,guid)
  1117.  
  1118. #define ICreateTypeInfo_SetTypeFlags(This,uTypeFlags)    \
  1119.     (This)->lpVtbl -> SetTypeFlags(This,uTypeFlags)
  1120.  
  1121. #define ICreateTypeInfo_SetDocString(This,pStrDoc)    \
  1122.     (This)->lpVtbl -> SetDocString(This,pStrDoc)
  1123.  
  1124. #define ICreateTypeInfo_SetHelpContext(This,dwHelpContext)    \
  1125.     (This)->lpVtbl -> SetHelpContext(This,dwHelpContext)
  1126.  
  1127. #define ICreateTypeInfo_SetVersion(This,wMajorVerNum,wMinorVerNum)    \
  1128.     (This)->lpVtbl -> SetVersion(This,wMajorVerNum,wMinorVerNum)
  1129.  
  1130. #define ICreateTypeInfo_AddRefTypeInfo(This,pTInfo,phRefType)    \
  1131.     (This)->lpVtbl -> AddRefTypeInfo(This,pTInfo,phRefType)
  1132.  
  1133. #define ICreateTypeInfo_AddFuncDesc(This,index,pFuncDesc)    \
  1134.     (This)->lpVtbl -> AddFuncDesc(This,index,pFuncDesc)
  1135.  
  1136. #define ICreateTypeInfo_AddImplType(This,index,hRefType)    \
  1137.     (This)->lpVtbl -> AddImplType(This,index,hRefType)
  1138.  
  1139. #define ICreateTypeInfo_SetImplTypeFlags(This,index,implTypeFlags)    \
  1140.     (This)->lpVtbl -> SetImplTypeFlags(This,index,implTypeFlags)
  1141.  
  1142. #define ICreateTypeInfo_SetAlignment(This,cbAlignment)    \
  1143.     (This)->lpVtbl -> SetAlignment(This,cbAlignment)
  1144.  
  1145. #define ICreateTypeInfo_SetSchema(This,pStrSchema)    \
  1146.     (This)->lpVtbl -> SetSchema(This,pStrSchema)
  1147.  
  1148. #define ICreateTypeInfo_AddVarDesc(This,index,pVarDesc)    \
  1149.     (This)->lpVtbl -> AddVarDesc(This,index,pVarDesc)
  1150.  
  1151. #define ICreateTypeInfo_SetFuncAndParamNames(This,index,rgszNames,cNames)    \
  1152.     (This)->lpVtbl -> SetFuncAndParamNames(This,index,rgszNames,cNames)
  1153.  
  1154. #define ICreateTypeInfo_SetVarName(This,index,szName)    \
  1155.     (This)->lpVtbl -> SetVarName(This,index,szName)
  1156.  
  1157. #define ICreateTypeInfo_SetTypeDescAlias(This,pTDescAlias)    \
  1158.     (This)->lpVtbl -> SetTypeDescAlias(This,pTDescAlias)
  1159.  
  1160. #define ICreateTypeInfo_DefineFuncAsDllEntry(This,index,szDllName,szProcName)    \
  1161.     (This)->lpVtbl -> DefineFuncAsDllEntry(This,index,szDllName,szProcName)
  1162.  
  1163. #define ICreateTypeInfo_SetFuncDocString(This,index,szDocString)    \
  1164.     (This)->lpVtbl -> SetFuncDocString(This,index,szDocString)
  1165.  
  1166. #define ICreateTypeInfo_SetVarDocString(This,index,szDocString)    \
  1167.     (This)->lpVtbl -> SetVarDocString(This,index,szDocString)
  1168.  
  1169. #define ICreateTypeInfo_SetFuncHelpContext(This,index,dwHelpContext)    \
  1170.     (This)->lpVtbl -> SetFuncHelpContext(This,index,dwHelpContext)
  1171.  
  1172. #define ICreateTypeInfo_SetVarHelpContext(This,index,dwHelpContext)    \
  1173.     (This)->lpVtbl -> SetVarHelpContext(This,index,dwHelpContext)
  1174.  
  1175. #define ICreateTypeInfo_SetMops(This,index,bstrMops)    \
  1176.     (This)->lpVtbl -> SetMops(This,index,bstrMops)
  1177.  
  1178. #define ICreateTypeInfo_SetTypeIdldesc(This,pIdlDesc)    \
  1179.     (This)->lpVtbl -> SetTypeIdldesc(This,pIdlDesc)
  1180.  
  1181. #define ICreateTypeInfo_LayOut(This)    \
  1182.     (This)->lpVtbl -> LayOut(This)
  1183.  
  1184. #endif /* COBJMACROS */
  1185.  
  1186.  
  1187. #endif     /* C style interface */
  1188.  
  1189.  
  1190.  
  1191. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetGuid_Proxy( 
  1192.     ICreateTypeInfo __RPC_FAR * This,
  1193.     /* [in] */ REFGUID guid);
  1194.  
  1195.  
  1196. void __RPC_STUB ICreateTypeInfo_SetGuid_Stub(
  1197.     IRpcStubBuffer *This,
  1198.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1199.     PRPC_MESSAGE _pRpcMessage,
  1200.     DWORD *_pdwStubPhase);
  1201.  
  1202.  
  1203. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetTypeFlags_Proxy( 
  1204.     ICreateTypeInfo __RPC_FAR * This,
  1205.     /* [in] */ UINT uTypeFlags);
  1206.  
  1207.  
  1208. void __RPC_STUB ICreateTypeInfo_SetTypeFlags_Stub(
  1209.     IRpcStubBuffer *This,
  1210.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1211.     PRPC_MESSAGE _pRpcMessage,
  1212.     DWORD *_pdwStubPhase);
  1213.  
  1214.  
  1215. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetDocString_Proxy( 
  1216.     ICreateTypeInfo __RPC_FAR * This,
  1217.     /* [in] */ LPOLESTR pStrDoc);
  1218.  
  1219.  
  1220. void __RPC_STUB ICreateTypeInfo_SetDocString_Stub(
  1221.     IRpcStubBuffer *This,
  1222.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1223.     PRPC_MESSAGE _pRpcMessage,
  1224.     DWORD *_pdwStubPhase);
  1225.  
  1226.  
  1227. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetHelpContext_Proxy( 
  1228.     ICreateTypeInfo __RPC_FAR * This,
  1229.     /* [in] */ DWORD dwHelpContext);
  1230.  
  1231.  
  1232. void __RPC_STUB ICreateTypeInfo_SetHelpContext_Stub(
  1233.     IRpcStubBuffer *This,
  1234.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1235.     PRPC_MESSAGE _pRpcMessage,
  1236.     DWORD *_pdwStubPhase);
  1237.  
  1238.  
  1239. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetVersion_Proxy( 
  1240.     ICreateTypeInfo __RPC_FAR * This,
  1241.     /* [in] */ WORD wMajorVerNum,
  1242.     /* [in] */ WORD wMinorVerNum);
  1243.  
  1244.  
  1245. void __RPC_STUB ICreateTypeInfo_SetVersion_Stub(
  1246.     IRpcStubBuffer *This,
  1247.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1248.     PRPC_MESSAGE _pRpcMessage,
  1249.     DWORD *_pdwStubPhase);
  1250.  
  1251.  
  1252. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_AddRefTypeInfo_Proxy( 
  1253.     ICreateTypeInfo __RPC_FAR * This,
  1254.     /* [in] */ ITypeInfo __RPC_FAR *pTInfo,
  1255.     /* [in] */ HREFTYPE __RPC_FAR *phRefType);
  1256.  
  1257.  
  1258. void __RPC_STUB ICreateTypeInfo_AddRefTypeInfo_Stub(
  1259.     IRpcStubBuffer *This,
  1260.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1261.     PRPC_MESSAGE _pRpcMessage,
  1262.     DWORD *_pdwStubPhase);
  1263.  
  1264.  
  1265. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_AddFuncDesc_Proxy( 
  1266.     ICreateTypeInfo __RPC_FAR * This,
  1267.     /* [in] */ UINT index,
  1268.     /* [in] */ FUNCDESC __RPC_FAR *pFuncDesc);
  1269.  
  1270.  
  1271. void __RPC_STUB ICreateTypeInfo_AddFuncDesc_Stub(
  1272.     IRpcStubBuffer *This,
  1273.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1274.     PRPC_MESSAGE _pRpcMessage,
  1275.     DWORD *_pdwStubPhase);
  1276.  
  1277.  
  1278. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_AddImplType_Proxy( 
  1279.     ICreateTypeInfo __RPC_FAR * This,
  1280.     /* [in] */ UINT index,
  1281.     /* [in] */ HREFTYPE hRefType);
  1282.  
  1283.  
  1284. void __RPC_STUB ICreateTypeInfo_AddImplType_Stub(
  1285.     IRpcStubBuffer *This,
  1286.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1287.     PRPC_MESSAGE _pRpcMessage,
  1288.     DWORD *_pdwStubPhase);
  1289.  
  1290.  
  1291. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetImplTypeFlags_Proxy( 
  1292.     ICreateTypeInfo __RPC_FAR * This,
  1293.     /* [in] */ UINT index,
  1294.     /* [in] */ INT implTypeFlags);
  1295.  
  1296.  
  1297. void __RPC_STUB ICreateTypeInfo_SetImplTypeFlags_Stub(
  1298.     IRpcStubBuffer *This,
  1299.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1300.     PRPC_MESSAGE _pRpcMessage,
  1301.     DWORD *_pdwStubPhase);
  1302.  
  1303.  
  1304. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetAlignment_Proxy( 
  1305.     ICreateTypeInfo __RPC_FAR * This,
  1306.     /* [in] */ WORD cbAlignment);
  1307.  
  1308.  
  1309. void __RPC_STUB ICreateTypeInfo_SetAlignment_Stub(
  1310.     IRpcStubBuffer *This,
  1311.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1312.     PRPC_MESSAGE _pRpcMessage,
  1313.     DWORD *_pdwStubPhase);
  1314.  
  1315.  
  1316. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetSchema_Proxy( 
  1317.     ICreateTypeInfo __RPC_FAR * This,
  1318.     /* [in] */ LPOLESTR pStrSchema);
  1319.  
  1320.  
  1321. void __RPC_STUB ICreateTypeInfo_SetSchema_Stub(
  1322.     IRpcStubBuffer *This,
  1323.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1324.     PRPC_MESSAGE _pRpcMessage,
  1325.     DWORD *_pdwStubPhase);
  1326.  
  1327.  
  1328. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_AddVarDesc_Proxy( 
  1329.     ICreateTypeInfo __RPC_FAR * This,
  1330.     /* [in] */ UINT index,
  1331.     /* [in] */ VARDESC __RPC_FAR *pVarDesc);
  1332.  
  1333.  
  1334. void __RPC_STUB ICreateTypeInfo_AddVarDesc_Stub(
  1335.     IRpcStubBuffer *This,
  1336.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1337.     PRPC_MESSAGE _pRpcMessage,
  1338.     DWORD *_pdwStubPhase);
  1339.  
  1340.  
  1341. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetFuncAndParamNames_Proxy( 
  1342.     ICreateTypeInfo __RPC_FAR * This,
  1343.     /* [in] */ UINT index,
  1344.     /* [in][size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1345.     /* [in] */ UINT cNames);
  1346.  
  1347.  
  1348. void __RPC_STUB ICreateTypeInfo_SetFuncAndParamNames_Stub(
  1349.     IRpcStubBuffer *This,
  1350.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1351.     PRPC_MESSAGE _pRpcMessage,
  1352.     DWORD *_pdwStubPhase);
  1353.  
  1354.  
  1355. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetVarName_Proxy( 
  1356.     ICreateTypeInfo __RPC_FAR * This,
  1357.     /* [in] */ UINT index,
  1358.     /* [in] */ LPOLESTR szName);
  1359.  
  1360.  
  1361. void __RPC_STUB ICreateTypeInfo_SetVarName_Stub(
  1362.     IRpcStubBuffer *This,
  1363.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1364.     PRPC_MESSAGE _pRpcMessage,
  1365.     DWORD *_pdwStubPhase);
  1366.  
  1367.  
  1368. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetTypeDescAlias_Proxy( 
  1369.     ICreateTypeInfo __RPC_FAR * This,
  1370.     /* [in] */ TYPEDESC __RPC_FAR *pTDescAlias);
  1371.  
  1372.  
  1373. void __RPC_STUB ICreateTypeInfo_SetTypeDescAlias_Stub(
  1374.     IRpcStubBuffer *This,
  1375.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1376.     PRPC_MESSAGE _pRpcMessage,
  1377.     DWORD *_pdwStubPhase);
  1378.  
  1379.  
  1380. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_DefineFuncAsDllEntry_Proxy( 
  1381.     ICreateTypeInfo __RPC_FAR * This,
  1382.     /* [in] */ UINT index,
  1383.     /* [in] */ LPOLESTR szDllName,
  1384.     /* [in] */ LPOLESTR szProcName);
  1385.  
  1386.  
  1387. void __RPC_STUB ICreateTypeInfo_DefineFuncAsDllEntry_Stub(
  1388.     IRpcStubBuffer *This,
  1389.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1390.     PRPC_MESSAGE _pRpcMessage,
  1391.     DWORD *_pdwStubPhase);
  1392.  
  1393.  
  1394. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetFuncDocString_Proxy( 
  1395.     ICreateTypeInfo __RPC_FAR * This,
  1396.     /* [in] */ UINT index,
  1397.     /* [in] */ LPOLESTR szDocString);
  1398.  
  1399.  
  1400. void __RPC_STUB ICreateTypeInfo_SetFuncDocString_Stub(
  1401.     IRpcStubBuffer *This,
  1402.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1403.     PRPC_MESSAGE _pRpcMessage,
  1404.     DWORD *_pdwStubPhase);
  1405.  
  1406.  
  1407. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetVarDocString_Proxy( 
  1408.     ICreateTypeInfo __RPC_FAR * This,
  1409.     /* [in] */ UINT index,
  1410.     /* [in] */ LPOLESTR szDocString);
  1411.  
  1412.  
  1413. void __RPC_STUB ICreateTypeInfo_SetVarDocString_Stub(
  1414.     IRpcStubBuffer *This,
  1415.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1416.     PRPC_MESSAGE _pRpcMessage,
  1417.     DWORD *_pdwStubPhase);
  1418.  
  1419.  
  1420. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetFuncHelpContext_Proxy( 
  1421.     ICreateTypeInfo __RPC_FAR * This,
  1422.     /* [in] */ UINT index,
  1423.     /* [in] */ DWORD dwHelpContext);
  1424.  
  1425.  
  1426. void __RPC_STUB ICreateTypeInfo_SetFuncHelpContext_Stub(
  1427.     IRpcStubBuffer *This,
  1428.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1429.     PRPC_MESSAGE _pRpcMessage,
  1430.     DWORD *_pdwStubPhase);
  1431.  
  1432.  
  1433. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetVarHelpContext_Proxy( 
  1434.     ICreateTypeInfo __RPC_FAR * This,
  1435.     /* [in] */ UINT index,
  1436.     /* [in] */ DWORD dwHelpContext);
  1437.  
  1438.  
  1439. void __RPC_STUB ICreateTypeInfo_SetVarHelpContext_Stub(
  1440.     IRpcStubBuffer *This,
  1441.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1442.     PRPC_MESSAGE _pRpcMessage,
  1443.     DWORD *_pdwStubPhase);
  1444.  
  1445.  
  1446. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetMops_Proxy( 
  1447.     ICreateTypeInfo __RPC_FAR * This,
  1448.     /* [in] */ UINT index,
  1449.     /* [in] */ BSTR bstrMops);
  1450.  
  1451.  
  1452. void __RPC_STUB ICreateTypeInfo_SetMops_Stub(
  1453.     IRpcStubBuffer *This,
  1454.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1455.     PRPC_MESSAGE _pRpcMessage,
  1456.     DWORD *_pdwStubPhase);
  1457.  
  1458.  
  1459. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetTypeIdldesc_Proxy( 
  1460.     ICreateTypeInfo __RPC_FAR * This,
  1461.     /* [in] */ IDLDESC __RPC_FAR *pIdlDesc);
  1462.  
  1463.  
  1464. void __RPC_STUB ICreateTypeInfo_SetTypeIdldesc_Stub(
  1465.     IRpcStubBuffer *This,
  1466.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1467.     PRPC_MESSAGE _pRpcMessage,
  1468.     DWORD *_pdwStubPhase);
  1469.  
  1470.  
  1471. HRESULT STDMETHODCALLTYPE ICreateTypeInfo_LayOut_Proxy( 
  1472.     ICreateTypeInfo __RPC_FAR * This);
  1473.  
  1474.  
  1475. void __RPC_STUB ICreateTypeInfo_LayOut_Stub(
  1476.     IRpcStubBuffer *This,
  1477.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1478.     PRPC_MESSAGE _pRpcMessage,
  1479.     DWORD *_pdwStubPhase);
  1480.  
  1481.  
  1482.  
  1483. #endif     /* __ICreateTypeInfo_INTERFACE_DEFINED__ */
  1484.  
  1485.  
  1486. #ifndef __ICreateTypeInfo2_INTERFACE_DEFINED__
  1487. #define __ICreateTypeInfo2_INTERFACE_DEFINED__
  1488.  
  1489. /****************************************
  1490.  * Generated header for interface: ICreateTypeInfo2
  1491.  * at Thu Sep 11 10:57:08 1997
  1492.  * using MIDL 3.03.0110
  1493.  ****************************************/
  1494. /* [local][unique][uuid][object] */ 
  1495.  
  1496.  
  1497. typedef /* [unique] */ ICreateTypeInfo2 __RPC_FAR *LPCREATETYPEINFO2;
  1498.  
  1499.  
  1500. EXTERN_C const IID IID_ICreateTypeInfo2;
  1501.  
  1502. #if defined(__cplusplus) && !defined(CINTERFACE)
  1503.     
  1504.     MIDL_INTERFACE("0002040E-0000-0000-C000-000000000046")
  1505.     ICreateTypeInfo2 : public ICreateTypeInfo
  1506.     {
  1507.     public:
  1508.         virtual HRESULT STDMETHODCALLTYPE DeleteFuncDesc( 
  1509.             /* [in] */ UINT index) = 0;
  1510.         
  1511.         virtual HRESULT STDMETHODCALLTYPE DeleteFuncDescByMemId( 
  1512.             /* [in] */ MEMBERID memid,
  1513.             /* [in] */ INVOKEKIND invKind) = 0;
  1514.         
  1515.         virtual HRESULT STDMETHODCALLTYPE DeleteVarDesc( 
  1516.             /* [in] */ UINT index) = 0;
  1517.         
  1518.         virtual HRESULT STDMETHODCALLTYPE DeleteVarDescByMemId( 
  1519.             /* [in] */ MEMBERID memid) = 0;
  1520.         
  1521.         virtual HRESULT STDMETHODCALLTYPE DeleteImplType( 
  1522.             /* [in] */ UINT index) = 0;
  1523.         
  1524.         virtual HRESULT STDMETHODCALLTYPE SetCustData( 
  1525.             /* [in] */ REFGUID guid,
  1526.             /* [in] */ VARIANT __RPC_FAR *pVarVal) = 0;
  1527.         
  1528.         virtual HRESULT STDMETHODCALLTYPE SetFuncCustData( 
  1529.             /* [in] */ UINT index,
  1530.             /* [in] */ REFGUID guid,
  1531.             /* [in] */ VARIANT __RPC_FAR *pVarVal) = 0;
  1532.         
  1533.         virtual HRESULT STDMETHODCALLTYPE SetParamCustData( 
  1534.             /* [in] */ UINT indexFunc,
  1535.             /* [in] */ UINT indexParam,
  1536.             /* [in] */ REFGUID guid,
  1537.             /* [in] */ VARIANT __RPC_FAR *pVarVal) = 0;
  1538.         
  1539.         virtual HRESULT STDMETHODCALLTYPE SetVarCustData( 
  1540.             /* [in] */ UINT index,
  1541.             /* [in] */ REFGUID guid,
  1542.             /* [in] */ VARIANT __RPC_FAR *pVarVal) = 0;
  1543.         
  1544.         virtual HRESULT STDMETHODCALLTYPE SetImplTypeCustData( 
  1545.             /* [in] */ UINT index,
  1546.             /* [in] */ REFGUID guid,
  1547.             /* [in] */ VARIANT __RPC_FAR *pVarVal) = 0;
  1548.         
  1549.         virtual HRESULT STDMETHODCALLTYPE SetHelpStringContext( 
  1550.             /* [in] */ ULONG dwHelpStringContext) = 0;
  1551.         
  1552.         virtual HRESULT STDMETHODCALLTYPE SetFuncHelpStringContext( 
  1553.             /* [in] */ UINT index,
  1554.             /* [in] */ ULONG dwHelpStringContext) = 0;
  1555.         
  1556.         virtual HRESULT STDMETHODCALLTYPE SetVarHelpStringContext( 
  1557.             /* [in] */ UINT index,
  1558.             /* [in] */ ULONG dwHelpStringContext) = 0;
  1559.         
  1560.         virtual HRESULT STDMETHODCALLTYPE Invalidate( void) = 0;
  1561.         
  1562.         virtual HRESULT STDMETHODCALLTYPE SetName( 
  1563.             /* [in] */ LPOLESTR szName) = 0;
  1564.         
  1565.     };
  1566.     
  1567. #else     /* C style interface */
  1568.  
  1569.     typedef struct ICreateTypeInfo2Vtbl
  1570.     {
  1571.         BEGIN_INTERFACE
  1572.         
  1573.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1574.             ICreateTypeInfo2 __RPC_FAR * This,
  1575.             /* [in] */ REFIID riid,
  1576.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1577.         
  1578.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1579.             ICreateTypeInfo2 __RPC_FAR * This);
  1580.         
  1581.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1582.             ICreateTypeInfo2 __RPC_FAR * This);
  1583.         
  1584.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGuid )( 
  1585.             ICreateTypeInfo2 __RPC_FAR * This,
  1586.             /* [in] */ REFGUID guid);
  1587.         
  1588.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTypeFlags )( 
  1589.             ICreateTypeInfo2 __RPC_FAR * This,
  1590.             /* [in] */ UINT uTypeFlags);
  1591.         
  1592.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDocString )( 
  1593.             ICreateTypeInfo2 __RPC_FAR * This,
  1594.             /* [in] */ LPOLESTR pStrDoc);
  1595.         
  1596.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpContext )( 
  1597.             ICreateTypeInfo2 __RPC_FAR * This,
  1598.             /* [in] */ DWORD dwHelpContext);
  1599.         
  1600.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVersion )( 
  1601.             ICreateTypeInfo2 __RPC_FAR * This,
  1602.             /* [in] */ WORD wMajorVerNum,
  1603.             /* [in] */ WORD wMinorVerNum);
  1604.         
  1605.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefTypeInfo )( 
  1606.             ICreateTypeInfo2 __RPC_FAR * This,
  1607.             /* [in] */ ITypeInfo __RPC_FAR *pTInfo,
  1608.             /* [in] */ HREFTYPE __RPC_FAR *phRefType);
  1609.         
  1610.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddFuncDesc )( 
  1611.             ICreateTypeInfo2 __RPC_FAR * This,
  1612.             /* [in] */ UINT index,
  1613.             /* [in] */ FUNCDESC __RPC_FAR *pFuncDesc);
  1614.         
  1615.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddImplType )( 
  1616.             ICreateTypeInfo2 __RPC_FAR * This,
  1617.             /* [in] */ UINT index,
  1618.             /* [in] */ HREFTYPE hRefType);
  1619.         
  1620.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetImplTypeFlags )( 
  1621.             ICreateTypeInfo2 __RPC_FAR * This,
  1622.             /* [in] */ UINT index,
  1623.             /* [in] */ INT implTypeFlags);
  1624.         
  1625.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAlignment )( 
  1626.             ICreateTypeInfo2 __RPC_FAR * This,
  1627.             /* [in] */ WORD cbAlignment);
  1628.         
  1629.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSchema )( 
  1630.             ICreateTypeInfo2 __RPC_FAR * This,
  1631.             /* [in] */ LPOLESTR pStrSchema);
  1632.         
  1633.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddVarDesc )( 
  1634.             ICreateTypeInfo2 __RPC_FAR * This,
  1635.             /* [in] */ UINT index,
  1636.             /* [in] */ VARDESC __RPC_FAR *pVarDesc);
  1637.         
  1638.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFuncAndParamNames )( 
  1639.             ICreateTypeInfo2 __RPC_FAR * This,
  1640.             /* [in] */ UINT index,
  1641.             /* [in][size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1642.             /* [in] */ UINT cNames);
  1643.         
  1644.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVarName )( 
  1645.             ICreateTypeInfo2 __RPC_FAR * This,
  1646.             /* [in] */ UINT index,
  1647.             /* [in] */ LPOLESTR szName);
  1648.         
  1649.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTypeDescAlias )( 
  1650.             ICreateTypeInfo2 __RPC_FAR * This,
  1651.             /* [in] */ TYPEDESC __RPC_FAR *pTDescAlias);
  1652.         
  1653.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DefineFuncAsDllEntry )( 
  1654.             ICreateTypeInfo2 __RPC_FAR * This,
  1655.             /* [in] */ UINT index,
  1656.             /* [in] */ LPOLESTR szDllName,
  1657.             /* [in] */ LPOLESTR szProcName);
  1658.         
  1659.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFuncDocString )( 
  1660.             ICreateTypeInfo2 __RPC_FAR * This,
  1661.             /* [in] */ UINT index,
  1662.             /* [in] */ LPOLESTR szDocString);
  1663.         
  1664.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVarDocString )( 
  1665.             ICreateTypeInfo2 __RPC_FAR * This,
  1666.             /* [in] */ UINT index,
  1667.             /* [in] */ LPOLESTR szDocString);
  1668.         
  1669.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFuncHelpContext )( 
  1670.             ICreateTypeInfo2 __RPC_FAR * This,
  1671.             /* [in] */ UINT index,
  1672.             /* [in] */ DWORD dwHelpContext);
  1673.         
  1674.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVarHelpContext )( 
  1675.             ICreateTypeInfo2 __RPC_FAR * This,
  1676.             /* [in] */ UINT index,
  1677.             /* [in] */ DWORD dwHelpContext);
  1678.         
  1679.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetMops )( 
  1680.             ICreateTypeInfo2 __RPC_FAR * This,
  1681.             /* [in] */ UINT index,
  1682.             /* [in] */ BSTR bstrMops);
  1683.         
  1684.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTypeIdldesc )( 
  1685.             ICreateTypeInfo2 __RPC_FAR * This,
  1686.             /* [in] */ IDLDESC __RPC_FAR *pIdlDesc);
  1687.         
  1688.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *LayOut )( 
  1689.             ICreateTypeInfo2 __RPC_FAR * This);
  1690.         
  1691.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteFuncDesc )( 
  1692.             ICreateTypeInfo2 __RPC_FAR * This,
  1693.             /* [in] */ UINT index);
  1694.         
  1695.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteFuncDescByMemId )( 
  1696.             ICreateTypeInfo2 __RPC_FAR * This,
  1697.             /* [in] */ MEMBERID memid,
  1698.             /* [in] */ INVOKEKIND invKind);
  1699.         
  1700.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteVarDesc )( 
  1701.             ICreateTypeInfo2 __RPC_FAR * This,
  1702.             /* [in] */ UINT index);
  1703.         
  1704.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteVarDescByMemId )( 
  1705.             ICreateTypeInfo2 __RPC_FAR * This,
  1706.             /* [in] */ MEMBERID memid);
  1707.         
  1708.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteImplType )( 
  1709.             ICreateTypeInfo2 __RPC_FAR * This,
  1710.             /* [in] */ UINT index);
  1711.         
  1712.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCustData )( 
  1713.             ICreateTypeInfo2 __RPC_FAR * This,
  1714.             /* [in] */ REFGUID guid,
  1715.             /* [in] */ VARIANT __RPC_FAR *pVarVal);
  1716.         
  1717.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFuncCustData )( 
  1718.             ICreateTypeInfo2 __RPC_FAR * This,
  1719.             /* [in] */ UINT index,
  1720.             /* [in] */ REFGUID guid,
  1721.             /* [in] */ VARIANT __RPC_FAR *pVarVal);
  1722.         
  1723.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetParamCustData )( 
  1724.             ICreateTypeInfo2 __RPC_FAR * This,
  1725.             /* [in] */ UINT indexFunc,
  1726.             /* [in] */ UINT indexParam,
  1727.             /* [in] */ REFGUID guid,
  1728.             /* [in] */ VARIANT __RPC_FAR *pVarVal);
  1729.         
  1730.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVarCustData )( 
  1731.             ICreateTypeInfo2 __RPC_FAR * This,
  1732.             /* [in] */ UINT index,
  1733.             /* [in] */ REFGUID guid,
  1734.             /* [in] */ VARIANT __RPC_FAR *pVarVal);
  1735.         
  1736.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetImplTypeCustData )( 
  1737.             ICreateTypeInfo2 __RPC_FAR * This,
  1738.             /* [in] */ UINT index,
  1739.             /* [in] */ REFGUID guid,
  1740.             /* [in] */ VARIANT __RPC_FAR *pVarVal);
  1741.         
  1742.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpStringContext )( 
  1743.             ICreateTypeInfo2 __RPC_FAR * This,
  1744.             /* [in] */ ULONG dwHelpStringContext);
  1745.         
  1746.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFuncHelpStringContext )( 
  1747.             ICreateTypeInfo2 __RPC_FAR * This,
  1748.             /* [in] */ UINT index,
  1749.             /* [in] */ ULONG dwHelpStringContext);
  1750.         
  1751.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVarHelpStringContext )( 
  1752.             ICreateTypeInfo2 __RPC_FAR * This,
  1753.             /* [in] */ UINT index,
  1754.             /* [in] */ ULONG dwHelpStringContext);
  1755.         
  1756.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invalidate )( 
  1757.             ICreateTypeInfo2 __RPC_FAR * This);
  1758.         
  1759.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetName )( 
  1760.             ICreateTypeInfo2 __RPC_FAR * This,
  1761.             /* [in] */ LPOLESTR szName);
  1762.         
  1763.         END_INTERFACE
  1764.     } ICreateTypeInfo2Vtbl;
  1765.  
  1766.     interface ICreateTypeInfo2
  1767.     {
  1768.         CONST_VTBL struct ICreateTypeInfo2Vtbl __RPC_FAR *lpVtbl;
  1769.     };
  1770.  
  1771.     
  1772.  
  1773. #ifdef COBJMACROS
  1774.  
  1775.  
  1776. #define ICreateTypeInfo2_QueryInterface(This,riid,ppvObject)    \
  1777.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1778.  
  1779. #define ICreateTypeInfo2_AddRef(This)    \
  1780.     (This)->lpVtbl -> AddRef(This)
  1781.  
  1782. #define ICreateTypeInfo2_Release(This)    \
  1783.     (This)->lpVtbl -> Release(This)
  1784.  
  1785.  
  1786. #define ICreateTypeInfo2_SetGuid(This,guid)    \
  1787.     (This)->lpVtbl -> SetGuid(This,guid)
  1788.  
  1789. #define ICreateTypeInfo2_SetTypeFlags(This,uTypeFlags)    \
  1790.     (This)->lpVtbl -> SetTypeFlags(This,uTypeFlags)
  1791.  
  1792. #define ICreateTypeInfo2_SetDocString(This,pStrDoc)    \
  1793.     (This)->lpVtbl -> SetDocString(This,pStrDoc)
  1794.  
  1795. #define ICreateTypeInfo2_SetHelpContext(This,dwHelpContext)    \
  1796.     (This)->lpVtbl -> SetHelpContext(This,dwHelpContext)
  1797.  
  1798. #define ICreateTypeInfo2_SetVersion(This,wMajorVerNum,wMinorVerNum)    \
  1799.     (This)->lpVtbl -> SetVersion(This,wMajorVerNum,wMinorVerNum)
  1800.  
  1801. #define ICreateTypeInfo2_AddRefTypeInfo(This,pTInfo,phRefType)    \
  1802.     (This)->lpVtbl -> AddRefTypeInfo(This,pTInfo,phRefType)
  1803.  
  1804. #define ICreateTypeInfo2_AddFuncDesc(This,index,pFuncDesc)    \
  1805.     (This)->lpVtbl -> AddFuncDesc(This,index,pFuncDesc)
  1806.  
  1807. #define ICreateTypeInfo2_AddImplType(This,index,hRefType)    \
  1808.     (This)->lpVtbl -> AddImplType(This,index,hRefType)
  1809.  
  1810. #define ICreateTypeInfo2_SetImplTypeFlags(This,index,implTypeFlags)    \
  1811.     (This)->lpVtbl -> SetImplTypeFlags(This,index,implTypeFlags)
  1812.  
  1813. #define ICreateTypeInfo2_SetAlignment(This,cbAlignment)    \
  1814.     (This)->lpVtbl -> SetAlignment(This,cbAlignment)
  1815.  
  1816. #define ICreateTypeInfo2_SetSchema(This,pStrSchema)    \
  1817.     (This)->lpVtbl -> SetSchema(This,pStrSchema)
  1818.  
  1819. #define ICreateTypeInfo2_AddVarDesc(This,index,pVarDesc)    \
  1820.     (This)->lpVtbl -> AddVarDesc(This,index,pVarDesc)
  1821.  
  1822. #define ICreateTypeInfo2_SetFuncAndParamNames(This,index,rgszNames,cNames)    \
  1823.     (This)->lpVtbl -> SetFuncAndParamNames(This,index,rgszNames,cNames)
  1824.  
  1825. #define ICreateTypeInfo2_SetVarName(This,index,szName)    \
  1826.     (This)->lpVtbl -> SetVarName(This,index,szName)
  1827.  
  1828. #define ICreateTypeInfo2_SetTypeDescAlias(This,pTDescAlias)    \
  1829.     (This)->lpVtbl -> SetTypeDescAlias(This,pTDescAlias)
  1830.  
  1831. #define ICreateTypeInfo2_DefineFuncAsDllEntry(This,index,szDllName,szProcName)    \
  1832.     (This)->lpVtbl -> DefineFuncAsDllEntry(This,index,szDllName,szProcName)
  1833.  
  1834. #define ICreateTypeInfo2_SetFuncDocString(This,index,szDocString)    \
  1835.     (This)->lpVtbl -> SetFuncDocString(This,index,szDocString)
  1836.  
  1837. #define ICreateTypeInfo2_SetVarDocString(This,index,szDocString)    \
  1838.     (This)->lpVtbl -> SetVarDocString(This,index,szDocString)
  1839.  
  1840. #define ICreateTypeInfo2_SetFuncHelpContext(This,index,dwHelpContext)    \
  1841.     (This)->lpVtbl -> SetFuncHelpContext(This,index,dwHelpContext)
  1842.  
  1843. #define ICreateTypeInfo2_SetVarHelpContext(This,index,dwHelpContext)    \
  1844.     (This)->lpVtbl -> SetVarHelpContext(This,index,dwHelpContext)
  1845.  
  1846. #define ICreateTypeInfo2_SetMops(This,index,bstrMops)    \
  1847.     (This)->lpVtbl -> SetMops(This,index,bstrMops)
  1848.  
  1849. #define ICreateTypeInfo2_SetTypeIdldesc(This,pIdlDesc)    \
  1850.     (This)->lpVtbl -> SetTypeIdldesc(This,pIdlDesc)
  1851.  
  1852. #define ICreateTypeInfo2_LayOut(This)    \
  1853.     (This)->lpVtbl -> LayOut(This)
  1854.  
  1855.  
  1856. #define ICreateTypeInfo2_DeleteFuncDesc(This,index)    \
  1857.     (This)->lpVtbl -> DeleteFuncDesc(This,index)
  1858.  
  1859. #define ICreateTypeInfo2_DeleteFuncDescByMemId(This,memid,invKind)    \
  1860.     (This)->lpVtbl -> DeleteFuncDescByMemId(This,memid,invKind)
  1861.  
  1862. #define ICreateTypeInfo2_DeleteVarDesc(This,index)    \
  1863.     (This)->lpVtbl -> DeleteVarDesc(This,index)
  1864.  
  1865. #define ICreateTypeInfo2_DeleteVarDescByMemId(This,memid)    \
  1866.     (This)->lpVtbl -> DeleteVarDescByMemId(This,memid)
  1867.  
  1868. #define ICreateTypeInfo2_DeleteImplType(This,index)    \
  1869.     (This)->lpVtbl -> DeleteImplType(This,index)
  1870.  
  1871. #define ICreateTypeInfo2_SetCustData(This,guid,pVarVal)    \
  1872.     (This)->lpVtbl -> SetCustData(This,guid,pVarVal)
  1873.  
  1874. #define ICreateTypeInfo2_SetFuncCustData(This,index,guid,pVarVal)    \
  1875.     (This)->lpVtbl -> SetFuncCustData(This,index,guid,pVarVal)
  1876.  
  1877. #define ICreateTypeInfo2_SetParamCustData(This,indexFunc,indexParam,guid,pVarVal)    \
  1878.     (This)->lpVtbl -> SetParamCustData(This,indexFunc,indexParam,guid,pVarVal)
  1879.  
  1880. #define ICreateTypeInfo2_SetVarCustData(This,index,guid,pVarVal)    \
  1881.     (This)->lpVtbl -> SetVarCustData(This,index,guid,pVarVal)
  1882.  
  1883. #define ICreateTypeInfo2_SetImplTypeCustData(This,index,guid,pVarVal)    \
  1884.     (This)->lpVtbl -> SetImplTypeCustData(This,index,guid,pVarVal)
  1885.  
  1886. #define ICreateTypeInfo2_SetHelpStringContext(This,dwHelpStringContext)    \
  1887.     (This)->lpVtbl -> SetHelpStringContext(This,dwHelpStringContext)
  1888.  
  1889. #define ICreateTypeInfo2_SetFuncHelpStringContext(This,index,dwHelpStringContext)    \
  1890.     (This)->lpVtbl -> SetFuncHelpStringContext(This,index,dwHelpStringContext)
  1891.  
  1892. #define ICreateTypeInfo2_SetVarHelpStringContext(This,index,dwHelpStringContext)    \
  1893.     (This)->lpVtbl -> SetVarHelpStringContext(This,index,dwHelpStringContext)
  1894.  
  1895. #define ICreateTypeInfo2_Invalidate(This)    \
  1896.     (This)->lpVtbl -> Invalidate(This)
  1897.  
  1898. #define ICreateTypeInfo2_SetName(This,szName)    \
  1899.     (This)->lpVtbl -> SetName(This,szName)
  1900.  
  1901. #endif /* COBJMACROS */
  1902.  
  1903.  
  1904. #endif     /* C style interface */
  1905.  
  1906.  
  1907.  
  1908. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteFuncDesc_Proxy( 
  1909.     ICreateTypeInfo2 __RPC_FAR * This,
  1910.     /* [in] */ UINT index);
  1911.  
  1912.  
  1913. void __RPC_STUB ICreateTypeInfo2_DeleteFuncDesc_Stub(
  1914.     IRpcStubBuffer *This,
  1915.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1916.     PRPC_MESSAGE _pRpcMessage,
  1917.     DWORD *_pdwStubPhase);
  1918.  
  1919.  
  1920. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteFuncDescByMemId_Proxy( 
  1921.     ICreateTypeInfo2 __RPC_FAR * This,
  1922.     /* [in] */ MEMBERID memid,
  1923.     /* [in] */ INVOKEKIND invKind);
  1924.  
  1925.  
  1926. void __RPC_STUB ICreateTypeInfo2_DeleteFuncDescByMemId_Stub(
  1927.     IRpcStubBuffer *This,
  1928.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1929.     PRPC_MESSAGE _pRpcMessage,
  1930.     DWORD *_pdwStubPhase);
  1931.  
  1932.  
  1933. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteVarDesc_Proxy( 
  1934.     ICreateTypeInfo2 __RPC_FAR * This,
  1935.     /* [in] */ UINT index);
  1936.  
  1937.  
  1938. void __RPC_STUB ICreateTypeInfo2_DeleteVarDesc_Stub(
  1939.     IRpcStubBuffer *This,
  1940.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1941.     PRPC_MESSAGE _pRpcMessage,
  1942.     DWORD *_pdwStubPhase);
  1943.  
  1944.  
  1945. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteVarDescByMemId_Proxy( 
  1946.     ICreateTypeInfo2 __RPC_FAR * This,
  1947.     /* [in] */ MEMBERID memid);
  1948.  
  1949.  
  1950. void __RPC_STUB ICreateTypeInfo2_DeleteVarDescByMemId_Stub(
  1951.     IRpcStubBuffer *This,
  1952.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1953.     PRPC_MESSAGE _pRpcMessage,
  1954.     DWORD *_pdwStubPhase);
  1955.  
  1956.  
  1957. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteImplType_Proxy( 
  1958.     ICreateTypeInfo2 __RPC_FAR * This,
  1959.     /* [in] */ UINT index);
  1960.  
  1961.  
  1962. void __RPC_STUB ICreateTypeInfo2_DeleteImplType_Stub(
  1963.     IRpcStubBuffer *This,
  1964.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1965.     PRPC_MESSAGE _pRpcMessage,
  1966.     DWORD *_pdwStubPhase);
  1967.  
  1968.  
  1969. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetCustData_Proxy( 
  1970.     ICreateTypeInfo2 __RPC_FAR * This,
  1971.     /* [in] */ REFGUID guid,
  1972.     /* [in] */ VARIANT __RPC_FAR *pVarVal);
  1973.  
  1974.  
  1975. void __RPC_STUB ICreateTypeInfo2_SetCustData_Stub(
  1976.     IRpcStubBuffer *This,
  1977.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1978.     PRPC_MESSAGE _pRpcMessage,
  1979.     DWORD *_pdwStubPhase);
  1980.  
  1981.  
  1982. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetFuncCustData_Proxy( 
  1983.     ICreateTypeInfo2 __RPC_FAR * This,
  1984.     /* [in] */ UINT index,
  1985.     /* [in] */ REFGUID guid,
  1986.     /* [in] */ VARIANT __RPC_FAR *pVarVal);
  1987.  
  1988.  
  1989. void __RPC_STUB ICreateTypeInfo2_SetFuncCustData_Stub(
  1990.     IRpcStubBuffer *This,
  1991.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1992.     PRPC_MESSAGE _pRpcMessage,
  1993.     DWORD *_pdwStubPhase);
  1994.  
  1995.  
  1996. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetParamCustData_Proxy( 
  1997.     ICreateTypeInfo2 __RPC_FAR * This,
  1998.     /* [in] */ UINT indexFunc,
  1999.     /* [in] */ UINT indexParam,
  2000.     /* [in] */ REFGUID guid,
  2001.     /* [in] */ VARIANT __RPC_FAR *pVarVal);
  2002.  
  2003.  
  2004. void __RPC_STUB ICreateTypeInfo2_SetParamCustData_Stub(
  2005.     IRpcStubBuffer *This,
  2006.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2007.     PRPC_MESSAGE _pRpcMessage,
  2008.     DWORD *_pdwStubPhase);
  2009.  
  2010.  
  2011. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetVarCustData_Proxy( 
  2012.     ICreateTypeInfo2 __RPC_FAR * This,
  2013.     /* [in] */ UINT index,
  2014.     /* [in] */ REFGUID guid,
  2015.     /* [in] */ VARIANT __RPC_FAR *pVarVal);
  2016.  
  2017.  
  2018. void __RPC_STUB ICreateTypeInfo2_SetVarCustData_Stub(
  2019.     IRpcStubBuffer *This,
  2020.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2021.     PRPC_MESSAGE _pRpcMessage,
  2022.     DWORD *_pdwStubPhase);
  2023.  
  2024.  
  2025. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetImplTypeCustData_Proxy( 
  2026.     ICreateTypeInfo2 __RPC_FAR * This,
  2027.     /* [in] */ UINT index,
  2028.     /* [in] */ REFGUID guid,
  2029.     /* [in] */ VARIANT __RPC_FAR *pVarVal);
  2030.  
  2031.  
  2032. void __RPC_STUB ICreateTypeInfo2_SetImplTypeCustData_Stub(
  2033.     IRpcStubBuffer *This,
  2034.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2035.     PRPC_MESSAGE _pRpcMessage,
  2036.     DWORD *_pdwStubPhase);
  2037.  
  2038.  
  2039. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetHelpStringContext_Proxy( 
  2040.     ICreateTypeInfo2 __RPC_FAR * This,
  2041.     /* [in] */ ULONG dwHelpStringContext);
  2042.  
  2043.  
  2044. void __RPC_STUB ICreateTypeInfo2_SetHelpStringContext_Stub(
  2045.     IRpcStubBuffer *This,
  2046.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2047.     PRPC_MESSAGE _pRpcMessage,
  2048.     DWORD *_pdwStubPhase);
  2049.  
  2050.  
  2051. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetFuncHelpStringContext_Proxy( 
  2052.     ICreateTypeInfo2 __RPC_FAR * This,
  2053.     /* [in] */ UINT index,
  2054.     /* [in] */ ULONG dwHelpStringContext);
  2055.  
  2056.  
  2057. void __RPC_STUB ICreateTypeInfo2_SetFuncHelpStringContext_Stub(
  2058.     IRpcStubBuffer *This,
  2059.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2060.     PRPC_MESSAGE _pRpcMessage,
  2061.     DWORD *_pdwStubPhase);
  2062.  
  2063.  
  2064. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetVarHelpStringContext_Proxy( 
  2065.     ICreateTypeInfo2 __RPC_FAR * This,
  2066.     /* [in] */ UINT index,
  2067.     /* [in] */ ULONG dwHelpStringContext);
  2068.  
  2069.  
  2070. void __RPC_STUB ICreateTypeInfo2_SetVarHelpStringContext_Stub(
  2071.     IRpcStubBuffer *This,
  2072.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2073.     PRPC_MESSAGE _pRpcMessage,
  2074.     DWORD *_pdwStubPhase);
  2075.  
  2076.  
  2077. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_Invalidate_Proxy( 
  2078.     ICreateTypeInfo2 __RPC_FAR * This);
  2079.  
  2080.  
  2081. void __RPC_STUB ICreateTypeInfo2_Invalidate_Stub(
  2082.     IRpcStubBuffer *This,
  2083.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2084.     PRPC_MESSAGE _pRpcMessage,
  2085.     DWORD *_pdwStubPhase);
  2086.  
  2087.  
  2088. HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetName_Proxy( 
  2089.     ICreateTypeInfo2 __RPC_FAR * This,
  2090.     /* [in] */ LPOLESTR szName);
  2091.  
  2092.  
  2093. void __RPC_STUB ICreateTypeInfo2_SetName_Stub(
  2094.     IRpcStubBuffer *This,
  2095.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2096.     PRPC_MESSAGE _pRpcMessage,
  2097.     DWORD *_pdwStubPhase);
  2098.  
  2099.  
  2100.  
  2101. #endif     /* __ICreateTypeInfo2_INTERFACE_DEFINED__ */
  2102.  
  2103.  
  2104. #ifndef __ICreateTypeLib_INTERFACE_DEFINED__
  2105. #define __ICreateTypeLib_INTERFACE_DEFINED__
  2106.  
  2107. /****************************************
  2108.  * Generated header for interface: ICreateTypeLib
  2109.  * at Thu Sep 11 10:57:08 1997
  2110.  * using MIDL 3.03.0110
  2111.  ****************************************/
  2112. /* [local][unique][uuid][object] */ 
  2113.  
  2114.  
  2115. typedef /* [unique] */ ICreateTypeLib __RPC_FAR *LPCREATETYPELIB;
  2116.  
  2117.  
  2118. EXTERN_C const IID IID_ICreateTypeLib;
  2119.  
  2120. #if defined(__cplusplus) && !defined(CINTERFACE)
  2121.     
  2122.     MIDL_INTERFACE("00020406-0000-0000-C000-000000000046")
  2123.     ICreateTypeLib : public IUnknown
  2124.     {
  2125.     public:
  2126.         virtual HRESULT STDMETHODCALLTYPE CreateTypeInfo( 
  2127.             /* [in] */ LPOLESTR szName,
  2128.             /* [in] */ TYPEKIND tkind,
  2129.             /* [out] */ ICreateTypeInfo __RPC_FAR *__RPC_FAR *ppCTInfo) = 0;
  2130.         
  2131.         virtual HRESULT STDMETHODCALLTYPE SetName( 
  2132.             /* [in] */ LPOLESTR szName) = 0;
  2133.         
  2134.         virtual HRESULT STDMETHODCALLTYPE SetVersion( 
  2135.             /* [in] */ WORD wMajorVerNum,
  2136.             /* [in] */ WORD wMinorVerNum) = 0;
  2137.         
  2138.         virtual HRESULT STDMETHODCALLTYPE SetGuid( 
  2139.             /* [in] */ REFGUID guid) = 0;
  2140.         
  2141.         virtual HRESULT STDMETHODCALLTYPE SetDocString( 
  2142.             /* [in] */ LPOLESTR szDoc) = 0;
  2143.         
  2144.         virtual HRESULT STDMETHODCALLTYPE SetHelpFileName( 
  2145.             /* [in] */ LPOLESTR szHelpFileName) = 0;
  2146.         
  2147.         virtual HRESULT STDMETHODCALLTYPE SetHelpContext( 
  2148.             /* [in] */ DWORD dwHelpContext) = 0;
  2149.         
  2150.         virtual HRESULT STDMETHODCALLTYPE SetLcid( 
  2151.             /* [in] */ LCID lcid) = 0;
  2152.         
  2153.         virtual HRESULT STDMETHODCALLTYPE SetLibFlags( 
  2154.             /* [in] */ UINT uLibFlags) = 0;
  2155.         
  2156.         virtual HRESULT STDMETHODCALLTYPE SaveAllChanges( void) = 0;
  2157.         
  2158.     };
  2159.     
  2160. #else     /* C style interface */
  2161.  
  2162.     typedef struct ICreateTypeLibVtbl
  2163.     {
  2164.         BEGIN_INTERFACE
  2165.         
  2166.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2167.             ICreateTypeLib __RPC_FAR * This,
  2168.             /* [in] */ REFIID riid,
  2169.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2170.         
  2171.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2172.             ICreateTypeLib __RPC_FAR * This);
  2173.         
  2174.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2175.             ICreateTypeLib __RPC_FAR * This);
  2176.         
  2177.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTypeInfo )( 
  2178.             ICreateTypeLib __RPC_FAR * This,
  2179.             /* [in] */ LPOLESTR szName,
  2180.             /* [in] */ TYPEKIND tkind,
  2181.             /* [out] */ ICreateTypeInfo __RPC_FAR *__RPC_FAR *ppCTInfo);
  2182.         
  2183.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetName )( 
  2184.             ICreateTypeLib __RPC_FAR * This,
  2185.             /* [in] */ LPOLESTR szName);
  2186.         
  2187.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVersion )( 
  2188.             ICreateTypeLib __RPC_FAR * This,
  2189.             /* [in] */ WORD wMajorVerNum,
  2190.             /* [in] */ WORD wMinorVerNum);
  2191.         
  2192.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGuid )( 
  2193.             ICreateTypeLib __RPC_FAR * This,
  2194.             /* [in] */ REFGUID guid);
  2195.         
  2196.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDocString )( 
  2197.             ICreateTypeLib __RPC_FAR * This,
  2198.             /* [in] */ LPOLESTR szDoc);
  2199.         
  2200.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpFileName )( 
  2201.             ICreateTypeLib __RPC_FAR * This,
  2202.             /* [in] */ LPOLESTR szHelpFileName);
  2203.         
  2204.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpContext )( 
  2205.             ICreateTypeLib __RPC_FAR * This,
  2206.             /* [in] */ DWORD dwHelpContext);
  2207.         
  2208.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLcid )( 
  2209.             ICreateTypeLib __RPC_FAR * This,
  2210.             /* [in] */ LCID lcid);
  2211.         
  2212.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLibFlags )( 
  2213.             ICreateTypeLib __RPC_FAR * This,
  2214.             /* [in] */ UINT uLibFlags);
  2215.         
  2216.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAllChanges )( 
  2217.             ICreateTypeLib __RPC_FAR * This);
  2218.         
  2219.         END_INTERFACE
  2220.     } ICreateTypeLibVtbl;
  2221.  
  2222.     interface ICreateTypeLib
  2223.     {
  2224.         CONST_VTBL struct ICreateTypeLibVtbl __RPC_FAR *lpVtbl;
  2225.     };
  2226.  
  2227.     
  2228.  
  2229. #ifdef COBJMACROS
  2230.  
  2231.  
  2232. #define ICreateTypeLib_QueryInterface(This,riid,ppvObject)    \
  2233.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2234.  
  2235. #define ICreateTypeLib_AddRef(This)    \
  2236.     (This)->lpVtbl -> AddRef(This)
  2237.  
  2238. #define ICreateTypeLib_Release(This)    \
  2239.     (This)->lpVtbl -> Release(This)
  2240.  
  2241.  
  2242. #define ICreateTypeLib_CreateTypeInfo(This,szName,tkind,ppCTInfo)    \
  2243.     (This)->lpVtbl -> CreateTypeInfo(This,szName,tkind,ppCTInfo)
  2244.  
  2245. #define ICreateTypeLib_SetName(This,szName)    \
  2246.     (This)->lpVtbl -> SetName(This,szName)
  2247.  
  2248. #define ICreateTypeLib_SetVersion(This,wMajorVerNum,wMinorVerNum)    \
  2249.     (This)->lpVtbl -> SetVersion(This,wMajorVerNum,wMinorVerNum)
  2250.  
  2251. #define ICreateTypeLib_SetGuid(This,guid)    \
  2252.     (This)->lpVtbl -> SetGuid(This,guid)
  2253.  
  2254. #define ICreateTypeLib_SetDocString(This,szDoc)    \
  2255.     (This)->lpVtbl -> SetDocString(This,szDoc)
  2256.  
  2257. #define ICreateTypeLib_SetHelpFileName(This,szHelpFileName)    \
  2258.     (This)->lpVtbl -> SetHelpFileName(This,szHelpFileName)
  2259.  
  2260. #define ICreateTypeLib_SetHelpContext(This,dwHelpContext)    \
  2261.     (This)->lpVtbl -> SetHelpContext(This,dwHelpContext)
  2262.  
  2263. #define ICreateTypeLib_SetLcid(This,lcid)    \
  2264.     (This)->lpVtbl -> SetLcid(This,lcid)
  2265.  
  2266. #define ICreateTypeLib_SetLibFlags(This,uLibFlags)    \
  2267.     (This)->lpVtbl -> SetLibFlags(This,uLibFlags)
  2268.  
  2269. #define ICreateTypeLib_SaveAllChanges(This)    \
  2270.     (This)->lpVtbl -> SaveAllChanges(This)
  2271.  
  2272. #endif /* COBJMACROS */
  2273.  
  2274.  
  2275. #endif     /* C style interface */
  2276.  
  2277.  
  2278.  
  2279. HRESULT STDMETHODCALLTYPE ICreateTypeLib_CreateTypeInfo_Proxy( 
  2280.     ICreateTypeLib __RPC_FAR * This,
  2281.     /* [in] */ LPOLESTR szName,
  2282.     /* [in] */ TYPEKIND tkind,
  2283.     /* [out] */ ICreateTypeInfo __RPC_FAR *__RPC_FAR *ppCTInfo);
  2284.  
  2285.  
  2286. void __RPC_STUB ICreateTypeLib_CreateTypeInfo_Stub(
  2287.     IRpcStubBuffer *This,
  2288.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2289.     PRPC_MESSAGE _pRpcMessage,
  2290.     DWORD *_pdwStubPhase);
  2291.  
  2292.  
  2293. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetName_Proxy( 
  2294.     ICreateTypeLib __RPC_FAR * This,
  2295.     /* [in] */ LPOLESTR szName);
  2296.  
  2297.  
  2298. void __RPC_STUB ICreateTypeLib_SetName_Stub(
  2299.     IRpcStubBuffer *This,
  2300.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2301.     PRPC_MESSAGE _pRpcMessage,
  2302.     DWORD *_pdwStubPhase);
  2303.  
  2304.  
  2305. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetVersion_Proxy( 
  2306.     ICreateTypeLib __RPC_FAR * This,
  2307.     /* [in] */ WORD wMajorVerNum,
  2308.     /* [in] */ WORD wMinorVerNum);
  2309.  
  2310.  
  2311. void __RPC_STUB ICreateTypeLib_SetVersion_Stub(
  2312.     IRpcStubBuffer *This,
  2313.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2314.     PRPC_MESSAGE _pRpcMessage,
  2315.     DWORD *_pdwStubPhase);
  2316.  
  2317.  
  2318. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetGuid_Proxy( 
  2319.     ICreateTypeLib __RPC_FAR * This,
  2320.     /* [in] */ REFGUID guid);
  2321.  
  2322.  
  2323. void __RPC_STUB ICreateTypeLib_SetGuid_Stub(
  2324.     IRpcStubBuffer *This,
  2325.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2326.     PRPC_MESSAGE _pRpcMessage,
  2327.     DWORD *_pdwStubPhase);
  2328.  
  2329.  
  2330. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetDocString_Proxy( 
  2331.     ICreateTypeLib __RPC_FAR * This,
  2332.     /* [in] */ LPOLESTR szDoc);
  2333.  
  2334.  
  2335. void __RPC_STUB ICreateTypeLib_SetDocString_Stub(
  2336.     IRpcStubBuffer *This,
  2337.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2338.     PRPC_MESSAGE _pRpcMessage,
  2339.     DWORD *_pdwStubPhase);
  2340.  
  2341.  
  2342. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetHelpFileName_Proxy( 
  2343.     ICreateTypeLib __RPC_FAR * This,
  2344.     /* [in] */ LPOLESTR szHelpFileName);
  2345.  
  2346.  
  2347. void __RPC_STUB ICreateTypeLib_SetHelpFileName_Stub(
  2348.     IRpcStubBuffer *This,
  2349.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2350.     PRPC_MESSAGE _pRpcMessage,
  2351.     DWORD *_pdwStubPhase);
  2352.  
  2353.  
  2354. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetHelpContext_Proxy( 
  2355.     ICreateTypeLib __RPC_FAR * This,
  2356.     /* [in] */ DWORD dwHelpContext);
  2357.  
  2358.  
  2359. void __RPC_STUB ICreateTypeLib_SetHelpContext_Stub(
  2360.     IRpcStubBuffer *This,
  2361.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2362.     PRPC_MESSAGE _pRpcMessage,
  2363.     DWORD *_pdwStubPhase);
  2364.  
  2365.  
  2366. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetLcid_Proxy( 
  2367.     ICreateTypeLib __RPC_FAR * This,
  2368.     /* [in] */ LCID lcid);
  2369.  
  2370.  
  2371. void __RPC_STUB ICreateTypeLib_SetLcid_Stub(
  2372.     IRpcStubBuffer *This,
  2373.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2374.     PRPC_MESSAGE _pRpcMessage,
  2375.     DWORD *_pdwStubPhase);
  2376.  
  2377.  
  2378. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetLibFlags_Proxy( 
  2379.     ICreateTypeLib __RPC_FAR * This,
  2380.     /* [in] */ UINT uLibFlags);
  2381.  
  2382.  
  2383. void __RPC_STUB ICreateTypeLib_SetLibFlags_Stub(
  2384.     IRpcStubBuffer *This,
  2385.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2386.     PRPC_MESSAGE _pRpcMessage,
  2387.     DWORD *_pdwStubPhase);
  2388.  
  2389.  
  2390. HRESULT STDMETHODCALLTYPE ICreateTypeLib_SaveAllChanges_Proxy( 
  2391.     ICreateTypeLib __RPC_FAR * This);
  2392.  
  2393.  
  2394. void __RPC_STUB ICreateTypeLib_SaveAllChanges_Stub(
  2395.     IRpcStubBuffer *This,
  2396.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2397.     PRPC_MESSAGE _pRpcMessage,
  2398.     DWORD *_pdwStubPhase);
  2399.  
  2400.  
  2401.  
  2402. #endif     /* __ICreateTypeLib_INTERFACE_DEFINED__ */
  2403.  
  2404.  
  2405. #ifndef __ICreateTypeLib2_INTERFACE_DEFINED__
  2406. #define __ICreateTypeLib2_INTERFACE_DEFINED__
  2407.  
  2408. /****************************************
  2409.  * Generated header for interface: ICreateTypeLib2
  2410.  * at Thu Sep 11 10:57:08 1997
  2411.  * using MIDL 3.03.0110
  2412.  ****************************************/
  2413. /* [local][unique][uuid][object] */ 
  2414.  
  2415.  
  2416. typedef /* [unique] */ ICreateTypeLib2 __RPC_FAR *LPCREATETYPELIB2;
  2417.  
  2418.  
  2419. EXTERN_C const IID IID_ICreateTypeLib2;
  2420.  
  2421. #if defined(__cplusplus) && !defined(CINTERFACE)
  2422.     
  2423.     MIDL_INTERFACE("0002040F-0000-0000-C000-000000000046")
  2424.     ICreateTypeLib2 : public ICreateTypeLib
  2425.     {
  2426.     public:
  2427.         virtual HRESULT STDMETHODCALLTYPE DeleteTypeInfo( 
  2428.             /* [in] */ LPOLESTR szName) = 0;
  2429.         
  2430.         virtual HRESULT STDMETHODCALLTYPE SetCustData( 
  2431.             /* [in] */ REFGUID guid,
  2432.             /* [in] */ VARIANT __RPC_FAR *pVarVal) = 0;
  2433.         
  2434.         virtual HRESULT STDMETHODCALLTYPE SetHelpStringContext( 
  2435.             /* [in] */ ULONG dwHelpStringContext) = 0;
  2436.         
  2437.         virtual HRESULT STDMETHODCALLTYPE SetHelpStringDll( 
  2438.             /* [in] */ LPOLESTR szFileName) = 0;
  2439.         
  2440.     };
  2441.     
  2442. #else     /* C style interface */
  2443.  
  2444.     typedef struct ICreateTypeLib2Vtbl
  2445.     {
  2446.         BEGIN_INTERFACE
  2447.         
  2448.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2449.             ICreateTypeLib2 __RPC_FAR * This,
  2450.             /* [in] */ REFIID riid,
  2451.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2452.         
  2453.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2454.             ICreateTypeLib2 __RPC_FAR * This);
  2455.         
  2456.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2457.             ICreateTypeLib2 __RPC_FAR * This);
  2458.         
  2459.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTypeInfo )( 
  2460.             ICreateTypeLib2 __RPC_FAR * This,
  2461.             /* [in] */ LPOLESTR szName,
  2462.             /* [in] */ TYPEKIND tkind,
  2463.             /* [out] */ ICreateTypeInfo __RPC_FAR *__RPC_FAR *ppCTInfo);
  2464.         
  2465.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetName )( 
  2466.             ICreateTypeLib2 __RPC_FAR * This,
  2467.             /* [in] */ LPOLESTR szName);
  2468.         
  2469.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetVersion )( 
  2470.             ICreateTypeLib2 __RPC_FAR * This,
  2471.             /* [in] */ WORD wMajorVerNum,
  2472.             /* [in] */ WORD wMinorVerNum);
  2473.         
  2474.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGuid )( 
  2475.             ICreateTypeLib2 __RPC_FAR * This,
  2476.             /* [in] */ REFGUID guid);
  2477.         
  2478.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDocString )( 
  2479.             ICreateTypeLib2 __RPC_FAR * This,
  2480.             /* [in] */ LPOLESTR szDoc);
  2481.         
  2482.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpFileName )( 
  2483.             ICreateTypeLib2 __RPC_FAR * This,
  2484.             /* [in] */ LPOLESTR szHelpFileName);
  2485.         
  2486.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpContext )( 
  2487.             ICreateTypeLib2 __RPC_FAR * This,
  2488.             /* [in] */ DWORD dwHelpContext);
  2489.         
  2490.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLcid )( 
  2491.             ICreateTypeLib2 __RPC_FAR * This,
  2492.             /* [in] */ LCID lcid);
  2493.         
  2494.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLibFlags )( 
  2495.             ICreateTypeLib2 __RPC_FAR * This,
  2496.             /* [in] */ UINT uLibFlags);
  2497.         
  2498.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAllChanges )( 
  2499.             ICreateTypeLib2 __RPC_FAR * This);
  2500.         
  2501.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteTypeInfo )( 
  2502.             ICreateTypeLib2 __RPC_FAR * This,
  2503.             /* [in] */ LPOLESTR szName);
  2504.         
  2505.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCustData )( 
  2506.             ICreateTypeLib2 __RPC_FAR * This,
  2507.             /* [in] */ REFGUID guid,
  2508.             /* [in] */ VARIANT __RPC_FAR *pVarVal);
  2509.         
  2510.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpStringContext )( 
  2511.             ICreateTypeLib2 __RPC_FAR * This,
  2512.             /* [in] */ ULONG dwHelpStringContext);
  2513.         
  2514.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpStringDll )( 
  2515.             ICreateTypeLib2 __RPC_FAR * This,
  2516.             /* [in] */ LPOLESTR szFileName);
  2517.         
  2518.         END_INTERFACE
  2519.     } ICreateTypeLib2Vtbl;
  2520.  
  2521.     interface ICreateTypeLib2
  2522.     {
  2523.         CONST_VTBL struct ICreateTypeLib2Vtbl __RPC_FAR *lpVtbl;
  2524.     };
  2525.  
  2526.     
  2527.  
  2528. #ifdef COBJMACROS
  2529.  
  2530.  
  2531. #define ICreateTypeLib2_QueryInterface(This,riid,ppvObject)    \
  2532.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2533.  
  2534. #define ICreateTypeLib2_AddRef(This)    \
  2535.     (This)->lpVtbl -> AddRef(This)
  2536.  
  2537. #define ICreateTypeLib2_Release(This)    \
  2538.     (This)->lpVtbl -> Release(This)
  2539.  
  2540.  
  2541. #define ICreateTypeLib2_CreateTypeInfo(This,szName,tkind,ppCTInfo)    \
  2542.     (This)->lpVtbl -> CreateTypeInfo(This,szName,tkind,ppCTInfo)
  2543.  
  2544. #define ICreateTypeLib2_SetName(This,szName)    \
  2545.     (This)->lpVtbl -> SetName(This,szName)
  2546.  
  2547. #define ICreateTypeLib2_SetVersion(This,wMajorVerNum,wMinorVerNum)    \
  2548.     (This)->lpVtbl -> SetVersion(This,wMajorVerNum,wMinorVerNum)
  2549.  
  2550. #define ICreateTypeLib2_SetGuid(This,guid)    \
  2551.     (This)->lpVtbl -> SetGuid(This,guid)
  2552.  
  2553. #define ICreateTypeLib2_SetDocString(This,szDoc)    \
  2554.     (This)->lpVtbl -> SetDocString(This,szDoc)
  2555.  
  2556. #define ICreateTypeLib2_SetHelpFileName(This,szHelpFileName)    \
  2557.     (This)->lpVtbl -> SetHelpFileName(This,szHelpFileName)
  2558.  
  2559. #define ICreateTypeLib2_SetHelpContext(This,dwHelpContext)    \
  2560.     (This)->lpVtbl -> SetHelpContext(This,dwHelpContext)
  2561.  
  2562. #define ICreateTypeLib2_SetLcid(This,lcid)    \
  2563.     (This)->lpVtbl -> SetLcid(This,lcid)
  2564.  
  2565. #define ICreateTypeLib2_SetLibFlags(This,uLibFlags)    \
  2566.     (This)->lpVtbl -> SetLibFlags(This,uLibFlags)
  2567.  
  2568. #define ICreateTypeLib2_SaveAllChanges(This)    \
  2569.     (This)->lpVtbl -> SaveAllChanges(This)
  2570.  
  2571.  
  2572. #define ICreateTypeLib2_DeleteTypeInfo(This,szName)    \
  2573.     (This)->lpVtbl -> DeleteTypeInfo(This,szName)
  2574.  
  2575. #define ICreateTypeLib2_SetCustData(This,guid,pVarVal)    \
  2576.     (This)->lpVtbl -> SetCustData(This,guid,pVarVal)
  2577.  
  2578. #define ICreateTypeLib2_SetHelpStringContext(This,dwHelpStringContext)    \
  2579.     (This)->lpVtbl -> SetHelpStringContext(This,dwHelpStringContext)
  2580.  
  2581. #define ICreateTypeLib2_SetHelpStringDll(This,szFileName)    \
  2582.     (This)->lpVtbl -> SetHelpStringDll(This,szFileName)
  2583.  
  2584. #endif /* COBJMACROS */
  2585.  
  2586.  
  2587. #endif     /* C style interface */
  2588.  
  2589.  
  2590.  
  2591. HRESULT STDMETHODCALLTYPE ICreateTypeLib2_DeleteTypeInfo_Proxy( 
  2592.     ICreateTypeLib2 __RPC_FAR * This,
  2593.     /* [in] */ LPOLESTR szName);
  2594.  
  2595.  
  2596. void __RPC_STUB ICreateTypeLib2_DeleteTypeInfo_Stub(
  2597.     IRpcStubBuffer *This,
  2598.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2599.     PRPC_MESSAGE _pRpcMessage,
  2600.     DWORD *_pdwStubPhase);
  2601.  
  2602.  
  2603. HRESULT STDMETHODCALLTYPE ICreateTypeLib2_SetCustData_Proxy( 
  2604.     ICreateTypeLib2 __RPC_FAR * This,
  2605.     /* [in] */ REFGUID guid,
  2606.     /* [in] */ VARIANT __RPC_FAR *pVarVal);
  2607.  
  2608.  
  2609. void __RPC_STUB ICreateTypeLib2_SetCustData_Stub(
  2610.     IRpcStubBuffer *This,
  2611.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2612.     PRPC_MESSAGE _pRpcMessage,
  2613.     DWORD *_pdwStubPhase);
  2614.  
  2615.  
  2616. HRESULT STDMETHODCALLTYPE ICreateTypeLib2_SetHelpStringContext_Proxy( 
  2617.     ICreateTypeLib2 __RPC_FAR * This,
  2618.     /* [in] */ ULONG dwHelpStringContext);
  2619.  
  2620.  
  2621. void __RPC_STUB ICreateTypeLib2_SetHelpStringContext_Stub(
  2622.     IRpcStubBuffer *This,
  2623.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2624.     PRPC_MESSAGE _pRpcMessage,
  2625.     DWORD *_pdwStubPhase);
  2626.  
  2627.  
  2628. HRESULT STDMETHODCALLTYPE ICreateTypeLib2_SetHelpStringDll_Proxy( 
  2629.     ICreateTypeLib2 __RPC_FAR * This,
  2630.     /* [in] */ LPOLESTR szFileName);
  2631.  
  2632.  
  2633. void __RPC_STUB ICreateTypeLib2_SetHelpStringDll_Stub(
  2634.     IRpcStubBuffer *This,
  2635.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2636.     PRPC_MESSAGE _pRpcMessage,
  2637.     DWORD *_pdwStubPhase);
  2638.  
  2639.  
  2640.  
  2641. #endif     /* __ICreateTypeLib2_INTERFACE_DEFINED__ */
  2642.  
  2643.  
  2644. #ifndef __IDispatch_INTERFACE_DEFINED__
  2645. #define __IDispatch_INTERFACE_DEFINED__
  2646.  
  2647. /****************************************
  2648.  * Generated header for interface: IDispatch
  2649.  * at Thu Sep 11 10:57:08 1997
  2650.  * using MIDL 3.03.0110
  2651.  ****************************************/
  2652. /* [unique][uuid][object] */ 
  2653.  
  2654.  
  2655. typedef /* [unique] */ IDispatch __RPC_FAR *LPDISPATCH;
  2656.  
  2657. /* DISPID reserved to indicate an "unknown" name */
  2658. /* only reserved for data members (properties); reused as a method dispid below */
  2659. #define    DISPID_UNKNOWN    ( -1 )
  2660.  
  2661. /* DISPID reserved for the "value" property */
  2662. #define    DISPID_VALUE    ( 0 )
  2663.  
  2664. /* The following DISPID is reserved to indicate the param
  2665.  * that is the right-hand-side (or "put" value) of a PropertyPut
  2666.  */
  2667. #define    DISPID_PROPERTYPUT    ( -3 )
  2668.  
  2669. /* DISPID reserved for the standard "NewEnum" method */
  2670. #define    DISPID_NEWENUM    ( -4 )
  2671.  
  2672. /* DISPID reserved for the standard "Evaluate" method */
  2673. #define    DISPID_EVALUATE    ( -5 )
  2674.  
  2675. #define    DISPID_CONSTRUCTOR    ( -6 )
  2676.  
  2677. #define    DISPID_DESTRUCTOR    ( -7 )
  2678.  
  2679. #define    DISPID_COLLECT    ( -8 )
  2680.  
  2681. /* The range -500 through -999 is reserved for Controls */
  2682. /* The range 0x80010000 through 0x8001FFFF is reserved for Controls */
  2683. /* The range -5000 through -5499 is reserved for ActiveX Accessability */
  2684. /* The range -2000 through -2499 is reserved for VB5 */
  2685. /* The range -3900 through -3999 is reserved for Forms */
  2686. /* The range -5500 through -5550 is reserved for Forms */
  2687. /* The remainder of the negative DISPIDs are reserved for future use */
  2688.  
  2689. EXTERN_C const IID IID_IDispatch;
  2690.  
  2691. #if defined(__cplusplus) && !defined(CINTERFACE)
  2692.     
  2693.     MIDL_INTERFACE("00020400-0000-0000-C000-000000000046")
  2694.     IDispatch : public IUnknown
  2695.     {
  2696.     public:
  2697.         virtual HRESULT STDMETHODCALLTYPE GetTypeInfoCount( 
  2698.             /* [out] */ UINT __RPC_FAR *pctinfo) = 0;
  2699.         
  2700.         virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( 
  2701.             /* [in] */ UINT iTInfo,
  2702.             /* [in] */ LCID lcid,
  2703.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo) = 0;
  2704.         
  2705.         virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames( 
  2706.             /* [in] */ REFIID riid,
  2707.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2708.             /* [in] */ UINT cNames,
  2709.             /* [in] */ LCID lcid,
  2710.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId) = 0;
  2711.         
  2712.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Invoke( 
  2713.             /* [in] */ DISPID dispIdMember,
  2714.             /* [in] */ REFIID riid,
  2715.             /* [in] */ LCID lcid,
  2716.             /* [in] */ WORD wFlags,
  2717.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  2718.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  2719.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  2720.             /* [out] */ UINT __RPC_FAR *puArgErr) = 0;
  2721.         
  2722.     };
  2723.     
  2724. #else     /* C style interface */
  2725.  
  2726.     typedef struct IDispatchVtbl
  2727.     {
  2728.         BEGIN_INTERFACE
  2729.         
  2730.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2731.             IDispatch __RPC_FAR * This,
  2732.             /* [in] */ REFIID riid,
  2733.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2734.         
  2735.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2736.             IDispatch __RPC_FAR * This);
  2737.         
  2738.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2739.             IDispatch __RPC_FAR * This);
  2740.         
  2741.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  2742.             IDispatch __RPC_FAR * This,
  2743.             /* [out] */ UINT __RPC_FAR *pctinfo);
  2744.         
  2745.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  2746.             IDispatch __RPC_FAR * This,
  2747.             /* [in] */ UINT iTInfo,
  2748.             /* [in] */ LCID lcid,
  2749.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  2750.         
  2751.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  2752.             IDispatch __RPC_FAR * This,
  2753.             /* [in] */ REFIID riid,
  2754.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2755.             /* [in] */ UINT cNames,
  2756.             /* [in] */ LCID lcid,
  2757.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  2758.         
  2759.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  2760.             IDispatch __RPC_FAR * This,
  2761.             /* [in] */ DISPID dispIdMember,
  2762.             /* [in] */ REFIID riid,
  2763.             /* [in] */ LCID lcid,
  2764.             /* [in] */ WORD wFlags,
  2765.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  2766.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  2767.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  2768.             /* [out] */ UINT __RPC_FAR *puArgErr);
  2769.         
  2770.         END_INTERFACE
  2771.     } IDispatchVtbl;
  2772.  
  2773.     interface IDispatch
  2774.     {
  2775.         CONST_VTBL struct IDispatchVtbl __RPC_FAR *lpVtbl;
  2776.     };
  2777.  
  2778.     
  2779.  
  2780. #ifdef COBJMACROS
  2781.  
  2782.  
  2783. #define IDispatch_QueryInterface(This,riid,ppvObject)    \
  2784.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2785.  
  2786. #define IDispatch_AddRef(This)    \
  2787.     (This)->lpVtbl -> AddRef(This)
  2788.  
  2789. #define IDispatch_Release(This)    \
  2790.     (This)->lpVtbl -> Release(This)
  2791.  
  2792.  
  2793. #define IDispatch_GetTypeInfoCount(This,pctinfo)    \
  2794.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2795.  
  2796. #define IDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  2797.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2798.  
  2799. #define IDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  2800.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2801.  
  2802. #define IDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  2803.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2804.  
  2805. #endif /* COBJMACROS */
  2806.  
  2807.  
  2808. #endif     /* C style interface */
  2809.  
  2810.  
  2811.  
  2812. HRESULT STDMETHODCALLTYPE IDispatch_GetTypeInfoCount_Proxy( 
  2813.     IDispatch __RPC_FAR * This,
  2814.     /* [out] */ UINT __RPC_FAR *pctinfo);
  2815.  
  2816.  
  2817. void __RPC_STUB IDispatch_GetTypeInfoCount_Stub(
  2818.     IRpcStubBuffer *This,
  2819.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2820.     PRPC_MESSAGE _pRpcMessage,
  2821.     DWORD *_pdwStubPhase);
  2822.  
  2823.  
  2824. HRESULT STDMETHODCALLTYPE IDispatch_GetTypeInfo_Proxy( 
  2825.     IDispatch __RPC_FAR * This,
  2826.     /* [in] */ UINT iTInfo,
  2827.     /* [in] */ LCID lcid,
  2828.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  2829.  
  2830.  
  2831. void __RPC_STUB IDispatch_GetTypeInfo_Stub(
  2832.     IRpcStubBuffer *This,
  2833.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2834.     PRPC_MESSAGE _pRpcMessage,
  2835.     DWORD *_pdwStubPhase);
  2836.  
  2837.  
  2838. HRESULT STDMETHODCALLTYPE IDispatch_GetIDsOfNames_Proxy( 
  2839.     IDispatch __RPC_FAR * This,
  2840.     /* [in] */ REFIID riid,
  2841.     /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2842.     /* [in] */ UINT cNames,
  2843.     /* [in] */ LCID lcid,
  2844.     /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  2845.  
  2846.  
  2847. void __RPC_STUB IDispatch_GetIDsOfNames_Stub(
  2848.     IRpcStubBuffer *This,
  2849.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2850.     PRPC_MESSAGE _pRpcMessage,
  2851.     DWORD *_pdwStubPhase);
  2852.  
  2853.  
  2854. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDispatch_RemoteInvoke_Proxy( 
  2855.     IDispatch __RPC_FAR * This,
  2856.     /* [in] */ DISPID dispIdMember,
  2857.     /* [in] */ REFIID riid,
  2858.     /* [in] */ LCID lcid,
  2859.     /* [in] */ DWORD dwFlags,
  2860.     /* [in] */ DISPPARAMS __RPC_FAR *pDispParams,
  2861.     /* [out] */ VARIANT __RPC_FAR *pVarResult,
  2862.     /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  2863.     /* [out] */ UINT __RPC_FAR *pArgErr,
  2864.     /* [in] */ UINT cVarRef,
  2865.     /* [size_is][in] */ UINT __RPC_FAR *rgVarRefIdx,
  2866.     /* [size_is][out][in] */ VARIANTARG __RPC_FAR *rgVarRef);
  2867.  
  2868.  
  2869. void __RPC_STUB IDispatch_RemoteInvoke_Stub(
  2870.     IRpcStubBuffer *This,
  2871.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2872.     PRPC_MESSAGE _pRpcMessage,
  2873.     DWORD *_pdwStubPhase);
  2874.  
  2875.  
  2876.  
  2877. #endif     /* __IDispatch_INTERFACE_DEFINED__ */
  2878.  
  2879.  
  2880. #ifndef __IEnumVARIANT_INTERFACE_DEFINED__
  2881. #define __IEnumVARIANT_INTERFACE_DEFINED__
  2882.  
  2883. /****************************************
  2884.  * Generated header for interface: IEnumVARIANT
  2885.  * at Thu Sep 11 10:57:08 1997
  2886.  * using MIDL 3.03.0110
  2887.  ****************************************/
  2888. /* [unique][uuid][object] */ 
  2889.  
  2890.  
  2891. typedef /* [unique] */ IEnumVARIANT __RPC_FAR *LPENUMVARIANT;
  2892.  
  2893.  
  2894. EXTERN_C const IID IID_IEnumVARIANT;
  2895.  
  2896. #if defined(__cplusplus) && !defined(CINTERFACE)
  2897.     
  2898.     MIDL_INTERFACE("00020404-0000-0000-C000-000000000046")
  2899.     IEnumVARIANT : public IUnknown
  2900.     {
  2901.     public:
  2902.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next( 
  2903.             /* [in] */ ULONG celt,
  2904.             /* [length_is][size_is][out] */ VARIANT __RPC_FAR *rgVar,
  2905.             /* [out] */ ULONG __RPC_FAR *pCeltFetched) = 0;
  2906.         
  2907.         virtual HRESULT STDMETHODCALLTYPE Skip( 
  2908.             /* [in] */ ULONG celt) = 0;
  2909.         
  2910.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  2911.         
  2912.         virtual HRESULT STDMETHODCALLTYPE Clone( 
  2913.             /* [out] */ IEnumVARIANT __RPC_FAR *__RPC_FAR *ppEnum) = 0;
  2914.         
  2915.     };
  2916.     
  2917. #else     /* C style interface */
  2918.  
  2919.     typedef struct IEnumVARIANTVtbl
  2920.     {
  2921.         BEGIN_INTERFACE
  2922.         
  2923.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2924.             IEnumVARIANT __RPC_FAR * This,
  2925.             /* [in] */ REFIID riid,
  2926.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2927.         
  2928.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2929.             IEnumVARIANT __RPC_FAR * This);
  2930.         
  2931.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2932.             IEnumVARIANT __RPC_FAR * This);
  2933.         
  2934.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Next )( 
  2935.             IEnumVARIANT __RPC_FAR * This,
  2936.             /* [in] */ ULONG celt,
  2937.             /* [length_is][size_is][out] */ VARIANT __RPC_FAR *rgVar,
  2938.             /* [out] */ ULONG __RPC_FAR *pCeltFetched);
  2939.         
  2940.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Skip )( 
  2941.             IEnumVARIANT __RPC_FAR * This,
  2942.             /* [in] */ ULONG celt);
  2943.         
  2944.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Reset )( 
  2945.             IEnumVARIANT __RPC_FAR * This);
  2946.         
  2947.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clone )( 
  2948.             IEnumVARIANT __RPC_FAR * This,
  2949.             /* [out] */ IEnumVARIANT __RPC_FAR *__RPC_FAR *ppEnum);
  2950.         
  2951.         END_INTERFACE
  2952.     } IEnumVARIANTVtbl;
  2953.  
  2954.     interface IEnumVARIANT
  2955.     {
  2956.         CONST_VTBL struct IEnumVARIANTVtbl __RPC_FAR *lpVtbl;
  2957.     };
  2958.  
  2959.     
  2960.  
  2961. #ifdef COBJMACROS
  2962.  
  2963.  
  2964. #define IEnumVARIANT_QueryInterface(This,riid,ppvObject)    \
  2965.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2966.  
  2967. #define IEnumVARIANT_AddRef(This)    \
  2968.     (This)->lpVtbl -> AddRef(This)
  2969.  
  2970. #define IEnumVARIANT_Release(This)    \
  2971.     (This)->lpVtbl -> Release(This)
  2972.  
  2973.  
  2974. #define IEnumVARIANT_Next(This,celt,rgVar,pCeltFetched)    \
  2975.     (This)->lpVtbl -> Next(This,celt,rgVar,pCeltFetched)
  2976.  
  2977. #define IEnumVARIANT_Skip(This,celt)    \
  2978.     (This)->lpVtbl -> Skip(This,celt)
  2979.  
  2980. #define IEnumVARIANT_Reset(This)    \
  2981.     (This)->lpVtbl -> Reset(This)
  2982.  
  2983. #define IEnumVARIANT_Clone(This,ppEnum)    \
  2984.     (This)->lpVtbl -> Clone(This,ppEnum)
  2985.  
  2986. #endif /* COBJMACROS */
  2987.  
  2988.  
  2989. #endif     /* C style interface */
  2990.  
  2991.  
  2992.  
  2993. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumVARIANT_RemoteNext_Proxy( 
  2994.     IEnumVARIANT __RPC_FAR * This,
  2995.     /* [in] */ ULONG celt,
  2996.     /* [length_is][size_is][out] */ VARIANT __RPC_FAR *rgVar,
  2997.     /* [out] */ ULONG __RPC_FAR *pCeltFetched);
  2998.  
  2999.  
  3000. void __RPC_STUB IEnumVARIANT_RemoteNext_Stub(
  3001.     IRpcStubBuffer *This,
  3002.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3003.     PRPC_MESSAGE _pRpcMessage,
  3004.     DWORD *_pdwStubPhase);
  3005.  
  3006.  
  3007. HRESULT STDMETHODCALLTYPE IEnumVARIANT_Skip_Proxy( 
  3008.     IEnumVARIANT __RPC_FAR * This,
  3009.     /* [in] */ ULONG celt);
  3010.  
  3011.  
  3012. void __RPC_STUB IEnumVARIANT_Skip_Stub(
  3013.     IRpcStubBuffer *This,
  3014.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3015.     PRPC_MESSAGE _pRpcMessage,
  3016.     DWORD *_pdwStubPhase);
  3017.  
  3018.  
  3019. HRESULT STDMETHODCALLTYPE IEnumVARIANT_Reset_Proxy( 
  3020.     IEnumVARIANT __RPC_FAR * This);
  3021.  
  3022.  
  3023. void __RPC_STUB IEnumVARIANT_Reset_Stub(
  3024.     IRpcStubBuffer *This,
  3025.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3026.     PRPC_MESSAGE _pRpcMessage,
  3027.     DWORD *_pdwStubPhase);
  3028.  
  3029.  
  3030. HRESULT STDMETHODCALLTYPE IEnumVARIANT_Clone_Proxy( 
  3031.     IEnumVARIANT __RPC_FAR * This,
  3032.     /* [out] */ IEnumVARIANT __RPC_FAR *__RPC_FAR *ppEnum);
  3033.  
  3034.  
  3035. void __RPC_STUB IEnumVARIANT_Clone_Stub(
  3036.     IRpcStubBuffer *This,
  3037.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3038.     PRPC_MESSAGE _pRpcMessage,
  3039.     DWORD *_pdwStubPhase);
  3040.  
  3041.  
  3042.  
  3043. #endif     /* __IEnumVARIANT_INTERFACE_DEFINED__ */
  3044.  
  3045.  
  3046. #ifndef __ITypeComp_INTERFACE_DEFINED__
  3047. #define __ITypeComp_INTERFACE_DEFINED__
  3048.  
  3049. /****************************************
  3050.  * Generated header for interface: ITypeComp
  3051.  * at Thu Sep 11 10:57:08 1997
  3052.  * using MIDL 3.03.0110
  3053.  ****************************************/
  3054. /* [unique][uuid][object] */ 
  3055.  
  3056.  
  3057. typedef /* [unique] */ ITypeComp __RPC_FAR *LPTYPECOMP;
  3058.  
  3059. typedef /* [v1_enum] */ 
  3060. enum tagDESCKIND
  3061.     {    DESCKIND_NONE    = 0,
  3062.     DESCKIND_FUNCDESC    = DESCKIND_NONE + 1,
  3063.     DESCKIND_VARDESC    = DESCKIND_FUNCDESC + 1,
  3064.     DESCKIND_TYPECOMP    = DESCKIND_VARDESC + 1,
  3065.     DESCKIND_IMPLICITAPPOBJ    = DESCKIND_TYPECOMP + 1,
  3066.     DESCKIND_MAX    = DESCKIND_IMPLICITAPPOBJ + 1
  3067.     }    DESCKIND;
  3068.  
  3069. typedef union tagBINDPTR
  3070.     {
  3071.     FUNCDESC __RPC_FAR *lpfuncdesc;
  3072.     VARDESC __RPC_FAR *lpvardesc;
  3073.     ITypeComp __RPC_FAR *lptcomp;
  3074.     }    BINDPTR;
  3075.  
  3076. typedef union tagBINDPTR __RPC_FAR *LPBINDPTR;
  3077.  
  3078.  
  3079. EXTERN_C const IID IID_ITypeComp;
  3080.  
  3081. #if defined(__cplusplus) && !defined(CINTERFACE)
  3082.     
  3083.     MIDL_INTERFACE("00020403-0000-0000-C000-000000000046")
  3084.     ITypeComp : public IUnknown
  3085.     {
  3086.     public:
  3087.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Bind( 
  3088.             /* [in] */ LPOLESTR szName,
  3089.             /* [in] */ ULONG lHashVal,
  3090.             /* [in] */ WORD wFlags,
  3091.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  3092.             /* [out] */ DESCKIND __RPC_FAR *pDescKind,
  3093.             /* [out] */ BINDPTR __RPC_FAR *pBindPtr) = 0;
  3094.         
  3095.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE BindType( 
  3096.             /* [in] */ LPOLESTR szName,
  3097.             /* [in] */ ULONG lHashVal,
  3098.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  3099.             /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp) = 0;
  3100.         
  3101.     };
  3102.     
  3103. #else     /* C style interface */
  3104.  
  3105.     typedef struct ITypeCompVtbl
  3106.     {
  3107.         BEGIN_INTERFACE
  3108.         
  3109.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3110.             ITypeComp __RPC_FAR * This,
  3111.             /* [in] */ REFIID riid,
  3112.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3113.         
  3114.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3115.             ITypeComp __RPC_FAR * This);
  3116.         
  3117.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3118.             ITypeComp __RPC_FAR * This);
  3119.         
  3120.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Bind )( 
  3121.             ITypeComp __RPC_FAR * This,
  3122.             /* [in] */ LPOLESTR szName,
  3123.             /* [in] */ ULONG lHashVal,
  3124.             /* [in] */ WORD wFlags,
  3125.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  3126.             /* [out] */ DESCKIND __RPC_FAR *pDescKind,
  3127.             /* [out] */ BINDPTR __RPC_FAR *pBindPtr);
  3128.         
  3129.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *BindType )( 
  3130.             ITypeComp __RPC_FAR * This,
  3131.             /* [in] */ LPOLESTR szName,
  3132.             /* [in] */ ULONG lHashVal,
  3133.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  3134.             /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp);
  3135.         
  3136.         END_INTERFACE
  3137.     } ITypeCompVtbl;
  3138.  
  3139.     interface ITypeComp
  3140.     {
  3141.         CONST_VTBL struct ITypeCompVtbl __RPC_FAR *lpVtbl;
  3142.     };
  3143.  
  3144.     
  3145.  
  3146. #ifdef COBJMACROS
  3147.  
  3148.  
  3149. #define ITypeComp_QueryInterface(This,riid,ppvObject)    \
  3150.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3151.  
  3152. #define ITypeComp_AddRef(This)    \
  3153.     (This)->lpVtbl -> AddRef(This)
  3154.  
  3155. #define ITypeComp_Release(This)    \
  3156.     (This)->lpVtbl -> Release(This)
  3157.  
  3158.  
  3159. #define ITypeComp_Bind(This,szName,lHashVal,wFlags,ppTInfo,pDescKind,pBindPtr)    \
  3160.     (This)->lpVtbl -> Bind(This,szName,lHashVal,wFlags,ppTInfo,pDescKind,pBindPtr)
  3161.  
  3162. #define ITypeComp_BindType(This,szName,lHashVal,ppTInfo,ppTComp)    \
  3163.     (This)->lpVtbl -> BindType(This,szName,lHashVal,ppTInfo,ppTComp)
  3164.  
  3165. #endif /* COBJMACROS */
  3166.  
  3167.  
  3168. #endif     /* C style interface */
  3169.  
  3170.  
  3171.  
  3172. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeComp_RemoteBind_Proxy( 
  3173.     ITypeComp __RPC_FAR * This,
  3174.     /* [in] */ LPOLESTR szName,
  3175.     /* [in] */ ULONG lHashVal,
  3176.     /* [in] */ WORD wFlags,
  3177.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  3178.     /* [out] */ DESCKIND __RPC_FAR *pDescKind,
  3179.     /* [out] */ LPFUNCDESC __RPC_FAR *ppFuncDesc,
  3180.     /* [out] */ LPVARDESC __RPC_FAR *ppVarDesc,
  3181.     /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTypeComp,
  3182.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  3183.  
  3184.  
  3185. void __RPC_STUB ITypeComp_RemoteBind_Stub(
  3186.     IRpcStubBuffer *This,
  3187.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3188.     PRPC_MESSAGE _pRpcMessage,
  3189.     DWORD *_pdwStubPhase);
  3190.  
  3191.  
  3192. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeComp_RemoteBindType_Proxy( 
  3193.     ITypeComp __RPC_FAR * This,
  3194.     /* [in] */ LPOLESTR szName,
  3195.     /* [in] */ ULONG lHashVal,
  3196.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3197.  
  3198.  
  3199. void __RPC_STUB ITypeComp_RemoteBindType_Stub(
  3200.     IRpcStubBuffer *This,
  3201.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3202.     PRPC_MESSAGE _pRpcMessage,
  3203.     DWORD *_pdwStubPhase);
  3204.  
  3205.  
  3206.  
  3207. #endif     /* __ITypeComp_INTERFACE_DEFINED__ */
  3208.  
  3209.  
  3210. #ifndef __ITypeInfo_INTERFACE_DEFINED__
  3211. #define __ITypeInfo_INTERFACE_DEFINED__
  3212.  
  3213. /****************************************
  3214.  * Generated header for interface: ITypeInfo
  3215.  * at Thu Sep 11 10:57:08 1997
  3216.  * using MIDL 3.03.0110
  3217.  ****************************************/
  3218. /* [unique][uuid][object] */ 
  3219.  
  3220.  
  3221. typedef /* [unique] */ ITypeInfo __RPC_FAR *LPTYPEINFO;
  3222.  
  3223.  
  3224. EXTERN_C const IID IID_ITypeInfo;
  3225.  
  3226. #if defined(__cplusplus) && !defined(CINTERFACE)
  3227.     
  3228.     MIDL_INTERFACE("00020401-0000-0000-C000-000000000046")
  3229.     ITypeInfo : public IUnknown
  3230.     {
  3231.     public:
  3232.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetTypeAttr( 
  3233.             /* [out] */ TYPEATTR __RPC_FAR *__RPC_FAR *ppTypeAttr) = 0;
  3234.         
  3235.         virtual HRESULT STDMETHODCALLTYPE GetTypeComp( 
  3236.             /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp) = 0;
  3237.         
  3238.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetFuncDesc( 
  3239.             /* [in] */ UINT index,
  3240.             /* [out] */ FUNCDESC __RPC_FAR *__RPC_FAR *ppFuncDesc) = 0;
  3241.         
  3242.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetVarDesc( 
  3243.             /* [in] */ UINT index,
  3244.             /* [out] */ VARDESC __RPC_FAR *__RPC_FAR *ppVarDesc) = 0;
  3245.         
  3246.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetNames( 
  3247.             /* [in] */ MEMBERID memid,
  3248.             /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames,
  3249.             /* [in] */ UINT cMaxNames,
  3250.             /* [out] */ UINT __RPC_FAR *pcNames) = 0;
  3251.         
  3252.         virtual HRESULT STDMETHODCALLTYPE GetRefTypeOfImplType( 
  3253.             /* [in] */ UINT index,
  3254.             /* [out] */ HREFTYPE __RPC_FAR *pRefType) = 0;
  3255.         
  3256.         virtual HRESULT STDMETHODCALLTYPE GetImplTypeFlags( 
  3257.             /* [in] */ UINT index,
  3258.             /* [out] */ INT __RPC_FAR *pImplTypeFlags) = 0;
  3259.         
  3260.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetIDsOfNames( 
  3261.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3262.             /* [in] */ UINT cNames,
  3263.             /* [size_is][out] */ MEMBERID __RPC_FAR *pMemId) = 0;
  3264.         
  3265.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Invoke( 
  3266.             /* [in] */ PVOID pvInstance,
  3267.             /* [in] */ MEMBERID memid,
  3268.             /* [in] */ WORD wFlags,
  3269.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3270.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3271.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3272.             /* [out] */ UINT __RPC_FAR *puArgErr) = 0;
  3273.         
  3274.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDocumentation( 
  3275.             /* [in] */ MEMBERID memid,
  3276.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  3277.             /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  3278.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  3279.             /* [out] */ BSTR __RPC_FAR *pBstrHelpFile) = 0;
  3280.         
  3281.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDllEntry( 
  3282.             /* [in] */ MEMBERID memid,
  3283.             /* [in] */ INVOKEKIND invKind,
  3284.             /* [out] */ BSTR __RPC_FAR *pBstrDllName,
  3285.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  3286.             /* [out] */ WORD __RPC_FAR *pwOrdinal) = 0;
  3287.         
  3288.         virtual HRESULT STDMETHODCALLTYPE GetRefTypeInfo( 
  3289.             /* [in] */ HREFTYPE hRefType,
  3290.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo) = 0;
  3291.         
  3292.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddressOfMember( 
  3293.             /* [in] */ MEMBERID memid,
  3294.             /* [in] */ INVOKEKIND invKind,
  3295.             /* [out] */ PVOID __RPC_FAR *ppv) = 0;
  3296.         
  3297.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateInstance( 
  3298.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  3299.             /* [in] */ REFIID riid,
  3300.             /* [iid_is][out] */ PVOID __RPC_FAR *ppvObj) = 0;
  3301.         
  3302.         virtual HRESULT STDMETHODCALLTYPE GetMops( 
  3303.             /* [in] */ MEMBERID memid,
  3304.             /* [out] */ BSTR __RPC_FAR *pBstrMops) = 0;
  3305.         
  3306.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetContainingTypeLib( 
  3307.             /* [out] */ ITypeLib __RPC_FAR *__RPC_FAR *ppTLib,
  3308.             /* [out] */ UINT __RPC_FAR *pIndex) = 0;
  3309.         
  3310.         virtual /* [local] */ void STDMETHODCALLTYPE ReleaseTypeAttr( 
  3311.             /* [in] */ TYPEATTR __RPC_FAR *pTypeAttr) = 0;
  3312.         
  3313.         virtual /* [local] */ void STDMETHODCALLTYPE ReleaseFuncDesc( 
  3314.             /* [in] */ FUNCDESC __RPC_FAR *pFuncDesc) = 0;
  3315.         
  3316.         virtual /* [local] */ void STDMETHODCALLTYPE ReleaseVarDesc( 
  3317.             /* [in] */ VARDESC __RPC_FAR *pVarDesc) = 0;
  3318.         
  3319.     };
  3320.     
  3321. #else     /* C style interface */
  3322.  
  3323.     typedef struct ITypeInfoVtbl
  3324.     {
  3325.         BEGIN_INTERFACE
  3326.         
  3327.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3328.             ITypeInfo __RPC_FAR * This,
  3329.             /* [in] */ REFIID riid,
  3330.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3331.         
  3332.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3333.             ITypeInfo __RPC_FAR * This);
  3334.         
  3335.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3336.             ITypeInfo __RPC_FAR * This);
  3337.         
  3338.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeAttr )( 
  3339.             ITypeInfo __RPC_FAR * This,
  3340.             /* [out] */ TYPEATTR __RPC_FAR *__RPC_FAR *ppTypeAttr);
  3341.         
  3342.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeComp )( 
  3343.             ITypeInfo __RPC_FAR * This,
  3344.             /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp);
  3345.         
  3346.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFuncDesc )( 
  3347.             ITypeInfo __RPC_FAR * This,
  3348.             /* [in] */ UINT index,
  3349.             /* [out] */ FUNCDESC __RPC_FAR *__RPC_FAR *ppFuncDesc);
  3350.         
  3351.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVarDesc )( 
  3352.             ITypeInfo __RPC_FAR * This,
  3353.             /* [in] */ UINT index,
  3354.             /* [out] */ VARDESC __RPC_FAR *__RPC_FAR *ppVarDesc);
  3355.         
  3356.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNames )( 
  3357.             ITypeInfo __RPC_FAR * This,
  3358.             /* [in] */ MEMBERID memid,
  3359.             /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames,
  3360.             /* [in] */ UINT cMaxNames,
  3361.             /* [out] */ UINT __RPC_FAR *pcNames);
  3362.         
  3363.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRefTypeOfImplType )( 
  3364.             ITypeInfo __RPC_FAR * This,
  3365.             /* [in] */ UINT index,
  3366.             /* [out] */ HREFTYPE __RPC_FAR *pRefType);
  3367.         
  3368.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetImplTypeFlags )( 
  3369.             ITypeInfo __RPC_FAR * This,
  3370.             /* [in] */ UINT index,
  3371.             /* [out] */ INT __RPC_FAR *pImplTypeFlags);
  3372.         
  3373.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3374.             ITypeInfo __RPC_FAR * This,
  3375.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3376.             /* [in] */ UINT cNames,
  3377.             /* [size_is][out] */ MEMBERID __RPC_FAR *pMemId);
  3378.         
  3379.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3380.             ITypeInfo __RPC_FAR * This,
  3381.             /* [in] */ PVOID pvInstance,
  3382.             /* [in] */ MEMBERID memid,
  3383.             /* [in] */ WORD wFlags,
  3384.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3385.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3386.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3387.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3388.         
  3389.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDocumentation )( 
  3390.             ITypeInfo __RPC_FAR * This,
  3391.             /* [in] */ MEMBERID memid,
  3392.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  3393.             /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  3394.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  3395.             /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  3396.         
  3397.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDllEntry )( 
  3398.             ITypeInfo __RPC_FAR * This,
  3399.             /* [in] */ MEMBERID memid,
  3400.             /* [in] */ INVOKEKIND invKind,
  3401.             /* [out] */ BSTR __RPC_FAR *pBstrDllName,
  3402.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  3403.             /* [out] */ WORD __RPC_FAR *pwOrdinal);
  3404.         
  3405.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRefTypeInfo )( 
  3406.             ITypeInfo __RPC_FAR * This,
  3407.             /* [in] */ HREFTYPE hRefType,
  3408.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3409.         
  3410.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddressOfMember )( 
  3411.             ITypeInfo __RPC_FAR * This,
  3412.             /* [in] */ MEMBERID memid,
  3413.             /* [in] */ INVOKEKIND invKind,
  3414.             /* [out] */ PVOID __RPC_FAR *ppv);
  3415.         
  3416.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateInstance )( 
  3417.             ITypeInfo __RPC_FAR * This,
  3418.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  3419.             /* [in] */ REFIID riid,
  3420.             /* [iid_is][out] */ PVOID __RPC_FAR *ppvObj);
  3421.         
  3422.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMops )( 
  3423.             ITypeInfo __RPC_FAR * This,
  3424.             /* [in] */ MEMBERID memid,
  3425.             /* [out] */ BSTR __RPC_FAR *pBstrMops);
  3426.         
  3427.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetContainingTypeLib )( 
  3428.             ITypeInfo __RPC_FAR * This,
  3429.             /* [out] */ ITypeLib __RPC_FAR *__RPC_FAR *ppTLib,
  3430.             /* [out] */ UINT __RPC_FAR *pIndex);
  3431.         
  3432.         /* [local] */ void ( STDMETHODCALLTYPE __RPC_FAR *ReleaseTypeAttr )( 
  3433.             ITypeInfo __RPC_FAR * This,
  3434.             /* [in] */ TYPEATTR __RPC_FAR *pTypeAttr);
  3435.         
  3436.         /* [local] */ void ( STDMETHODCALLTYPE __RPC_FAR *ReleaseFuncDesc )( 
  3437.             ITypeInfo __RPC_FAR * This,
  3438.             /* [in] */ FUNCDESC __RPC_FAR *pFuncDesc);
  3439.         
  3440.         /* [local] */ void ( STDMETHODCALLTYPE __RPC_FAR *ReleaseVarDesc )( 
  3441.             ITypeInfo __RPC_FAR * This,
  3442.             /* [in] */ VARDESC __RPC_FAR *pVarDesc);
  3443.         
  3444.         END_INTERFACE
  3445.     } ITypeInfoVtbl;
  3446.  
  3447.     interface ITypeInfo
  3448.     {
  3449.         CONST_VTBL struct ITypeInfoVtbl __RPC_FAR *lpVtbl;
  3450.     };
  3451.  
  3452.     
  3453.  
  3454. #ifdef COBJMACROS
  3455.  
  3456.  
  3457. #define ITypeInfo_QueryInterface(This,riid,ppvObject)    \
  3458.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3459.  
  3460. #define ITypeInfo_AddRef(This)    \
  3461.     (This)->lpVtbl -> AddRef(This)
  3462.  
  3463. #define ITypeInfo_Release(This)    \
  3464.     (This)->lpVtbl -> Release(This)
  3465.  
  3466.  
  3467. #define ITypeInfo_GetTypeAttr(This,ppTypeAttr)    \
  3468.     (This)->lpVtbl -> GetTypeAttr(This,ppTypeAttr)
  3469.  
  3470. #define ITypeInfo_GetTypeComp(This,ppTComp)    \
  3471.     (This)->lpVtbl -> GetTypeComp(This,ppTComp)
  3472.  
  3473. #define ITypeInfo_GetFuncDesc(This,index,ppFuncDesc)    \
  3474.     (This)->lpVtbl -> GetFuncDesc(This,index,ppFuncDesc)
  3475.  
  3476. #define ITypeInfo_GetVarDesc(This,index,ppVarDesc)    \
  3477.     (This)->lpVtbl -> GetVarDesc(This,index,ppVarDesc)
  3478.  
  3479. #define ITypeInfo_GetNames(This,memid,rgBstrNames,cMaxNames,pcNames)    \
  3480.     (This)->lpVtbl -> GetNames(This,memid,rgBstrNames,cMaxNames,pcNames)
  3481.  
  3482. #define ITypeInfo_GetRefTypeOfImplType(This,index,pRefType)    \
  3483.     (This)->lpVtbl -> GetRefTypeOfImplType(This,index,pRefType)
  3484.  
  3485. #define ITypeInfo_GetImplTypeFlags(This,index,pImplTypeFlags)    \
  3486.     (This)->lpVtbl -> GetImplTypeFlags(This,index,pImplTypeFlags)
  3487.  
  3488. #define ITypeInfo_GetIDsOfNames(This,rgszNames,cNames,pMemId)    \
  3489.     (This)->lpVtbl -> GetIDsOfNames(This,rgszNames,cNames,pMemId)
  3490.  
  3491. #define ITypeInfo_Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  3492.     (This)->lpVtbl -> Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3493.  
  3494. #define ITypeInfo_GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile)    \
  3495.     (This)->lpVtbl -> GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile)
  3496.  
  3497. #define ITypeInfo_GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal)    \
  3498.     (This)->lpVtbl -> GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal)
  3499.  
  3500. #define ITypeInfo_GetRefTypeInfo(This,hRefType,ppTInfo)    \
  3501.     (This)->lpVtbl -> GetRefTypeInfo(This,hRefType,ppTInfo)
  3502.  
  3503. #define ITypeInfo_AddressOfMember(This,memid,invKind,ppv)    \
  3504.     (This)->lpVtbl -> AddressOfMember(This,memid,invKind,ppv)
  3505.  
  3506. #define ITypeInfo_CreateInstance(This,pUnkOuter,riid,ppvObj)    \
  3507.     (This)->lpVtbl -> CreateInstance(This,pUnkOuter,riid,ppvObj)
  3508.  
  3509. #define ITypeInfo_GetMops(This,memid,pBstrMops)    \
  3510.     (This)->lpVtbl -> GetMops(This,memid,pBstrMops)
  3511.  
  3512. #define ITypeInfo_GetContainingTypeLib(This,ppTLib,pIndex)    \
  3513.     (This)->lpVtbl -> GetContainingTypeLib(This,ppTLib,pIndex)
  3514.  
  3515. #define ITypeInfo_ReleaseTypeAttr(This,pTypeAttr)    \
  3516.     (This)->lpVtbl -> ReleaseTypeAttr(This,pTypeAttr)
  3517.  
  3518. #define ITypeInfo_ReleaseFuncDesc(This,pFuncDesc)    \
  3519.     (This)->lpVtbl -> ReleaseFuncDesc(This,pFuncDesc)
  3520.  
  3521. #define ITypeInfo_ReleaseVarDesc(This,pVarDesc)    \
  3522.     (This)->lpVtbl -> ReleaseVarDesc(This,pVarDesc)
  3523.  
  3524. #endif /* COBJMACROS */
  3525.  
  3526.  
  3527. #endif     /* C style interface */
  3528.  
  3529.  
  3530.  
  3531. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetTypeAttr_Proxy( 
  3532.     ITypeInfo __RPC_FAR * This,
  3533.     /* [out] */ LPTYPEATTR __RPC_FAR *ppTypeAttr,
  3534.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  3535.  
  3536.  
  3537. void __RPC_STUB ITypeInfo_RemoteGetTypeAttr_Stub(
  3538.     IRpcStubBuffer *This,
  3539.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3540.     PRPC_MESSAGE _pRpcMessage,
  3541.     DWORD *_pdwStubPhase);
  3542.  
  3543.  
  3544. HRESULT STDMETHODCALLTYPE ITypeInfo_GetTypeComp_Proxy( 
  3545.     ITypeInfo __RPC_FAR * This,
  3546.     /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp);
  3547.  
  3548.  
  3549. void __RPC_STUB ITypeInfo_GetTypeComp_Stub(
  3550.     IRpcStubBuffer *This,
  3551.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3552.     PRPC_MESSAGE _pRpcMessage,
  3553.     DWORD *_pdwStubPhase);
  3554.  
  3555.  
  3556. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetFuncDesc_Proxy( 
  3557.     ITypeInfo __RPC_FAR * This,
  3558.     /* [in] */ UINT index,
  3559.     /* [out] */ LPFUNCDESC __RPC_FAR *ppFuncDesc,
  3560.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  3561.  
  3562.  
  3563. void __RPC_STUB ITypeInfo_RemoteGetFuncDesc_Stub(
  3564.     IRpcStubBuffer *This,
  3565.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3566.     PRPC_MESSAGE _pRpcMessage,
  3567.     DWORD *_pdwStubPhase);
  3568.  
  3569.  
  3570. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetVarDesc_Proxy( 
  3571.     ITypeInfo __RPC_FAR * This,
  3572.     /* [in] */ UINT index,
  3573.     /* [out] */ LPVARDESC __RPC_FAR *ppVarDesc,
  3574.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  3575.  
  3576.  
  3577. void __RPC_STUB ITypeInfo_RemoteGetVarDesc_Stub(
  3578.     IRpcStubBuffer *This,
  3579.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3580.     PRPC_MESSAGE _pRpcMessage,
  3581.     DWORD *_pdwStubPhase);
  3582.  
  3583.  
  3584. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetNames_Proxy( 
  3585.     ITypeInfo __RPC_FAR * This,
  3586.     /* [in] */ MEMBERID memid,
  3587.     /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames,
  3588.     /* [in] */ UINT cMaxNames,
  3589.     /* [out] */ UINT __RPC_FAR *pcNames);
  3590.  
  3591.  
  3592. void __RPC_STUB ITypeInfo_RemoteGetNames_Stub(
  3593.     IRpcStubBuffer *This,
  3594.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3595.     PRPC_MESSAGE _pRpcMessage,
  3596.     DWORD *_pdwStubPhase);
  3597.  
  3598.  
  3599. HRESULT STDMETHODCALLTYPE ITypeInfo_GetRefTypeOfImplType_Proxy( 
  3600.     ITypeInfo __RPC_FAR * This,
  3601.     /* [in] */ UINT index,
  3602.     /* [out] */ HREFTYPE __RPC_FAR *pRefType);
  3603.  
  3604.  
  3605. void __RPC_STUB ITypeInfo_GetRefTypeOfImplType_Stub(
  3606.     IRpcStubBuffer *This,
  3607.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3608.     PRPC_MESSAGE _pRpcMessage,
  3609.     DWORD *_pdwStubPhase);
  3610.  
  3611.  
  3612. HRESULT STDMETHODCALLTYPE ITypeInfo_GetImplTypeFlags_Proxy( 
  3613.     ITypeInfo __RPC_FAR * This,
  3614.     /* [in] */ UINT index,
  3615.     /* [out] */ INT __RPC_FAR *pImplTypeFlags);
  3616.  
  3617.  
  3618. void __RPC_STUB ITypeInfo_GetImplTypeFlags_Stub(
  3619.     IRpcStubBuffer *This,
  3620.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3621.     PRPC_MESSAGE _pRpcMessage,
  3622.     DWORD *_pdwStubPhase);
  3623.  
  3624.  
  3625. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalGetIDsOfNames_Proxy( 
  3626.     ITypeInfo __RPC_FAR * This);
  3627.  
  3628.  
  3629. void __RPC_STUB ITypeInfo_LocalGetIDsOfNames_Stub(
  3630.     IRpcStubBuffer *This,
  3631.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3632.     PRPC_MESSAGE _pRpcMessage,
  3633.     DWORD *_pdwStubPhase);
  3634.  
  3635.  
  3636. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalInvoke_Proxy( 
  3637.     ITypeInfo __RPC_FAR * This);
  3638.  
  3639.  
  3640. void __RPC_STUB ITypeInfo_LocalInvoke_Stub(
  3641.     IRpcStubBuffer *This,
  3642.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3643.     PRPC_MESSAGE _pRpcMessage,
  3644.     DWORD *_pdwStubPhase);
  3645.  
  3646.  
  3647. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetDocumentation_Proxy( 
  3648.     ITypeInfo __RPC_FAR * This,
  3649.     /* [in] */ MEMBERID memid,
  3650.     /* [in] */ DWORD refPtrFlags,
  3651.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  3652.     /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  3653.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  3654.     /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  3655.  
  3656.  
  3657. void __RPC_STUB ITypeInfo_RemoteGetDocumentation_Stub(
  3658.     IRpcStubBuffer *This,
  3659.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3660.     PRPC_MESSAGE _pRpcMessage,
  3661.     DWORD *_pdwStubPhase);
  3662.  
  3663.  
  3664. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetDllEntry_Proxy( 
  3665.     ITypeInfo __RPC_FAR * This,
  3666.     /* [in] */ MEMBERID memid,
  3667.     /* [in] */ INVOKEKIND invKind,
  3668.     /* [in] */ DWORD refPtrFlags,
  3669.     /* [out] */ BSTR __RPC_FAR *pBstrDllName,
  3670.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  3671.     /* [out] */ WORD __RPC_FAR *pwOrdinal);
  3672.  
  3673.  
  3674. void __RPC_STUB ITypeInfo_RemoteGetDllEntry_Stub(
  3675.     IRpcStubBuffer *This,
  3676.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3677.     PRPC_MESSAGE _pRpcMessage,
  3678.     DWORD *_pdwStubPhase);
  3679.  
  3680.  
  3681. HRESULT STDMETHODCALLTYPE ITypeInfo_GetRefTypeInfo_Proxy( 
  3682.     ITypeInfo __RPC_FAR * This,
  3683.     /* [in] */ HREFTYPE hRefType,
  3684.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3685.  
  3686.  
  3687. void __RPC_STUB ITypeInfo_GetRefTypeInfo_Stub(
  3688.     IRpcStubBuffer *This,
  3689.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3690.     PRPC_MESSAGE _pRpcMessage,
  3691.     DWORD *_pdwStubPhase);
  3692.  
  3693.  
  3694. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalAddressOfMember_Proxy( 
  3695.     ITypeInfo __RPC_FAR * This);
  3696.  
  3697.  
  3698. void __RPC_STUB ITypeInfo_LocalAddressOfMember_Stub(
  3699.     IRpcStubBuffer *This,
  3700.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3701.     PRPC_MESSAGE _pRpcMessage,
  3702.     DWORD *_pdwStubPhase);
  3703.  
  3704.  
  3705. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteCreateInstance_Proxy( 
  3706.     ITypeInfo __RPC_FAR * This,
  3707.     /* [in] */ REFIID riid,
  3708.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObj);
  3709.  
  3710.  
  3711. void __RPC_STUB ITypeInfo_RemoteCreateInstance_Stub(
  3712.     IRpcStubBuffer *This,
  3713.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3714.     PRPC_MESSAGE _pRpcMessage,
  3715.     DWORD *_pdwStubPhase);
  3716.  
  3717.  
  3718. HRESULT STDMETHODCALLTYPE ITypeInfo_GetMops_Proxy( 
  3719.     ITypeInfo __RPC_FAR * This,
  3720.     /* [in] */ MEMBERID memid,
  3721.     /* [out] */ BSTR __RPC_FAR *pBstrMops);
  3722.  
  3723.  
  3724. void __RPC_STUB ITypeInfo_GetMops_Stub(
  3725.     IRpcStubBuffer *This,
  3726.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3727.     PRPC_MESSAGE _pRpcMessage,
  3728.     DWORD *_pdwStubPhase);
  3729.  
  3730.  
  3731. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetContainingTypeLib_Proxy( 
  3732.     ITypeInfo __RPC_FAR * This,
  3733.     /* [out] */ ITypeLib __RPC_FAR *__RPC_FAR *ppTLib,
  3734.     /* [out] */ UINT __RPC_FAR *pIndex);
  3735.  
  3736.  
  3737. void __RPC_STUB ITypeInfo_RemoteGetContainingTypeLib_Stub(
  3738.     IRpcStubBuffer *This,
  3739.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3740.     PRPC_MESSAGE _pRpcMessage,
  3741.     DWORD *_pdwStubPhase);
  3742.  
  3743.  
  3744. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseTypeAttr_Proxy( 
  3745.     ITypeInfo __RPC_FAR * This);
  3746.  
  3747.  
  3748. void __RPC_STUB ITypeInfo_LocalReleaseTypeAttr_Stub(
  3749.     IRpcStubBuffer *This,
  3750.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3751.     PRPC_MESSAGE _pRpcMessage,
  3752.     DWORD *_pdwStubPhase);
  3753.  
  3754.  
  3755. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseFuncDesc_Proxy( 
  3756.     ITypeInfo __RPC_FAR * This);
  3757.  
  3758.  
  3759. void __RPC_STUB ITypeInfo_LocalReleaseFuncDesc_Stub(
  3760.     IRpcStubBuffer *This,
  3761.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3762.     PRPC_MESSAGE _pRpcMessage,
  3763.     DWORD *_pdwStubPhase);
  3764.  
  3765.  
  3766. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseVarDesc_Proxy( 
  3767.     ITypeInfo __RPC_FAR * This);
  3768.  
  3769.  
  3770. void __RPC_STUB ITypeInfo_LocalReleaseVarDesc_Stub(
  3771.     IRpcStubBuffer *This,
  3772.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3773.     PRPC_MESSAGE _pRpcMessage,
  3774.     DWORD *_pdwStubPhase);
  3775.  
  3776.  
  3777.  
  3778. #endif     /* __ITypeInfo_INTERFACE_DEFINED__ */
  3779.  
  3780.  
  3781. #ifndef __ITypeInfo2_INTERFACE_DEFINED__
  3782. #define __ITypeInfo2_INTERFACE_DEFINED__
  3783.  
  3784. /****************************************
  3785.  * Generated header for interface: ITypeInfo2
  3786.  * at Thu Sep 11 10:57:08 1997
  3787.  * using MIDL 3.03.0110
  3788.  ****************************************/
  3789. /* [unique][uuid][object] */ 
  3790.  
  3791.  
  3792. typedef /* [unique] */ ITypeInfo2 __RPC_FAR *LPTYPEINFO2;
  3793.  
  3794.  
  3795. EXTERN_C const IID IID_ITypeInfo2;
  3796.  
  3797. #if defined(__cplusplus) && !defined(CINTERFACE)
  3798.     
  3799.     MIDL_INTERFACE("00020412-0000-0000-C000-000000000046")
  3800.     ITypeInfo2 : public ITypeInfo
  3801.     {
  3802.     public:
  3803.         virtual HRESULT STDMETHODCALLTYPE GetTypeKind( 
  3804.             /* [out] */ TYPEKIND __RPC_FAR *pTypeKind) = 0;
  3805.         
  3806.         virtual HRESULT STDMETHODCALLTYPE GetTypeFlags( 
  3807.             /* [out] */ ULONG __RPC_FAR *pTypeFlags) = 0;
  3808.         
  3809.         virtual HRESULT STDMETHODCALLTYPE GetFuncIndexOfMemId( 
  3810.             /* [in] */ MEMBERID memid,
  3811.             /* [in] */ INVOKEKIND invKind,
  3812.             /* [out] */ UINT __RPC_FAR *pFuncIndex) = 0;
  3813.         
  3814.         virtual HRESULT STDMETHODCALLTYPE GetVarIndexOfMemId( 
  3815.             /* [in] */ MEMBERID memid,
  3816.             /* [out] */ UINT __RPC_FAR *pVarIndex) = 0;
  3817.         
  3818.         virtual HRESULT STDMETHODCALLTYPE GetCustData( 
  3819.             /* [in] */ REFGUID guid,
  3820.             /* [out] */ VARIANT __RPC_FAR *pVarVal) = 0;
  3821.         
  3822.         virtual HRESULT STDMETHODCALLTYPE GetFuncCustData( 
  3823.             /* [in] */ UINT index,
  3824.             /* [in] */ REFGUID guid,
  3825.             /* [out] */ VARIANT __RPC_FAR *pVarVal) = 0;
  3826.         
  3827.         virtual HRESULT STDMETHODCALLTYPE GetParamCustData( 
  3828.             /* [in] */ UINT indexFunc,
  3829.             /* [in] */ UINT indexParam,
  3830.             /* [in] */ REFGUID guid,
  3831.             /* [out] */ VARIANT __RPC_FAR *pVarVal) = 0;
  3832.         
  3833.         virtual HRESULT STDMETHODCALLTYPE GetVarCustData( 
  3834.             /* [in] */ UINT index,
  3835.             /* [in] */ REFGUID guid,
  3836.             /* [out] */ VARIANT __RPC_FAR *pVarVal) = 0;
  3837.         
  3838.         virtual HRESULT STDMETHODCALLTYPE GetImplTypeCustData( 
  3839.             /* [in] */ UINT index,
  3840.             /* [in] */ REFGUID guid,
  3841.             /* [out] */ VARIANT __RPC_FAR *pVarVal) = 0;
  3842.         
  3843.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDocumentation2( 
  3844.             /* [in] */ MEMBERID memid,
  3845.             /* [in] */ LCID lcid,
  3846.             /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  3847.             /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  3848.             /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll) = 0;
  3849.         
  3850.         virtual HRESULT STDMETHODCALLTYPE GetAllCustData( 
  3851.             /* [out] */ CUSTDATA __RPC_FAR *pCustData) = 0;
  3852.         
  3853.         virtual HRESULT STDMETHODCALLTYPE GetAllFuncCustData( 
  3854.             /* [in] */ UINT index,
  3855.             /* [out] */ CUSTDATA __RPC_FAR *pCustData) = 0;
  3856.         
  3857.         virtual HRESULT STDMETHODCALLTYPE GetAllParamCustData( 
  3858.             /* [in] */ UINT indexFunc,
  3859.             /* [in] */ UINT indexParam,
  3860.             /* [out] */ CUSTDATA __RPC_FAR *pCustData) = 0;
  3861.         
  3862.         virtual HRESULT STDMETHODCALLTYPE GetAllVarCustData( 
  3863.             /* [in] */ UINT index,
  3864.             /* [out] */ CUSTDATA __RPC_FAR *pCustData) = 0;
  3865.         
  3866.         virtual HRESULT STDMETHODCALLTYPE GetAllImplTypeCustData( 
  3867.             /* [in] */ UINT index,
  3868.             /* [out] */ CUSTDATA __RPC_FAR *pCustData) = 0;
  3869.         
  3870.     };
  3871.     
  3872. #else     /* C style interface */
  3873.  
  3874.     typedef struct ITypeInfo2Vtbl
  3875.     {
  3876.         BEGIN_INTERFACE
  3877.         
  3878.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3879.             ITypeInfo2 __RPC_FAR * This,
  3880.             /* [in] */ REFIID riid,
  3881.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3882.         
  3883.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3884.             ITypeInfo2 __RPC_FAR * This);
  3885.         
  3886.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3887.             ITypeInfo2 __RPC_FAR * This);
  3888.         
  3889.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeAttr )( 
  3890.             ITypeInfo2 __RPC_FAR * This,
  3891.             /* [out] */ TYPEATTR __RPC_FAR *__RPC_FAR *ppTypeAttr);
  3892.         
  3893.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeComp )( 
  3894.             ITypeInfo2 __RPC_FAR * This,
  3895.             /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp);
  3896.         
  3897.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFuncDesc )( 
  3898.             ITypeInfo2 __RPC_FAR * This,
  3899.             /* [in] */ UINT index,
  3900.             /* [out] */ FUNCDESC __RPC_FAR *__RPC_FAR *ppFuncDesc);
  3901.         
  3902.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVarDesc )( 
  3903.             ITypeInfo2 __RPC_FAR * This,
  3904.             /* [in] */ UINT index,
  3905.             /* [out] */ VARDESC __RPC_FAR *__RPC_FAR *ppVarDesc);
  3906.         
  3907.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNames )( 
  3908.             ITypeInfo2 __RPC_FAR * This,
  3909.             /* [in] */ MEMBERID memid,
  3910.             /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames,
  3911.             /* [in] */ UINT cMaxNames,
  3912.             /* [out] */ UINT __RPC_FAR *pcNames);
  3913.         
  3914.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRefTypeOfImplType )( 
  3915.             ITypeInfo2 __RPC_FAR * This,
  3916.             /* [in] */ UINT index,
  3917.             /* [out] */ HREFTYPE __RPC_FAR *pRefType);
  3918.         
  3919.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetImplTypeFlags )( 
  3920.             ITypeInfo2 __RPC_FAR * This,
  3921.             /* [in] */ UINT index,
  3922.             /* [out] */ INT __RPC_FAR *pImplTypeFlags);
  3923.         
  3924.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3925.             ITypeInfo2 __RPC_FAR * This,
  3926.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3927.             /* [in] */ UINT cNames,
  3928.             /* [size_is][out] */ MEMBERID __RPC_FAR *pMemId);
  3929.         
  3930.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3931.             ITypeInfo2 __RPC_FAR * This,
  3932.             /* [in] */ PVOID pvInstance,
  3933.             /* [in] */ MEMBERID memid,
  3934.             /* [in] */ WORD wFlags,
  3935.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3936.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3937.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3938.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3939.         
  3940.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDocumentation )( 
  3941.             ITypeInfo2 __RPC_FAR * This,
  3942.             /* [in] */ MEMBERID memid,
  3943.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  3944.             /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  3945.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  3946.             /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  3947.         
  3948.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDllEntry )( 
  3949.             ITypeInfo2 __RPC_FAR * This,
  3950.             /* [in] */ MEMBERID memid,
  3951.             /* [in] */ INVOKEKIND invKind,
  3952.             /* [out] */ BSTR __RPC_FAR *pBstrDllName,
  3953.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  3954.             /* [out] */ WORD __RPC_FAR *pwOrdinal);
  3955.         
  3956.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRefTypeInfo )( 
  3957.             ITypeInfo2 __RPC_FAR * This,
  3958.             /* [in] */ HREFTYPE hRefType,
  3959.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3960.         
  3961.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddressOfMember )( 
  3962.             ITypeInfo2 __RPC_FAR * This,
  3963.             /* [in] */ MEMBERID memid,
  3964.             /* [in] */ INVOKEKIND invKind,
  3965.             /* [out] */ PVOID __RPC_FAR *ppv);
  3966.         
  3967.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateInstance )( 
  3968.             ITypeInfo2 __RPC_FAR * This,
  3969.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  3970.             /* [in] */ REFIID riid,
  3971.             /* [iid_is][out] */ PVOID __RPC_FAR *ppvObj);
  3972.         
  3973.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMops )( 
  3974.             ITypeInfo2 __RPC_FAR * This,
  3975.             /* [in] */ MEMBERID memid,
  3976.             /* [out] */ BSTR __RPC_FAR *pBstrMops);
  3977.         
  3978.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetContainingTypeLib )( 
  3979.             ITypeInfo2 __RPC_FAR * This,
  3980.             /* [out] */ ITypeLib __RPC_FAR *__RPC_FAR *ppTLib,
  3981.             /* [out] */ UINT __RPC_FAR *pIndex);
  3982.         
  3983.         /* [local] */ void ( STDMETHODCALLTYPE __RPC_FAR *ReleaseTypeAttr )( 
  3984.             ITypeInfo2 __RPC_FAR * This,
  3985.             /* [in] */ TYPEATTR __RPC_FAR *pTypeAttr);
  3986.         
  3987.         /* [local] */ void ( STDMETHODCALLTYPE __RPC_FAR *ReleaseFuncDesc )( 
  3988.             ITypeInfo2 __RPC_FAR * This,
  3989.             /* [in] */ FUNCDESC __RPC_FAR *pFuncDesc);
  3990.         
  3991.         /* [local] */ void ( STDMETHODCALLTYPE __RPC_FAR *ReleaseVarDesc )( 
  3992.             ITypeInfo2 __RPC_FAR * This,
  3993.             /* [in] */ VARDESC __RPC_FAR *pVarDesc);
  3994.         
  3995.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeKind )( 
  3996.             ITypeInfo2 __RPC_FAR * This,
  3997.             /* [out] */ TYPEKIND __RPC_FAR *pTypeKind);
  3998.         
  3999.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeFlags )( 
  4000.             ITypeInfo2 __RPC_FAR * This,
  4001.             /* [out] */ ULONG __RPC_FAR *pTypeFlags);
  4002.         
  4003.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFuncIndexOfMemId )( 
  4004.             ITypeInfo2 __RPC_FAR * This,
  4005.             /* [in] */ MEMBERID memid,
  4006.             /* [in] */ INVOKEKIND invKind,
  4007.             /* [out] */ UINT __RPC_FAR *pFuncIndex);
  4008.         
  4009.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVarIndexOfMemId )( 
  4010.             ITypeInfo2 __RPC_FAR * This,
  4011.             /* [in] */ MEMBERID memid,
  4012.             /* [out] */ UINT __RPC_FAR *pVarIndex);
  4013.         
  4014.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCustData )( 
  4015.             ITypeInfo2 __RPC_FAR * This,
  4016.             /* [in] */ REFGUID guid,
  4017.             /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4018.         
  4019.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFuncCustData )( 
  4020.             ITypeInfo2 __RPC_FAR * This,
  4021.             /* [in] */ UINT index,
  4022.             /* [in] */ REFGUID guid,
  4023.             /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4024.         
  4025.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetParamCustData )( 
  4026.             ITypeInfo2 __RPC_FAR * This,
  4027.             /* [in] */ UINT indexFunc,
  4028.             /* [in] */ UINT indexParam,
  4029.             /* [in] */ REFGUID guid,
  4030.             /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4031.         
  4032.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVarCustData )( 
  4033.             ITypeInfo2 __RPC_FAR * This,
  4034.             /* [in] */ UINT index,
  4035.             /* [in] */ REFGUID guid,
  4036.             /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4037.         
  4038.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetImplTypeCustData )( 
  4039.             ITypeInfo2 __RPC_FAR * This,
  4040.             /* [in] */ UINT index,
  4041.             /* [in] */ REFGUID guid,
  4042.             /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4043.         
  4044.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDocumentation2 )( 
  4045.             ITypeInfo2 __RPC_FAR * This,
  4046.             /* [in] */ MEMBERID memid,
  4047.             /* [in] */ LCID lcid,
  4048.             /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  4049.             /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  4050.             /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll);
  4051.         
  4052.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAllCustData )( 
  4053.             ITypeInfo2 __RPC_FAR * This,
  4054.             /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4055.         
  4056.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAllFuncCustData )( 
  4057.             ITypeInfo2 __RPC_FAR * This,
  4058.             /* [in] */ UINT index,
  4059.             /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4060.         
  4061.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAllParamCustData )( 
  4062.             ITypeInfo2 __RPC_FAR * This,
  4063.             /* [in] */ UINT indexFunc,
  4064.             /* [in] */ UINT indexParam,
  4065.             /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4066.         
  4067.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAllVarCustData )( 
  4068.             ITypeInfo2 __RPC_FAR * This,
  4069.             /* [in] */ UINT index,
  4070.             /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4071.         
  4072.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAllImplTypeCustData )( 
  4073.             ITypeInfo2 __RPC_FAR * This,
  4074.             /* [in] */ UINT index,
  4075.             /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4076.         
  4077.         END_INTERFACE
  4078.     } ITypeInfo2Vtbl;
  4079.  
  4080.     interface ITypeInfo2
  4081.     {
  4082.         CONST_VTBL struct ITypeInfo2Vtbl __RPC_FAR *lpVtbl;
  4083.     };
  4084.  
  4085.     
  4086.  
  4087. #ifdef COBJMACROS
  4088.  
  4089.  
  4090. #define ITypeInfo2_QueryInterface(This,riid,ppvObject)    \
  4091.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4092.  
  4093. #define ITypeInfo2_AddRef(This)    \
  4094.     (This)->lpVtbl -> AddRef(This)
  4095.  
  4096. #define ITypeInfo2_Release(This)    \
  4097.     (This)->lpVtbl -> Release(This)
  4098.  
  4099.  
  4100. #define ITypeInfo2_GetTypeAttr(This,ppTypeAttr)    \
  4101.     (This)->lpVtbl -> GetTypeAttr(This,ppTypeAttr)
  4102.  
  4103. #define ITypeInfo2_GetTypeComp(This,ppTComp)    \
  4104.     (This)->lpVtbl -> GetTypeComp(This,ppTComp)
  4105.  
  4106. #define ITypeInfo2_GetFuncDesc(This,index,ppFuncDesc)    \
  4107.     (This)->lpVtbl -> GetFuncDesc(This,index,ppFuncDesc)
  4108.  
  4109. #define ITypeInfo2_GetVarDesc(This,index,ppVarDesc)    \
  4110.     (This)->lpVtbl -> GetVarDesc(This,index,ppVarDesc)
  4111.  
  4112. #define ITypeInfo2_GetNames(This,memid,rgBstrNames,cMaxNames,pcNames)    \
  4113.     (This)->lpVtbl -> GetNames(This,memid,rgBstrNames,cMaxNames,pcNames)
  4114.  
  4115. #define ITypeInfo2_GetRefTypeOfImplType(This,index,pRefType)    \
  4116.     (This)->lpVtbl -> GetRefTypeOfImplType(This,index,pRefType)
  4117.  
  4118. #define ITypeInfo2_GetImplTypeFlags(This,index,pImplTypeFlags)    \
  4119.     (This)->lpVtbl -> GetImplTypeFlags(This,index,pImplTypeFlags)
  4120.  
  4121. #define ITypeInfo2_GetIDsOfNames(This,rgszNames,cNames,pMemId)    \
  4122.     (This)->lpVtbl -> GetIDsOfNames(This,rgszNames,cNames,pMemId)
  4123.  
  4124. #define ITypeInfo2_Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  4125.     (This)->lpVtbl -> Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  4126.  
  4127. #define ITypeInfo2_GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile)    \
  4128.     (This)->lpVtbl -> GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile)
  4129.  
  4130. #define ITypeInfo2_GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal)    \
  4131.     (This)->lpVtbl -> GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal)
  4132.  
  4133. #define ITypeInfo2_GetRefTypeInfo(This,hRefType,ppTInfo)    \
  4134.     (This)->lpVtbl -> GetRefTypeInfo(This,hRefType,ppTInfo)
  4135.  
  4136. #define ITypeInfo2_AddressOfMember(This,memid,invKind,ppv)    \
  4137.     (This)->lpVtbl -> AddressOfMember(This,memid,invKind,ppv)
  4138.  
  4139. #define ITypeInfo2_CreateInstance(This,pUnkOuter,riid,ppvObj)    \
  4140.     (This)->lpVtbl -> CreateInstance(This,pUnkOuter,riid,ppvObj)
  4141.  
  4142. #define ITypeInfo2_GetMops(This,memid,pBstrMops)    \
  4143.     (This)->lpVtbl -> GetMops(This,memid,pBstrMops)
  4144.  
  4145. #define ITypeInfo2_GetContainingTypeLib(This,ppTLib,pIndex)    \
  4146.     (This)->lpVtbl -> GetContainingTypeLib(This,ppTLib,pIndex)
  4147.  
  4148. #define ITypeInfo2_ReleaseTypeAttr(This,pTypeAttr)    \
  4149.     (This)->lpVtbl -> ReleaseTypeAttr(This,pTypeAttr)
  4150.  
  4151. #define ITypeInfo2_ReleaseFuncDesc(This,pFuncDesc)    \
  4152.     (This)->lpVtbl -> ReleaseFuncDesc(This,pFuncDesc)
  4153.  
  4154. #define ITypeInfo2_ReleaseVarDesc(This,pVarDesc)    \
  4155.     (This)->lpVtbl -> ReleaseVarDesc(This,pVarDesc)
  4156.  
  4157.  
  4158. #define ITypeInfo2_GetTypeKind(This,pTypeKind)    \
  4159.     (This)->lpVtbl -> GetTypeKind(This,pTypeKind)
  4160.  
  4161. #define ITypeInfo2_GetTypeFlags(This,pTypeFlags)    \
  4162.     (This)->lpVtbl -> GetTypeFlags(This,pTypeFlags)
  4163.  
  4164. #define ITypeInfo2_GetFuncIndexOfMemId(This,memid,invKind,pFuncIndex)    \
  4165.     (This)->lpVtbl -> GetFuncIndexOfMemId(This,memid,invKind,pFuncIndex)
  4166.  
  4167. #define ITypeInfo2_GetVarIndexOfMemId(This,memid,pVarIndex)    \
  4168.     (This)->lpVtbl -> GetVarIndexOfMemId(This,memid,pVarIndex)
  4169.  
  4170. #define ITypeInfo2_GetCustData(This,guid,pVarVal)    \
  4171.     (This)->lpVtbl -> GetCustData(This,guid,pVarVal)
  4172.  
  4173. #define ITypeInfo2_GetFuncCustData(This,index,guid,pVarVal)    \
  4174.     (This)->lpVtbl -> GetFuncCustData(This,index,guid,pVarVal)
  4175.  
  4176. #define ITypeInfo2_GetParamCustData(This,indexFunc,indexParam,guid,pVarVal)    \
  4177.     (This)->lpVtbl -> GetParamCustData(This,indexFunc,indexParam,guid,pVarVal)
  4178.  
  4179. #define ITypeInfo2_GetVarCustData(This,index,guid,pVarVal)    \
  4180.     (This)->lpVtbl -> GetVarCustData(This,index,guid,pVarVal)
  4181.  
  4182. #define ITypeInfo2_GetImplTypeCustData(This,index,guid,pVarVal)    \
  4183.     (This)->lpVtbl -> GetImplTypeCustData(This,index,guid,pVarVal)
  4184.  
  4185. #define ITypeInfo2_GetDocumentation2(This,memid,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll)    \
  4186.     (This)->lpVtbl -> GetDocumentation2(This,memid,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll)
  4187.  
  4188. #define ITypeInfo2_GetAllCustData(This,pCustData)    \
  4189.     (This)->lpVtbl -> GetAllCustData(This,pCustData)
  4190.  
  4191. #define ITypeInfo2_GetAllFuncCustData(This,index,pCustData)    \
  4192.     (This)->lpVtbl -> GetAllFuncCustData(This,index,pCustData)
  4193.  
  4194. #define ITypeInfo2_GetAllParamCustData(This,indexFunc,indexParam,pCustData)    \
  4195.     (This)->lpVtbl -> GetAllParamCustData(This,indexFunc,indexParam,pCustData)
  4196.  
  4197. #define ITypeInfo2_GetAllVarCustData(This,index,pCustData)    \
  4198.     (This)->lpVtbl -> GetAllVarCustData(This,index,pCustData)
  4199.  
  4200. #define ITypeInfo2_GetAllImplTypeCustData(This,index,pCustData)    \
  4201.     (This)->lpVtbl -> GetAllImplTypeCustData(This,index,pCustData)
  4202.  
  4203. #endif /* COBJMACROS */
  4204.  
  4205.  
  4206. #endif     /* C style interface */
  4207.  
  4208.  
  4209.  
  4210. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetTypeKind_Proxy( 
  4211.     ITypeInfo2 __RPC_FAR * This,
  4212.     /* [out] */ TYPEKIND __RPC_FAR *pTypeKind);
  4213.  
  4214.  
  4215. void __RPC_STUB ITypeInfo2_GetTypeKind_Stub(
  4216.     IRpcStubBuffer *This,
  4217.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4218.     PRPC_MESSAGE _pRpcMessage,
  4219.     DWORD *_pdwStubPhase);
  4220.  
  4221.  
  4222. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetTypeFlags_Proxy( 
  4223.     ITypeInfo2 __RPC_FAR * This,
  4224.     /* [out] */ ULONG __RPC_FAR *pTypeFlags);
  4225.  
  4226.  
  4227. void __RPC_STUB ITypeInfo2_GetTypeFlags_Stub(
  4228.     IRpcStubBuffer *This,
  4229.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4230.     PRPC_MESSAGE _pRpcMessage,
  4231.     DWORD *_pdwStubPhase);
  4232.  
  4233.  
  4234. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetFuncIndexOfMemId_Proxy( 
  4235.     ITypeInfo2 __RPC_FAR * This,
  4236.     /* [in] */ MEMBERID memid,
  4237.     /* [in] */ INVOKEKIND invKind,
  4238.     /* [out] */ UINT __RPC_FAR *pFuncIndex);
  4239.  
  4240.  
  4241. void __RPC_STUB ITypeInfo2_GetFuncIndexOfMemId_Stub(
  4242.     IRpcStubBuffer *This,
  4243.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4244.     PRPC_MESSAGE _pRpcMessage,
  4245.     DWORD *_pdwStubPhase);
  4246.  
  4247.  
  4248. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetVarIndexOfMemId_Proxy( 
  4249.     ITypeInfo2 __RPC_FAR * This,
  4250.     /* [in] */ MEMBERID memid,
  4251.     /* [out] */ UINT __RPC_FAR *pVarIndex);
  4252.  
  4253.  
  4254. void __RPC_STUB ITypeInfo2_GetVarIndexOfMemId_Stub(
  4255.     IRpcStubBuffer *This,
  4256.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4257.     PRPC_MESSAGE _pRpcMessage,
  4258.     DWORD *_pdwStubPhase);
  4259.  
  4260.  
  4261. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetCustData_Proxy( 
  4262.     ITypeInfo2 __RPC_FAR * This,
  4263.     /* [in] */ REFGUID guid,
  4264.     /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4265.  
  4266.  
  4267. void __RPC_STUB ITypeInfo2_GetCustData_Stub(
  4268.     IRpcStubBuffer *This,
  4269.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4270.     PRPC_MESSAGE _pRpcMessage,
  4271.     DWORD *_pdwStubPhase);
  4272.  
  4273.  
  4274. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetFuncCustData_Proxy( 
  4275.     ITypeInfo2 __RPC_FAR * This,
  4276.     /* [in] */ UINT index,
  4277.     /* [in] */ REFGUID guid,
  4278.     /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4279.  
  4280.  
  4281. void __RPC_STUB ITypeInfo2_GetFuncCustData_Stub(
  4282.     IRpcStubBuffer *This,
  4283.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4284.     PRPC_MESSAGE _pRpcMessage,
  4285.     DWORD *_pdwStubPhase);
  4286.  
  4287.  
  4288. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetParamCustData_Proxy( 
  4289.     ITypeInfo2 __RPC_FAR * This,
  4290.     /* [in] */ UINT indexFunc,
  4291.     /* [in] */ UINT indexParam,
  4292.     /* [in] */ REFGUID guid,
  4293.     /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4294.  
  4295.  
  4296. void __RPC_STUB ITypeInfo2_GetParamCustData_Stub(
  4297.     IRpcStubBuffer *This,
  4298.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4299.     PRPC_MESSAGE _pRpcMessage,
  4300.     DWORD *_pdwStubPhase);
  4301.  
  4302.  
  4303. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetVarCustData_Proxy( 
  4304.     ITypeInfo2 __RPC_FAR * This,
  4305.     /* [in] */ UINT index,
  4306.     /* [in] */ REFGUID guid,
  4307.     /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4308.  
  4309.  
  4310. void __RPC_STUB ITypeInfo2_GetVarCustData_Stub(
  4311.     IRpcStubBuffer *This,
  4312.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4313.     PRPC_MESSAGE _pRpcMessage,
  4314.     DWORD *_pdwStubPhase);
  4315.  
  4316.  
  4317. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetImplTypeCustData_Proxy( 
  4318.     ITypeInfo2 __RPC_FAR * This,
  4319.     /* [in] */ UINT index,
  4320.     /* [in] */ REFGUID guid,
  4321.     /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4322.  
  4323.  
  4324. void __RPC_STUB ITypeInfo2_GetImplTypeCustData_Stub(
  4325.     IRpcStubBuffer *This,
  4326.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4327.     PRPC_MESSAGE _pRpcMessage,
  4328.     DWORD *_pdwStubPhase);
  4329.  
  4330.  
  4331. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo2_RemoteGetDocumentation2_Proxy( 
  4332.     ITypeInfo2 __RPC_FAR * This,
  4333.     /* [in] */ MEMBERID memid,
  4334.     /* [in] */ LCID lcid,
  4335.     /* [in] */ DWORD refPtrFlags,
  4336.     /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  4337.     /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  4338.     /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll);
  4339.  
  4340.  
  4341. void __RPC_STUB ITypeInfo2_RemoteGetDocumentation2_Stub(
  4342.     IRpcStubBuffer *This,
  4343.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4344.     PRPC_MESSAGE _pRpcMessage,
  4345.     DWORD *_pdwStubPhase);
  4346.  
  4347.  
  4348. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllCustData_Proxy( 
  4349.     ITypeInfo2 __RPC_FAR * This,
  4350.     /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4351.  
  4352.  
  4353. void __RPC_STUB ITypeInfo2_GetAllCustData_Stub(
  4354.     IRpcStubBuffer *This,
  4355.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4356.     PRPC_MESSAGE _pRpcMessage,
  4357.     DWORD *_pdwStubPhase);
  4358.  
  4359.  
  4360. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllFuncCustData_Proxy( 
  4361.     ITypeInfo2 __RPC_FAR * This,
  4362.     /* [in] */ UINT index,
  4363.     /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4364.  
  4365.  
  4366. void __RPC_STUB ITypeInfo2_GetAllFuncCustData_Stub(
  4367.     IRpcStubBuffer *This,
  4368.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4369.     PRPC_MESSAGE _pRpcMessage,
  4370.     DWORD *_pdwStubPhase);
  4371.  
  4372.  
  4373. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllParamCustData_Proxy( 
  4374.     ITypeInfo2 __RPC_FAR * This,
  4375.     /* [in] */ UINT indexFunc,
  4376.     /* [in] */ UINT indexParam,
  4377.     /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4378.  
  4379.  
  4380. void __RPC_STUB ITypeInfo2_GetAllParamCustData_Stub(
  4381.     IRpcStubBuffer *This,
  4382.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4383.     PRPC_MESSAGE _pRpcMessage,
  4384.     DWORD *_pdwStubPhase);
  4385.  
  4386.  
  4387. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllVarCustData_Proxy( 
  4388.     ITypeInfo2 __RPC_FAR * This,
  4389.     /* [in] */ UINT index,
  4390.     /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4391.  
  4392.  
  4393. void __RPC_STUB ITypeInfo2_GetAllVarCustData_Stub(
  4394.     IRpcStubBuffer *This,
  4395.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4396.     PRPC_MESSAGE _pRpcMessage,
  4397.     DWORD *_pdwStubPhase);
  4398.  
  4399.  
  4400. HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllImplTypeCustData_Proxy( 
  4401.     ITypeInfo2 __RPC_FAR * This,
  4402.     /* [in] */ UINT index,
  4403.     /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4404.  
  4405.  
  4406. void __RPC_STUB ITypeInfo2_GetAllImplTypeCustData_Stub(
  4407.     IRpcStubBuffer *This,
  4408.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4409.     PRPC_MESSAGE _pRpcMessage,
  4410.     DWORD *_pdwStubPhase);
  4411.  
  4412.  
  4413.  
  4414. #endif     /* __ITypeInfo2_INTERFACE_DEFINED__ */
  4415.  
  4416.  
  4417. #ifndef __ITypeLib_INTERFACE_DEFINED__
  4418. #define __ITypeLib_INTERFACE_DEFINED__
  4419.  
  4420. /****************************************
  4421.  * Generated header for interface: ITypeLib
  4422.  * at Thu Sep 11 10:57:08 1997
  4423.  * using MIDL 3.03.0110
  4424.  ****************************************/
  4425. /* [unique][uuid][object] */ 
  4426.  
  4427.  
  4428. typedef /* [v1_enum] */ 
  4429. enum tagSYSKIND
  4430.     {    SYS_WIN16    = 0,
  4431.     SYS_WIN32    = SYS_WIN16 + 1,
  4432.     SYS_MAC    = SYS_WIN32 + 1
  4433.     }    SYSKIND;
  4434.  
  4435. typedef /* [v1_enum] */ 
  4436. enum tagLIBFLAGS
  4437.     {    LIBFLAG_FRESTRICTED    = 0x1,
  4438.     LIBFLAG_FCONTROL    = 0x2,
  4439.     LIBFLAG_FHIDDEN    = 0x4,
  4440.     LIBFLAG_FHASDISKIMAGE    = 0x8
  4441.     }    LIBFLAGS;
  4442.  
  4443. typedef /* [unique] */ ITypeLib __RPC_FAR *LPTYPELIB;
  4444.  
  4445. typedef struct  tagTLIBATTR
  4446.     {
  4447.     GUID guid;
  4448.     LCID lcid;
  4449.     SYSKIND syskind;
  4450.     WORD wMajorVerNum;
  4451.     WORD wMinorVerNum;
  4452.     WORD wLibFlags;
  4453.     }    TLIBATTR;
  4454.  
  4455. typedef struct tagTLIBATTR __RPC_FAR *LPTLIBATTR;
  4456.  
  4457.  
  4458. EXTERN_C const IID IID_ITypeLib;
  4459.  
  4460. #if defined(__cplusplus) && !defined(CINTERFACE)
  4461.     
  4462.     MIDL_INTERFACE("00020402-0000-0000-C000-000000000046")
  4463.     ITypeLib : public IUnknown
  4464.     {
  4465.     public:
  4466.         virtual /* [local] */ UINT STDMETHODCALLTYPE GetTypeInfoCount( void) = 0;
  4467.         
  4468.         virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( 
  4469.             /* [in] */ UINT index,
  4470.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo) = 0;
  4471.         
  4472.         virtual HRESULT STDMETHODCALLTYPE GetTypeInfoType( 
  4473.             /* [in] */ UINT index,
  4474.             /* [out] */ TYPEKIND __RPC_FAR *pTKind) = 0;
  4475.         
  4476.         virtual HRESULT STDMETHODCALLTYPE GetTypeInfoOfGuid( 
  4477.             /* [in] */ REFGUID guid,
  4478.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTinfo) = 0;
  4479.         
  4480.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetLibAttr( 
  4481.             /* [out] */ TLIBATTR __RPC_FAR *__RPC_FAR *ppTLibAttr) = 0;
  4482.         
  4483.         virtual HRESULT STDMETHODCALLTYPE GetTypeComp( 
  4484.             /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp) = 0;
  4485.         
  4486.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDocumentation( 
  4487.             /* [in] */ INT index,
  4488.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  4489.             /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  4490.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  4491.             /* [out] */ BSTR __RPC_FAR *pBstrHelpFile) = 0;
  4492.         
  4493.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE IsName( 
  4494.             /* [out][in] */ LPOLESTR szNameBuf,
  4495.             /* [in] */ ULONG lHashVal,
  4496.             /* [out] */ BOOL __RPC_FAR *pfName) = 0;
  4497.         
  4498.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE FindName( 
  4499.             /* [out][in] */ LPOLESTR szNameBuf,
  4500.             /* [in] */ ULONG lHashVal,
  4501.             /* [length_is][size_is][out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  4502.             /* [length_is][size_is][out] */ MEMBERID __RPC_FAR *rgMemId,
  4503.             /* [out][in] */ USHORT __RPC_FAR *pcFound) = 0;
  4504.         
  4505.         virtual /* [local] */ void STDMETHODCALLTYPE ReleaseTLibAttr( 
  4506.             /* [in] */ TLIBATTR __RPC_FAR *pTLibAttr) = 0;
  4507.         
  4508.     };
  4509.     
  4510. #else     /* C style interface */
  4511.  
  4512.     typedef struct ITypeLibVtbl
  4513.     {
  4514.         BEGIN_INTERFACE
  4515.         
  4516.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4517.             ITypeLib __RPC_FAR * This,
  4518.             /* [in] */ REFIID riid,
  4519.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4520.         
  4521.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4522.             ITypeLib __RPC_FAR * This);
  4523.         
  4524.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4525.             ITypeLib __RPC_FAR * This);
  4526.         
  4527.         /* [local] */ UINT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  4528.             ITypeLib __RPC_FAR * This);
  4529.         
  4530.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  4531.             ITypeLib __RPC_FAR * This,
  4532.             /* [in] */ UINT index,
  4533.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  4534.         
  4535.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoType )( 
  4536.             ITypeLib __RPC_FAR * This,
  4537.             /* [in] */ UINT index,
  4538.             /* [out] */ TYPEKIND __RPC_FAR *pTKind);
  4539.         
  4540.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoOfGuid )( 
  4541.             ITypeLib __RPC_FAR * This,
  4542.             /* [in] */ REFGUID guid,
  4543.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTinfo);
  4544.         
  4545.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLibAttr )( 
  4546.             ITypeLib __RPC_FAR * This,
  4547.             /* [out] */ TLIBATTR __RPC_FAR *__RPC_FAR *ppTLibAttr);
  4548.         
  4549.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeComp )( 
  4550.             ITypeLib __RPC_FAR * This,
  4551.             /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp);
  4552.         
  4553.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDocumentation )( 
  4554.             ITypeLib __RPC_FAR * This,
  4555.             /* [in] */ INT index,
  4556.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  4557.             /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  4558.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  4559.             /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  4560.         
  4561.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsName )( 
  4562.             ITypeLib __RPC_FAR * This,
  4563.             /* [out][in] */ LPOLESTR szNameBuf,
  4564.             /* [in] */ ULONG lHashVal,
  4565.             /* [out] */ BOOL __RPC_FAR *pfName);
  4566.         
  4567.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindName )( 
  4568.             ITypeLib __RPC_FAR * This,
  4569.             /* [out][in] */ LPOLESTR szNameBuf,
  4570.             /* [in] */ ULONG lHashVal,
  4571.             /* [length_is][size_is][out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  4572.             /* [length_is][size_is][out] */ MEMBERID __RPC_FAR *rgMemId,
  4573.             /* [out][in] */ USHORT __RPC_FAR *pcFound);
  4574.         
  4575.         /* [local] */ void ( STDMETHODCALLTYPE __RPC_FAR *ReleaseTLibAttr )( 
  4576.             ITypeLib __RPC_FAR * This,
  4577.             /* [in] */ TLIBATTR __RPC_FAR *pTLibAttr);
  4578.         
  4579.         END_INTERFACE
  4580.     } ITypeLibVtbl;
  4581.  
  4582.     interface ITypeLib
  4583.     {
  4584.         CONST_VTBL struct ITypeLibVtbl __RPC_FAR *lpVtbl;
  4585.     };
  4586.  
  4587.     
  4588.  
  4589. #ifdef COBJMACROS
  4590.  
  4591.  
  4592. #define ITypeLib_QueryInterface(This,riid,ppvObject)    \
  4593.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4594.  
  4595. #define ITypeLib_AddRef(This)    \
  4596.     (This)->lpVtbl -> AddRef(This)
  4597.  
  4598. #define ITypeLib_Release(This)    \
  4599.     (This)->lpVtbl -> Release(This)
  4600.  
  4601.  
  4602. #define ITypeLib_GetTypeInfoCount(This)    \
  4603.     (This)->lpVtbl -> GetTypeInfoCount(This)
  4604.  
  4605. #define ITypeLib_GetTypeInfo(This,index,ppTInfo)    \
  4606.     (This)->lpVtbl -> GetTypeInfo(This,index,ppTInfo)
  4607.  
  4608. #define ITypeLib_GetTypeInfoType(This,index,pTKind)    \
  4609.     (This)->lpVtbl -> GetTypeInfoType(This,index,pTKind)
  4610.  
  4611. #define ITypeLib_GetTypeInfoOfGuid(This,guid,ppTinfo)    \
  4612.     (This)->lpVtbl -> GetTypeInfoOfGuid(This,guid,ppTinfo)
  4613.  
  4614. #define ITypeLib_GetLibAttr(This,ppTLibAttr)    \
  4615.     (This)->lpVtbl -> GetLibAttr(This,ppTLibAttr)
  4616.  
  4617. #define ITypeLib_GetTypeComp(This,ppTComp)    \
  4618.     (This)->lpVtbl -> GetTypeComp(This,ppTComp)
  4619.  
  4620. #define ITypeLib_GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile)    \
  4621.     (This)->lpVtbl -> GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile)
  4622.  
  4623. #define ITypeLib_IsName(This,szNameBuf,lHashVal,pfName)    \
  4624.     (This)->lpVtbl -> IsName(This,szNameBuf,lHashVal,pfName)
  4625.  
  4626. #define ITypeLib_FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound)    \
  4627.     (This)->lpVtbl -> FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound)
  4628.  
  4629. #define ITypeLib_ReleaseTLibAttr(This,pTLibAttr)    \
  4630.     (This)->lpVtbl -> ReleaseTLibAttr(This,pTLibAttr)
  4631.  
  4632. #endif /* COBJMACROS */
  4633.  
  4634.  
  4635. #endif     /* C style interface */
  4636.  
  4637.  
  4638.  
  4639. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetTypeInfoCount_Proxy( 
  4640.     ITypeLib __RPC_FAR * This,
  4641.     /* [out] */ UINT __RPC_FAR *pcTInfo);
  4642.  
  4643.  
  4644. void __RPC_STUB ITypeLib_RemoteGetTypeInfoCount_Stub(
  4645.     IRpcStubBuffer *This,
  4646.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4647.     PRPC_MESSAGE _pRpcMessage,
  4648.     DWORD *_pdwStubPhase);
  4649.  
  4650.  
  4651. HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfo_Proxy( 
  4652.     ITypeLib __RPC_FAR * This,
  4653.     /* [in] */ UINT index,
  4654.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  4655.  
  4656.  
  4657. void __RPC_STUB ITypeLib_GetTypeInfo_Stub(
  4658.     IRpcStubBuffer *This,
  4659.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4660.     PRPC_MESSAGE _pRpcMessage,
  4661.     DWORD *_pdwStubPhase);
  4662.  
  4663.  
  4664. HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfoType_Proxy( 
  4665.     ITypeLib __RPC_FAR * This,
  4666.     /* [in] */ UINT index,
  4667.     /* [out] */ TYPEKIND __RPC_FAR *pTKind);
  4668.  
  4669.  
  4670. void __RPC_STUB ITypeLib_GetTypeInfoType_Stub(
  4671.     IRpcStubBuffer *This,
  4672.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4673.     PRPC_MESSAGE _pRpcMessage,
  4674.     DWORD *_pdwStubPhase);
  4675.  
  4676.  
  4677. HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfoOfGuid_Proxy( 
  4678.     ITypeLib __RPC_FAR * This,
  4679.     /* [in] */ REFGUID guid,
  4680.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTinfo);
  4681.  
  4682.  
  4683. void __RPC_STUB ITypeLib_GetTypeInfoOfGuid_Stub(
  4684.     IRpcStubBuffer *This,
  4685.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4686.     PRPC_MESSAGE _pRpcMessage,
  4687.     DWORD *_pdwStubPhase);
  4688.  
  4689.  
  4690. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetLibAttr_Proxy( 
  4691.     ITypeLib __RPC_FAR * This,
  4692.     /* [out] */ LPTLIBATTR __RPC_FAR *ppTLibAttr,
  4693.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  4694.  
  4695.  
  4696. void __RPC_STUB ITypeLib_RemoteGetLibAttr_Stub(
  4697.     IRpcStubBuffer *This,
  4698.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4699.     PRPC_MESSAGE _pRpcMessage,
  4700.     DWORD *_pdwStubPhase);
  4701.  
  4702.  
  4703. HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeComp_Proxy( 
  4704.     ITypeLib __RPC_FAR * This,
  4705.     /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp);
  4706.  
  4707.  
  4708. void __RPC_STUB ITypeLib_GetTypeComp_Stub(
  4709.     IRpcStubBuffer *This,
  4710.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4711.     PRPC_MESSAGE _pRpcMessage,
  4712.     DWORD *_pdwStubPhase);
  4713.  
  4714.  
  4715. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetDocumentation_Proxy( 
  4716.     ITypeLib __RPC_FAR * This,
  4717.     /* [in] */ INT index,
  4718.     /* [in] */ DWORD refPtrFlags,
  4719.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  4720.     /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  4721.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  4722.     /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  4723.  
  4724.  
  4725. void __RPC_STUB ITypeLib_RemoteGetDocumentation_Stub(
  4726.     IRpcStubBuffer *This,
  4727.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4728.     PRPC_MESSAGE _pRpcMessage,
  4729.     DWORD *_pdwStubPhase);
  4730.  
  4731.  
  4732. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteIsName_Proxy( 
  4733.     ITypeLib __RPC_FAR * This,
  4734.     /* [in] */ LPOLESTR szNameBuf,
  4735.     /* [in] */ ULONG lHashVal,
  4736.     /* [out] */ BOOL __RPC_FAR *pfName,
  4737.     /* [out] */ BSTR __RPC_FAR *pBstrLibName);
  4738.  
  4739.  
  4740. void __RPC_STUB ITypeLib_RemoteIsName_Stub(
  4741.     IRpcStubBuffer *This,
  4742.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4743.     PRPC_MESSAGE _pRpcMessage,
  4744.     DWORD *_pdwStubPhase);
  4745.  
  4746.  
  4747. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteFindName_Proxy( 
  4748.     ITypeLib __RPC_FAR * This,
  4749.     /* [in] */ LPOLESTR szNameBuf,
  4750.     /* [in] */ ULONG lHashVal,
  4751.     /* [length_is][size_is][out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  4752.     /* [length_is][size_is][out] */ MEMBERID __RPC_FAR *rgMemId,
  4753.     /* [out][in] */ USHORT __RPC_FAR *pcFound,
  4754.     /* [out] */ BSTR __RPC_FAR *pBstrLibName);
  4755.  
  4756.  
  4757. void __RPC_STUB ITypeLib_RemoteFindName_Stub(
  4758.     IRpcStubBuffer *This,
  4759.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4760.     PRPC_MESSAGE _pRpcMessage,
  4761.     DWORD *_pdwStubPhase);
  4762.  
  4763.  
  4764. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_LocalReleaseTLibAttr_Proxy( 
  4765.     ITypeLib __RPC_FAR * This);
  4766.  
  4767.  
  4768. void __RPC_STUB ITypeLib_LocalReleaseTLibAttr_Stub(
  4769.     IRpcStubBuffer *This,
  4770.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4771.     PRPC_MESSAGE _pRpcMessage,
  4772.     DWORD *_pdwStubPhase);
  4773.  
  4774.  
  4775.  
  4776. #endif     /* __ITypeLib_INTERFACE_DEFINED__ */
  4777.  
  4778.  
  4779. #ifndef __ITypeLib2_INTERFACE_DEFINED__
  4780. #define __ITypeLib2_INTERFACE_DEFINED__
  4781.  
  4782. /****************************************
  4783.  * Generated header for interface: ITypeLib2
  4784.  * at Thu Sep 11 10:57:08 1997
  4785.  * using MIDL 3.03.0110
  4786.  ****************************************/
  4787. /* [unique][uuid][object] */ 
  4788.  
  4789.  
  4790. typedef /* [unique] */ ITypeLib2 __RPC_FAR *LPTYPELIB2;
  4791.  
  4792.  
  4793. EXTERN_C const IID IID_ITypeLib2;
  4794.  
  4795. #if defined(__cplusplus) && !defined(CINTERFACE)
  4796.     
  4797.     MIDL_INTERFACE("00020411-0000-0000-C000-000000000046")
  4798.     ITypeLib2 : public ITypeLib
  4799.     {
  4800.     public:
  4801.         virtual HRESULT STDMETHODCALLTYPE GetCustData( 
  4802.             /* [in] */ REFGUID guid,
  4803.             /* [out] */ VARIANT __RPC_FAR *pVarVal) = 0;
  4804.         
  4805.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetLibStatistics( 
  4806.             /* [out] */ ULONG __RPC_FAR *pcUniqueNames,
  4807.             /* [out] */ ULONG __RPC_FAR *pcchUniqueNames) = 0;
  4808.         
  4809.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDocumentation2( 
  4810.             /* [in] */ INT index,
  4811.             /* [in] */ LCID lcid,
  4812.             /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  4813.             /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  4814.             /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll) = 0;
  4815.         
  4816.         virtual HRESULT STDMETHODCALLTYPE GetAllCustData( 
  4817.             /* [out] */ CUSTDATA __RPC_FAR *pCustData) = 0;
  4818.         
  4819.     };
  4820.     
  4821. #else     /* C style interface */
  4822.  
  4823.     typedef struct ITypeLib2Vtbl
  4824.     {
  4825.         BEGIN_INTERFACE
  4826.         
  4827.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4828.             ITypeLib2 __RPC_FAR * This,
  4829.             /* [in] */ REFIID riid,
  4830.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4831.         
  4832.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4833.             ITypeLib2 __RPC_FAR * This);
  4834.         
  4835.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4836.             ITypeLib2 __RPC_FAR * This);
  4837.         
  4838.         /* [local] */ UINT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  4839.             ITypeLib2 __RPC_FAR * This);
  4840.         
  4841.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  4842.             ITypeLib2 __RPC_FAR * This,
  4843.             /* [in] */ UINT index,
  4844.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  4845.         
  4846.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoType )( 
  4847.             ITypeLib2 __RPC_FAR * This,
  4848.             /* [in] */ UINT index,
  4849.             /* [out] */ TYPEKIND __RPC_FAR *pTKind);
  4850.         
  4851.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoOfGuid )( 
  4852.             ITypeLib2 __RPC_FAR * This,
  4853.             /* [in] */ REFGUID guid,
  4854.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTinfo);
  4855.         
  4856.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLibAttr )( 
  4857.             ITypeLib2 __RPC_FAR * This,
  4858.             /* [out] */ TLIBATTR __RPC_FAR *__RPC_FAR *ppTLibAttr);
  4859.         
  4860.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeComp )( 
  4861.             ITypeLib2 __RPC_FAR * This,
  4862.             /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp);
  4863.         
  4864.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDocumentation )( 
  4865.             ITypeLib2 __RPC_FAR * This,
  4866.             /* [in] */ INT index,
  4867.             /* [out] */ BSTR __RPC_FAR *pBstrName,
  4868.             /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  4869.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  4870.             /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  4871.         
  4872.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsName )( 
  4873.             ITypeLib2 __RPC_FAR * This,
  4874.             /* [out][in] */ LPOLESTR szNameBuf,
  4875.             /* [in] */ ULONG lHashVal,
  4876.             /* [out] */ BOOL __RPC_FAR *pfName);
  4877.         
  4878.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindName )( 
  4879.             ITypeLib2 __RPC_FAR * This,
  4880.             /* [out][in] */ LPOLESTR szNameBuf,
  4881.             /* [in] */ ULONG lHashVal,
  4882.             /* [length_is][size_is][out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  4883.             /* [length_is][size_is][out] */ MEMBERID __RPC_FAR *rgMemId,
  4884.             /* [out][in] */ USHORT __RPC_FAR *pcFound);
  4885.         
  4886.         /* [local] */ void ( STDMETHODCALLTYPE __RPC_FAR *ReleaseTLibAttr )( 
  4887.             ITypeLib2 __RPC_FAR * This,
  4888.             /* [in] */ TLIBATTR __RPC_FAR *pTLibAttr);
  4889.         
  4890.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCustData )( 
  4891.             ITypeLib2 __RPC_FAR * This,
  4892.             /* [in] */ REFGUID guid,
  4893.             /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4894.         
  4895.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLibStatistics )( 
  4896.             ITypeLib2 __RPC_FAR * This,
  4897.             /* [out] */ ULONG __RPC_FAR *pcUniqueNames,
  4898.             /* [out] */ ULONG __RPC_FAR *pcchUniqueNames);
  4899.         
  4900.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDocumentation2 )( 
  4901.             ITypeLib2 __RPC_FAR * This,
  4902.             /* [in] */ INT index,
  4903.             /* [in] */ LCID lcid,
  4904.             /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  4905.             /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  4906.             /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll);
  4907.         
  4908.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAllCustData )( 
  4909.             ITypeLib2 __RPC_FAR * This,
  4910.             /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  4911.         
  4912.         END_INTERFACE
  4913.     } ITypeLib2Vtbl;
  4914.  
  4915.     interface ITypeLib2
  4916.     {
  4917.         CONST_VTBL struct ITypeLib2Vtbl __RPC_FAR *lpVtbl;
  4918.     };
  4919.  
  4920.     
  4921.  
  4922. #ifdef COBJMACROS
  4923.  
  4924.  
  4925. #define ITypeLib2_QueryInterface(This,riid,ppvObject)    \
  4926.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4927.  
  4928. #define ITypeLib2_AddRef(This)    \
  4929.     (This)->lpVtbl -> AddRef(This)
  4930.  
  4931. #define ITypeLib2_Release(This)    \
  4932.     (This)->lpVtbl -> Release(This)
  4933.  
  4934.  
  4935. #define ITypeLib2_GetTypeInfoCount(This)    \
  4936.     (This)->lpVtbl -> GetTypeInfoCount(This)
  4937.  
  4938. #define ITypeLib2_GetTypeInfo(This,index,ppTInfo)    \
  4939.     (This)->lpVtbl -> GetTypeInfo(This,index,ppTInfo)
  4940.  
  4941. #define ITypeLib2_GetTypeInfoType(This,index,pTKind)    \
  4942.     (This)->lpVtbl -> GetTypeInfoType(This,index,pTKind)
  4943.  
  4944. #define ITypeLib2_GetTypeInfoOfGuid(This,guid,ppTinfo)    \
  4945.     (This)->lpVtbl -> GetTypeInfoOfGuid(This,guid,ppTinfo)
  4946.  
  4947. #define ITypeLib2_GetLibAttr(This,ppTLibAttr)    \
  4948.     (This)->lpVtbl -> GetLibAttr(This,ppTLibAttr)
  4949.  
  4950. #define ITypeLib2_GetTypeComp(This,ppTComp)    \
  4951.     (This)->lpVtbl -> GetTypeComp(This,ppTComp)
  4952.  
  4953. #define ITypeLib2_GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile)    \
  4954.     (This)->lpVtbl -> GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile)
  4955.  
  4956. #define ITypeLib2_IsName(This,szNameBuf,lHashVal,pfName)    \
  4957.     (This)->lpVtbl -> IsName(This,szNameBuf,lHashVal,pfName)
  4958.  
  4959. #define ITypeLib2_FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound)    \
  4960.     (This)->lpVtbl -> FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound)
  4961.  
  4962. #define ITypeLib2_ReleaseTLibAttr(This,pTLibAttr)    \
  4963.     (This)->lpVtbl -> ReleaseTLibAttr(This,pTLibAttr)
  4964.  
  4965.  
  4966. #define ITypeLib2_GetCustData(This,guid,pVarVal)    \
  4967.     (This)->lpVtbl -> GetCustData(This,guid,pVarVal)
  4968.  
  4969. #define ITypeLib2_GetLibStatistics(This,pcUniqueNames,pcchUniqueNames)    \
  4970.     (This)->lpVtbl -> GetLibStatistics(This,pcUniqueNames,pcchUniqueNames)
  4971.  
  4972. #define ITypeLib2_GetDocumentation2(This,index,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll)    \
  4973.     (This)->lpVtbl -> GetDocumentation2(This,index,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll)
  4974.  
  4975. #define ITypeLib2_GetAllCustData(This,pCustData)    \
  4976.     (This)->lpVtbl -> GetAllCustData(This,pCustData)
  4977.  
  4978. #endif /* COBJMACROS */
  4979.  
  4980.  
  4981. #endif     /* C style interface */
  4982.  
  4983.  
  4984.  
  4985. HRESULT STDMETHODCALLTYPE ITypeLib2_GetCustData_Proxy( 
  4986.     ITypeLib2 __RPC_FAR * This,
  4987.     /* [in] */ REFGUID guid,
  4988.     /* [out] */ VARIANT __RPC_FAR *pVarVal);
  4989.  
  4990.  
  4991. void __RPC_STUB ITypeLib2_GetCustData_Stub(
  4992.     IRpcStubBuffer *This,
  4993.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4994.     PRPC_MESSAGE _pRpcMessage,
  4995.     DWORD *_pdwStubPhase);
  4996.  
  4997.  
  4998. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib2_RemoteGetLibStatistics_Proxy( 
  4999.     ITypeLib2 __RPC_FAR * This,
  5000.     /* [out] */ ULONG __RPC_FAR *pcUniqueNames,
  5001.     /* [out] */ ULONG __RPC_FAR *pcchUniqueNames);
  5002.  
  5003.  
  5004. void __RPC_STUB ITypeLib2_RemoteGetLibStatistics_Stub(
  5005.     IRpcStubBuffer *This,
  5006.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5007.     PRPC_MESSAGE _pRpcMessage,
  5008.     DWORD *_pdwStubPhase);
  5009.  
  5010.  
  5011. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib2_RemoteGetDocumentation2_Proxy( 
  5012.     ITypeLib2 __RPC_FAR * This,
  5013.     /* [in] */ INT index,
  5014.     /* [in] */ LCID lcid,
  5015.     /* [in] */ DWORD refPtrFlags,
  5016.     /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  5017.     /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  5018.     /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll);
  5019.  
  5020.  
  5021. void __RPC_STUB ITypeLib2_RemoteGetDocumentation2_Stub(
  5022.     IRpcStubBuffer *This,
  5023.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5024.     PRPC_MESSAGE _pRpcMessage,
  5025.     DWORD *_pdwStubPhase);
  5026.  
  5027.  
  5028. HRESULT STDMETHODCALLTYPE ITypeLib2_GetAllCustData_Proxy( 
  5029.     ITypeLib2 __RPC_FAR * This,
  5030.     /* [out] */ CUSTDATA __RPC_FAR *pCustData);
  5031.  
  5032.  
  5033. void __RPC_STUB ITypeLib2_GetAllCustData_Stub(
  5034.     IRpcStubBuffer *This,
  5035.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5036.     PRPC_MESSAGE _pRpcMessage,
  5037.     DWORD *_pdwStubPhase);
  5038.  
  5039.  
  5040.  
  5041. #endif     /* __ITypeLib2_INTERFACE_DEFINED__ */
  5042.  
  5043.  
  5044. #ifndef __ITypeChangeEvents_INTERFACE_DEFINED__
  5045. #define __ITypeChangeEvents_INTERFACE_DEFINED__
  5046.  
  5047. /****************************************
  5048.  * Generated header for interface: ITypeChangeEvents
  5049.  * at Thu Sep 11 10:57:08 1997
  5050.  * using MIDL 3.03.0110
  5051.  ****************************************/
  5052. /* [local][unique][uuid][object] */ 
  5053.  
  5054.  
  5055. typedef /* [unique] */ ITypeChangeEvents __RPC_FAR *LPTYPECHANGEEVENTS;
  5056.  
  5057. typedef 
  5058. enum tagCHANGEKIND
  5059.     {    CHANGEKIND_ADDMEMBER    = 0,
  5060.     CHANGEKIND_DELETEMEMBER    = CHANGEKIND_ADDMEMBER + 1,
  5061.     CHANGEKIND_SETNAMES    = CHANGEKIND_DELETEMEMBER + 1,
  5062.     CHANGEKIND_SETDOCUMENTATION    = CHANGEKIND_SETNAMES + 1,
  5063.     CHANGEKIND_GENERAL    = CHANGEKIND_SETDOCUMENTATION + 1,
  5064.     CHANGEKIND_INVALIDATE    = CHANGEKIND_GENERAL + 1,
  5065.     CHANGEKIND_CHANGEFAILED    = CHANGEKIND_INVALIDATE + 1,
  5066.     CHANGEKIND_MAX    = CHANGEKIND_CHANGEFAILED + 1
  5067.     }    CHANGEKIND;
  5068.  
  5069.  
  5070. EXTERN_C const IID IID_ITypeChangeEvents;
  5071.  
  5072. #if defined(__cplusplus) && !defined(CINTERFACE)
  5073.     
  5074.     MIDL_INTERFACE("00020410-0000-0000-C000-000000000046")
  5075.     ITypeChangeEvents : public IUnknown
  5076.     {
  5077.     public:
  5078.         virtual HRESULT STDMETHODCALLTYPE RequestTypeChange( 
  5079.             /* [in] */ CHANGEKIND changeKind,
  5080.             /* [in] */ ITypeInfo __RPC_FAR *pTInfoBefore,
  5081.             /* [in] */ LPOLESTR pStrName,
  5082.             /* [out] */ INT __RPC_FAR *pfCancel) = 0;
  5083.         
  5084.         virtual HRESULT STDMETHODCALLTYPE AfterTypeChange( 
  5085.             /* [in] */ CHANGEKIND changeKind,
  5086.             /* [in] */ ITypeInfo __RPC_FAR *pTInfoAfter,
  5087.             /* [in] */ LPOLESTR pStrName) = 0;
  5088.         
  5089.     };
  5090.     
  5091. #else     /* C style interface */
  5092.  
  5093.     typedef struct ITypeChangeEventsVtbl
  5094.     {
  5095.         BEGIN_INTERFACE
  5096.         
  5097.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5098.             ITypeChangeEvents __RPC_FAR * This,
  5099.             /* [in] */ REFIID riid,
  5100.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5101.         
  5102.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5103.             ITypeChangeEvents __RPC_FAR * This);
  5104.         
  5105.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5106.             ITypeChangeEvents __RPC_FAR * This);
  5107.         
  5108.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RequestTypeChange )( 
  5109.             ITypeChangeEvents __RPC_FAR * This,
  5110.             /* [in] */ CHANGEKIND changeKind,
  5111.             /* [in] */ ITypeInfo __RPC_FAR *pTInfoBefore,
  5112.             /* [in] */ LPOLESTR pStrName,
  5113.             /* [out] */ INT __RPC_FAR *pfCancel);
  5114.         
  5115.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AfterTypeChange )( 
  5116.             ITypeChangeEvents __RPC_FAR * This,
  5117.             /* [in] */ CHANGEKIND changeKind,
  5118.             /* [in] */ ITypeInfo __RPC_FAR *pTInfoAfter,
  5119.             /* [in] */ LPOLESTR pStrName);
  5120.         
  5121.         END_INTERFACE
  5122.     } ITypeChangeEventsVtbl;
  5123.  
  5124.     interface ITypeChangeEvents
  5125.     {
  5126.         CONST_VTBL struct ITypeChangeEventsVtbl __RPC_FAR *lpVtbl;
  5127.     };
  5128.  
  5129.     
  5130.  
  5131. #ifdef COBJMACROS
  5132.  
  5133.  
  5134. #define ITypeChangeEvents_QueryInterface(This,riid,ppvObject)    \
  5135.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5136.  
  5137. #define ITypeChangeEvents_AddRef(This)    \
  5138.     (This)->lpVtbl -> AddRef(This)
  5139.  
  5140. #define ITypeChangeEvents_Release(This)    \
  5141.     (This)->lpVtbl -> Release(This)
  5142.  
  5143.  
  5144. #define ITypeChangeEvents_RequestTypeChange(This,changeKind,pTInfoBefore,pStrName,pfCancel)    \
  5145.     (This)->lpVtbl -> RequestTypeChange(This,changeKind,pTInfoBefore,pStrName,pfCancel)
  5146.  
  5147. #define ITypeChangeEvents_AfterTypeChange(This,changeKind,pTInfoAfter,pStrName)    \
  5148.     (This)->lpVtbl -> AfterTypeChange(This,changeKind,pTInfoAfter,pStrName)
  5149.  
  5150. #endif /* COBJMACROS */
  5151.  
  5152.  
  5153. #endif     /* C style interface */
  5154.  
  5155.  
  5156.  
  5157. HRESULT STDMETHODCALLTYPE ITypeChangeEvents_RequestTypeChange_Proxy( 
  5158.     ITypeChangeEvents __RPC_FAR * This,
  5159.     /* [in] */ CHANGEKIND changeKind,
  5160.     /* [in] */ ITypeInfo __RPC_FAR *pTInfoBefore,
  5161.     /* [in] */ LPOLESTR pStrName,
  5162.     /* [out] */ INT __RPC_FAR *pfCancel);
  5163.  
  5164.  
  5165. void __RPC_STUB ITypeChangeEvents_RequestTypeChange_Stub(
  5166.     IRpcStubBuffer *This,
  5167.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5168.     PRPC_MESSAGE _pRpcMessage,
  5169.     DWORD *_pdwStubPhase);
  5170.  
  5171.  
  5172. HRESULT STDMETHODCALLTYPE ITypeChangeEvents_AfterTypeChange_Proxy( 
  5173.     ITypeChangeEvents __RPC_FAR * This,
  5174.     /* [in] */ CHANGEKIND changeKind,
  5175.     /* [in] */ ITypeInfo __RPC_FAR *pTInfoAfter,
  5176.     /* [in] */ LPOLESTR pStrName);
  5177.  
  5178.  
  5179. void __RPC_STUB ITypeChangeEvents_AfterTypeChange_Stub(
  5180.     IRpcStubBuffer *This,
  5181.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5182.     PRPC_MESSAGE _pRpcMessage,
  5183.     DWORD *_pdwStubPhase);
  5184.  
  5185.  
  5186.  
  5187. #endif     /* __ITypeChangeEvents_INTERFACE_DEFINED__ */
  5188.  
  5189.  
  5190. #ifndef __IErrorInfo_INTERFACE_DEFINED__
  5191. #define __IErrorInfo_INTERFACE_DEFINED__
  5192.  
  5193. /****************************************
  5194.  * Generated header for interface: IErrorInfo
  5195.  * at Thu Sep 11 10:57:08 1997
  5196.  * using MIDL 3.03.0110
  5197.  ****************************************/
  5198. /* [unique][uuid][object] */ 
  5199.  
  5200.  
  5201. typedef /* [unique] */ IErrorInfo __RPC_FAR *LPERRORINFO;
  5202.  
  5203.  
  5204. EXTERN_C const IID IID_IErrorInfo;
  5205.  
  5206. #if defined(__cplusplus) && !defined(CINTERFACE)
  5207.     
  5208.     MIDL_INTERFACE("1CF2B120-547D-101B-8E65-08002B2BD119")
  5209.     IErrorInfo : public IUnknown
  5210.     {
  5211.     public:
  5212.         virtual HRESULT STDMETHODCALLTYPE GetGUID( 
  5213.             /* [out] */ GUID __RPC_FAR *pGUID) = 0;
  5214.         
  5215.         virtual HRESULT STDMETHODCALLTYPE GetSource( 
  5216.             /* [out] */ BSTR __RPC_FAR *pBstrSource) = 0;
  5217.         
  5218.         virtual HRESULT STDMETHODCALLTYPE GetDescription( 
  5219.             /* [out] */ BSTR __RPC_FAR *pBstrDescription) = 0;
  5220.         
  5221.         virtual HRESULT STDMETHODCALLTYPE GetHelpFile( 
  5222.             /* [out] */ BSTR __RPC_FAR *pBstrHelpFile) = 0;
  5223.         
  5224.         virtual HRESULT STDMETHODCALLTYPE GetHelpContext( 
  5225.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext) = 0;
  5226.         
  5227.     };
  5228.     
  5229. #else     /* C style interface */
  5230.  
  5231.     typedef struct IErrorInfoVtbl
  5232.     {
  5233.         BEGIN_INTERFACE
  5234.         
  5235.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5236.             IErrorInfo __RPC_FAR * This,
  5237.             /* [in] */ REFIID riid,
  5238.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5239.         
  5240.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5241.             IErrorInfo __RPC_FAR * This);
  5242.         
  5243.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5244.             IErrorInfo __RPC_FAR * This);
  5245.         
  5246.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetGUID )( 
  5247.             IErrorInfo __RPC_FAR * This,
  5248.             /* [out] */ GUID __RPC_FAR *pGUID);
  5249.         
  5250.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSource )( 
  5251.             IErrorInfo __RPC_FAR * This,
  5252.             /* [out] */ BSTR __RPC_FAR *pBstrSource);
  5253.         
  5254.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDescription )( 
  5255.             IErrorInfo __RPC_FAR * This,
  5256.             /* [out] */ BSTR __RPC_FAR *pBstrDescription);
  5257.         
  5258.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetHelpFile )( 
  5259.             IErrorInfo __RPC_FAR * This,
  5260.             /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  5261.         
  5262.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetHelpContext )( 
  5263.             IErrorInfo __RPC_FAR * This,
  5264.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext);
  5265.         
  5266.         END_INTERFACE
  5267.     } IErrorInfoVtbl;
  5268.  
  5269.     interface IErrorInfo
  5270.     {
  5271.         CONST_VTBL struct IErrorInfoVtbl __RPC_FAR *lpVtbl;
  5272.     };
  5273.  
  5274.     
  5275.  
  5276. #ifdef COBJMACROS
  5277.  
  5278.  
  5279. #define IErrorInfo_QueryInterface(This,riid,ppvObject)    \
  5280.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5281.  
  5282. #define IErrorInfo_AddRef(This)    \
  5283.     (This)->lpVtbl -> AddRef(This)
  5284.  
  5285. #define IErrorInfo_Release(This)    \
  5286.     (This)->lpVtbl -> Release(This)
  5287.  
  5288.  
  5289. #define IErrorInfo_GetGUID(This,pGUID)    \
  5290.     (This)->lpVtbl -> GetGUID(This,pGUID)
  5291.  
  5292. #define IErrorInfo_GetSource(This,pBstrSource)    \
  5293.     (This)->lpVtbl -> GetSource(This,pBstrSource)
  5294.  
  5295. #define IErrorInfo_GetDescription(This,pBstrDescription)    \
  5296.     (This)->lpVtbl -> GetDescription(This,pBstrDescription)
  5297.  
  5298. #define IErrorInfo_GetHelpFile(This,pBstrHelpFile)    \
  5299.     (This)->lpVtbl -> GetHelpFile(This,pBstrHelpFile)
  5300.  
  5301. #define IErrorInfo_GetHelpContext(This,pdwHelpContext)    \
  5302.     (This)->lpVtbl -> GetHelpContext(This,pdwHelpContext)
  5303.  
  5304. #endif /* COBJMACROS */
  5305.  
  5306.  
  5307. #endif     /* C style interface */
  5308.  
  5309.  
  5310.  
  5311. HRESULT STDMETHODCALLTYPE IErrorInfo_GetGUID_Proxy( 
  5312.     IErrorInfo __RPC_FAR * This,
  5313.     /* [out] */ GUID __RPC_FAR *pGUID);
  5314.  
  5315.  
  5316. void __RPC_STUB IErrorInfo_GetGUID_Stub(
  5317.     IRpcStubBuffer *This,
  5318.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5319.     PRPC_MESSAGE _pRpcMessage,
  5320.     DWORD *_pdwStubPhase);
  5321.  
  5322.  
  5323. HRESULT STDMETHODCALLTYPE IErrorInfo_GetSource_Proxy( 
  5324.     IErrorInfo __RPC_FAR * This,
  5325.     /* [out] */ BSTR __RPC_FAR *pBstrSource);
  5326.  
  5327.  
  5328. void __RPC_STUB IErrorInfo_GetSource_Stub(
  5329.     IRpcStubBuffer *This,
  5330.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5331.     PRPC_MESSAGE _pRpcMessage,
  5332.     DWORD *_pdwStubPhase);
  5333.  
  5334.  
  5335. HRESULT STDMETHODCALLTYPE IErrorInfo_GetDescription_Proxy( 
  5336.     IErrorInfo __RPC_FAR * This,
  5337.     /* [out] */ BSTR __RPC_FAR *pBstrDescription);
  5338.  
  5339.  
  5340. void __RPC_STUB IErrorInfo_GetDescription_Stub(
  5341.     IRpcStubBuffer *This,
  5342.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5343.     PRPC_MESSAGE _pRpcMessage,
  5344.     DWORD *_pdwStubPhase);
  5345.  
  5346.  
  5347. HRESULT STDMETHODCALLTYPE IErrorInfo_GetHelpFile_Proxy( 
  5348.     IErrorInfo __RPC_FAR * This,
  5349.     /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  5350.  
  5351.  
  5352. void __RPC_STUB IErrorInfo_GetHelpFile_Stub(
  5353.     IRpcStubBuffer *This,
  5354.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5355.     PRPC_MESSAGE _pRpcMessage,
  5356.     DWORD *_pdwStubPhase);
  5357.  
  5358.  
  5359. HRESULT STDMETHODCALLTYPE IErrorInfo_GetHelpContext_Proxy( 
  5360.     IErrorInfo __RPC_FAR * This,
  5361.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext);
  5362.  
  5363.  
  5364. void __RPC_STUB IErrorInfo_GetHelpContext_Stub(
  5365.     IRpcStubBuffer *This,
  5366.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5367.     PRPC_MESSAGE _pRpcMessage,
  5368.     DWORD *_pdwStubPhase);
  5369.  
  5370.  
  5371.  
  5372. #endif     /* __IErrorInfo_INTERFACE_DEFINED__ */
  5373.  
  5374.  
  5375. #ifndef __ICreateErrorInfo_INTERFACE_DEFINED__
  5376. #define __ICreateErrorInfo_INTERFACE_DEFINED__
  5377.  
  5378. /****************************************
  5379.  * Generated header for interface: ICreateErrorInfo
  5380.  * at Thu Sep 11 10:57:08 1997
  5381.  * using MIDL 3.03.0110
  5382.  ****************************************/
  5383. /* [unique][uuid][object] */ 
  5384.  
  5385.  
  5386. typedef /* [unique] */ ICreateErrorInfo __RPC_FAR *LPCREATEERRORINFO;
  5387.  
  5388.  
  5389. EXTERN_C const IID IID_ICreateErrorInfo;
  5390.  
  5391. #if defined(__cplusplus) && !defined(CINTERFACE)
  5392.     
  5393.     MIDL_INTERFACE("22F03340-547D-101B-8E65-08002B2BD119")
  5394.     ICreateErrorInfo : public IUnknown
  5395.     {
  5396.     public:
  5397.         virtual HRESULT STDMETHODCALLTYPE SetGUID( 
  5398.             /* [in] */ REFGUID rguid) = 0;
  5399.         
  5400.         virtual HRESULT STDMETHODCALLTYPE SetSource( 
  5401.             /* [in] */ LPOLESTR szSource) = 0;
  5402.         
  5403.         virtual HRESULT STDMETHODCALLTYPE SetDescription( 
  5404.             /* [in] */ LPOLESTR szDescription) = 0;
  5405.         
  5406.         virtual HRESULT STDMETHODCALLTYPE SetHelpFile( 
  5407.             /* [in] */ LPOLESTR szHelpFile) = 0;
  5408.         
  5409.         virtual HRESULT STDMETHODCALLTYPE SetHelpContext( 
  5410.             /* [in] */ DWORD dwHelpContext) = 0;
  5411.         
  5412.     };
  5413.     
  5414. #else     /* C style interface */
  5415.  
  5416.     typedef struct ICreateErrorInfoVtbl
  5417.     {
  5418.         BEGIN_INTERFACE
  5419.         
  5420.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5421.             ICreateErrorInfo __RPC_FAR * This,
  5422.             /* [in] */ REFIID riid,
  5423.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5424.         
  5425.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5426.             ICreateErrorInfo __RPC_FAR * This);
  5427.         
  5428.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5429.             ICreateErrorInfo __RPC_FAR * This);
  5430.         
  5431.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGUID )( 
  5432.             ICreateErrorInfo __RPC_FAR * This,
  5433.             /* [in] */ REFGUID rguid);
  5434.         
  5435.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSource )( 
  5436.             ICreateErrorInfo __RPC_FAR * This,
  5437.             /* [in] */ LPOLESTR szSource);
  5438.         
  5439.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDescription )( 
  5440.             ICreateErrorInfo __RPC_FAR * This,
  5441.             /* [in] */ LPOLESTR szDescription);
  5442.         
  5443.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpFile )( 
  5444.             ICreateErrorInfo __RPC_FAR * This,
  5445.             /* [in] */ LPOLESTR szHelpFile);
  5446.         
  5447.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetHelpContext )( 
  5448.             ICreateErrorInfo __RPC_FAR * This,
  5449.             /* [in] */ DWORD dwHelpContext);
  5450.         
  5451.         END_INTERFACE
  5452.     } ICreateErrorInfoVtbl;
  5453.  
  5454.     interface ICreateErrorInfo
  5455.     {
  5456.         CONST_VTBL struct ICreateErrorInfoVtbl __RPC_FAR *lpVtbl;
  5457.     };
  5458.  
  5459.     
  5460.  
  5461. #ifdef COBJMACROS
  5462.  
  5463.  
  5464. #define ICreateErrorInfo_QueryInterface(This,riid,ppvObject)    \
  5465.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5466.  
  5467. #define ICreateErrorInfo_AddRef(This)    \
  5468.     (This)->lpVtbl -> AddRef(This)
  5469.  
  5470. #define ICreateErrorInfo_Release(This)    \
  5471.     (This)->lpVtbl -> Release(This)
  5472.  
  5473.  
  5474. #define ICreateErrorInfo_SetGUID(This,rguid)    \
  5475.     (This)->lpVtbl -> SetGUID(This,rguid)
  5476.  
  5477. #define ICreateErrorInfo_SetSource(This,szSource)    \
  5478.     (This)->lpVtbl -> SetSource(This,szSource)
  5479.  
  5480. #define ICreateErrorInfo_SetDescription(This,szDescription)    \
  5481.     (This)->lpVtbl -> SetDescription(This,szDescription)
  5482.  
  5483. #define ICreateErrorInfo_SetHelpFile(This,szHelpFile)    \
  5484.     (This)->lpVtbl -> SetHelpFile(This,szHelpFile)
  5485.  
  5486. #define ICreateErrorInfo_SetHelpContext(This,dwHelpContext)    \
  5487.     (This)->lpVtbl -> SetHelpContext(This,dwHelpContext)
  5488.  
  5489. #endif /* COBJMACROS */
  5490.  
  5491.  
  5492. #endif     /* C style interface */
  5493.  
  5494.  
  5495.  
  5496. HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetGUID_Proxy( 
  5497.     ICreateErrorInfo __RPC_FAR * This,
  5498.     /* [in] */ REFGUID rguid);
  5499.  
  5500.  
  5501. void __RPC_STUB ICreateErrorInfo_SetGUID_Stub(
  5502.     IRpcStubBuffer *This,
  5503.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5504.     PRPC_MESSAGE _pRpcMessage,
  5505.     DWORD *_pdwStubPhase);
  5506.  
  5507.  
  5508. HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetSource_Proxy( 
  5509.     ICreateErrorInfo __RPC_FAR * This,
  5510.     /* [in] */ LPOLESTR szSource);
  5511.  
  5512.  
  5513. void __RPC_STUB ICreateErrorInfo_SetSource_Stub(
  5514.     IRpcStubBuffer *This,
  5515.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5516.     PRPC_MESSAGE _pRpcMessage,
  5517.     DWORD *_pdwStubPhase);
  5518.  
  5519.  
  5520. HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetDescription_Proxy( 
  5521.     ICreateErrorInfo __RPC_FAR * This,
  5522.     /* [in] */ LPOLESTR szDescription);
  5523.  
  5524.  
  5525. void __RPC_STUB ICreateErrorInfo_SetDescription_Stub(
  5526.     IRpcStubBuffer *This,
  5527.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5528.     PRPC_MESSAGE _pRpcMessage,
  5529.     DWORD *_pdwStubPhase);
  5530.  
  5531.  
  5532. HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetHelpFile_Proxy( 
  5533.     ICreateErrorInfo __RPC_FAR * This,
  5534.     /* [in] */ LPOLESTR szHelpFile);
  5535.  
  5536.  
  5537. void __RPC_STUB ICreateErrorInfo_SetHelpFile_Stub(
  5538.     IRpcStubBuffer *This,
  5539.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5540.     PRPC_MESSAGE _pRpcMessage,
  5541.     DWORD *_pdwStubPhase);
  5542.  
  5543.  
  5544. HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetHelpContext_Proxy( 
  5545.     ICreateErrorInfo __RPC_FAR * This,
  5546.     /* [in] */ DWORD dwHelpContext);
  5547.  
  5548.  
  5549. void __RPC_STUB ICreateErrorInfo_SetHelpContext_Stub(
  5550.     IRpcStubBuffer *This,
  5551.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5552.     PRPC_MESSAGE _pRpcMessage,
  5553.     DWORD *_pdwStubPhase);
  5554.  
  5555.  
  5556.  
  5557. #endif     /* __ICreateErrorInfo_INTERFACE_DEFINED__ */
  5558.  
  5559.  
  5560. #ifndef __ISupportErrorInfo_INTERFACE_DEFINED__
  5561. #define __ISupportErrorInfo_INTERFACE_DEFINED__
  5562.  
  5563. /****************************************
  5564.  * Generated header for interface: ISupportErrorInfo
  5565.  * at Thu Sep 11 10:57:08 1997
  5566.  * using MIDL 3.03.0110
  5567.  ****************************************/
  5568. /* [unique][uuid][object] */ 
  5569.  
  5570.  
  5571. typedef /* [unique] */ ISupportErrorInfo __RPC_FAR *LPSUPPORTERRORINFO;
  5572.  
  5573.  
  5574. EXTERN_C const IID IID_ISupportErrorInfo;
  5575.  
  5576. #if defined(__cplusplus) && !defined(CINTERFACE)
  5577.     
  5578.     MIDL_INTERFACE("DF0B3D60-548F-101B-8E65-08002B2BD119")
  5579.     ISupportErrorInfo : public IUnknown
  5580.     {
  5581.     public:
  5582.         virtual HRESULT STDMETHODCALLTYPE InterfaceSupportsErrorInfo( 
  5583.             /* [in] */ REFIID riid) = 0;
  5584.         
  5585.     };
  5586.     
  5587. #else     /* C style interface */
  5588.  
  5589.     typedef struct ISupportErrorInfoVtbl
  5590.     {
  5591.         BEGIN_INTERFACE
  5592.         
  5593.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5594.             ISupportErrorInfo __RPC_FAR * This,
  5595.             /* [in] */ REFIID riid,
  5596.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5597.         
  5598.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5599.             ISupportErrorInfo __RPC_FAR * This);
  5600.         
  5601.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5602.             ISupportErrorInfo __RPC_FAR * This);
  5603.         
  5604.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InterfaceSupportsErrorInfo )( 
  5605.             ISupportErrorInfo __RPC_FAR * This,
  5606.             /* [in] */ REFIID riid);
  5607.         
  5608.         END_INTERFACE
  5609.     } ISupportErrorInfoVtbl;
  5610.  
  5611.     interface ISupportErrorInfo
  5612.     {
  5613.         CONST_VTBL struct ISupportErrorInfoVtbl __RPC_FAR *lpVtbl;
  5614.     };
  5615.  
  5616.     
  5617.  
  5618. #ifdef COBJMACROS
  5619.  
  5620.  
  5621. #define ISupportErrorInfo_QueryInterface(This,riid,ppvObject)    \
  5622.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5623.  
  5624. #define ISupportErrorInfo_AddRef(This)    \
  5625.     (This)->lpVtbl -> AddRef(This)
  5626.  
  5627. #define ISupportErrorInfo_Release(This)    \
  5628.     (This)->lpVtbl -> Release(This)
  5629.  
  5630.  
  5631. #define ISupportErrorInfo_InterfaceSupportsErrorInfo(This,riid)    \
  5632.     (This)->lpVtbl -> InterfaceSupportsErrorInfo(This,riid)
  5633.  
  5634. #endif /* COBJMACROS */
  5635.  
  5636.  
  5637. #endif     /* C style interface */
  5638.  
  5639.  
  5640.  
  5641. HRESULT STDMETHODCALLTYPE ISupportErrorInfo_InterfaceSupportsErrorInfo_Proxy( 
  5642.     ISupportErrorInfo __RPC_FAR * This,
  5643.     /* [in] */ REFIID riid);
  5644.  
  5645.  
  5646. void __RPC_STUB ISupportErrorInfo_InterfaceSupportsErrorInfo_Stub(
  5647.     IRpcStubBuffer *This,
  5648.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5649.     PRPC_MESSAGE _pRpcMessage,
  5650.     DWORD *_pdwStubPhase);
  5651.  
  5652.  
  5653.  
  5654. #endif     /* __ISupportErrorInfo_INTERFACE_DEFINED__ */
  5655.  
  5656.  
  5657. #ifndef __ITypeFactory_INTERFACE_DEFINED__
  5658. #define __ITypeFactory_INTERFACE_DEFINED__
  5659.  
  5660. /****************************************
  5661.  * Generated header for interface: ITypeFactory
  5662.  * at Thu Sep 11 10:57:08 1997
  5663.  * using MIDL 3.03.0110
  5664.  ****************************************/
  5665. /* [uuid][object] */ 
  5666.  
  5667.  
  5668.  
  5669. EXTERN_C const IID IID_ITypeFactory;
  5670.  
  5671. #if defined(__cplusplus) && !defined(CINTERFACE)
  5672.     
  5673.     MIDL_INTERFACE("0000002E-0000-0000-C000-000000000046")
  5674.     ITypeFactory : public IUnknown
  5675.     {
  5676.     public:
  5677.         virtual HRESULT STDMETHODCALLTYPE CreateFromTypeInfo( 
  5678.             /* [in] */ ITypeInfo __RPC_FAR *pTypeInfo,
  5679.             /* [in] */ REFIID riid,
  5680.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppv) = 0;
  5681.         
  5682.     };
  5683.     
  5684. #else     /* C style interface */
  5685.  
  5686.     typedef struct ITypeFactoryVtbl
  5687.     {
  5688.         BEGIN_INTERFACE
  5689.         
  5690.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5691.             ITypeFactory __RPC_FAR * This,
  5692.             /* [in] */ REFIID riid,
  5693.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5694.         
  5695.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5696.             ITypeFactory __RPC_FAR * This);
  5697.         
  5698.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5699.             ITypeFactory __RPC_FAR * This);
  5700.         
  5701.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateFromTypeInfo )( 
  5702.             ITypeFactory __RPC_FAR * This,
  5703.             /* [in] */ ITypeInfo __RPC_FAR *pTypeInfo,
  5704.             /* [in] */ REFIID riid,
  5705.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppv);
  5706.         
  5707.         END_INTERFACE
  5708.     } ITypeFactoryVtbl;
  5709.  
  5710.     interface ITypeFactory
  5711.     {
  5712.         CONST_VTBL struct ITypeFactoryVtbl __RPC_FAR *lpVtbl;
  5713.     };
  5714.  
  5715.     
  5716.  
  5717. #ifdef COBJMACROS
  5718.  
  5719.  
  5720. #define ITypeFactory_QueryInterface(This,riid,ppvObject)    \
  5721.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5722.  
  5723. #define ITypeFactory_AddRef(This)    \
  5724.     (This)->lpVtbl -> AddRef(This)
  5725.  
  5726. #define ITypeFactory_Release(This)    \
  5727.     (This)->lpVtbl -> Release(This)
  5728.  
  5729.  
  5730. #define ITypeFactory_CreateFromTypeInfo(This,pTypeInfo,riid,ppv)    \
  5731.     (This)->lpVtbl -> CreateFromTypeInfo(This,pTypeInfo,riid,ppv)
  5732.  
  5733. #endif /* COBJMACROS */
  5734.  
  5735.  
  5736. #endif     /* C style interface */
  5737.  
  5738.  
  5739.  
  5740. HRESULT STDMETHODCALLTYPE ITypeFactory_CreateFromTypeInfo_Proxy( 
  5741.     ITypeFactory __RPC_FAR * This,
  5742.     /* [in] */ ITypeInfo __RPC_FAR *pTypeInfo,
  5743.     /* [in] */ REFIID riid,
  5744.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppv);
  5745.  
  5746.  
  5747. void __RPC_STUB ITypeFactory_CreateFromTypeInfo_Stub(
  5748.     IRpcStubBuffer *This,
  5749.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5750.     PRPC_MESSAGE _pRpcMessage,
  5751.     DWORD *_pdwStubPhase);
  5752.  
  5753.  
  5754.  
  5755. #endif     /* __ITypeFactory_INTERFACE_DEFINED__ */
  5756.  
  5757.  
  5758. #ifndef __ITypeMarshal_INTERFACE_DEFINED__
  5759. #define __ITypeMarshal_INTERFACE_DEFINED__
  5760.  
  5761. /****************************************
  5762.  * Generated header for interface: ITypeMarshal
  5763.  * at Thu Sep 11 10:57:08 1997
  5764.  * using MIDL 3.03.0110
  5765.  ****************************************/
  5766. /* [uuid][object][local] */ 
  5767.  
  5768.  
  5769.  
  5770. EXTERN_C const IID IID_ITypeMarshal;
  5771.  
  5772. #if defined(__cplusplus) && !defined(CINTERFACE)
  5773.     
  5774.     MIDL_INTERFACE("0000002D-0000-0000-C000-000000000046")
  5775.     ITypeMarshal : public IUnknown
  5776.     {
  5777.     public:
  5778.         virtual HRESULT STDMETHODCALLTYPE Size( 
  5779.             /* [in] */ PVOID pvType,
  5780.             /* [in] */ DWORD dwDestContext,
  5781.             /* [in] */ PVOID pvDestContext,
  5782.             /* [out] */ ULONG __RPC_FAR *pSize) = 0;
  5783.         
  5784.         virtual HRESULT STDMETHODCALLTYPE Marshal( 
  5785.             /* [in] */ PVOID pvType,
  5786.             /* [in] */ DWORD dwDestContext,
  5787.             /* [in] */ PVOID pvDestContext,
  5788.             /* [in] */ ULONG cbBufferLength,
  5789.             /* [out] */ BYTE __RPC_FAR *pBuffer,
  5790.             /* [out] */ ULONG __RPC_FAR *pcbWritten) = 0;
  5791.         
  5792.         virtual HRESULT STDMETHODCALLTYPE Unmarshal( 
  5793.             /* [out] */ PVOID pvType,
  5794.             /* [in] */ DWORD dwFlags,
  5795.             /* [in] */ ULONG cbBufferLength,
  5796.             /* [in] */ BYTE __RPC_FAR *pBuffer,
  5797.             /* [out] */ ULONG __RPC_FAR *pcbRead) = 0;
  5798.         
  5799.         virtual HRESULT STDMETHODCALLTYPE Free( 
  5800.             /* [in] */ PVOID pvType) = 0;
  5801.         
  5802.     };
  5803.     
  5804. #else     /* C style interface */
  5805.  
  5806.     typedef struct ITypeMarshalVtbl
  5807.     {
  5808.         BEGIN_INTERFACE
  5809.         
  5810.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5811.             ITypeMarshal __RPC_FAR * This,
  5812.             /* [in] */ REFIID riid,
  5813.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5814.         
  5815.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5816.             ITypeMarshal __RPC_FAR * This);
  5817.         
  5818.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5819.             ITypeMarshal __RPC_FAR * This);
  5820.         
  5821.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Size )( 
  5822.             ITypeMarshal __RPC_FAR * This,
  5823.             /* [in] */ PVOID pvType,
  5824.             /* [in] */ DWORD dwDestContext,
  5825.             /* [in] */ PVOID pvDestContext,
  5826.             /* [out] */ ULONG __RPC_FAR *pSize);
  5827.         
  5828.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Marshal )( 
  5829.             ITypeMarshal __RPC_FAR * This,
  5830.             /* [in] */ PVOID pvType,
  5831.             /* [in] */ DWORD dwDestContext,
  5832.             /* [in] */ PVOID pvDestContext,
  5833.             /* [in] */ ULONG cbBufferLength,
  5834.             /* [out] */ BYTE __RPC_FAR *pBuffer,
  5835.             /* [out] */ ULONG __RPC_FAR *pcbWritten);
  5836.         
  5837.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Unmarshal )( 
  5838.             ITypeMarshal __RPC_FAR * This,
  5839.             /* [out] */ PVOID pvType,
  5840.             /* [in] */ DWORD dwFlags,
  5841.             /* [in] */ ULONG cbBufferLength,
  5842.             /* [in] */ BYTE __RPC_FAR *pBuffer,
  5843.             /* [out] */ ULONG __RPC_FAR *pcbRead);
  5844.         
  5845.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Free )( 
  5846.             ITypeMarshal __RPC_FAR * This,
  5847.             /* [in] */ PVOID pvType);
  5848.         
  5849.         END_INTERFACE
  5850.     } ITypeMarshalVtbl;
  5851.  
  5852.     interface ITypeMarshal
  5853.     {
  5854.         CONST_VTBL struct ITypeMarshalVtbl __RPC_FAR *lpVtbl;
  5855.     };
  5856.  
  5857.     
  5858.  
  5859. #ifdef COBJMACROS
  5860.  
  5861.  
  5862. #define ITypeMarshal_QueryInterface(This,riid,ppvObject)    \
  5863.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5864.  
  5865. #define ITypeMarshal_AddRef(This)    \
  5866.     (This)->lpVtbl -> AddRef(This)
  5867.  
  5868. #define ITypeMarshal_Release(This)    \
  5869.     (This)->lpVtbl -> Release(This)
  5870.  
  5871.  
  5872. #define ITypeMarshal_Size(This,pvType,dwDestContext,pvDestContext,pSize)    \
  5873.     (This)->lpVtbl -> Size(This,pvType,dwDestContext,pvDestContext,pSize)
  5874.  
  5875. #define ITypeMarshal_Marshal(This,pvType,dwDestContext,pvDestContext,cbBufferLength,pBuffer,pcbWritten)    \
  5876.     (This)->lpVtbl -> Marshal(This,pvType,dwDestContext,pvDestContext,cbBufferLength,pBuffer,pcbWritten)
  5877.  
  5878. #define ITypeMarshal_Unmarshal(This,pvType,dwFlags,cbBufferLength,pBuffer,pcbRead)    \
  5879.     (This)->lpVtbl -> Unmarshal(This,pvType,dwFlags,cbBufferLength,pBuffer,pcbRead)
  5880.  
  5881. #define ITypeMarshal_Free(This,pvType)    \
  5882.     (This)->lpVtbl -> Free(This,pvType)
  5883.  
  5884. #endif /* COBJMACROS */
  5885.  
  5886.  
  5887. #endif     /* C style interface */
  5888.  
  5889.  
  5890.  
  5891. HRESULT STDMETHODCALLTYPE ITypeMarshal_Size_Proxy( 
  5892.     ITypeMarshal __RPC_FAR * This,
  5893.     /* [in] */ PVOID pvType,
  5894.     /* [in] */ DWORD dwDestContext,
  5895.     /* [in] */ PVOID pvDestContext,
  5896.     /* [out] */ ULONG __RPC_FAR *pSize);
  5897.  
  5898.  
  5899. void __RPC_STUB ITypeMarshal_Size_Stub(
  5900.     IRpcStubBuffer *This,
  5901.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5902.     PRPC_MESSAGE _pRpcMessage,
  5903.     DWORD *_pdwStubPhase);
  5904.  
  5905.  
  5906. HRESULT STDMETHODCALLTYPE ITypeMarshal_Marshal_Proxy( 
  5907.     ITypeMarshal __RPC_FAR * This,
  5908.     /* [in] */ PVOID pvType,
  5909.     /* [in] */ DWORD dwDestContext,
  5910.     /* [in] */ PVOID pvDestContext,
  5911.     /* [in] */ ULONG cbBufferLength,
  5912.     /* [out] */ BYTE __RPC_FAR *pBuffer,
  5913.     /* [out] */ ULONG __RPC_FAR *pcbWritten);
  5914.  
  5915.  
  5916. void __RPC_STUB ITypeMarshal_Marshal_Stub(
  5917.     IRpcStubBuffer *This,
  5918.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5919.     PRPC_MESSAGE _pRpcMessage,
  5920.     DWORD *_pdwStubPhase);
  5921.  
  5922.  
  5923. HRESULT STDMETHODCALLTYPE ITypeMarshal_Unmarshal_Proxy( 
  5924.     ITypeMarshal __RPC_FAR * This,
  5925.     /* [out] */ PVOID pvType,
  5926.     /* [in] */ DWORD dwFlags,
  5927.     /* [in] */ ULONG cbBufferLength,
  5928.     /* [in] */ BYTE __RPC_FAR *pBuffer,
  5929.     /* [out] */ ULONG __RPC_FAR *pcbRead);
  5930.  
  5931.  
  5932. void __RPC_STUB ITypeMarshal_Unmarshal_Stub(
  5933.     IRpcStubBuffer *This,
  5934.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5935.     PRPC_MESSAGE _pRpcMessage,
  5936.     DWORD *_pdwStubPhase);
  5937.  
  5938.  
  5939. HRESULT STDMETHODCALLTYPE ITypeMarshal_Free_Proxy( 
  5940.     ITypeMarshal __RPC_FAR * This,
  5941.     /* [in] */ PVOID pvType);
  5942.  
  5943.  
  5944. void __RPC_STUB ITypeMarshal_Free_Stub(
  5945.     IRpcStubBuffer *This,
  5946.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5947.     PRPC_MESSAGE _pRpcMessage,
  5948.     DWORD *_pdwStubPhase);
  5949.  
  5950.  
  5951.  
  5952. #endif     /* __ITypeMarshal_INTERFACE_DEFINED__ */
  5953.  
  5954.  
  5955. #ifndef __IRecordInfo_INTERFACE_DEFINED__
  5956. #define __IRecordInfo_INTERFACE_DEFINED__
  5957.  
  5958. /****************************************
  5959.  * Generated header for interface: IRecordInfo
  5960.  * at Thu Sep 11 10:57:08 1997
  5961.  * using MIDL 3.03.0110
  5962.  ****************************************/
  5963. /* [uuid][object][local] */ 
  5964.  
  5965.  
  5966. typedef /* [unique] */ IRecordInfo __RPC_FAR *LPRECORDINFO;
  5967.  
  5968.  
  5969. EXTERN_C const IID IID_IRecordInfo;
  5970.  
  5971. #if defined(__cplusplus) && !defined(CINTERFACE)
  5972.     
  5973.     MIDL_INTERFACE("0000002F-0000-0000-C000-000000000046")
  5974.     IRecordInfo : public IUnknown
  5975.     {
  5976.     public:
  5977.         virtual HRESULT STDMETHODCALLTYPE RecordInit( 
  5978.             /* [out] */ PVOID pvNew) = 0;
  5979.         
  5980.         virtual HRESULT STDMETHODCALLTYPE RecordClear( 
  5981.             /* [in] */ PVOID pvExisting) = 0;
  5982.         
  5983.         virtual HRESULT STDMETHODCALLTYPE RecordCopy( 
  5984.             /* [in] */ PVOID pvExisting,
  5985.             /* [out] */ PVOID pvNew) = 0;
  5986.         
  5987.         virtual HRESULT STDMETHODCALLTYPE GetGuid( 
  5988.             /* [out] */ GUID __RPC_FAR *pguid) = 0;
  5989.         
  5990.         virtual HRESULT STDMETHODCALLTYPE GetName( 
  5991.             /* [out] */ BSTR __RPC_FAR *pbstrName) = 0;
  5992.         
  5993.         virtual HRESULT STDMETHODCALLTYPE GetSize( 
  5994.             /* [out] */ ULONG __RPC_FAR *pcbSize) = 0;
  5995.         
  5996.         virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( 
  5997.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTypeInfo) = 0;
  5998.         
  5999.         virtual HRESULT STDMETHODCALLTYPE GetField( 
  6000.             /* [in] */ PVOID pvData,
  6001.             /* [in] */ LPCOLESTR szFieldName,
  6002.             /* [out] */ VARIANT __RPC_FAR *pvarField) = 0;
  6003.         
  6004.         virtual HRESULT STDMETHODCALLTYPE GetFieldNoCopy( 
  6005.             /* [in] */ PVOID pvData,
  6006.             /* [in] */ LPCOLESTR szFieldName,
  6007.             /* [out] */ VARIANT __RPC_FAR *pvarField,
  6008.             /* [out] */ PVOID __RPC_FAR *ppvDataCArray) = 0;
  6009.         
  6010.         virtual HRESULT STDMETHODCALLTYPE PutField( 
  6011.             /* [in] */ ULONG wFlags,
  6012.             /* [out][in] */ PVOID pvData,
  6013.             /* [in] */ LPCOLESTR szFieldName,
  6014.             /* [in] */ VARIANT __RPC_FAR *pvarField) = 0;
  6015.         
  6016.         virtual HRESULT STDMETHODCALLTYPE PutFieldNoCopy( 
  6017.             /* [in] */ ULONG wFlags,
  6018.             /* [out][in] */ PVOID pvData,
  6019.             /* [in] */ LPCOLESTR szFieldName,
  6020.             /* [in] */ VARIANT __RPC_FAR *pvarField) = 0;
  6021.         
  6022.         virtual HRESULT STDMETHODCALLTYPE GetFieldNames( 
  6023.             /* [out][in] */ ULONG __RPC_FAR *pcNames,
  6024.             /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames) = 0;
  6025.         
  6026.         virtual BOOL STDMETHODCALLTYPE IsMatchingType( 
  6027.             /* [in] */ IRecordInfo __RPC_FAR *pRecordInfo) = 0;
  6028.         
  6029.         virtual PVOID STDMETHODCALLTYPE RecordCreate( void) = 0;
  6030.         
  6031.         virtual HRESULT STDMETHODCALLTYPE RecordCreateCopy( 
  6032.             /* [in] */ PVOID pvSource,
  6033.             /* [out] */ PVOID __RPC_FAR *ppvDest) = 0;
  6034.         
  6035.         virtual HRESULT STDMETHODCALLTYPE RecordDestroy( 
  6036.             /* [in] */ PVOID pvRecord) = 0;
  6037.         
  6038.     };
  6039.     
  6040. #else     /* C style interface */
  6041.  
  6042.     typedef struct IRecordInfoVtbl
  6043.     {
  6044.         BEGIN_INTERFACE
  6045.         
  6046.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6047.             IRecordInfo __RPC_FAR * This,
  6048.             /* [in] */ REFIID riid,
  6049.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6050.         
  6051.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6052.             IRecordInfo __RPC_FAR * This);
  6053.         
  6054.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6055.             IRecordInfo __RPC_FAR * This);
  6056.         
  6057.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RecordInit )( 
  6058.             IRecordInfo __RPC_FAR * This,
  6059.             /* [out] */ PVOID pvNew);
  6060.         
  6061.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RecordClear )( 
  6062.             IRecordInfo __RPC_FAR * This,
  6063.             /* [in] */ PVOID pvExisting);
  6064.         
  6065.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RecordCopy )( 
  6066.             IRecordInfo __RPC_FAR * This,
  6067.             /* [in] */ PVOID pvExisting,
  6068.             /* [out] */ PVOID pvNew);
  6069.         
  6070.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetGuid )( 
  6071.             IRecordInfo __RPC_FAR * This,
  6072.             /* [out] */ GUID __RPC_FAR *pguid);
  6073.         
  6074.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetName )( 
  6075.             IRecordInfo __RPC_FAR * This,
  6076.             /* [out] */ BSTR __RPC_FAR *pbstrName);
  6077.         
  6078.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSize )( 
  6079.             IRecordInfo __RPC_FAR * This,
  6080.             /* [out] */ ULONG __RPC_FAR *pcbSize);
  6081.         
  6082.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  6083.             IRecordInfo __RPC_FAR * This,
  6084.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTypeInfo);
  6085.         
  6086.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetField )( 
  6087.             IRecordInfo __RPC_FAR * This,
  6088.             /* [in] */ PVOID pvData,
  6089.             /* [in] */ LPCOLESTR szFieldName,
  6090.             /* [out] */ VARIANT __RPC_FAR *pvarField);
  6091.         
  6092.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFieldNoCopy )( 
  6093.             IRecordInfo __RPC_FAR * This,
  6094.             /* [in] */ PVOID pvData,
  6095.             /* [in] */ LPCOLESTR szFieldName,
  6096.             /* [out] */ VARIANT __RPC_FAR *pvarField,
  6097.             /* [out] */ PVOID __RPC_FAR *ppvDataCArray);
  6098.         
  6099.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutField )( 
  6100.             IRecordInfo __RPC_FAR * This,
  6101.             /* [in] */ ULONG wFlags,
  6102.             /* [out][in] */ PVOID pvData,
  6103.             /* [in] */ LPCOLESTR szFieldName,
  6104.             /* [in] */ VARIANT __RPC_FAR *pvarField);
  6105.         
  6106.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutFieldNoCopy )( 
  6107.             IRecordInfo __RPC_FAR * This,
  6108.             /* [in] */ ULONG wFlags,
  6109.             /* [out][in] */ PVOID pvData,
  6110.             /* [in] */ LPCOLESTR szFieldName,
  6111.             /* [in] */ VARIANT __RPC_FAR *pvarField);
  6112.         
  6113.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFieldNames )( 
  6114.             IRecordInfo __RPC_FAR * This,
  6115.             /* [out][in] */ ULONG __RPC_FAR *pcNames,
  6116.             /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames);
  6117.         
  6118.         BOOL ( STDMETHODCALLTYPE __RPC_FAR *IsMatchingType )( 
  6119.             IRecordInfo __RPC_FAR * This,
  6120.             /* [in] */ IRecordInfo __RPC_FAR *pRecordInfo);
  6121.         
  6122.         PVOID ( STDMETHODCALLTYPE __RPC_FAR *RecordCreate )( 
  6123.             IRecordInfo __RPC_FAR * This);
  6124.         
  6125.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RecordCreateCopy )( 
  6126.             IRecordInfo __RPC_FAR * This,
  6127.             /* [in] */ PVOID pvSource,
  6128.             /* [out] */ PVOID __RPC_FAR *ppvDest);
  6129.         
  6130.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RecordDestroy )( 
  6131.             IRecordInfo __RPC_FAR * This,
  6132.             /* [in] */ PVOID pvRecord);
  6133.         
  6134.         END_INTERFACE
  6135.     } IRecordInfoVtbl;
  6136.  
  6137.     interface IRecordInfo
  6138.     {
  6139.         CONST_VTBL struct IRecordInfoVtbl __RPC_FAR *lpVtbl;
  6140.     };
  6141.  
  6142.     
  6143.  
  6144. #ifdef COBJMACROS
  6145.  
  6146.  
  6147. #define IRecordInfo_QueryInterface(This,riid,ppvObject)    \
  6148.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6149.  
  6150. #define IRecordInfo_AddRef(This)    \
  6151.     (This)->lpVtbl -> AddRef(This)
  6152.  
  6153. #define IRecordInfo_Release(This)    \
  6154.     (This)->lpVtbl -> Release(This)
  6155.  
  6156.  
  6157. #define IRecordInfo_RecordInit(This,pvNew)    \
  6158.     (This)->lpVtbl -> RecordInit(This,pvNew)
  6159.  
  6160. #define IRecordInfo_RecordClear(This,pvExisting)    \
  6161.     (This)->lpVtbl -> RecordClear(This,pvExisting)
  6162.  
  6163. #define IRecordInfo_RecordCopy(This,pvExisting,pvNew)    \
  6164.     (This)->lpVtbl -> RecordCopy(This,pvExisting,pvNew)
  6165.  
  6166. #define IRecordInfo_GetGuid(This,pguid)    \
  6167.     (This)->lpVtbl -> GetGuid(This,pguid)
  6168.  
  6169. #define IRecordInfo_GetName(This,pbstrName)    \
  6170.     (This)->lpVtbl -> GetName(This,pbstrName)
  6171.  
  6172. #define IRecordInfo_GetSize(This,pcbSize)    \
  6173.     (This)->lpVtbl -> GetSize(This,pcbSize)
  6174.  
  6175. #define IRecordInfo_GetTypeInfo(This,ppTypeInfo)    \
  6176.     (This)->lpVtbl -> GetTypeInfo(This,ppTypeInfo)
  6177.  
  6178. #define IRecordInfo_GetField(This,pvData,szFieldName,pvarField)    \
  6179.     (This)->lpVtbl -> GetField(This,pvData,szFieldName,pvarField)
  6180.  
  6181. #define IRecordInfo_GetFieldNoCopy(This,pvData,szFieldName,pvarField,ppvDataCArray)    \
  6182.     (This)->lpVtbl -> GetFieldNoCopy(This,pvData,szFieldName,pvarField,ppvDataCArray)
  6183.  
  6184. #define IRecordInfo_PutField(This,wFlags,pvData,szFieldName,pvarField)    \
  6185.     (This)->lpVtbl -> PutField(This,wFlags,pvData,szFieldName,pvarField)
  6186.  
  6187. #define IRecordInfo_PutFieldNoCopy(This,wFlags,pvData,szFieldName,pvarField)    \
  6188.     (This)->lpVtbl -> PutFieldNoCopy(This,wFlags,pvData,szFieldName,pvarField)
  6189.  
  6190. #define IRecordInfo_GetFieldNames(This,pcNames,rgBstrNames)    \
  6191.     (This)->lpVtbl -> GetFieldNames(This,pcNames,rgBstrNames)
  6192.  
  6193. #define IRecordInfo_IsMatchingType(This,pRecordInfo)    \
  6194.     (This)->lpVtbl -> IsMatchingType(This,pRecordInfo)
  6195.  
  6196. #define IRecordInfo_RecordCreate(This)    \
  6197.     (This)->lpVtbl -> RecordCreate(This)
  6198.  
  6199. #define IRecordInfo_RecordCreateCopy(This,pvSource,ppvDest)    \
  6200.     (This)->lpVtbl -> RecordCreateCopy(This,pvSource,ppvDest)
  6201.  
  6202. #define IRecordInfo_RecordDestroy(This,pvRecord)    \
  6203.     (This)->lpVtbl -> RecordDestroy(This,pvRecord)
  6204.  
  6205. #endif /* COBJMACROS */
  6206.  
  6207.  
  6208. #endif     /* C style interface */
  6209.  
  6210.  
  6211.  
  6212. HRESULT STDMETHODCALLTYPE IRecordInfo_RecordInit_Proxy( 
  6213.     IRecordInfo __RPC_FAR * This,
  6214.     /* [out] */ PVOID pvNew);
  6215.  
  6216.  
  6217. void __RPC_STUB IRecordInfo_RecordInit_Stub(
  6218.     IRpcStubBuffer *This,
  6219.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6220.     PRPC_MESSAGE _pRpcMessage,
  6221.     DWORD *_pdwStubPhase);
  6222.  
  6223.  
  6224. HRESULT STDMETHODCALLTYPE IRecordInfo_RecordClear_Proxy( 
  6225.     IRecordInfo __RPC_FAR * This,
  6226.     /* [in] */ PVOID pvExisting);
  6227.  
  6228.  
  6229. void __RPC_STUB IRecordInfo_RecordClear_Stub(
  6230.     IRpcStubBuffer *This,
  6231.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6232.     PRPC_MESSAGE _pRpcMessage,
  6233.     DWORD *_pdwStubPhase);
  6234.  
  6235.  
  6236. HRESULT STDMETHODCALLTYPE IRecordInfo_RecordCopy_Proxy( 
  6237.     IRecordInfo __RPC_FAR * This,
  6238.     /* [in] */ PVOID pvExisting,
  6239.     /* [out] */ PVOID pvNew);
  6240.  
  6241.  
  6242. void __RPC_STUB IRecordInfo_RecordCopy_Stub(
  6243.     IRpcStubBuffer *This,
  6244.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6245.     PRPC_MESSAGE _pRpcMessage,
  6246.     DWORD *_pdwStubPhase);
  6247.  
  6248.  
  6249. HRESULT STDMETHODCALLTYPE IRecordInfo_GetGuid_Proxy( 
  6250.     IRecordInfo __RPC_FAR * This,
  6251.     /* [out] */ GUID __RPC_FAR *pguid);
  6252.  
  6253.  
  6254. void __RPC_STUB IRecordInfo_GetGuid_Stub(
  6255.     IRpcStubBuffer *This,
  6256.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6257.     PRPC_MESSAGE _pRpcMessage,
  6258.     DWORD *_pdwStubPhase);
  6259.  
  6260.  
  6261. HRESULT STDMETHODCALLTYPE IRecordInfo_GetName_Proxy( 
  6262.     IRecordInfo __RPC_FAR * This,
  6263.     /* [out] */ BSTR __RPC_FAR *pbstrName);
  6264.  
  6265.  
  6266. void __RPC_STUB IRecordInfo_GetName_Stub(
  6267.     IRpcStubBuffer *This,
  6268.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6269.     PRPC_MESSAGE _pRpcMessage,
  6270.     DWORD *_pdwStubPhase);
  6271.  
  6272.  
  6273. HRESULT STDMETHODCALLTYPE IRecordInfo_GetSize_Proxy( 
  6274.     IRecordInfo __RPC_FAR * This,
  6275.     /* [out] */ ULONG __RPC_FAR *pcbSize);
  6276.  
  6277.  
  6278. void __RPC_STUB IRecordInfo_GetSize_Stub(
  6279.     IRpcStubBuffer *This,
  6280.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6281.     PRPC_MESSAGE _pRpcMessage,
  6282.     DWORD *_pdwStubPhase);
  6283.  
  6284.  
  6285. HRESULT STDMETHODCALLTYPE IRecordInfo_GetTypeInfo_Proxy( 
  6286.     IRecordInfo __RPC_FAR * This,
  6287.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTypeInfo);
  6288.  
  6289.  
  6290. void __RPC_STUB IRecordInfo_GetTypeInfo_Stub(
  6291.     IRpcStubBuffer *This,
  6292.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6293.     PRPC_MESSAGE _pRpcMessage,
  6294.     DWORD *_pdwStubPhase);
  6295.  
  6296.  
  6297. HRESULT STDMETHODCALLTYPE IRecordInfo_GetField_Proxy( 
  6298.     IRecordInfo __RPC_FAR * This,
  6299.     /* [in] */ PVOID pvData,
  6300.     /* [in] */ LPCOLESTR szFieldName,
  6301.     /* [out] */ VARIANT __RPC_FAR *pvarField);
  6302.  
  6303.  
  6304. void __RPC_STUB IRecordInfo_GetField_Stub(
  6305.     IRpcStubBuffer *This,
  6306.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6307.     PRPC_MESSAGE _pRpcMessage,
  6308.     DWORD *_pdwStubPhase);
  6309.  
  6310.  
  6311. HRESULT STDMETHODCALLTYPE IRecordInfo_GetFieldNoCopy_Proxy( 
  6312.     IRecordInfo __RPC_FAR * This,
  6313.     /* [in] */ PVOID pvData,
  6314.     /* [in] */ LPCOLESTR szFieldName,
  6315.     /* [out] */ VARIANT __RPC_FAR *pvarField,
  6316.     /* [out] */ PVOID __RPC_FAR *ppvDataCArray);
  6317.  
  6318.  
  6319. void __RPC_STUB IRecordInfo_GetFieldNoCopy_Stub(
  6320.     IRpcStubBuffer *This,
  6321.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6322.     PRPC_MESSAGE _pRpcMessage,
  6323.     DWORD *_pdwStubPhase);
  6324.  
  6325.  
  6326. HRESULT STDMETHODCALLTYPE IRecordInfo_PutField_Proxy( 
  6327.     IRecordInfo __RPC_FAR * This,
  6328.     /* [in] */ ULONG wFlags,
  6329.     /* [out][in] */ PVOID pvData,
  6330.     /* [in] */ LPCOLESTR szFieldName,
  6331.     /* [in] */ VARIANT __RPC_FAR *pvarField);
  6332.  
  6333.  
  6334. void __RPC_STUB IRecordInfo_PutField_Stub(
  6335.     IRpcStubBuffer *This,
  6336.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6337.     PRPC_MESSAGE _pRpcMessage,
  6338.     DWORD *_pdwStubPhase);
  6339.  
  6340.  
  6341. HRESULT STDMETHODCALLTYPE IRecordInfo_PutFieldNoCopy_Proxy( 
  6342.     IRecordInfo __RPC_FAR * This,
  6343.     /* [in] */ ULONG wFlags,
  6344.     /* [out][in] */ PVOID pvData,
  6345.     /* [in] */ LPCOLESTR szFieldName,
  6346.     /* [in] */ VARIANT __RPC_FAR *pvarField);
  6347.  
  6348.  
  6349. void __RPC_STUB IRecordInfo_PutFieldNoCopy_Stub(
  6350.     IRpcStubBuffer *This,
  6351.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6352.     PRPC_MESSAGE _pRpcMessage,
  6353.     DWORD *_pdwStubPhase);
  6354.  
  6355.  
  6356. HRESULT STDMETHODCALLTYPE IRecordInfo_GetFieldNames_Proxy( 
  6357.     IRecordInfo __RPC_FAR * This,
  6358.     /* [out][in] */ ULONG __RPC_FAR *pcNames,
  6359.     /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames);
  6360.  
  6361.  
  6362. void __RPC_STUB IRecordInfo_GetFieldNames_Stub(
  6363.     IRpcStubBuffer *This,
  6364.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6365.     PRPC_MESSAGE _pRpcMessage,
  6366.     DWORD *_pdwStubPhase);
  6367.  
  6368.  
  6369. BOOL STDMETHODCALLTYPE IRecordInfo_IsMatchingType_Proxy( 
  6370.     IRecordInfo __RPC_FAR * This,
  6371.     /* [in] */ IRecordInfo __RPC_FAR *pRecordInfo);
  6372.  
  6373.  
  6374. void __RPC_STUB IRecordInfo_IsMatchingType_Stub(
  6375.     IRpcStubBuffer *This,
  6376.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6377.     PRPC_MESSAGE _pRpcMessage,
  6378.     DWORD *_pdwStubPhase);
  6379.  
  6380.  
  6381. PVOID STDMETHODCALLTYPE IRecordInfo_RecordCreate_Proxy( 
  6382.     IRecordInfo __RPC_FAR * This);
  6383.  
  6384.  
  6385. void __RPC_STUB IRecordInfo_RecordCreate_Stub(
  6386.     IRpcStubBuffer *This,
  6387.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6388.     PRPC_MESSAGE _pRpcMessage,
  6389.     DWORD *_pdwStubPhase);
  6390.  
  6391.  
  6392. HRESULT STDMETHODCALLTYPE IRecordInfo_RecordCreateCopy_Proxy( 
  6393.     IRecordInfo __RPC_FAR * This,
  6394.     /* [in] */ PVOID pvSource,
  6395.     /* [out] */ PVOID __RPC_FAR *ppvDest);
  6396.  
  6397.  
  6398. void __RPC_STUB IRecordInfo_RecordCreateCopy_Stub(
  6399.     IRpcStubBuffer *This,
  6400.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6401.     PRPC_MESSAGE _pRpcMessage,
  6402.     DWORD *_pdwStubPhase);
  6403.  
  6404.  
  6405. HRESULT STDMETHODCALLTYPE IRecordInfo_RecordDestroy_Proxy( 
  6406.     IRecordInfo __RPC_FAR * This,
  6407.     /* [in] */ PVOID pvRecord);
  6408.  
  6409.  
  6410. void __RPC_STUB IRecordInfo_RecordDestroy_Stub(
  6411.     IRpcStubBuffer *This,
  6412.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6413.     PRPC_MESSAGE _pRpcMessage,
  6414.     DWORD *_pdwStubPhase);
  6415.  
  6416.  
  6417.  
  6418. #endif     /* __IRecordInfo_INTERFACE_DEFINED__ */
  6419.  
  6420.  
  6421. /****************************************
  6422.  * Generated header for interface: __MIDL_itf_oaidl_0092
  6423.  * at Thu Sep 11 10:57:08 1997
  6424.  * using MIDL 3.03.0110
  6425.  ****************************************/
  6426. /* [local] */ 
  6427.  
  6428.  
  6429. #if ( _MSC_VER >= 800 )
  6430. #pragma warning(default:4201) /* Nameless struct/union */
  6431. #endif
  6432.  
  6433.  
  6434. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0092_v0_0_c_ifspec;
  6435. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0092_v0_0_s_ifspec;
  6436.  
  6437. /* Additional Prototypes for ALL interfaces */
  6438.  
  6439. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  6440. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  6441. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  6442. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  6443.  
  6444. unsigned long             __RPC_USER  CLEANLOCALSTORAGE_UserSize(     unsigned long __RPC_FAR *, unsigned long            , CLEANLOCALSTORAGE __RPC_FAR * ); 
  6445. unsigned char __RPC_FAR * __RPC_USER  CLEANLOCALSTORAGE_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, CLEANLOCALSTORAGE __RPC_FAR * ); 
  6446. unsigned char __RPC_FAR * __RPC_USER  CLEANLOCALSTORAGE_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, CLEANLOCALSTORAGE __RPC_FAR * ); 
  6447. void                      __RPC_USER  CLEANLOCALSTORAGE_UserFree(     unsigned long __RPC_FAR *, CLEANLOCALSTORAGE __RPC_FAR * ); 
  6448.  
  6449. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long __RPC_FAR *, unsigned long            , VARIANT __RPC_FAR * ); 
  6450. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  6451. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  6452. void                      __RPC_USER  VARIANT_UserFree(     unsigned long __RPC_FAR *, VARIANT __RPC_FAR * ); 
  6453.  
  6454. /* [local] */ HRESULT STDMETHODCALLTYPE IDispatch_Invoke_Proxy( 
  6455.     IDispatch __RPC_FAR * This,
  6456.     /* [in] */ DISPID dispIdMember,
  6457.     /* [in] */ REFIID riid,
  6458.     /* [in] */ LCID lcid,
  6459.     /* [in] */ WORD wFlags,
  6460.     /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  6461.     /* [out] */ VARIANT __RPC_FAR *pVarResult,
  6462.     /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  6463.     /* [out] */ UINT __RPC_FAR *puArgErr);
  6464.  
  6465.  
  6466. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDispatch_Invoke_Stub( 
  6467.     IDispatch __RPC_FAR * This,
  6468.     /* [in] */ DISPID dispIdMember,
  6469.     /* [in] */ REFIID riid,
  6470.     /* [in] */ LCID lcid,
  6471.     /* [in] */ DWORD dwFlags,
  6472.     /* [in] */ DISPPARAMS __RPC_FAR *pDispParams,
  6473.     /* [out] */ VARIANT __RPC_FAR *pVarResult,
  6474.     /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  6475.     /* [out] */ UINT __RPC_FAR *pArgErr,
  6476.     /* [in] */ UINT cVarRef,
  6477.     /* [size_is][in] */ UINT __RPC_FAR *rgVarRefIdx,
  6478.     /* [size_is][out][in] */ VARIANTARG __RPC_FAR *rgVarRef);
  6479.  
  6480. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumVARIANT_Next_Proxy( 
  6481.     IEnumVARIANT __RPC_FAR * This,
  6482.     /* [in] */ ULONG celt,
  6483.     /* [length_is][size_is][out] */ VARIANT __RPC_FAR *rgVar,
  6484.     /* [out] */ ULONG __RPC_FAR *pCeltFetched);
  6485.  
  6486.  
  6487. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumVARIANT_Next_Stub( 
  6488.     IEnumVARIANT __RPC_FAR * This,
  6489.     /* [in] */ ULONG celt,
  6490.     /* [length_is][size_is][out] */ VARIANT __RPC_FAR *rgVar,
  6491.     /* [out] */ ULONG __RPC_FAR *pCeltFetched);
  6492.  
  6493. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeComp_Bind_Proxy( 
  6494.     ITypeComp __RPC_FAR * This,
  6495.     /* [in] */ LPOLESTR szName,
  6496.     /* [in] */ ULONG lHashVal,
  6497.     /* [in] */ WORD wFlags,
  6498.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  6499.     /* [out] */ DESCKIND __RPC_FAR *pDescKind,
  6500.     /* [out] */ BINDPTR __RPC_FAR *pBindPtr);
  6501.  
  6502.  
  6503. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeComp_Bind_Stub( 
  6504.     ITypeComp __RPC_FAR * This,
  6505.     /* [in] */ LPOLESTR szName,
  6506.     /* [in] */ ULONG lHashVal,
  6507.     /* [in] */ WORD wFlags,
  6508.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  6509.     /* [out] */ DESCKIND __RPC_FAR *pDescKind,
  6510.     /* [out] */ LPFUNCDESC __RPC_FAR *ppFuncDesc,
  6511.     /* [out] */ LPVARDESC __RPC_FAR *ppVarDesc,
  6512.     /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTypeComp,
  6513.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  6514.  
  6515. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeComp_BindType_Proxy( 
  6516.     ITypeComp __RPC_FAR * This,
  6517.     /* [in] */ LPOLESTR szName,
  6518.     /* [in] */ ULONG lHashVal,
  6519.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  6520.     /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp);
  6521.  
  6522.  
  6523. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeComp_BindType_Stub( 
  6524.     ITypeComp __RPC_FAR * This,
  6525.     /* [in] */ LPOLESTR szName,
  6526.     /* [in] */ ULONG lHashVal,
  6527.     /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  6528.  
  6529. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetTypeAttr_Proxy( 
  6530.     ITypeInfo __RPC_FAR * This,
  6531.     /* [out] */ TYPEATTR __RPC_FAR *__RPC_FAR *ppTypeAttr);
  6532.  
  6533.  
  6534. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetTypeAttr_Stub( 
  6535.     ITypeInfo __RPC_FAR * This,
  6536.     /* [out] */ LPTYPEATTR __RPC_FAR *ppTypeAttr,
  6537.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  6538.  
  6539. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetFuncDesc_Proxy( 
  6540.     ITypeInfo __RPC_FAR * This,
  6541.     /* [in] */ UINT index,
  6542.     /* [out] */ FUNCDESC __RPC_FAR *__RPC_FAR *ppFuncDesc);
  6543.  
  6544.  
  6545. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetFuncDesc_Stub( 
  6546.     ITypeInfo __RPC_FAR * This,
  6547.     /* [in] */ UINT index,
  6548.     /* [out] */ LPFUNCDESC __RPC_FAR *ppFuncDesc,
  6549.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  6550.  
  6551. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetVarDesc_Proxy( 
  6552.     ITypeInfo __RPC_FAR * This,
  6553.     /* [in] */ UINT index,
  6554.     /* [out] */ VARDESC __RPC_FAR *__RPC_FAR *ppVarDesc);
  6555.  
  6556.  
  6557. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetVarDesc_Stub( 
  6558.     ITypeInfo __RPC_FAR * This,
  6559.     /* [in] */ UINT index,
  6560.     /* [out] */ LPVARDESC __RPC_FAR *ppVarDesc,
  6561.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  6562.  
  6563. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetNames_Proxy( 
  6564.     ITypeInfo __RPC_FAR * This,
  6565.     /* [in] */ MEMBERID memid,
  6566.     /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames,
  6567.     /* [in] */ UINT cMaxNames,
  6568.     /* [out] */ UINT __RPC_FAR *pcNames);
  6569.  
  6570.  
  6571. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetNames_Stub( 
  6572.     ITypeInfo __RPC_FAR * This,
  6573.     /* [in] */ MEMBERID memid,
  6574.     /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames,
  6575.     /* [in] */ UINT cMaxNames,
  6576.     /* [out] */ UINT __RPC_FAR *pcNames);
  6577.  
  6578. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetIDsOfNames_Proxy( 
  6579.     ITypeInfo __RPC_FAR * This,
  6580.     /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  6581.     /* [in] */ UINT cNames,
  6582.     /* [size_is][out] */ MEMBERID __RPC_FAR *pMemId);
  6583.  
  6584.  
  6585. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetIDsOfNames_Stub( 
  6586.     ITypeInfo __RPC_FAR * This);
  6587.  
  6588. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_Invoke_Proxy( 
  6589.     ITypeInfo __RPC_FAR * This,
  6590.     /* [in] */ PVOID pvInstance,
  6591.     /* [in] */ MEMBERID memid,
  6592.     /* [in] */ WORD wFlags,
  6593.     /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  6594.     /* [out] */ VARIANT __RPC_FAR *pVarResult,
  6595.     /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  6596.     /* [out] */ UINT __RPC_FAR *puArgErr);
  6597.  
  6598.  
  6599. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_Invoke_Stub( 
  6600.     ITypeInfo __RPC_FAR * This);
  6601.  
  6602. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetDocumentation_Proxy( 
  6603.     ITypeInfo __RPC_FAR * This,
  6604.     /* [in] */ MEMBERID memid,
  6605.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  6606.     /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  6607.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  6608.     /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  6609.  
  6610.  
  6611. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetDocumentation_Stub( 
  6612.     ITypeInfo __RPC_FAR * This,
  6613.     /* [in] */ MEMBERID memid,
  6614.     /* [in] */ DWORD refPtrFlags,
  6615.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  6616.     /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  6617.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  6618.     /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  6619.  
  6620. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetDllEntry_Proxy( 
  6621.     ITypeInfo __RPC_FAR * This,
  6622.     /* [in] */ MEMBERID memid,
  6623.     /* [in] */ INVOKEKIND invKind,
  6624.     /* [out] */ BSTR __RPC_FAR *pBstrDllName,
  6625.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  6626.     /* [out] */ WORD __RPC_FAR *pwOrdinal);
  6627.  
  6628.  
  6629. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetDllEntry_Stub( 
  6630.     ITypeInfo __RPC_FAR * This,
  6631.     /* [in] */ MEMBERID memid,
  6632.     /* [in] */ INVOKEKIND invKind,
  6633.     /* [in] */ DWORD refPtrFlags,
  6634.     /* [out] */ BSTR __RPC_FAR *pBstrDllName,
  6635.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  6636.     /* [out] */ WORD __RPC_FAR *pwOrdinal);
  6637.  
  6638. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_AddressOfMember_Proxy( 
  6639.     ITypeInfo __RPC_FAR * This,
  6640.     /* [in] */ MEMBERID memid,
  6641.     /* [in] */ INVOKEKIND invKind,
  6642.     /* [out] */ PVOID __RPC_FAR *ppv);
  6643.  
  6644.  
  6645. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_AddressOfMember_Stub( 
  6646.     ITypeInfo __RPC_FAR * This);
  6647.  
  6648. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_CreateInstance_Proxy( 
  6649.     ITypeInfo __RPC_FAR * This,
  6650.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6651.     /* [in] */ REFIID riid,
  6652.     /* [iid_is][out] */ PVOID __RPC_FAR *ppvObj);
  6653.  
  6654.  
  6655. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_CreateInstance_Stub( 
  6656.     ITypeInfo __RPC_FAR * This,
  6657.     /* [in] */ REFIID riid,
  6658.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObj);
  6659.  
  6660. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetContainingTypeLib_Proxy( 
  6661.     ITypeInfo __RPC_FAR * This,
  6662.     /* [out] */ ITypeLib __RPC_FAR *__RPC_FAR *ppTLib,
  6663.     /* [out] */ UINT __RPC_FAR *pIndex);
  6664.  
  6665.  
  6666. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_GetContainingTypeLib_Stub( 
  6667.     ITypeInfo __RPC_FAR * This,
  6668.     /* [out] */ ITypeLib __RPC_FAR *__RPC_FAR *ppTLib,
  6669.     /* [out] */ UINT __RPC_FAR *pIndex);
  6670.  
  6671. /* [local] */ void STDMETHODCALLTYPE ITypeInfo_ReleaseTypeAttr_Proxy( 
  6672.     ITypeInfo __RPC_FAR * This,
  6673.     /* [in] */ TYPEATTR __RPC_FAR *pTypeAttr);
  6674.  
  6675.  
  6676. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_ReleaseTypeAttr_Stub( 
  6677.     ITypeInfo __RPC_FAR * This);
  6678.  
  6679. /* [local] */ void STDMETHODCALLTYPE ITypeInfo_ReleaseFuncDesc_Proxy( 
  6680.     ITypeInfo __RPC_FAR * This,
  6681.     /* [in] */ FUNCDESC __RPC_FAR *pFuncDesc);
  6682.  
  6683.  
  6684. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_ReleaseFuncDesc_Stub( 
  6685.     ITypeInfo __RPC_FAR * This);
  6686.  
  6687. /* [local] */ void STDMETHODCALLTYPE ITypeInfo_ReleaseVarDesc_Proxy( 
  6688.     ITypeInfo __RPC_FAR * This,
  6689.     /* [in] */ VARDESC __RPC_FAR *pVarDesc);
  6690.  
  6691.  
  6692. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_ReleaseVarDesc_Stub( 
  6693.     ITypeInfo __RPC_FAR * This);
  6694.  
  6695. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeInfo2_GetDocumentation2_Proxy( 
  6696.     ITypeInfo2 __RPC_FAR * This,
  6697.     /* [in] */ MEMBERID memid,
  6698.     /* [in] */ LCID lcid,
  6699.     /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  6700.     /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  6701.     /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll);
  6702.  
  6703.  
  6704. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo2_GetDocumentation2_Stub( 
  6705.     ITypeInfo2 __RPC_FAR * This,
  6706.     /* [in] */ MEMBERID memid,
  6707.     /* [in] */ LCID lcid,
  6708.     /* [in] */ DWORD refPtrFlags,
  6709.     /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  6710.     /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  6711.     /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll);
  6712.  
  6713. /* [local] */ UINT STDMETHODCALLTYPE ITypeLib_GetTypeInfoCount_Proxy( 
  6714.     ITypeLib __RPC_FAR * This);
  6715.  
  6716.  
  6717. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfoCount_Stub( 
  6718.     ITypeLib __RPC_FAR * This,
  6719.     /* [out] */ UINT __RPC_FAR *pcTInfo);
  6720.  
  6721. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeLib_GetLibAttr_Proxy( 
  6722.     ITypeLib __RPC_FAR * This,
  6723.     /* [out] */ TLIBATTR __RPC_FAR *__RPC_FAR *ppTLibAttr);
  6724.  
  6725.  
  6726. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_GetLibAttr_Stub( 
  6727.     ITypeLib __RPC_FAR * This,
  6728.     /* [out] */ LPTLIBATTR __RPC_FAR *ppTLibAttr,
  6729.     /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy);
  6730.  
  6731. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeLib_GetDocumentation_Proxy( 
  6732.     ITypeLib __RPC_FAR * This,
  6733.     /* [in] */ INT index,
  6734.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  6735.     /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  6736.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  6737.     /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  6738.  
  6739.  
  6740. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_GetDocumentation_Stub( 
  6741.     ITypeLib __RPC_FAR * This,
  6742.     /* [in] */ INT index,
  6743.     /* [in] */ DWORD refPtrFlags,
  6744.     /* [out] */ BSTR __RPC_FAR *pBstrName,
  6745.     /* [out] */ BSTR __RPC_FAR *pBstrDocString,
  6746.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  6747.     /* [out] */ BSTR __RPC_FAR *pBstrHelpFile);
  6748.  
  6749. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeLib_IsName_Proxy( 
  6750.     ITypeLib __RPC_FAR * This,
  6751.     /* [out][in] */ LPOLESTR szNameBuf,
  6752.     /* [in] */ ULONG lHashVal,
  6753.     /* [out] */ BOOL __RPC_FAR *pfName);
  6754.  
  6755.  
  6756. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_IsName_Stub( 
  6757.     ITypeLib __RPC_FAR * This,
  6758.     /* [in] */ LPOLESTR szNameBuf,
  6759.     /* [in] */ ULONG lHashVal,
  6760.     /* [out] */ BOOL __RPC_FAR *pfName,
  6761.     /* [out] */ BSTR __RPC_FAR *pBstrLibName);
  6762.  
  6763. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeLib_FindName_Proxy( 
  6764.     ITypeLib __RPC_FAR * This,
  6765.     /* [out][in] */ LPOLESTR szNameBuf,
  6766.     /* [in] */ ULONG lHashVal,
  6767.     /* [length_is][size_is][out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  6768.     /* [length_is][size_is][out] */ MEMBERID __RPC_FAR *rgMemId,
  6769.     /* [out][in] */ USHORT __RPC_FAR *pcFound);
  6770.  
  6771.  
  6772. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_FindName_Stub( 
  6773.     ITypeLib __RPC_FAR * This,
  6774.     /* [in] */ LPOLESTR szNameBuf,
  6775.     /* [in] */ ULONG lHashVal,
  6776.     /* [length_is][size_is][out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo,
  6777.     /* [length_is][size_is][out] */ MEMBERID __RPC_FAR *rgMemId,
  6778.     /* [out][in] */ USHORT __RPC_FAR *pcFound,
  6779.     /* [out] */ BSTR __RPC_FAR *pBstrLibName);
  6780.  
  6781. /* [local] */ void STDMETHODCALLTYPE ITypeLib_ReleaseTLibAttr_Proxy( 
  6782.     ITypeLib __RPC_FAR * This,
  6783.     /* [in] */ TLIBATTR __RPC_FAR *pTLibAttr);
  6784.  
  6785.  
  6786. /* [nocode][call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_ReleaseTLibAttr_Stub( 
  6787.     ITypeLib __RPC_FAR * This);
  6788.  
  6789. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeLib2_GetLibStatistics_Proxy( 
  6790.     ITypeLib2 __RPC_FAR * This,
  6791.     /* [out] */ ULONG __RPC_FAR *pcUniqueNames,
  6792.     /* [out] */ ULONG __RPC_FAR *pcchUniqueNames);
  6793.  
  6794.  
  6795. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib2_GetLibStatistics_Stub( 
  6796.     ITypeLib2 __RPC_FAR * This,
  6797.     /* [out] */ ULONG __RPC_FAR *pcUniqueNames,
  6798.     /* [out] */ ULONG __RPC_FAR *pcchUniqueNames);
  6799.  
  6800. /* [local] */ HRESULT STDMETHODCALLTYPE ITypeLib2_GetDocumentation2_Proxy( 
  6801.     ITypeLib2 __RPC_FAR * This,
  6802.     /* [in] */ INT index,
  6803.     /* [in] */ LCID lcid,
  6804.     /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  6805.     /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  6806.     /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll);
  6807.  
  6808.  
  6809. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib2_GetDocumentation2_Stub( 
  6810.     ITypeLib2 __RPC_FAR * This,
  6811.     /* [in] */ INT index,
  6812.     /* [in] */ LCID lcid,
  6813.     /* [in] */ DWORD refPtrFlags,
  6814.     /* [out] */ BSTR __RPC_FAR *pbstrHelpString,
  6815.     /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext,
  6816.     /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll);
  6817.  
  6818.  
  6819.  
  6820. /* end of Additional Prototypes */
  6821.  
  6822. #ifdef __cplusplus
  6823. }
  6824. #endif
  6825.  
  6826. #endif
  6827.