home *** CD-ROM | disk | FTP | other *** search
/ PC Format (South-Africa) 2001 June / PCFJune.iso / Xenon / C++ / FreeCommandLineTools.exe / Include / adoctint.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-01-31  |  189.4 KB  |  4,536 lines

  1. //--------------------------------------------------------------------
  2. // Microsoft ADO
  3. //
  4. // (c) 1996-1998 Microsoft Corporation.  All Rights Reserved.
  5. //
  6. // @doc
  7. //
  8. // @module    ADOCTINT.h | ADO Interface header
  9. //
  10. // @devnote None
  11. //--------------------------------------------------------------------
  12. #ifndef _ADOCTINT_H_
  13. #pragma option push -b -a8 -pc -A- /*P_O_Push*/
  14. #define _ADOCTINT_H_
  15.  
  16. #ifndef _INC_TCHAR
  17. #include <tchar.h>
  18. #endif
  19.  
  20. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  21. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  22.  /* File created by MIDL compiler version 5.03.0266 */
  23. /* at Mon May 24 01:27:14 1999
  24.  */
  25. /* Compiler settings for AdoCat.idl:
  26.     Oicf (OptLev=i2), W1, Zp8, env=Win32 (32b run), ms_ext, c_ext
  27.     error checks: allocation ref bounds_check enum stub_data 
  28.     VC __declspec() decoration level: 
  29.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  30.          DECLSPEC_UUID(), MIDL_INTERFACE()
  31. */
  32. //@@MIDL_FILE_HEADING(  )
  33. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  34. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  35. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  36. #endif
  37. #include "rpc.h"
  38. #include "rpcndr.h"
  39. #ifndef __m_adocat_h__
  40. #define __m_adocat_h__
  41. /* Forward Declarations */ 
  42. #ifndef ___ADOCollection_FWD_DEFINED__
  43. #define ___ADOCollection_FWD_DEFINED__
  44. typedef interface _ADOADOCollection _ADOCollection;
  45. #endif     /* ___ADOCollection_FWD_DEFINED__ */
  46. #ifndef ___ADODynaCollection_FWD_DEFINED__
  47. #define ___ADODynaCollection_FWD_DEFINED__
  48. typedef interface _ADODynaADOCollection _ADODynaCollection;
  49. #endif     /* ___ADODynaCollection_FWD_DEFINED__ */
  50. #ifndef ___Catalog_FWD_DEFINED__
  51. #define ___Catalog_FWD_DEFINED__
  52. typedef interface _ADOCatalog _Catalog;
  53. #endif     /* ___Catalog_FWD_DEFINED__ */
  54. #ifndef ___Table_FWD_DEFINED__
  55. #define ___Table_FWD_DEFINED__
  56. typedef interface _ADOTable _Table;
  57. #endif     /* ___Table_FWD_DEFINED__ */
  58. #ifndef ___Group_FWD_DEFINED__
  59. #define ___Group_FWD_DEFINED__
  60. typedef interface _ADOGroup _Group;
  61. #endif     /* ___Group_FWD_DEFINED__ */
  62. #ifndef ___User_FWD_DEFINED__
  63. #define ___User_FWD_DEFINED__
  64. typedef interface _ADOUser _User;
  65. #endif     /* ___User_FWD_DEFINED__ */
  66. #ifndef ___Column_FWD_DEFINED__
  67. #define ___Column_FWD_DEFINED__
  68. typedef interface _ADOColumn _Column;
  69. #endif     /* ___Column_FWD_DEFINED__ */
  70. #ifndef ___Index_FWD_DEFINED__
  71. #define ___Index_FWD_DEFINED__
  72. typedef interface _ADOIndex _Index;
  73. #endif     /* ___Index_FWD_DEFINED__ */
  74. #ifndef ___Key_FWD_DEFINED__
  75. #define ___Key_FWD_DEFINED__
  76. typedef interface _ADOKey _Key;
  77. #endif     /* ___Key_FWD_DEFINED__ */
  78. #ifndef __View_FWD_DEFINED__
  79. #define __View_FWD_DEFINED__
  80. typedef interface ADOView View;
  81. #endif     /* __View_FWD_DEFINED__ */
  82. #ifndef __Procedure_FWD_DEFINED__
  83. #define __Procedure_FWD_DEFINED__
  84. typedef interface ADOProcedure Procedure;
  85. #endif     /* __Procedure_FWD_DEFINED__ */
  86. #ifndef __Catalog_FWD_DEFINED__
  87. #define __Catalog_FWD_DEFINED__
  88. #ifdef __cplusplus
  89. typedef class ADOCatalog Catalog;
  90. #else
  91. typedef struct ADOCatalog Catalog;
  92. #endif /* __cplusplus */
  93. #endif     /* __Catalog_FWD_DEFINED__ */
  94. #ifndef __Table_FWD_DEFINED__
  95. #define __Table_FWD_DEFINED__
  96. #ifdef __cplusplus
  97. typedef class ADOTable Table;
  98. #else
  99. typedef struct ADOTable Table;
  100. #endif /* __cplusplus */
  101. #endif     /* __Table_FWD_DEFINED__ */
  102. #ifndef __Property_FWD_DEFINED__
  103. #define __Property_FWD_DEFINED__
  104. typedef interface ADOProperty Property;
  105. #endif     /* __Property_FWD_DEFINED__ */
  106. #ifndef __Group_FWD_DEFINED__
  107. #define __Group_FWD_DEFINED__
  108. #ifdef __cplusplus
  109. typedef class ADOGroup Group;
  110. #else
  111. typedef struct ADOGroup Group;
  112. #endif /* __cplusplus */
  113. #endif     /* __Group_FWD_DEFINED__ */
  114. #ifndef __User_FWD_DEFINED__
  115. #define __User_FWD_DEFINED__
  116. #ifdef __cplusplus
  117. typedef class ADOUser User;
  118. #else
  119. typedef struct ADOUser User;
  120. #endif /* __cplusplus */
  121. #endif     /* __User_FWD_DEFINED__ */
  122. #ifndef __Column_FWD_DEFINED__
  123. #define __Column_FWD_DEFINED__
  124. #ifdef __cplusplus
  125. typedef class ADOColumn Column;
  126. #else
  127. typedef struct ADOColumn Column;
  128. #endif /* __cplusplus */
  129. #endif     /* __Column_FWD_DEFINED__ */
  130. #ifndef __Index_FWD_DEFINED__
  131. #define __Index_FWD_DEFINED__
  132. #ifdef __cplusplus
  133. typedef class ADOIndex Index;
  134. #else
  135. typedef struct ADOIndex Index;
  136. #endif /* __cplusplus */
  137. #endif     /* __Index_FWD_DEFINED__ */
  138. #ifndef __Key_FWD_DEFINED__
  139. #define __Key_FWD_DEFINED__
  140. #ifdef __cplusplus
  141. typedef class ADOKey Key;
  142. #else
  143. typedef struct ADOKey Key;
  144. #endif /* __cplusplus */
  145. #endif     /* __Key_FWD_DEFINED__ */
  146. #ifndef __Tables_FWD_DEFINED__
  147. #define __Tables_FWD_DEFINED__
  148. typedef interface ADOTables Tables;
  149. #endif     /* __Tables_FWD_DEFINED__ */
  150. #ifndef __Columns_FWD_DEFINED__
  151. #define __Columns_FWD_DEFINED__
  152. typedef interface ADOColumns Columns;
  153. #endif     /* __Columns_FWD_DEFINED__ */
  154. #ifndef __Procedures_FWD_DEFINED__
  155. #define __Procedures_FWD_DEFINED__
  156. typedef interface ADOProcedures Procedures;
  157. #endif     /* __Procedures_FWD_DEFINED__ */
  158. #ifndef __Views_FWD_DEFINED__
  159. #define __Views_FWD_DEFINED__
  160. typedef interface ADOViews Views;
  161. #endif     /* __Views_FWD_DEFINED__ */
  162. #ifndef __Indexes_FWD_DEFINED__
  163. #define __Indexes_FWD_DEFINED__
  164. typedef interface ADOIndexes Indexes;
  165. #endif     /* __Indexes_FWD_DEFINED__ */
  166. #ifndef __Keys_FWD_DEFINED__
  167. #define __Keys_FWD_DEFINED__
  168. typedef interface ADOKeys Keys;
  169. #endif     /* __Keys_FWD_DEFINED__ */
  170. #ifndef __Users_FWD_DEFINED__
  171. #define __Users_FWD_DEFINED__
  172. typedef interface ADOUsers Users;
  173. #endif     /* __Users_FWD_DEFINED__ */
  174. #ifndef __Groups_FWD_DEFINED__
  175. #define __Groups_FWD_DEFINED__
  176. typedef interface ADOGroups Groups;
  177. #endif     /* __Groups_FWD_DEFINED__ */
  178. #ifndef __Properties_FWD_DEFINED__
  179. #define __Properties_FWD_DEFINED__
  180. typedef interface ADOProperties Properties;
  181. #endif     /* __Properties_FWD_DEFINED__ */
  182. /* header files for imported files */
  183. #include "oaidl.h"
  184. #include "ocidl.h"
  185. #ifdef __cplusplus
  186. extern "C"{
  187. #endif 
  188. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  189. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  190. /* interface __MIDL_itf_AdoCat_0000 */
  191. /* [local] */ 
  192. typedef /* [helpcontext] */ 
  193. enum RuleEnum
  194.     {    adRINone    = 0,
  195.     adRICascade    = 1,
  196.     adRISetNull    = 2,
  197.     adRISetDefault    = 3
  198.     }    RuleEnum;
  199. typedef /* [helpcontext] */ 
  200. enum KeyTypeEnum
  201.     {    adKeyPrimary    = 1,
  202.     adKeyForeign    = 2,
  203.     adKeyUnique    = 3
  204.     }    KeyTypeEnum;
  205. typedef /* [helpcontext] */ 
  206. enum ActionEnum
  207.     {    adAccessGrant    = 1,
  208.     adAccessSet    = 2,
  209.     adAccessDeny    = 3,
  210.     adAccessRevoke    = 4
  211.     }    ActionEnum;
  212. typedef /* [helpcontext] */ 
  213. enum ColumnAttributesEnum
  214.     {    adColFixed    = 1,
  215.     adColNullable    = 2
  216.     }    ColumnAttributesEnum;
  217. typedef /* [helpcontext] */ 
  218. enum SortOrderEnum
  219.     {    adSortAscending    = 1,
  220.     adSortDescending    = 2
  221.     }    SortOrderEnum;
  222. typedef /* [helpcontext] */ 
  223. enum RightsEnum
  224.     {    adRightNone    = 0L,
  225.     adRightDrop    = 0x100L,
  226.     adRightExclusive    = 0x200L,
  227.     adRightReadDesign    = 0x400L,
  228.     adRightWriteDesign    = 0x800L,
  229.     adRightWithGrant    = 0x1000L,
  230.     adRightReference    = 0x2000L,
  231.     adRightCreate    = 0x4000L,
  232.     adRightInsert    = 0x8000L,
  233.     adRightDelete    = 0x10000L,
  234.     adRightReadPermissions    = 0x20000L,
  235.     adRightWritePermissions    = 0x40000L,
  236.     adRightWriteOwner    = 0x80000L,
  237.     adRightMaximumAllowed    = 0x2000000L,
  238.     adRightFull    = 0x10000000L,
  239.     adRightExecute    = 0x20000000L,
  240.     adRightUpdate    = 0x40000000L,
  241.     adRightRead    = 0x80000000L
  242.     }    RightsEnum;
  243. typedef /* [helpcontext] */ 
  244. #ifdef _ADOINT_H_  //Avoid conflicting with ADO def
  245.  class dummy dummy;
  246. #else
  247. enum DataTypeEnum
  248.     {    adEmpty    = 0,
  249.     adTinyInt    = 16,
  250.     adSmallInt    = 2,
  251.     adInteger    = 3,
  252.     adBigInt    = 20,
  253.     adUnsignedTinyInt    = 17,
  254.     adUnsignedSmallInt    = 18,
  255.     adUnsignedInt    = 19,
  256.     adUnsignedBigInt    = 21,
  257.     adSingle    = 4,
  258.     adDouble    = 5,
  259.     adCurrency    = 6,
  260.     adDecimal    = 14,
  261.     adNumeric    = 131,
  262.     adBoolean    = 11,
  263.     adError    = 10,
  264.     adUserDefined    = 132,
  265.     adVariant    = 12,
  266.     adIDispatch    = 9,
  267.     adIUnknown    = 13,
  268.     adGUID    = 72,
  269.     adDate    = 7,
  270.     adDBDate    = 133,
  271.     adDBTime    = 134,
  272.     adDBTimeStamp    = 135,
  273.     adBSTR    = 8,
  274.     adChar    = 129,
  275.     adVarChar    = 200,
  276.     adLongVarChar    = 201,
  277.     adWChar    = 130,
  278.     adVarWChar    = 202,
  279.     adLongVarWChar    = 203,
  280.     adBinary    = 128,
  281.     adVarBinary    = 204,
  282.     adLongVarBinary    = 205,
  283.     adChapter    = 136,
  284.     adFileTime    = 64,
  285.     adPropVariant    = 138,
  286.     adVarNumeric    = 139
  287. }    DataTypeEnum;
  288. #endif //ifdef _ADOINT.H_
  289. typedef /* [helpcontext] */ 
  290. enum AllowNullsEnum
  291.     {    adIndexNullsAllow    = 0,
  292.     adIndexNullsDisallow    = 1,
  293.     adIndexNullsIgnore    = 2,
  294.     adIndexNullsIgnoreAny    = 4
  295.     }    AllowNullsEnum;
  296. typedef /* [helpcontext] */ 
  297. enum ObjectTypeEnum
  298.     {    adPermObjProviderSpecific    = -1,
  299.     adPermObjTable    = 1,
  300.     adPermObjColumn    = 2,
  301.     adPermObjDatabase    = 3,
  302.     adPermObjProcedure    = 4,
  303.     adPermObjView    = 5
  304.     }    ObjectTypeEnum;
  305. typedef /* [helpcontext] */ 
  306. enum InheritTypeEnum
  307.     {    adInheritNone    = 0,
  308.     adInheritObjects    = 1,
  309.     adInheritContainers    = 2,
  310.     adInheritBoth    = 3,
  311.     adInheritNoPropogate    = 4
  312.     }    InheritTypeEnum;
  313. extern RPC_IF_HANDLE __MIDL_itf_AdoCat_0000_v0_0_c_ifspec;
  314. extern RPC_IF_HANDLE __MIDL_itf_AdoCat_0000_v0_0_s_ifspec;
  315. #ifndef __ADOX_LIBRARY_DEFINED__
  316. #define __ADOX_LIBRARY_DEFINED__
  317. /* library ADOX */
  318. /* [helpstring][helpfile][version][uuid] */ 
  319. EXTERN_C const IID LIBID_ADOX;
  320. #ifndef ___ADOCollection_INTERFACE_DEFINED__
  321. #define ___ADOCollection_INTERFACE_DEFINED__
  322. /* interface _ADOADOCollection */
  323. /* [object][uuid][nonextensible][dual] */ 
  324. EXTERN_C const IID IID__ADOCollection;
  325. #if defined(__cplusplus) && !defined(CINTERFACE)
  326.     
  327.     MIDL_INTERFACE("00000512-0000-0010-8000-00AA006D2EA4")
  328.     _ADOADOCollection : public IDispatch
  329.     {
  330.     public:
  331.         virtual /* [helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
  332.             /* [retval][out] */ long __RPC_FAR *c) = 0;
  333.         
  334.         virtual /* [id][restricted] */ HRESULT STDMETHODCALLTYPE _NewEnum( 
  335.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  336.         
  337.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Refresh( void) = 0;
  338.         
  339.     };
  340.     
  341. #else     /* C style interface */
  342.     typedef struct _ADOCollectionVtbl
  343.     {
  344.         BEGIN_INTERFACE
  345.         
  346.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  347.             _ADOADOCollection __RPC_FAR * This,
  348.             /* [in] */ REFIID riid,
  349.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  350.         
  351.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  352.             _ADOADOCollection __RPC_FAR * This);
  353.         
  354.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  355.             _ADOADOCollection __RPC_FAR * This);
  356.         
  357.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  358.             _ADOADOCollection __RPC_FAR * This,
  359.             /* [out] */ UINT __RPC_FAR *pctinfo);
  360.         
  361.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  362.             _ADOADOCollection __RPC_FAR * This,
  363.             /* [in] */ UINT iTInfo,
  364.             /* [in] */ LCID lcid,
  365.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  366.         
  367.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  368.             _ADOADOCollection __RPC_FAR * This,
  369.             /* [in] */ REFIID riid,
  370.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  371.             /* [in] */ UINT cNames,
  372.             /* [in] */ LCID lcid,
  373.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  374.         
  375.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  376.             _ADOADOCollection __RPC_FAR * This,
  377.             /* [in] */ DISPID dispIdMember,
  378.             /* [in] */ REFIID riid,
  379.             /* [in] */ LCID lcid,
  380.             /* [in] */ WORD wFlags,
  381.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  382.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  383.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  384.             /* [out] */ UINT __RPC_FAR *puArgErr);
  385.         
  386.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  387.             _ADOADOCollection __RPC_FAR * This,
  388.             /* [retval][out] */ long __RPC_FAR *c);
  389.         
  390.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  391.             _ADOADOCollection __RPC_FAR * This,
  392.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  393.         
  394.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  395.             _ADOADOCollection __RPC_FAR * This);
  396.         
  397.         END_INTERFACE
  398.     } _ADOCollectionVtbl;
  399.     interface _ADOCollection
  400.     {
  401.         CONST_VTBL struct _ADOCollectionVtbl __RPC_FAR *lpVtbl;
  402.     };
  403.     
  404. #ifdef COBJMACROS
  405. #define _ADOCollection_QueryInterface(This,riid,ppvObject)    \
  406.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  407. #define _ADOCollection_AddRef(This)    \
  408.     (This)->lpVtbl -> AddRef(This)
  409. #define _ADOCollection_Release(This)    \
  410.     (This)->lpVtbl -> Release(This)
  411. #define _ADOCollection_GetTypeInfoCount(This,pctinfo)    \
  412.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  413. #define _ADOCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  414.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  415. #define _ADOCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  416.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  417. #define _ADOCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  418.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  419. #define _Collection_get_Count(This,c)    \
  420.     (This)->lpVtbl -> get_Count(This,c)
  421. #define _ADOCollection__NewEnum(This,ppvObject)    \
  422.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  423. #define _ADOCollection_Refresh(This)    \
  424.     (This)->lpVtbl -> Refresh(This)
  425. #endif /* COBJMACROS */
  426. #endif     /* C style interface */
  427. /* [helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Collection_get_Count_Proxy( 
  428.     _ADOADOCollection __RPC_FAR * This,
  429.     /* [retval][out] */ long __RPC_FAR *c);
  430. void __RPC_STUB _Collection_get_Count_Stub(
  431.     IRpcStubBuffer *This,
  432.     IRpcChannelBuffer *_pRpcChannelBuffer,
  433.     PRPC_MESSAGE _pRpcMessage,
  434.     DWORD *_pdwStubPhase);
  435. /* [id][restricted] */ HRESULT STDMETHODCALLTYPE _ADOCollection__NewEnum_Proxy( 
  436.     _ADOADOCollection __RPC_FAR * This,
  437.     /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  438. void __RPC_STUB _ADOCollection__NewEnum_Stub(
  439.     IRpcStubBuffer *This,
  440.     IRpcChannelBuffer *_pRpcChannelBuffer,
  441.     PRPC_MESSAGE _pRpcMessage,
  442.     DWORD *_pdwStubPhase);
  443. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE _ADOCollection_Refresh_Proxy( 
  444.     _ADOADOCollection __RPC_FAR * This);
  445. void __RPC_STUB _ADOCollection_Refresh_Stub(
  446.     IRpcStubBuffer *This,
  447.     IRpcChannelBuffer *_pRpcChannelBuffer,
  448.     PRPC_MESSAGE _pRpcMessage,
  449.     DWORD *_pdwStubPhase);
  450. #endif     /* ___ADOCollection_INTERFACE_DEFINED__ */
  451. #ifndef ___ADODynaCollection_INTERFACE_DEFINED__
  452. #define ___ADODynaCollection_INTERFACE_DEFINED__
  453. /* interface _ADODynaADOCollection */
  454. /* [object][uuid][nonextensible][dual] */ 
  455. EXTERN_C const IID IID__ADODynaCollection;
  456. #if defined(__cplusplus) && !defined(CINTERFACE)
  457.     
  458.     MIDL_INTERFACE("00000513-0000-0010-8000-00AA006D2EA4")
  459. _ADODynaADOCollection : public _ADOCollection
  460.     {
  461.     public:
  462.         virtual HRESULT STDMETHODCALLTYPE Append( 
  463.             /* [in] */ IDispatch __RPC_FAR *Object) = 0;
  464.         
  465.         virtual HRESULT STDMETHODCALLTYPE Delete( 
  466.             /* [in] */ VARIANT Item) = 0;
  467.         
  468.     };
  469.     
  470. #else     /* C style interface */
  471.     typedef struct _ADODynaCollectionVtbl
  472.     {
  473.         BEGIN_INTERFACE
  474.         
  475.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  476.             _ADODynaADOCollection __RPC_FAR * This,
  477.             /* [in] */ REFIID riid,
  478.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  479.         
  480.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  481.             _ADODynaADOCollection __RPC_FAR * This);
  482.         
  483.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  484.             _ADODynaADOCollection __RPC_FAR * This);
  485.         
  486.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  487.             _ADODynaADOCollection __RPC_FAR * This,
  488.             /* [out] */ UINT __RPC_FAR *pctinfo);
  489.         
  490.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  491.             _ADODynaADOCollection __RPC_FAR * This,
  492.             /* [in] */ UINT iTInfo,
  493.             /* [in] */ LCID lcid,
  494.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  495.         
  496.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  497.             _ADODynaADOCollection __RPC_FAR * This,
  498.             /* [in] */ REFIID riid,
  499.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  500.             /* [in] */ UINT cNames,
  501.             /* [in] */ LCID lcid,
  502.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  503.         
  504.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  505.             _ADODynaADOCollection __RPC_FAR * This,
  506.             /* [in] */ DISPID dispIdMember,
  507.             /* [in] */ REFIID riid,
  508.             /* [in] */ LCID lcid,
  509.             /* [in] */ WORD wFlags,
  510.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  511.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  512.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  513.             /* [out] */ UINT __RPC_FAR *puArgErr);
  514.         
  515.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  516.             _ADODynaADOCollection __RPC_FAR * This,
  517.             /* [retval][out] */ long __RPC_FAR *c);
  518.         
  519.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  520.             _ADODynaADOCollection __RPC_FAR * This,
  521.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  522.         
  523.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  524.             _ADODynaADOCollection __RPC_FAR * This);
  525.         
  526.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  527.             _ADODynaADOCollection __RPC_FAR * This,
  528.             /* [in] */ IDispatch __RPC_FAR *Object);
  529.         
  530.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  531.             _ADODynaADOCollection __RPC_FAR * This,
  532.             /* [in] */ VARIANT Item);
  533.         
  534.         END_INTERFACE
  535.     } _ADODynaCollectionVtbl;
  536.     interface _ADODynaCollection
  537.     {
  538.         CONST_VTBL struct _ADODynaCollectionVtbl __RPC_FAR *lpVtbl;
  539.     };
  540.     
  541. #ifdef COBJMACROS
  542. #define _ADODynaCollection_QueryInterface(This,riid,ppvObject)    \
  543.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  544. #define _ADODynaCollection_AddRef(This)    \
  545.     (This)->lpVtbl -> AddRef(This)
  546. #define _ADODynaCollection_Release(This)    \
  547.     (This)->lpVtbl -> Release(This)
  548. #define _ADODynaCollection_GetTypeInfoCount(This,pctinfo)    \
  549.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  550. #define _ADODynaCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  551.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  552. #define _ADODynaCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  553.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  554. #define _ADODynaCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  555.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  556. #define _DynaCollection_get_Count(This,c)    \
  557.     (This)->lpVtbl -> get_Count(This,c)
  558. #define _ADODynaCollection__NewEnum(This,ppvObject)    \
  559.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  560. #define _ADODynaCollection_Refresh(This)    \
  561.     (This)->lpVtbl -> Refresh(This)
  562. #define _ADODynaCollection_Append(This,Object)    \
  563.     (This)->lpVtbl -> Append(This,Object)
  564. #define _ADODynaCollection_Delete(This,Item)    \
  565.     (This)->lpVtbl -> Delete(This,Item)
  566. #endif /* COBJMACROS */
  567. #endif     /* C style interface */
  568. HRESULT STDMETHODCALLTYPE _ADODynaCollection_Append_Proxy( 
  569.     _ADODynaADOCollection __RPC_FAR * This,
  570.     /* [in] */ IDispatch __RPC_FAR *Object);
  571. void __RPC_STUB _ADODynaCollection_Append_Stub(
  572.     IRpcStubBuffer *This,
  573.     IRpcChannelBuffer *_pRpcChannelBuffer,
  574.     PRPC_MESSAGE _pRpcMessage,
  575.     DWORD *_pdwStubPhase);
  576. HRESULT STDMETHODCALLTYPE _ADODynaCollection_Delete_Proxy( 
  577.     _ADODynaADOCollection __RPC_FAR * This,
  578.     /* [in] */ VARIANT Item);
  579. void __RPC_STUB _ADODynaCollection_Delete_Stub(
  580.     IRpcStubBuffer *This,
  581.     IRpcChannelBuffer *_pRpcChannelBuffer,
  582.     PRPC_MESSAGE _pRpcMessage,
  583.     DWORD *_pdwStubPhase);
  584. #endif     /* ___ADODynaCollection_INTERFACE_DEFINED__ */
  585. #ifndef ___Catalog_INTERFACE_DEFINED__
  586. #define ___Catalog_INTERFACE_DEFINED__
  587. /* interface _ADOCatalog */
  588. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  589. EXTERN_C const IID IID__Catalog;
  590. #if defined(__cplusplus) && !defined(CINTERFACE)
  591.     
  592.     MIDL_INTERFACE("00000603-0000-0010-8000-00AA006D2EA4")
  593.     _ADOCatalog : public IDispatch
  594.     {
  595.     public:
  596.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tables( 
  597.             /* [retval][out] */ ADOTables __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  598.         
  599.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveConnection( 
  600.             /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
  601.         
  602.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ActiveConnection( 
  603.             /* [in] */ VARIANT newVal) = 0;
  604.         
  605.         virtual /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE putref_ActiveConnection( 
  606.             /* [in] */ IDispatch __RPC_FAR *pCon) = 0;
  607.         
  608.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Procedures( 
  609.             /* [retval][out] */ ADOProcedures __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  610.         
  611.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Views( 
  612.             /* [retval][out] */ ADOViews __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  613.         
  614.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Groups( 
  615.             /* [retval][out] */ ADOGroups __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  616.         
  617.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Users( 
  618.             /* [retval][out] */ ADOUsers __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  619.         
  620.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Create( 
  621.             /* [in] */ BSTR ConnectString,
  622.             /* [retval][out] */ VARIANT __RPC_FAR *Connection) = 0;
  623.         
  624.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetObjectOwner( 
  625.             /* [in] */ BSTR ObjectName,
  626.             /* [in] */ ObjectTypeEnum ObjectType,
  627.             /* [optional][in] */ VARIANT ObjectTypeId,
  628.             /* [retval][out] */ BSTR __RPC_FAR *OwnerName) = 0;
  629.         
  630.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetObjectOwner( 
  631.             /* [in] */ BSTR ObjectName,
  632.             /* [in] */ ObjectTypeEnum ObjectType,
  633.             /* [in] */ BSTR UserName,
  634.             /* [optional][in] */ VARIANT ObjectTypeId) = 0;
  635.         
  636.     };
  637.     
  638. #else     /* C style interface */
  639.     typedef struct _CatalogVtbl
  640.     {
  641.         BEGIN_INTERFACE
  642.         
  643.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  644.             _ADOCatalog __RPC_FAR * This,
  645.             /* [in] */ REFIID riid,
  646.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  647.         
  648.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  649.             _ADOCatalog __RPC_FAR * This);
  650.         
  651.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  652.             _ADOCatalog __RPC_FAR * This);
  653.         
  654.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  655.             _ADOCatalog __RPC_FAR * This,
  656.             /* [out] */ UINT __RPC_FAR *pctinfo);
  657.         
  658.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  659.             _ADOCatalog __RPC_FAR * This,
  660.             /* [in] */ UINT iTInfo,
  661.             /* [in] */ LCID lcid,
  662.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  663.         
  664.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  665.             _ADOCatalog __RPC_FAR * This,
  666.             /* [in] */ REFIID riid,
  667.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  668.             /* [in] */ UINT cNames,
  669.             /* [in] */ LCID lcid,
  670.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  671.         
  672.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  673.             _ADOCatalog __RPC_FAR * This,
  674.             /* [in] */ DISPID dispIdMember,
  675.             /* [in] */ REFIID riid,
  676.             /* [in] */ LCID lcid,
  677.             /* [in] */ WORD wFlags,
  678.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  679.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  680.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  681.             /* [out] */ UINT __RPC_FAR *puArgErr);
  682.         
  683.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tables )( 
  684.             _ADOCatalog __RPC_FAR * This,
  685.             /* [retval][out] */ ADOTables __RPC_FAR *__RPC_FAR *ppvObject);
  686.         
  687.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveConnection )( 
  688.             _ADOCatalog __RPC_FAR * This,
  689.             /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  690.         
  691.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ActiveConnection )( 
  692.             _ADOCatalog __RPC_FAR * This,
  693.             /* [in] */ VARIANT newVal);
  694.         
  695.         /* [helpcontext][id][propputref] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *putref_ActiveConnection )( 
  696.             _ADOCatalog __RPC_FAR * This,
  697.             /* [in] */ IDispatch __RPC_FAR *pCon);
  698.         
  699.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Procedures )( 
  700.             _ADOCatalog __RPC_FAR * This,
  701.             /* [retval][out] */ ADOProcedures __RPC_FAR *__RPC_FAR *ppvObject);
  702.         
  703.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Views )( 
  704.             _ADOCatalog __RPC_FAR * This,
  705.             /* [retval][out] */ ADOViews __RPC_FAR *__RPC_FAR *ppvObject);
  706.         
  707.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Groups )( 
  708.             _ADOCatalog __RPC_FAR * This,
  709.             /* [retval][out] */ ADOGroups __RPC_FAR *__RPC_FAR *ppvObject);
  710.         
  711.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Users )( 
  712.             _ADOCatalog __RPC_FAR * This,
  713.             /* [retval][out] */ ADOUsers __RPC_FAR *__RPC_FAR *ppvObject);
  714.         
  715.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Create )( 
  716.             _ADOCatalog __RPC_FAR * This,
  717.             /* [in] */ BSTR ConnectString,
  718.             /* [retval][out] */ VARIANT __RPC_FAR *Connection);
  719.         
  720.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjectOwner )( 
  721.             _ADOCatalog __RPC_FAR * This,
  722.             /* [in] */ BSTR ObjectName,
  723.             /* [in] */ ObjectTypeEnum ObjectType,
  724.             /* [optional][in] */ VARIANT ObjectTypeId,
  725.             /* [retval][out] */ BSTR __RPC_FAR *OwnerName);
  726.         
  727.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObjectOwner )( 
  728.             _ADOCatalog __RPC_FAR * This,
  729.             /* [in] */ BSTR ObjectName,
  730.             /* [in] */ ObjectTypeEnum ObjectType,
  731.             /* [in] */ BSTR UserName,
  732.             /* [optional][in] */ VARIANT ObjectTypeId);
  733.         
  734.         END_INTERFACE
  735.     } _CatalogVtbl;
  736.     interface _Catalog
  737.     {
  738.         CONST_VTBL struct _CatalogVtbl __RPC_FAR *lpVtbl;
  739.     };
  740.     
  741. #ifdef COBJMACROS
  742. #define _Catalog_QueryInterface(This,riid,ppvObject)    \
  743.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  744. #define _Catalog_AddRef(This)    \
  745.     (This)->lpVtbl -> AddRef(This)
  746. #define _Catalog_Release(This)    \
  747.     (This)->lpVtbl -> Release(This)
  748. #define _Catalog_GetTypeInfoCount(This,pctinfo)    \
  749.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  750. #define _Catalog_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  751.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  752. #define _Catalog_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  753.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  754. #define _Catalog_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  755.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  756. #define _Catalog_get_Tables(This,ppvObject)    \
  757.     (This)->lpVtbl -> get_Tables(This,ppvObject)
  758. #define _Catalog_get_ActiveConnection(This,pVal)    \
  759.     (This)->lpVtbl -> get_ActiveConnection(This,pVal)
  760. #define _Catalog_put_ActiveConnection(This,newVal)    \
  761.     (This)->lpVtbl -> put_ActiveConnection(This,newVal)
  762. #define _Catalog_putref_ActiveConnection(This,pCon)    \
  763.     (This)->lpVtbl -> putref_ActiveConnection(This,pCon)
  764. #define _Catalog_get_Procedures(This,ppvObject)    \
  765.     (This)->lpVtbl -> get_Procedures(This,ppvObject)
  766. #define _Catalog_get_Views(This,ppvObject)    \
  767.     (This)->lpVtbl -> get_Views(This,ppvObject)
  768. #define _Catalog_get_Groups(This,ppvObject)    \
  769.     (This)->lpVtbl -> get_Groups(This,ppvObject)
  770. #define _Catalog_get_Users(This,ppvObject)    \
  771.     (This)->lpVtbl -> get_Users(This,ppvObject)
  772. #define _Catalog_Create(This,ConnectString,Connection)    \
  773.     (This)->lpVtbl -> Create(This,ConnectString,Connection)
  774. #define _Catalog_GetObjectOwner(This,ObjectName,ObjectType,ObjectTypeId,OwnerName)    \
  775.     (This)->lpVtbl -> GetObjectOwner(This,ObjectName,ObjectType,ObjectTypeId,OwnerName)
  776. #define _Catalog_SetObjectOwner(This,ObjectName,ObjectType,UserName,ObjectTypeId)    \
  777.     (This)->lpVtbl -> SetObjectOwner(This,ObjectName,ObjectType,UserName,ObjectTypeId)
  778. #endif /* COBJMACROS */
  779. #endif     /* C style interface */
  780. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Catalog_get_Tables_Proxy( 
  781.     _ADOCatalog __RPC_FAR * This,
  782.     /* [retval][out] */ ADOTables __RPC_FAR *__RPC_FAR *ppvObject);
  783. void __RPC_STUB _Catalog_get_Tables_Stub(
  784.     IRpcStubBuffer *This,
  785.     IRpcChannelBuffer *_pRpcChannelBuffer,
  786.     PRPC_MESSAGE _pRpcMessage,
  787.     DWORD *_pdwStubPhase);
  788. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Catalog_get_ActiveConnection_Proxy( 
  789.     _ADOCatalog __RPC_FAR * This,
  790.     /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  791. void __RPC_STUB _Catalog_get_ActiveConnection_Stub(
  792.     IRpcStubBuffer *This,
  793.     IRpcChannelBuffer *_pRpcChannelBuffer,
  794.     PRPC_MESSAGE _pRpcMessage,
  795.     DWORD *_pdwStubPhase);
  796. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Catalog_put_ActiveConnection_Proxy( 
  797.     _ADOCatalog __RPC_FAR * This,
  798.     /* [in] */ VARIANT newVal);
  799. void __RPC_STUB _Catalog_put_ActiveConnection_Stub(
  800.     IRpcStubBuffer *This,
  801.     IRpcChannelBuffer *_pRpcChannelBuffer,
  802.     PRPC_MESSAGE _pRpcMessage,
  803.     DWORD *_pdwStubPhase);
  804. /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE _Catalog_putref_ActiveConnection_Proxy( 
  805.     _ADOCatalog __RPC_FAR * This,
  806.     /* [in] */ IDispatch __RPC_FAR *pCon);
  807. void __RPC_STUB _Catalog_putref_ActiveConnection_Stub(
  808.     IRpcStubBuffer *This,
  809.     IRpcChannelBuffer *_pRpcChannelBuffer,
  810.     PRPC_MESSAGE _pRpcMessage,
  811.     DWORD *_pdwStubPhase);
  812. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Catalog_get_Procedures_Proxy( 
  813.     _ADOCatalog __RPC_FAR * This,
  814.     /* [retval][out] */ ADOProcedures __RPC_FAR *__RPC_FAR *ppvObject);
  815. void __RPC_STUB _Catalog_get_Procedures_Stub(
  816.     IRpcStubBuffer *This,
  817.     IRpcChannelBuffer *_pRpcChannelBuffer,
  818.     PRPC_MESSAGE _pRpcMessage,
  819.     DWORD *_pdwStubPhase);
  820. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Catalog_get_Views_Proxy( 
  821.     _ADOCatalog __RPC_FAR * This,
  822.     /* [retval][out] */ ADOViews __RPC_FAR *__RPC_FAR *ppvObject);
  823. void __RPC_STUB _Catalog_get_Views_Stub(
  824.     IRpcStubBuffer *This,
  825.     IRpcChannelBuffer *_pRpcChannelBuffer,
  826.     PRPC_MESSAGE _pRpcMessage,
  827.     DWORD *_pdwStubPhase);
  828. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Catalog_get_Groups_Proxy( 
  829.     _ADOCatalog __RPC_FAR * This,
  830.     /* [retval][out] */ ADOGroups __RPC_FAR *__RPC_FAR *ppvObject);
  831. void __RPC_STUB _Catalog_get_Groups_Stub(
  832.     IRpcStubBuffer *This,
  833.     IRpcChannelBuffer *_pRpcChannelBuffer,
  834.     PRPC_MESSAGE _pRpcMessage,
  835.     DWORD *_pdwStubPhase);
  836. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Catalog_get_Users_Proxy( 
  837.     _ADOCatalog __RPC_FAR * This,
  838.     /* [retval][out] */ ADOUsers __RPC_FAR *__RPC_FAR *ppvObject);
  839. void __RPC_STUB _Catalog_get_Users_Stub(
  840.     IRpcStubBuffer *This,
  841.     IRpcChannelBuffer *_pRpcChannelBuffer,
  842.     PRPC_MESSAGE _pRpcMessage,
  843.     DWORD *_pdwStubPhase);
  844. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Catalog_Create_Proxy( 
  845.     _ADOCatalog __RPC_FAR * This,
  846.     /* [in] */ BSTR ConnectString,
  847.     /* [retval][out] */ VARIANT __RPC_FAR *Connection);
  848. void __RPC_STUB _Catalog_Create_Stub(
  849.     IRpcStubBuffer *This,
  850.     IRpcChannelBuffer *_pRpcChannelBuffer,
  851.     PRPC_MESSAGE _pRpcMessage,
  852.     DWORD *_pdwStubPhase);
  853. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Catalog_GetObjectOwner_Proxy( 
  854.     _ADOCatalog __RPC_FAR * This,
  855.     /* [in] */ BSTR ObjectName,
  856.     /* [in] */ ObjectTypeEnum ObjectType,
  857.     /* [optional][in] */ VARIANT ObjectTypeId,
  858.     /* [retval][out] */ BSTR __RPC_FAR *OwnerName);
  859. void __RPC_STUB _Catalog_GetObjectOwner_Stub(
  860.     IRpcStubBuffer *This,
  861.     IRpcChannelBuffer *_pRpcChannelBuffer,
  862.     PRPC_MESSAGE _pRpcMessage,
  863.     DWORD *_pdwStubPhase);
  864. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Catalog_SetObjectOwner_Proxy( 
  865.     _ADOCatalog __RPC_FAR * This,
  866.     /* [in] */ BSTR ObjectName,
  867.     /* [in] */ ObjectTypeEnum ObjectType,
  868.     /* [in] */ BSTR UserName,
  869.     /* [optional][in] */ VARIANT ObjectTypeId);
  870. void __RPC_STUB _Catalog_SetObjectOwner_Stub(
  871.     IRpcStubBuffer *This,
  872.     IRpcChannelBuffer *_pRpcChannelBuffer,
  873.     PRPC_MESSAGE _pRpcMessage,
  874.     DWORD *_pdwStubPhase);
  875. #endif     /* ___Catalog_INTERFACE_DEFINED__ */
  876. #ifndef ___Table_INTERFACE_DEFINED__
  877. #define ___Table_INTERFACE_DEFINED__
  878. /* interface _ADOTable */
  879. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  880. EXTERN_C const IID IID__Table;
  881. #if defined(__cplusplus) && !defined(CINTERFACE)
  882.     
  883.     MIDL_INTERFACE("00000610-0000-0010-8000-00AA006D2EA4")
  884.     _ADOTable : public IDispatch
  885.     {
  886.     public:
  887.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Columns( 
  888.             /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  889.         
  890.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  891.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  892.         
  893.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
  894.             /* [in] */ BSTR newVal) = 0;
  895.         
  896.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  897.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  898.         
  899.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Indexes( 
  900.             /* [retval][out] */ ADOIndexes __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  901.         
  902.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Keys( 
  903.             /* [retval][out] */ ADOKeys __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  904.         
  905.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Properties( 
  906.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  907.         
  908.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DateCreated( 
  909.             /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
  910.         
  911.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DateModified( 
  912.             /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
  913.         
  914.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParentCatalog( 
  915.             /* [retval][out] */ _ADOCatalog __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  916.         
  917.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ParentCatalog( 
  918.             /* [in] */ _ADOCatalog __RPC_FAR *ppvObject) = 0;
  919.         
  920.         virtual /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE putref_ParentCatalog( 
  921.             /* [in] */ _ADOCatalog __RPC_FAR *ppvObject) = 0;
  922.         
  923.     };
  924.     
  925. #else     /* C style interface */
  926.     typedef struct _TableVtbl
  927.     {
  928.         BEGIN_INTERFACE
  929.         
  930.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  931.             _ADOTable __RPC_FAR * This,
  932.             /* [in] */ REFIID riid,
  933.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  934.         
  935.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  936.             _ADOTable __RPC_FAR * This);
  937.         
  938.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  939.             _ADOTable __RPC_FAR * This);
  940.         
  941.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  942.             _ADOTable __RPC_FAR * This,
  943.             /* [out] */ UINT __RPC_FAR *pctinfo);
  944.         
  945.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  946.             _ADOTable __RPC_FAR * This,
  947.             /* [in] */ UINT iTInfo,
  948.             /* [in] */ LCID lcid,
  949.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  950.         
  951.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  952.             _ADOTable __RPC_FAR * This,
  953.             /* [in] */ REFIID riid,
  954.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  955.             /* [in] */ UINT cNames,
  956.             /* [in] */ LCID lcid,
  957.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  958.         
  959.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  960.             _ADOTable __RPC_FAR * This,
  961.             /* [in] */ DISPID dispIdMember,
  962.             /* [in] */ REFIID riid,
  963.             /* [in] */ LCID lcid,
  964.             /* [in] */ WORD wFlags,
  965.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  966.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  967.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  968.             /* [out] */ UINT __RPC_FAR *puArgErr);
  969.         
  970.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Columns )( 
  971.             _ADOTable __RPC_FAR * This,
  972.             /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject);
  973.         
  974.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  975.             _ADOTable __RPC_FAR * This,
  976.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  977.         
  978.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
  979.             _ADOTable __RPC_FAR * This,
  980.             /* [in] */ BSTR newVal);
  981.         
  982.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
  983.             _ADOTable __RPC_FAR * This,
  984.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  985.         
  986.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Indexes )( 
  987.             _ADOTable __RPC_FAR * This,
  988.             /* [retval][out] */ ADOIndexes __RPC_FAR *__RPC_FAR *ppvObject);
  989.         
  990.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Keys )( 
  991.             _ADOTable __RPC_FAR * This,
  992.             /* [retval][out] */ ADOKeys __RPC_FAR *__RPC_FAR *ppvObject);
  993.         
  994.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  995.             _ADOTable __RPC_FAR * This,
  996.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  997.         
  998.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DateCreated )( 
  999.             _ADOTable __RPC_FAR * This,
  1000.             /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  1001.         
  1002.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DateModified )( 
  1003.             _ADOTable __RPC_FAR * This,
  1004.             /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  1005.         
  1006.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParentCatalog )( 
  1007.             _ADOTable __RPC_FAR * This,
  1008.             /* [retval][out] */ _ADOCatalog __RPC_FAR *__RPC_FAR *ppvObject);
  1009.         
  1010.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ParentCatalog )( 
  1011.             _ADOTable __RPC_FAR * This,
  1012.             /* [in] */ _ADOCatalog __RPC_FAR *ppvObject);
  1013.         
  1014.         /* [helpcontext][id][propputref] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *putref_ParentADOCatalog )( 
  1015.             _ADOTable __RPC_FAR * This,
  1016.             /* [in] */ _ADOCatalog __RPC_FAR *ppvObject);
  1017.         
  1018.         END_INTERFACE
  1019.     } _TableVtbl;
  1020.     interface _Table
  1021.     {
  1022.         CONST_VTBL struct _TableVtbl __RPC_FAR *lpVtbl;
  1023.     };
  1024.     
  1025. #ifdef COBJMACROS
  1026. #define _Table_QueryInterface(This,riid,ppvObject)    \
  1027.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1028. #define _Table_AddRef(This)    \
  1029.     (This)->lpVtbl -> AddRef(This)
  1030. #define _Table_Release(This)    \
  1031.     (This)->lpVtbl -> Release(This)
  1032. #define _Table_GetTypeInfoCount(This,pctinfo)    \
  1033.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1034. #define _Table_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  1035.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1036. #define _Table_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  1037.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1038. #define _Table_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  1039.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1040. #define _Table_get_Columns(This,ppvObject)    \
  1041.     (This)->lpVtbl -> get_Columns(This,ppvObject)
  1042. #define _Table_get_Name(This,pVal)    \
  1043.     (This)->lpVtbl -> get_Name(This,pVal)
  1044. #define _Table_put_Name(This,newVal)    \
  1045.     (This)->lpVtbl -> put_Name(This,newVal)
  1046. #define _Table_get_Type(This,pVal)    \
  1047.     (This)->lpVtbl -> get_Type(This,pVal)
  1048. #define _Table_get_Indexes(This,ppvObject)    \
  1049.     (This)->lpVtbl -> get_Indexes(This,ppvObject)
  1050. #define _Table_get_Keys(This,ppvObject)    \
  1051.     (This)->lpVtbl -> get_Keys(This,ppvObject)
  1052. #define _Table_get_Properties(This,ppvObject)    \
  1053.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  1054. #define _Table_get_DateCreated(This,pVal)    \
  1055.     (This)->lpVtbl -> get_DateCreated(This,pVal)
  1056. #define _Table_get_DateModified(This,pVal)    \
  1057.     (This)->lpVtbl -> get_DateModified(This,pVal)
  1058. #define _Table_get_ParentCatalog(This,ppvObject)    \
  1059.     (This)->lpVtbl -> get_ParentCatalog(This,ppvObject)
  1060. #define _Table_put_ParentCatalog(This,ppvObject)    \
  1061.     (This)->lpVtbl -> put_ParentCatalog(This,ppvObject)
  1062. #define _Table_putref_ParentCatalog(This,ppvObject)    \
  1063.     (This)->lpVtbl -> putref_ParentCatalog(This,ppvObject)
  1064. #endif /* COBJMACROS */
  1065. #endif     /* C style interface */
  1066. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_Columns_Proxy( 
  1067.     _ADOTable __RPC_FAR * This,
  1068.     /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject);
  1069. void __RPC_STUB _Table_get_Columns_Stub(
  1070.     IRpcStubBuffer *This,
  1071.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1072.     PRPC_MESSAGE _pRpcMessage,
  1073.     DWORD *_pdwStubPhase);
  1074. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_Name_Proxy( 
  1075.     _ADOTable __RPC_FAR * This,
  1076.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1077. void __RPC_STUB _Table_get_Name_Stub(
  1078.     IRpcStubBuffer *This,
  1079.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1080.     PRPC_MESSAGE _pRpcMessage,
  1081.     DWORD *_pdwStubPhase);
  1082. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Table_put_Name_Proxy( 
  1083.     _ADOTable __RPC_FAR * This,
  1084.     /* [in] */ BSTR newVal);
  1085. void __RPC_STUB _Table_put_Name_Stub(
  1086.     IRpcStubBuffer *This,
  1087.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1088.     PRPC_MESSAGE _pRpcMessage,
  1089.     DWORD *_pdwStubPhase);
  1090. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_Type_Proxy( 
  1091.     _ADOTable __RPC_FAR * This,
  1092.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1093. void __RPC_STUB _Table_get_Type_Stub(
  1094.     IRpcStubBuffer *This,
  1095.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1096.     PRPC_MESSAGE _pRpcMessage,
  1097.     DWORD *_pdwStubPhase);
  1098. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_Indexes_Proxy( 
  1099.     _ADOTable __RPC_FAR * This,
  1100.     /* [retval][out] */ ADOIndexes __RPC_FAR *__RPC_FAR *ppvObject);
  1101. void __RPC_STUB _Table_get_Indexes_Stub(
  1102.     IRpcStubBuffer *This,
  1103.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1104.     PRPC_MESSAGE _pRpcMessage,
  1105.     DWORD *_pdwStubPhase);
  1106. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_Keys_Proxy( 
  1107.     _ADOTable __RPC_FAR * This,
  1108.     /* [retval][out] */ ADOKeys __RPC_FAR *__RPC_FAR *ppvObject);
  1109. void __RPC_STUB _Table_get_Keys_Stub(
  1110.     IRpcStubBuffer *This,
  1111.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1112.     PRPC_MESSAGE _pRpcMessage,
  1113.     DWORD *_pdwStubPhase);
  1114. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_Properties_Proxy( 
  1115.     _ADOTable __RPC_FAR * This,
  1116.     /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  1117. void __RPC_STUB _Table_get_Properties_Stub(
  1118.     IRpcStubBuffer *This,
  1119.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1120.     PRPC_MESSAGE _pRpcMessage,
  1121.     DWORD *_pdwStubPhase);
  1122. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_DateCreated_Proxy( 
  1123.     _ADOTable __RPC_FAR * This,
  1124.     /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  1125. void __RPC_STUB _Table_get_DateCreated_Stub(
  1126.     IRpcStubBuffer *This,
  1127.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1128.     PRPC_MESSAGE _pRpcMessage,
  1129.     DWORD *_pdwStubPhase);
  1130. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_DateModified_Proxy( 
  1131.     _ADOTable __RPC_FAR * This,
  1132.     /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  1133. void __RPC_STUB _Table_get_DateModified_Stub(
  1134.     IRpcStubBuffer *This,
  1135.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1136.     PRPC_MESSAGE _pRpcMessage,
  1137.     DWORD *_pdwStubPhase);
  1138. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Table_get_ParentCatalog_Proxy( 
  1139.     _ADOTable __RPC_FAR * This,
  1140.     /* [retval][out] */ _ADOCatalog __RPC_FAR *__RPC_FAR *ppvObject);
  1141. void __RPC_STUB _Table_get_ParentCatalog_Stub(
  1142.     IRpcStubBuffer *This,
  1143.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1144.     PRPC_MESSAGE _pRpcMessage,
  1145.     DWORD *_pdwStubPhase);
  1146. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Table_put_ParentCatalog_Proxy( 
  1147.     _ADOTable __RPC_FAR * This,
  1148.     /* [in] */ _ADOCatalog __RPC_FAR *ppvObject);
  1149. void __RPC_STUB _Table_put_ParentCatalog_Stub(
  1150.     IRpcStubBuffer *This,
  1151.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1152.     PRPC_MESSAGE _pRpcMessage,
  1153.     DWORD *_pdwStubPhase);
  1154. /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE _Table_putref_ParentCatalog_Proxy( 
  1155.     _ADOTable __RPC_FAR * This,
  1156.     /* [in] */ _ADOCatalog __RPC_FAR *ppvObject);
  1157. void __RPC_STUB _Table_putref_ParentCatalog_Stub(
  1158.     IRpcStubBuffer *This,
  1159.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1160.     PRPC_MESSAGE _pRpcMessage,
  1161.     DWORD *_pdwStubPhase);
  1162. #endif     /* ___Table_INTERFACE_DEFINED__ */
  1163. #ifndef ___Group_INTERFACE_DEFINED__
  1164. #define ___Group_INTERFACE_DEFINED__
  1165. /* interface _ADOGroup */
  1166. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  1167. EXTERN_C const IID IID__Group;
  1168. #if defined(__cplusplus) && !defined(CINTERFACE)
  1169.     
  1170.     MIDL_INTERFACE("00000616-0000-0010-8000-00AA006D2EA4")
  1171.     _ADOGroup : public IDispatch
  1172.     {
  1173.     public:
  1174.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1175.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  1176.         
  1177.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
  1178.             /* [in] */ BSTR newVal) = 0;
  1179.         
  1180.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetPermissions( 
  1181.             /* [in] */ VARIANT Name,
  1182.             /* [in] */ ObjectTypeEnum ObjectType,
  1183.             /* [optional][in] */ VARIANT ObjectTypeId,
  1184.             /* [retval][out] */ RightsEnum __RPC_FAR *Rights) = 0;
  1185.         
  1186.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetPermissions( 
  1187.             /* [in] */ VARIANT Name,
  1188.             /* [in] */ ObjectTypeEnum ObjectType,
  1189.             /* [in] */ ActionEnum Action,
  1190.             /* [in] */ RightsEnum Rights,
  1191.             /* [defaultvalue][in] */ InheritTypeEnum Inherit,
  1192.             /* [optional][in] */ VARIANT ObjectTypeId) = 0;
  1193.         
  1194.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Users( 
  1195.             /* [retval][out] */ ADOUsers __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  1196.         
  1197.     };
  1198.     
  1199. #else     /* C style interface */
  1200.     typedef struct _GroupVtbl
  1201.     {
  1202.         BEGIN_INTERFACE
  1203.         
  1204.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1205.             _ADOGroup __RPC_FAR * This,
  1206.             /* [in] */ REFIID riid,
  1207.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1208.         
  1209.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1210.             _ADOGroup __RPC_FAR * This);
  1211.         
  1212.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1213.             _ADOGroup __RPC_FAR * This);
  1214.         
  1215.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1216.             _ADOGroup __RPC_FAR * This,
  1217.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1218.         
  1219.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1220.             _ADOGroup __RPC_FAR * This,
  1221.             /* [in] */ UINT iTInfo,
  1222.             /* [in] */ LCID lcid,
  1223.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  1224.         
  1225.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1226.             _ADOGroup __RPC_FAR * This,
  1227.             /* [in] */ REFIID riid,
  1228.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1229.             /* [in] */ UINT cNames,
  1230.             /* [in] */ LCID lcid,
  1231.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  1232.         
  1233.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1234.             _ADOGroup __RPC_FAR * This,
  1235.             /* [in] */ DISPID dispIdMember,
  1236.             /* [in] */ REFIID riid,
  1237.             /* [in] */ LCID lcid,
  1238.             /* [in] */ WORD wFlags,
  1239.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  1240.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  1241.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  1242.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1243.         
  1244.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  1245.             _ADOGroup __RPC_FAR * This,
  1246.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1247.         
  1248.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
  1249.             _ADOGroup __RPC_FAR * This,
  1250.             /* [in] */ BSTR newVal);
  1251.         
  1252.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPermissions )( 
  1253.             _ADOGroup __RPC_FAR * This,
  1254.             /* [in] */ VARIANT Name,
  1255.             /* [in] */ ObjectTypeEnum ObjectType,
  1256.             /* [optional][in] */ VARIANT ObjectTypeId,
  1257.             /* [retval][out] */ RightsEnum __RPC_FAR *Rights);
  1258.         
  1259.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPermissions )( 
  1260.             _ADOGroup __RPC_FAR * This,
  1261.             /* [in] */ VARIANT Name,
  1262.             /* [in] */ ObjectTypeEnum ObjectType,
  1263.             /* [in] */ ActionEnum Action,
  1264.             /* [in] */ RightsEnum Rights,
  1265.             /* [defaultvalue][in] */ InheritTypeEnum Inherit,
  1266.             /* [optional][in] */ VARIANT ObjectTypeId);
  1267.         
  1268.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Users )( 
  1269.             _ADOGroup __RPC_FAR * This,
  1270.             /* [retval][out] */ ADOUsers __RPC_FAR *__RPC_FAR *ppvObject);
  1271.         
  1272.         END_INTERFACE
  1273.     } _GroupVtbl;
  1274.     interface _Group
  1275.     {
  1276.         CONST_VTBL struct _GroupVtbl __RPC_FAR *lpVtbl;
  1277.     };
  1278.     
  1279. #ifdef COBJMACROS
  1280. #define _Group_QueryInterface(This,riid,ppvObject)    \
  1281.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1282. #define _Group_AddRef(This)    \
  1283.     (This)->lpVtbl -> AddRef(This)
  1284. #define _Group_Release(This)    \
  1285.     (This)->lpVtbl -> Release(This)
  1286. #define _Group_GetTypeInfoCount(This,pctinfo)    \
  1287.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1288. #define _Group_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  1289.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1290. #define _Group_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  1291.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1292. #define _Group_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  1293.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1294. #define _Group_get_Name(This,pVal)    \
  1295.     (This)->lpVtbl -> get_Name(This,pVal)
  1296. #define _Group_put_Name(This,newVal)    \
  1297.     (This)->lpVtbl -> put_Name(This,newVal)
  1298. #define _Group_GetPermissions(This,Name,ObjectType,ObjectTypeId,Rights)    \
  1299.     (This)->lpVtbl -> GetPermissions(This,Name,ObjectType,ObjectTypeId,Rights)
  1300. #define _Group_SetPermissions(This,Name,ObjectType,Action,Rights,Inherit,ObjectTypeId)    \
  1301.     (This)->lpVtbl -> SetPermissions(This,Name,ObjectType,Action,Rights,Inherit,ObjectTypeId)
  1302. #define _Group_get_Users(This,ppvObject)    \
  1303.     (This)->lpVtbl -> get_Users(This,ppvObject)
  1304. #endif /* COBJMACROS */
  1305. #endif     /* C style interface */
  1306. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Group_get_Name_Proxy( 
  1307.     _ADOGroup __RPC_FAR * This,
  1308.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1309. void __RPC_STUB _Group_get_Name_Stub(
  1310.     IRpcStubBuffer *This,
  1311.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1312.     PRPC_MESSAGE _pRpcMessage,
  1313.     DWORD *_pdwStubPhase);
  1314. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Group_put_Name_Proxy( 
  1315.     _ADOGroup __RPC_FAR * This,
  1316.     /* [in] */ BSTR newVal);
  1317. void __RPC_STUB _Group_put_Name_Stub(
  1318.     IRpcStubBuffer *This,
  1319.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1320.     PRPC_MESSAGE _pRpcMessage,
  1321.     DWORD *_pdwStubPhase);
  1322. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Group_GetPermissions_Proxy( 
  1323.     _ADOGroup __RPC_FAR * This,
  1324.     /* [in] */ VARIANT Name,
  1325.     /* [in] */ ObjectTypeEnum ObjectType,
  1326.     /* [optional][in] */ VARIANT ObjectTypeId,
  1327.     /* [retval][out] */ RightsEnum __RPC_FAR *Rights);
  1328. void __RPC_STUB _Group_GetPermissions_Stub(
  1329.     IRpcStubBuffer *This,
  1330.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1331.     PRPC_MESSAGE _pRpcMessage,
  1332.     DWORD *_pdwStubPhase);
  1333. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Group_SetPermissions_Proxy( 
  1334.     _ADOGroup __RPC_FAR * This,
  1335.     /* [in] */ VARIANT Name,
  1336.     /* [in] */ ObjectTypeEnum ObjectType,
  1337.     /* [in] */ ActionEnum Action,
  1338.     /* [in] */ RightsEnum Rights,
  1339.     /* [defaultvalue][in] */ InheritTypeEnum Inherit,
  1340.     /* [optional][in] */ VARIANT ObjectTypeId);
  1341. void __RPC_STUB _Group_SetPermissions_Stub(
  1342.     IRpcStubBuffer *This,
  1343.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1344.     PRPC_MESSAGE _pRpcMessage,
  1345.     DWORD *_pdwStubPhase);
  1346. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Group_get_Users_Proxy( 
  1347.     _ADOGroup __RPC_FAR * This,
  1348.     /* [retval][out] */ ADOUsers __RPC_FAR *__RPC_FAR *ppvObject);
  1349. void __RPC_STUB _Group_get_Users_Stub(
  1350.     IRpcStubBuffer *This,
  1351.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1352.     PRPC_MESSAGE _pRpcMessage,
  1353.     DWORD *_pdwStubPhase);
  1354. #endif     /* ___Group_INTERFACE_DEFINED__ */
  1355. #ifndef ___User_INTERFACE_DEFINED__
  1356. #define ___User_INTERFACE_DEFINED__
  1357. /* interface _ADOUser */
  1358. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  1359. EXTERN_C const IID IID__User;
  1360. #if defined(__cplusplus) && !defined(CINTERFACE)
  1361.     
  1362.     MIDL_INTERFACE("00000619-0000-0010-8000-00AA006D2EA4")
  1363.     _ADOUser : public IDispatch
  1364.     {
  1365.     public:
  1366.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1367.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  1368.         
  1369.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
  1370.             /* [in] */ BSTR newVal) = 0;
  1371.         
  1372.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetPermissions( 
  1373.             /* [in] */ VARIANT Name,
  1374.             /* [in] */ ObjectTypeEnum ObjectType,
  1375.             /* [optional][in] */ VARIANT ObjectTypeId,
  1376.             /* [retval][out] */ RightsEnum __RPC_FAR *Rights) = 0;
  1377.         
  1378.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE SetPermissions( 
  1379.             /* [in] */ VARIANT Name,
  1380.             /* [in] */ ObjectTypeEnum ObjectType,
  1381.             /* [in] */ ActionEnum Action,
  1382.             /* [in] */ RightsEnum Rights,
  1383.             /* [defaultvalue][in] */ InheritTypeEnum Inherit,
  1384.             /* [optional][in] */ VARIANT ObjectTypeId) = 0;
  1385.         
  1386.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE ChangePassword( 
  1387.             /* [in] */ BSTR OldPassword,
  1388.             /* [in] */ BSTR NewPassord) = 0;
  1389.         
  1390.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Groups( 
  1391.             /* [retval][out] */ ADOGroups __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  1392.         
  1393.     };
  1394.     
  1395. #else     /* C style interface */
  1396.     typedef struct _UserVtbl
  1397.     {
  1398.         BEGIN_INTERFACE
  1399.         
  1400.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1401.             _ADOUser __RPC_FAR * This,
  1402.             /* [in] */ REFIID riid,
  1403.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1404.         
  1405.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1406.             _ADOUser __RPC_FAR * This);
  1407.         
  1408.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1409.             _ADOUser __RPC_FAR * This);
  1410.         
  1411.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1412.             _ADOUser __RPC_FAR * This,
  1413.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1414.         
  1415.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1416.             _ADOUser __RPC_FAR * This,
  1417.             /* [in] */ UINT iTInfo,
  1418.             /* [in] */ LCID lcid,
  1419.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  1420.         
  1421.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1422.             _ADOUser __RPC_FAR * This,
  1423.             /* [in] */ REFIID riid,
  1424.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1425.             /* [in] */ UINT cNames,
  1426.             /* [in] */ LCID lcid,
  1427.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  1428.         
  1429.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1430.             _ADOUser __RPC_FAR * This,
  1431.             /* [in] */ DISPID dispIdMember,
  1432.             /* [in] */ REFIID riid,
  1433.             /* [in] */ LCID lcid,
  1434.             /* [in] */ WORD wFlags,
  1435.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  1436.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  1437.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  1438.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1439.         
  1440.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  1441.             _ADOUser __RPC_FAR * This,
  1442.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1443.         
  1444.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
  1445.             _ADOUser __RPC_FAR * This,
  1446.             /* [in] */ BSTR newVal);
  1447.         
  1448.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPermissions )( 
  1449.             _ADOUser __RPC_FAR * This,
  1450.             /* [in] */ VARIANT Name,
  1451.             /* [in] */ ObjectTypeEnum ObjectType,
  1452.             /* [optional][in] */ VARIANT ObjectTypeId,
  1453.             /* [retval][out] */ RightsEnum __RPC_FAR *Rights);
  1454.         
  1455.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPermissions )( 
  1456.             _ADOUser __RPC_FAR * This,
  1457.             /* [in] */ VARIANT Name,
  1458.             /* [in] */ ObjectTypeEnum ObjectType,
  1459.             /* [in] */ ActionEnum Action,
  1460.             /* [in] */ RightsEnum Rights,
  1461.             /* [defaultvalue][in] */ InheritTypeEnum Inherit,
  1462.             /* [optional][in] */ VARIANT ObjectTypeId);
  1463.         
  1464.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ChangePassword )( 
  1465.             _ADOUser __RPC_FAR * This,
  1466.             /* [in] */ BSTR OldPassword,
  1467.             /* [in] */ BSTR NewPassord);
  1468.         
  1469.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Groups )( 
  1470.             _ADOUser __RPC_FAR * This,
  1471.             /* [retval][out] */ ADOGroups __RPC_FAR *__RPC_FAR *ppvObject);
  1472.         
  1473.         END_INTERFACE
  1474.     } _UserVtbl;
  1475.     interface _User
  1476.     {
  1477.         CONST_VTBL struct _UserVtbl __RPC_FAR *lpVtbl;
  1478.     };
  1479.     
  1480. #ifdef COBJMACROS
  1481. #define _User_QueryInterface(This,riid,ppvObject)    \
  1482.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1483. #define _User_AddRef(This)    \
  1484.     (This)->lpVtbl -> AddRef(This)
  1485. #define _User_Release(This)    \
  1486.     (This)->lpVtbl -> Release(This)
  1487. #define _User_GetTypeInfoCount(This,pctinfo)    \
  1488.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1489. #define _User_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  1490.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1491. #define _User_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  1492.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1493. #define _User_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  1494.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1495. #define _User_get_Name(This,pVal)    \
  1496.     (This)->lpVtbl -> get_Name(This,pVal)
  1497. #define _User_put_Name(This,newVal)    \
  1498.     (This)->lpVtbl -> put_Name(This,newVal)
  1499. #define _User_GetPermissions(This,Name,ObjectType,ObjectTypeId,Rights)    \
  1500.     (This)->lpVtbl -> GetPermissions(This,Name,ObjectType,ObjectTypeId,Rights)
  1501. #define _User_SetPermissions(This,Name,ObjectType,Action,Rights,Inherit,ObjectTypeId)    \
  1502.     (This)->lpVtbl -> SetPermissions(This,Name,ObjectType,Action,Rights,Inherit,ObjectTypeId)
  1503. #define _User_ChangePassword(This,OldPassword,NewPassord)    \
  1504.     (This)->lpVtbl -> ChangePassword(This,OldPassword,NewPassord)
  1505. #define _User_get_Groups(This,ppvObject)    \
  1506.     (This)->lpVtbl -> get_Groups(This,ppvObject)
  1507. #endif /* COBJMACROS */
  1508. #endif     /* C style interface */
  1509. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _User_get_Name_Proxy( 
  1510.     _ADOUser __RPC_FAR * This,
  1511.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1512. void __RPC_STUB _User_get_Name_Stub(
  1513.     IRpcStubBuffer *This,
  1514.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1515.     PRPC_MESSAGE _pRpcMessage,
  1516.     DWORD *_pdwStubPhase);
  1517. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _User_put_Name_Proxy( 
  1518.     _ADOUser __RPC_FAR * This,
  1519.     /* [in] */ BSTR newVal);
  1520. void __RPC_STUB _User_put_Name_Stub(
  1521.     IRpcStubBuffer *This,
  1522.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1523.     PRPC_MESSAGE _pRpcMessage,
  1524.     DWORD *_pdwStubPhase);
  1525. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _User_GetPermissions_Proxy( 
  1526.     _ADOUser __RPC_FAR * This,
  1527.     /* [in] */ VARIANT Name,
  1528.     /* [in] */ ObjectTypeEnum ObjectType,
  1529.     /* [optional][in] */ VARIANT ObjectTypeId,
  1530.     /* [retval][out] */ RightsEnum __RPC_FAR *Rights);
  1531. void __RPC_STUB _User_GetPermissions_Stub(
  1532.     IRpcStubBuffer *This,
  1533.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1534.     PRPC_MESSAGE _pRpcMessage,
  1535.     DWORD *_pdwStubPhase);
  1536. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _User_SetPermissions_Proxy( 
  1537.     _ADOUser __RPC_FAR * This,
  1538.     /* [in] */ VARIANT Name,
  1539.     /* [in] */ ObjectTypeEnum ObjectType,
  1540.     /* [in] */ ActionEnum Action,
  1541.     /* [in] */ RightsEnum Rights,
  1542.     /* [defaultvalue][in] */ InheritTypeEnum Inherit,
  1543.     /* [optional][in] */ VARIANT ObjectTypeId);
  1544. void __RPC_STUB _User_SetPermissions_Stub(
  1545.     IRpcStubBuffer *This,
  1546.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1547.     PRPC_MESSAGE _pRpcMessage,
  1548.     DWORD *_pdwStubPhase);
  1549. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _User_ChangePassword_Proxy( 
  1550.     _ADOUser __RPC_FAR * This,
  1551.     /* [in] */ BSTR OldPassword,
  1552.     /* [in] */ BSTR NewPassord);
  1553. void __RPC_STUB _User_ChangePassword_Stub(
  1554.     IRpcStubBuffer *This,
  1555.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1556.     PRPC_MESSAGE _pRpcMessage,
  1557.     DWORD *_pdwStubPhase);
  1558. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _User_get_Groups_Proxy( 
  1559.     _ADOUser __RPC_FAR * This,
  1560.     /* [retval][out] */ ADOGroups __RPC_FAR *__RPC_FAR *ppvObject);
  1561. void __RPC_STUB _User_get_Groups_Stub(
  1562.     IRpcStubBuffer *This,
  1563.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1564.     PRPC_MESSAGE _pRpcMessage,
  1565.     DWORD *_pdwStubPhase);
  1566. #endif     /* ___User_INTERFACE_DEFINED__ */
  1567. #ifndef ___Column_INTERFACE_DEFINED__
  1568. #define ___Column_INTERFACE_DEFINED__
  1569. /* interface _ADOColumn */
  1570. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  1571. EXTERN_C const IID IID__Column;
  1572. #if defined(__cplusplus) && !defined(CINTERFACE)
  1573.     
  1574.     MIDL_INTERFACE("0000061C-0000-0010-8000-00AA006D2EA4")
  1575.     _ADOColumn : public IDispatch
  1576.     {
  1577.     public:
  1578.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1579.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  1580.         
  1581.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
  1582.             /* [in] */ BSTR newVal) = 0;
  1583.         
  1584.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  1585.             /* [retval][out] */ ColumnAttributesEnum __RPC_FAR *pVal) = 0;
  1586.         
  1587.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Attributes( 
  1588.             /* [in] */ ColumnAttributesEnum newVal) = 0;
  1589.         
  1590.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefinedSize( 
  1591.             /* [retval][out] */ long __RPC_FAR *pVal) = 0;
  1592.         
  1593.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DefinedSize( 
  1594.             /* [in] */ long DefinedSize) = 0;
  1595.         
  1596.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumericScale( 
  1597.             /* [retval][out] */ BYTE __RPC_FAR *pVal) = 0;
  1598.         
  1599.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_NumericScale( 
  1600.             /* [in] */ BYTE newVal) = 0;
  1601.         
  1602.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Precision( 
  1603.             /* [retval][out] */ long __RPC_FAR *pVal) = 0;
  1604.         
  1605.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Precision( 
  1606.             /* [in] */ long newVal) = 0;
  1607.         
  1608.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RelatedColumn( 
  1609.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  1610.         
  1611.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RelatedColumn( 
  1612.             /* [in] */ BSTR newVal) = 0;
  1613.         
  1614.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_SortOrder( 
  1615.             /* [retval][out] */ SortOrderEnum __RPC_FAR *pVal) = 0;
  1616.         
  1617.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_SortOrder( 
  1618.             /* [in] */ SortOrderEnum newVal) = 0;
  1619.         
  1620.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  1621.             /* [retval][out] */ DataTypeEnum __RPC_FAR *pVal) = 0;
  1622.         
  1623.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Type( 
  1624.             /* [in] */ DataTypeEnum newVal) = 0;
  1625.         
  1626.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Properties( 
  1627.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  1628.         
  1629.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParentCatalog( 
  1630.             /* [retval][out] */ _ADOCatalog __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  1631.         
  1632.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_ParentCatalog( 
  1633.             /* [in] */ _ADOCatalog __RPC_FAR *ppvObject) = 0;
  1634.         
  1635.         virtual /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE putref_ParentCatalog( 
  1636.             /* [in] */ _ADOCatalog __RPC_FAR *ppvObject) = 0;
  1637.         
  1638.     };
  1639.     
  1640. #else     /* C style interface */
  1641.     typedef struct _ColumnVtbl
  1642.     {
  1643.         BEGIN_INTERFACE
  1644.         
  1645.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1646.             _ADOColumn __RPC_FAR * This,
  1647.             /* [in] */ REFIID riid,
  1648.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1649.         
  1650.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1651.             _ADOColumn __RPC_FAR * This);
  1652.         
  1653.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1654.             _ADOColumn __RPC_FAR * This);
  1655.         
  1656.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1657.             _ADOColumn __RPC_FAR * This,
  1658.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1659.         
  1660.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1661.             _ADOColumn __RPC_FAR * This,
  1662.             /* [in] */ UINT iTInfo,
  1663.             /* [in] */ LCID lcid,
  1664.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  1665.         
  1666.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1667.             _ADOColumn __RPC_FAR * This,
  1668.             /* [in] */ REFIID riid,
  1669.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1670.             /* [in] */ UINT cNames,
  1671.             /* [in] */ LCID lcid,
  1672.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  1673.         
  1674.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1675.             _ADOColumn __RPC_FAR * This,
  1676.             /* [in] */ DISPID dispIdMember,
  1677.             /* [in] */ REFIID riid,
  1678.             /* [in] */ LCID lcid,
  1679.             /* [in] */ WORD wFlags,
  1680.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  1681.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  1682.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  1683.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1684.         
  1685.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  1686.             _ADOColumn __RPC_FAR * This,
  1687.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1688.         
  1689.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
  1690.             _ADOColumn __RPC_FAR * This,
  1691.             /* [in] */ BSTR newVal);
  1692.         
  1693.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attributes )( 
  1694.             _ADOColumn __RPC_FAR * This,
  1695.             /* [retval][out] */ ColumnAttributesEnum __RPC_FAR *pVal);
  1696.         
  1697.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Attributes )( 
  1698.             _ADOColumn __RPC_FAR * This,
  1699.             /* [in] */ ColumnAttributesEnum newVal);
  1700.         
  1701.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefinedSize )( 
  1702.             _ADOColumn __RPC_FAR * This,
  1703.             /* [retval][out] */ long __RPC_FAR *pVal);
  1704.         
  1705.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DefinedSize )( 
  1706.             _ADOColumn __RPC_FAR * This,
  1707.             /* [in] */ long DefinedSize);
  1708.         
  1709.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NumericScale )( 
  1710.             _ADOColumn __RPC_FAR * This,
  1711.             /* [retval][out] */ BYTE __RPC_FAR *pVal);
  1712.         
  1713.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NumericScale )( 
  1714.             _ADOColumn __RPC_FAR * This,
  1715.             /* [in] */ BYTE newVal);
  1716.         
  1717.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Precision )( 
  1718.             _ADOColumn __RPC_FAR * This,
  1719.             /* [retval][out] */ long __RPC_FAR *pVal);
  1720.         
  1721.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Precision )( 
  1722.             _ADOColumn __RPC_FAR * This,
  1723.             /* [in] */ long newVal);
  1724.         
  1725.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RelatedColumn )( 
  1726.             _ADOColumn __RPC_FAR * This,
  1727.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1728.         
  1729.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RelatedColumn )( 
  1730.             _ADOColumn __RPC_FAR * This,
  1731.             /* [in] */ BSTR newVal);
  1732.         
  1733.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SortOrder )( 
  1734.             _ADOColumn __RPC_FAR * This,
  1735.             /* [retval][out] */ SortOrderEnum __RPC_FAR *pVal);
  1736.         
  1737.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SortOrder )( 
  1738.             _ADOColumn __RPC_FAR * This,
  1739.             /* [in] */ SortOrderEnum newVal);
  1740.         
  1741.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
  1742.             _ADOColumn __RPC_FAR * This,
  1743.             /* [retval][out] */ DataTypeEnum __RPC_FAR *pVal);
  1744.         
  1745.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Type )( 
  1746.             _ADOColumn __RPC_FAR * This,
  1747.             /* [in] */ DataTypeEnum newVal);
  1748.         
  1749.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  1750.             _ADOColumn __RPC_FAR * This,
  1751.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  1752.         
  1753.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParentCatalog )( 
  1754.             _ADOColumn __RPC_FAR * This,
  1755.             /* [retval][out] */ _ADOCatalog __RPC_FAR *__RPC_FAR *ppvObject);
  1756.         
  1757.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ParentCatalog )( 
  1758.             _ADOColumn __RPC_FAR * This,
  1759.             /* [in] */ _ADOCatalog __RPC_FAR *ppvObject);
  1760.         
  1761.         /* [helpcontext][id][propputref] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *putref_ParentADOCatalog )( 
  1762.             _ADOColumn __RPC_FAR * This,
  1763.             /* [in] */ _ADOCatalog __RPC_FAR *ppvObject);
  1764.         
  1765.         END_INTERFACE
  1766.     } _ColumnVtbl;
  1767.     interface _Column
  1768.     {
  1769.         CONST_VTBL struct _ColumnVtbl __RPC_FAR *lpVtbl;
  1770.     };
  1771.     
  1772. #ifdef COBJMACROS
  1773. #define _Column_QueryInterface(This,riid,ppvObject)    \
  1774.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1775. #define _Column_AddRef(This)    \
  1776.     (This)->lpVtbl -> AddRef(This)
  1777. #define _Column_Release(This)    \
  1778.     (This)->lpVtbl -> Release(This)
  1779. #define _Column_GetTypeInfoCount(This,pctinfo)    \
  1780.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1781. #define _Column_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  1782.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1783. #define _Column_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  1784.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1785. #define _Column_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  1786.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1787. #define _Column_get_Name(This,pVal)    \
  1788.     (This)->lpVtbl -> get_Name(This,pVal)
  1789. #define _Column_put_Name(This,newVal)    \
  1790.     (This)->lpVtbl -> put_Name(This,newVal)
  1791. #define _Column_get_Attributes(This,pVal)    \
  1792.     (This)->lpVtbl -> get_Attributes(This,pVal)
  1793. #define _Column_put_Attributes(This,newVal)    \
  1794.     (This)->lpVtbl -> put_Attributes(This,newVal)
  1795. #define _Column_get_DefinedSize(This,pVal)    \
  1796.     (This)->lpVtbl -> get_DefinedSize(This,pVal)
  1797. #define _Column_put_DefinedSize(This,DefinedSize)    \
  1798.     (This)->lpVtbl -> put_DefinedSize(This,DefinedSize)
  1799. #define _Column_get_NumericScale(This,pVal)    \
  1800.     (This)->lpVtbl -> get_NumericScale(This,pVal)
  1801. #define _Column_put_NumericScale(This,newVal)    \
  1802.     (This)->lpVtbl -> put_NumericScale(This,newVal)
  1803. #define _Column_get_Precision(This,pVal)    \
  1804.     (This)->lpVtbl -> get_Precision(This,pVal)
  1805. #define _Column_put_Precision(This,newVal)    \
  1806.     (This)->lpVtbl -> put_Precision(This,newVal)
  1807. #define _Column_get_RelatedColumn(This,pVal)    \
  1808.     (This)->lpVtbl -> get_RelatedColumn(This,pVal)
  1809. #define _Column_put_RelatedColumn(This,newVal)    \
  1810.     (This)->lpVtbl -> put_RelatedColumn(This,newVal)
  1811. #define _Column_get_SortOrder(This,pVal)    \
  1812.     (This)->lpVtbl -> get_SortOrder(This,pVal)
  1813. #define _Column_put_SortOrder(This,newVal)    \
  1814.     (This)->lpVtbl -> put_SortOrder(This,newVal)
  1815. #define _Column_get_Type(This,pVal)    \
  1816.     (This)->lpVtbl -> get_Type(This,pVal)
  1817. #define _Column_put_Type(This,newVal)    \
  1818.     (This)->lpVtbl -> put_Type(This,newVal)
  1819. #define _Column_get_Properties(This,ppvObject)    \
  1820.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  1821. #define _Column_get_ParentCatalog(This,ppvObject)    \
  1822.     (This)->lpVtbl -> get_ParentCatalog(This,ppvObject)
  1823. #define _Column_put_ParentCatalog(This,ppvObject)    \
  1824.     (This)->lpVtbl -> put_ParentCatalog(This,ppvObject)
  1825. #define _Column_putref_ParentCatalog(This,ppvObject)    \
  1826.     (This)->lpVtbl -> putref_ParentCatalog(This,ppvObject)
  1827. #endif /* COBJMACROS */
  1828. #endif     /* C style interface */
  1829. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_Name_Proxy( 
  1830.     _ADOColumn __RPC_FAR * This,
  1831.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1832. void __RPC_STUB _Column_get_Name_Stub(
  1833.     IRpcStubBuffer *This,
  1834.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1835.     PRPC_MESSAGE _pRpcMessage,
  1836.     DWORD *_pdwStubPhase);
  1837. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_Name_Proxy( 
  1838.     _ADOColumn __RPC_FAR * This,
  1839.     /* [in] */ BSTR newVal);
  1840. void __RPC_STUB _Column_put_Name_Stub(
  1841.     IRpcStubBuffer *This,
  1842.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1843.     PRPC_MESSAGE _pRpcMessage,
  1844.     DWORD *_pdwStubPhase);
  1845. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_Attributes_Proxy( 
  1846.     _ADOColumn __RPC_FAR * This,
  1847.     /* [retval][out] */ ColumnAttributesEnum __RPC_FAR *pVal);
  1848. void __RPC_STUB _Column_get_Attributes_Stub(
  1849.     IRpcStubBuffer *This,
  1850.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1851.     PRPC_MESSAGE _pRpcMessage,
  1852.     DWORD *_pdwStubPhase);
  1853. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_Attributes_Proxy( 
  1854.     _ADOColumn __RPC_FAR * This,
  1855.     /* [in] */ ColumnAttributesEnum newVal);
  1856. void __RPC_STUB _Column_put_Attributes_Stub(
  1857.     IRpcStubBuffer *This,
  1858.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1859.     PRPC_MESSAGE _pRpcMessage,
  1860.     DWORD *_pdwStubPhase);
  1861. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_DefinedSize_Proxy( 
  1862.     _ADOColumn __RPC_FAR * This,
  1863.     /* [retval][out] */ long __RPC_FAR *pVal);
  1864. void __RPC_STUB _Column_get_DefinedSize_Stub(
  1865.     IRpcStubBuffer *This,
  1866.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1867.     PRPC_MESSAGE _pRpcMessage,
  1868.     DWORD *_pdwStubPhase);
  1869. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_DefinedSize_Proxy( 
  1870.     _ADOColumn __RPC_FAR * This,
  1871.     /* [in] */ long DefinedSize);
  1872. void __RPC_STUB _Column_put_DefinedSize_Stub(
  1873.     IRpcStubBuffer *This,
  1874.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1875.     PRPC_MESSAGE _pRpcMessage,
  1876.     DWORD *_pdwStubPhase);
  1877. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_NumericScale_Proxy( 
  1878.     _ADOColumn __RPC_FAR * This,
  1879.     /* [retval][out] */ BYTE __RPC_FAR *pVal);
  1880. void __RPC_STUB _Column_get_NumericScale_Stub(
  1881.     IRpcStubBuffer *This,
  1882.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1883.     PRPC_MESSAGE _pRpcMessage,
  1884.     DWORD *_pdwStubPhase);
  1885. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_NumericScale_Proxy( 
  1886.     _ADOColumn __RPC_FAR * This,
  1887.     /* [in] */ BYTE newVal);
  1888. void __RPC_STUB _Column_put_NumericScale_Stub(
  1889.     IRpcStubBuffer *This,
  1890.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1891.     PRPC_MESSAGE _pRpcMessage,
  1892.     DWORD *_pdwStubPhase);
  1893. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_Precision_Proxy( 
  1894.     _ADOColumn __RPC_FAR * This,
  1895.     /* [retval][out] */ long __RPC_FAR *pVal);
  1896. void __RPC_STUB _Column_get_Precision_Stub(
  1897.     IRpcStubBuffer *This,
  1898.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1899.     PRPC_MESSAGE _pRpcMessage,
  1900.     DWORD *_pdwStubPhase);
  1901. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_Precision_Proxy( 
  1902.     _ADOColumn __RPC_FAR * This,
  1903.     /* [in] */ long newVal);
  1904. void __RPC_STUB _Column_put_Precision_Stub(
  1905.     IRpcStubBuffer *This,
  1906.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1907.     PRPC_MESSAGE _pRpcMessage,
  1908.     DWORD *_pdwStubPhase);
  1909. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_RelatedColumn_Proxy( 
  1910.     _ADOColumn __RPC_FAR * This,
  1911.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  1912. void __RPC_STUB _Column_get_RelatedColumn_Stub(
  1913.     IRpcStubBuffer *This,
  1914.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1915.     PRPC_MESSAGE _pRpcMessage,
  1916.     DWORD *_pdwStubPhase);
  1917. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_RelatedColumn_Proxy( 
  1918.     _ADOColumn __RPC_FAR * This,
  1919.     /* [in] */ BSTR newVal);
  1920. void __RPC_STUB _Column_put_RelatedColumn_Stub(
  1921.     IRpcStubBuffer *This,
  1922.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1923.     PRPC_MESSAGE _pRpcMessage,
  1924.     DWORD *_pdwStubPhase);
  1925. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_SortOrder_Proxy( 
  1926.     _ADOColumn __RPC_FAR * This,
  1927.     /* [retval][out] */ SortOrderEnum __RPC_FAR *pVal);
  1928. void __RPC_STUB _Column_get_SortOrder_Stub(
  1929.     IRpcStubBuffer *This,
  1930.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1931.     PRPC_MESSAGE _pRpcMessage,
  1932.     DWORD *_pdwStubPhase);
  1933. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_SortOrder_Proxy( 
  1934.     _ADOColumn __RPC_FAR * This,
  1935.     /* [in] */ SortOrderEnum newVal);
  1936. void __RPC_STUB _Column_put_SortOrder_Stub(
  1937.     IRpcStubBuffer *This,
  1938.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1939.     PRPC_MESSAGE _pRpcMessage,
  1940.     DWORD *_pdwStubPhase);
  1941. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_Type_Proxy( 
  1942.     _ADOColumn __RPC_FAR * This,
  1943.     /* [retval][out] */ DataTypeEnum __RPC_FAR *pVal);
  1944. void __RPC_STUB _Column_get_Type_Stub(
  1945.     IRpcStubBuffer *This,
  1946.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1947.     PRPC_MESSAGE _pRpcMessage,
  1948.     DWORD *_pdwStubPhase);
  1949. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_Type_Proxy( 
  1950.     _ADOColumn __RPC_FAR * This,
  1951.     /* [in] */ DataTypeEnum newVal);
  1952. void __RPC_STUB _Column_put_Type_Stub(
  1953.     IRpcStubBuffer *This,
  1954.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1955.     PRPC_MESSAGE _pRpcMessage,
  1956.     DWORD *_pdwStubPhase);
  1957. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_Properties_Proxy( 
  1958.     _ADOColumn __RPC_FAR * This,
  1959.     /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  1960. void __RPC_STUB _Column_get_Properties_Stub(
  1961.     IRpcStubBuffer *This,
  1962.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1963.     PRPC_MESSAGE _pRpcMessage,
  1964.     DWORD *_pdwStubPhase);
  1965. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Column_get_ParentCatalog_Proxy( 
  1966.     _ADOColumn __RPC_FAR * This,
  1967.     /* [retval][out] */ _ADOCatalog __RPC_FAR *__RPC_FAR *ppvObject);
  1968. void __RPC_STUB _Column_get_ParentCatalog_Stub(
  1969.     IRpcStubBuffer *This,
  1970.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1971.     PRPC_MESSAGE _pRpcMessage,
  1972.     DWORD *_pdwStubPhase);
  1973. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Column_put_ParentCatalog_Proxy( 
  1974.     _ADOColumn __RPC_FAR * This,
  1975.     /* [in] */ _ADOCatalog __RPC_FAR *ppvObject);
  1976. void __RPC_STUB _Column_put_ParentCatalog_Stub(
  1977.     IRpcStubBuffer *This,
  1978.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1979.     PRPC_MESSAGE _pRpcMessage,
  1980.     DWORD *_pdwStubPhase);
  1981. /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE _Column_putref_ParentCatalog_Proxy( 
  1982.     _ADOColumn __RPC_FAR * This,
  1983.     /* [in] */ _ADOCatalog __RPC_FAR *ppvObject);
  1984. void __RPC_STUB _Column_putref_ParentCatalog_Stub(
  1985.     IRpcStubBuffer *This,
  1986.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1987.     PRPC_MESSAGE _pRpcMessage,
  1988.     DWORD *_pdwStubPhase);
  1989. #endif     /* ___Column_INTERFACE_DEFINED__ */
  1990. #ifndef ___Index_INTERFACE_DEFINED__
  1991. #define ___Index_INTERFACE_DEFINED__
  1992. /* interface _ADOIndex */
  1993. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  1994. EXTERN_C const IID IID__Index;
  1995. #if defined(__cplusplus) && !defined(CINTERFACE)
  1996.     
  1997.     MIDL_INTERFACE("0000061F-0000-0010-8000-00AA006D2EA4")
  1998.     _ADOIndex : public IDispatch
  1999.     {
  2000.     public:
  2001.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  2002.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  2003.         
  2004.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
  2005.             /* [in] */ BSTR newVal) = 0;
  2006.         
  2007.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Clustered( 
  2008.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
  2009.         
  2010.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Clustered( 
  2011.             /* [in] */ VARIANT_BOOL newVal) = 0;
  2012.         
  2013.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IndexNulls( 
  2014.             /* [retval][out] */ AllowNullsEnum __RPC_FAR *pVal) = 0;
  2015.         
  2016.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_IndexNulls( 
  2017.             /* [in] */ AllowNullsEnum newVal) = 0;
  2018.         
  2019.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrimaryKey( 
  2020.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
  2021.         
  2022.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrimaryKey( 
  2023.             /* [in] */ VARIANT_BOOL newVal) = 0;
  2024.         
  2025.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Unique( 
  2026.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
  2027.         
  2028.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Unique( 
  2029.             /* [in] */ VARIANT_BOOL newVal) = 0;
  2030.         
  2031.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Columns( 
  2032.             /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  2033.         
  2034.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Properties( 
  2035.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  2036.         
  2037.     };
  2038.     
  2039. #else     /* C style interface */
  2040.     typedef struct _IndexVtbl
  2041.     {
  2042.         BEGIN_INTERFACE
  2043.         
  2044.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2045.             _ADOIndex __RPC_FAR * This,
  2046.             /* [in] */ REFIID riid,
  2047.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2048.         
  2049.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2050.             _ADOIndex __RPC_FAR * This);
  2051.         
  2052.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2053.             _ADOIndex __RPC_FAR * This);
  2054.         
  2055.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  2056.             _ADOIndex __RPC_FAR * This,
  2057.             /* [out] */ UINT __RPC_FAR *pctinfo);
  2058.         
  2059.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  2060.             _ADOIndex __RPC_FAR * This,
  2061.             /* [in] */ UINT iTInfo,
  2062.             /* [in] */ LCID lcid,
  2063.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  2064.         
  2065.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  2066.             _ADOIndex __RPC_FAR * This,
  2067.             /* [in] */ REFIID riid,
  2068.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2069.             /* [in] */ UINT cNames,
  2070.             /* [in] */ LCID lcid,
  2071.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  2072.         
  2073.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  2074.             _ADOIndex __RPC_FAR * This,
  2075.             /* [in] */ DISPID dispIdMember,
  2076.             /* [in] */ REFIID riid,
  2077.             /* [in] */ LCID lcid,
  2078.             /* [in] */ WORD wFlags,
  2079.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  2080.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  2081.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  2082.             /* [out] */ UINT __RPC_FAR *puArgErr);
  2083.         
  2084.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  2085.             _ADOIndex __RPC_FAR * This,
  2086.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2087.         
  2088.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
  2089.             _ADOIndex __RPC_FAR * This,
  2090.             /* [in] */ BSTR newVal);
  2091.         
  2092.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Clustered )( 
  2093.             _ADOIndex __RPC_FAR * This,
  2094.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
  2095.         
  2096.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Clustered )( 
  2097.             _ADOIndex __RPC_FAR * This,
  2098.             /* [in] */ VARIANT_BOOL newVal);
  2099.         
  2100.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IndexNulls )( 
  2101.             _ADOIndex __RPC_FAR * This,
  2102.             /* [retval][out] */ AllowNullsEnum __RPC_FAR *pVal);
  2103.         
  2104.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IndexNulls )( 
  2105.             _ADOIndex __RPC_FAR * This,
  2106.             /* [in] */ AllowNullsEnum newVal);
  2107.         
  2108.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PrimaryKey )( 
  2109.             _ADOIndex __RPC_FAR * This,
  2110.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
  2111.         
  2112.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PrimaryKey )( 
  2113.             _ADOIndex __RPC_FAR * This,
  2114.             /* [in] */ VARIANT_BOOL newVal);
  2115.         
  2116.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Unique )( 
  2117.             _ADOIndex __RPC_FAR * This,
  2118.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
  2119.         
  2120.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Unique )( 
  2121.             _ADOIndex __RPC_FAR * This,
  2122.             /* [in] */ VARIANT_BOOL newVal);
  2123.         
  2124.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Columns )( 
  2125.             _ADOIndex __RPC_FAR * This,
  2126.             /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject);
  2127.         
  2128.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  2129.             _ADOIndex __RPC_FAR * This,
  2130.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  2131.         
  2132.         END_INTERFACE
  2133.     } _IndexVtbl;
  2134.     interface _Index
  2135.     {
  2136.         CONST_VTBL struct _IndexVtbl __RPC_FAR *lpVtbl;
  2137.     };
  2138.     
  2139. #ifdef COBJMACROS
  2140. #define _Index_QueryInterface(This,riid,ppvObject)    \
  2141.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2142. #define _Index_AddRef(This)    \
  2143.     (This)->lpVtbl -> AddRef(This)
  2144. #define _Index_Release(This)    \
  2145.     (This)->lpVtbl -> Release(This)
  2146. #define _Index_GetTypeInfoCount(This,pctinfo)    \
  2147.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2148. #define _Index_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  2149.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2150. #define _Index_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  2151.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2152. #define _Index_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  2153.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2154. #define _Index_get_Name(This,pVal)    \
  2155.     (This)->lpVtbl -> get_Name(This,pVal)
  2156. #define _Index_put_Name(This,newVal)    \
  2157.     (This)->lpVtbl -> put_Name(This,newVal)
  2158. #define _Index_get_Clustered(This,pVal)    \
  2159.     (This)->lpVtbl -> get_Clustered(This,pVal)
  2160. #define _Index_put_Clustered(This,newVal)    \
  2161.     (This)->lpVtbl -> put_Clustered(This,newVal)
  2162. #define _Index_get_IndexNulls(This,pVal)    \
  2163.     (This)->lpVtbl -> get_IndexNulls(This,pVal)
  2164. #define _Index_put_IndexNulls(This,newVal)    \
  2165.     (This)->lpVtbl -> put_IndexNulls(This,newVal)
  2166. #define _Index_get_PrimaryKey(This,pVal)    \
  2167.     (This)->lpVtbl -> get_PrimaryKey(This,pVal)
  2168. #define _Index_put_PrimaryKey(This,newVal)    \
  2169.     (This)->lpVtbl -> put_PrimaryKey(This,newVal)
  2170. #define _Index_get_Unique(This,pVal)    \
  2171.     (This)->lpVtbl -> get_Unique(This,pVal)
  2172. #define _Index_put_Unique(This,newVal)    \
  2173.     (This)->lpVtbl -> put_Unique(This,newVal)
  2174. #define _Index_get_Columns(This,ppvObject)    \
  2175.     (This)->lpVtbl -> get_Columns(This,ppvObject)
  2176. #define _Index_get_Properties(This,ppvObject)    \
  2177.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  2178. #endif /* COBJMACROS */
  2179. #endif     /* C style interface */
  2180. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Index_get_Name_Proxy( 
  2181.     _ADOIndex __RPC_FAR * This,
  2182.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2183. void __RPC_STUB _Index_get_Name_Stub(
  2184.     IRpcStubBuffer *This,
  2185.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2186.     PRPC_MESSAGE _pRpcMessage,
  2187.     DWORD *_pdwStubPhase);
  2188. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Index_put_Name_Proxy( 
  2189.     _ADOIndex __RPC_FAR * This,
  2190.     /* [in] */ BSTR newVal);
  2191. void __RPC_STUB _Index_put_Name_Stub(
  2192.     IRpcStubBuffer *This,
  2193.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2194.     PRPC_MESSAGE _pRpcMessage,
  2195.     DWORD *_pdwStubPhase);
  2196. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Index_get_Clustered_Proxy( 
  2197.     _ADOIndex __RPC_FAR * This,
  2198.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
  2199. void __RPC_STUB _Index_get_Clustered_Stub(
  2200.     IRpcStubBuffer *This,
  2201.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2202.     PRPC_MESSAGE _pRpcMessage,
  2203.     DWORD *_pdwStubPhase);
  2204. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Index_put_Clustered_Proxy( 
  2205.     _ADOIndex __RPC_FAR * This,
  2206.     /* [in] */ VARIANT_BOOL newVal);
  2207. void __RPC_STUB _Index_put_Clustered_Stub(
  2208.     IRpcStubBuffer *This,
  2209.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2210.     PRPC_MESSAGE _pRpcMessage,
  2211.     DWORD *_pdwStubPhase);
  2212. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Index_get_IndexNulls_Proxy( 
  2213.     _ADOIndex __RPC_FAR * This,
  2214.     /* [retval][out] */ AllowNullsEnum __RPC_FAR *pVal);
  2215. void __RPC_STUB _Index_get_IndexNulls_Stub(
  2216.     IRpcStubBuffer *This,
  2217.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2218.     PRPC_MESSAGE _pRpcMessage,
  2219.     DWORD *_pdwStubPhase);
  2220. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Index_put_IndexNulls_Proxy( 
  2221.     _ADOIndex __RPC_FAR * This,
  2222.     /* [in] */ AllowNullsEnum newVal);
  2223. void __RPC_STUB _Index_put_IndexNulls_Stub(
  2224.     IRpcStubBuffer *This,
  2225.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2226.     PRPC_MESSAGE _pRpcMessage,
  2227.     DWORD *_pdwStubPhase);
  2228. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Index_get_PrimaryKey_Proxy( 
  2229.     _ADOIndex __RPC_FAR * This,
  2230.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
  2231. void __RPC_STUB _Index_get_PrimaryKey_Stub(
  2232.     IRpcStubBuffer *This,
  2233.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2234.     PRPC_MESSAGE _pRpcMessage,
  2235.     DWORD *_pdwStubPhase);
  2236. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Index_put_PrimaryKey_Proxy( 
  2237.     _ADOIndex __RPC_FAR * This,
  2238.     /* [in] */ VARIANT_BOOL newVal);
  2239. void __RPC_STUB _Index_put_PrimaryKey_Stub(
  2240.     IRpcStubBuffer *This,
  2241.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2242.     PRPC_MESSAGE _pRpcMessage,
  2243.     DWORD *_pdwStubPhase);
  2244. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Index_get_Unique_Proxy( 
  2245.     _ADOIndex __RPC_FAR * This,
  2246.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
  2247. void __RPC_STUB _Index_get_Unique_Stub(
  2248.     IRpcStubBuffer *This,
  2249.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2250.     PRPC_MESSAGE _pRpcMessage,
  2251.     DWORD *_pdwStubPhase);
  2252. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Index_put_Unique_Proxy( 
  2253.     _ADOIndex __RPC_FAR * This,
  2254.     /* [in] */ VARIANT_BOOL newVal);
  2255. void __RPC_STUB _Index_put_Unique_Stub(
  2256.     IRpcStubBuffer *This,
  2257.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2258.     PRPC_MESSAGE _pRpcMessage,
  2259.     DWORD *_pdwStubPhase);
  2260. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Index_get_Columns_Proxy( 
  2261.     _ADOIndex __RPC_FAR * This,
  2262.     /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject);
  2263. void __RPC_STUB _Index_get_Columns_Stub(
  2264.     IRpcStubBuffer *This,
  2265.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2266.     PRPC_MESSAGE _pRpcMessage,
  2267.     DWORD *_pdwStubPhase);
  2268. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Index_get_Properties_Proxy( 
  2269.     _ADOIndex __RPC_FAR * This,
  2270.     /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  2271. void __RPC_STUB _Index_get_Properties_Stub(
  2272.     IRpcStubBuffer *This,
  2273.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2274.     PRPC_MESSAGE _pRpcMessage,
  2275.     DWORD *_pdwStubPhase);
  2276. #endif     /* ___Index_INTERFACE_DEFINED__ */
  2277. #ifndef ___Key_INTERFACE_DEFINED__
  2278. #define ___Key_INTERFACE_DEFINED__
  2279. /* interface _ADOKey */
  2280. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  2281. EXTERN_C const IID IID__Key;
  2282. #if defined(__cplusplus) && !defined(CINTERFACE)
  2283.     
  2284.     MIDL_INTERFACE("00000622-0000-0010-8000-00AA006D2EA4")
  2285.     _ADOKey : public IDispatch
  2286.     {
  2287.     public:
  2288.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  2289.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  2290.         
  2291.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
  2292.             /* [in] */ BSTR newVal) = 0;
  2293.         
  2294.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DeleteRule( 
  2295.             /* [retval][out] */ RuleEnum __RPC_FAR *pVal) = 0;
  2296.         
  2297.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_DeleteRule( 
  2298.             /* [in] */ RuleEnum newVal) = 0;
  2299.         
  2300.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  2301.             /* [retval][out] */ KeyTypeEnum __RPC_FAR *pVal) = 0;
  2302.         
  2303.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Type( 
  2304.             /* [in] */ KeyTypeEnum newVal) = 0;
  2305.         
  2306.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_RelatedTable( 
  2307.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  2308.         
  2309.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_RelatedTable( 
  2310.             /* [in] */ BSTR newVal) = 0;
  2311.         
  2312.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_UpdateRule( 
  2313.             /* [retval][out] */ RuleEnum __RPC_FAR *pVal) = 0;
  2314.         
  2315.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_UpdateRule( 
  2316.             /* [in] */ RuleEnum newVal) = 0;
  2317.         
  2318.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Columns( 
  2319.             /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  2320.         
  2321.     };
  2322.     
  2323. #else     /* C style interface */
  2324.     typedef struct _KeyVtbl
  2325.     {
  2326.         BEGIN_INTERFACE
  2327.         
  2328.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2329.             _ADOKey __RPC_FAR * This,
  2330.             /* [in] */ REFIID riid,
  2331.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2332.         
  2333.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2334.             _ADOKey __RPC_FAR * This);
  2335.         
  2336.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2337.             _ADOKey __RPC_FAR * This);
  2338.         
  2339.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  2340.             _ADOKey __RPC_FAR * This,
  2341.             /* [out] */ UINT __RPC_FAR *pctinfo);
  2342.         
  2343.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  2344.             _ADOKey __RPC_FAR * This,
  2345.             /* [in] */ UINT iTInfo,
  2346.             /* [in] */ LCID lcid,
  2347.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  2348.         
  2349.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  2350.             _ADOKey __RPC_FAR * This,
  2351.             /* [in] */ REFIID riid,
  2352.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2353.             /* [in] */ UINT cNames,
  2354.             /* [in] */ LCID lcid,
  2355.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  2356.         
  2357.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  2358.             _ADOKey __RPC_FAR * This,
  2359.             /* [in] */ DISPID dispIdMember,
  2360.             /* [in] */ REFIID riid,
  2361.             /* [in] */ LCID lcid,
  2362.             /* [in] */ WORD wFlags,
  2363.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  2364.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  2365.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  2366.             /* [out] */ UINT __RPC_FAR *puArgErr);
  2367.         
  2368.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  2369.             _ADOKey __RPC_FAR * This,
  2370.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2371.         
  2372.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
  2373.             _ADOKey __RPC_FAR * This,
  2374.             /* [in] */ BSTR newVal);
  2375.         
  2376.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DeleteRule )( 
  2377.             _ADOKey __RPC_FAR * This,
  2378.             /* [retval][out] */ RuleEnum __RPC_FAR *pVal);
  2379.         
  2380.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DeleteRule )( 
  2381.             _ADOKey __RPC_FAR * This,
  2382.             /* [in] */ RuleEnum newVal);
  2383.         
  2384.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
  2385.             _ADOKey __RPC_FAR * This,
  2386.             /* [retval][out] */ KeyTypeEnum __RPC_FAR *pVal);
  2387.         
  2388.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Type )( 
  2389.             _ADOKey __RPC_FAR * This,
  2390.             /* [in] */ KeyTypeEnum newVal);
  2391.         
  2392.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RelatedTable )( 
  2393.             _ADOKey __RPC_FAR * This,
  2394.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2395.         
  2396.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RelatedTable )( 
  2397.             _ADOKey __RPC_FAR * This,
  2398.             /* [in] */ BSTR newVal);
  2399.         
  2400.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UpdateRule )( 
  2401.             _ADOKey __RPC_FAR * This,
  2402.             /* [retval][out] */ RuleEnum __RPC_FAR *pVal);
  2403.         
  2404.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UpdateRule )( 
  2405.             _ADOKey __RPC_FAR * This,
  2406.             /* [in] */ RuleEnum newVal);
  2407.         
  2408.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Columns )( 
  2409.             _ADOKey __RPC_FAR * This,
  2410.             /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject);
  2411.         
  2412.         END_INTERFACE
  2413.     } _KeyVtbl;
  2414.     interface _Key
  2415.     {
  2416.         CONST_VTBL struct _KeyVtbl __RPC_FAR *lpVtbl;
  2417.     };
  2418.     
  2419. #ifdef COBJMACROS
  2420. #define _Key_QueryInterface(This,riid,ppvObject)    \
  2421.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2422. #define _Key_AddRef(This)    \
  2423.     (This)->lpVtbl -> AddRef(This)
  2424. #define _Key_Release(This)    \
  2425.     (This)->lpVtbl -> Release(This)
  2426. #define _Key_GetTypeInfoCount(This,pctinfo)    \
  2427.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2428. #define _Key_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  2429.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2430. #define _Key_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  2431.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2432. #define _Key_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  2433.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2434. #define _Key_get_Name(This,pVal)    \
  2435.     (This)->lpVtbl -> get_Name(This,pVal)
  2436. #define _Key_put_Name(This,newVal)    \
  2437.     (This)->lpVtbl -> put_Name(This,newVal)
  2438. #define _Key_get_DeleteRule(This,pVal)    \
  2439.     (This)->lpVtbl -> get_DeleteRule(This,pVal)
  2440. #define _Key_put_DeleteRule(This,newVal)    \
  2441.     (This)->lpVtbl -> put_DeleteRule(This,newVal)
  2442. #define _Key_get_Type(This,pVal)    \
  2443.     (This)->lpVtbl -> get_Type(This,pVal)
  2444. #define _Key_put_Type(This,newVal)    \
  2445.     (This)->lpVtbl -> put_Type(This,newVal)
  2446. #define _Key_get_RelatedTable(This,pVal)    \
  2447.     (This)->lpVtbl -> get_RelatedTable(This,pVal)
  2448. #define _Key_put_RelatedTable(This,newVal)    \
  2449.     (This)->lpVtbl -> put_RelatedTable(This,newVal)
  2450. #define _Key_get_UpdateRule(This,pVal)    \
  2451.     (This)->lpVtbl -> get_UpdateRule(This,pVal)
  2452. #define _Key_put_UpdateRule(This,newVal)    \
  2453.     (This)->lpVtbl -> put_UpdateRule(This,newVal)
  2454. #define _Key_get_Columns(This,ppvObject)    \
  2455.     (This)->lpVtbl -> get_Columns(This,ppvObject)
  2456. #endif /* COBJMACROS */
  2457. #endif     /* C style interface */
  2458. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Key_get_Name_Proxy( 
  2459.     _ADOKey __RPC_FAR * This,
  2460.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2461. void __RPC_STUB _Key_get_Name_Stub(
  2462.     IRpcStubBuffer *This,
  2463.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2464.     PRPC_MESSAGE _pRpcMessage,
  2465.     DWORD *_pdwStubPhase);
  2466. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Key_put_Name_Proxy( 
  2467.     _ADOKey __RPC_FAR * This,
  2468.     /* [in] */ BSTR newVal);
  2469. void __RPC_STUB _Key_put_Name_Stub(
  2470.     IRpcStubBuffer *This,
  2471.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2472.     PRPC_MESSAGE _pRpcMessage,
  2473.     DWORD *_pdwStubPhase);
  2474. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Key_get_DeleteRule_Proxy( 
  2475.     _ADOKey __RPC_FAR * This,
  2476.     /* [retval][out] */ RuleEnum __RPC_FAR *pVal);
  2477. void __RPC_STUB _Key_get_DeleteRule_Stub(
  2478.     IRpcStubBuffer *This,
  2479.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2480.     PRPC_MESSAGE _pRpcMessage,
  2481.     DWORD *_pdwStubPhase);
  2482. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Key_put_DeleteRule_Proxy( 
  2483.     _ADOKey __RPC_FAR * This,
  2484.     /* [in] */ RuleEnum newVal);
  2485. void __RPC_STUB _Key_put_DeleteRule_Stub(
  2486.     IRpcStubBuffer *This,
  2487.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2488.     PRPC_MESSAGE _pRpcMessage,
  2489.     DWORD *_pdwStubPhase);
  2490. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Key_get_Type_Proxy( 
  2491.     _ADOKey __RPC_FAR * This,
  2492.     /* [retval][out] */ KeyTypeEnum __RPC_FAR *pVal);
  2493. void __RPC_STUB _Key_get_Type_Stub(
  2494.     IRpcStubBuffer *This,
  2495.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2496.     PRPC_MESSAGE _pRpcMessage,
  2497.     DWORD *_pdwStubPhase);
  2498. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Key_put_Type_Proxy( 
  2499.     _ADOKey __RPC_FAR * This,
  2500.     /* [in] */ KeyTypeEnum newVal);
  2501. void __RPC_STUB _Key_put_Type_Stub(
  2502.     IRpcStubBuffer *This,
  2503.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2504.     PRPC_MESSAGE _pRpcMessage,
  2505.     DWORD *_pdwStubPhase);
  2506. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Key_get_RelatedTable_Proxy( 
  2507.     _ADOKey __RPC_FAR * This,
  2508.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2509. void __RPC_STUB _Key_get_RelatedTable_Stub(
  2510.     IRpcStubBuffer *This,
  2511.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2512.     PRPC_MESSAGE _pRpcMessage,
  2513.     DWORD *_pdwStubPhase);
  2514. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Key_put_RelatedTable_Proxy( 
  2515.     _ADOKey __RPC_FAR * This,
  2516.     /* [in] */ BSTR newVal);
  2517. void __RPC_STUB _Key_put_RelatedTable_Stub(
  2518.     IRpcStubBuffer *This,
  2519.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2520.     PRPC_MESSAGE _pRpcMessage,
  2521.     DWORD *_pdwStubPhase);
  2522. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Key_get_UpdateRule_Proxy( 
  2523.     _ADOKey __RPC_FAR * This,
  2524.     /* [retval][out] */ RuleEnum __RPC_FAR *pVal);
  2525. void __RPC_STUB _Key_get_UpdateRule_Stub(
  2526.     IRpcStubBuffer *This,
  2527.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2528.     PRPC_MESSAGE _pRpcMessage,
  2529.     DWORD *_pdwStubPhase);
  2530. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Key_put_UpdateRule_Proxy( 
  2531.     _ADOKey __RPC_FAR * This,
  2532.     /* [in] */ RuleEnum newVal);
  2533. void __RPC_STUB _Key_put_UpdateRule_Stub(
  2534.     IRpcStubBuffer *This,
  2535.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2536.     PRPC_MESSAGE _pRpcMessage,
  2537.     DWORD *_pdwStubPhase);
  2538. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Key_get_Columns_Proxy( 
  2539.     _ADOKey __RPC_FAR * This,
  2540.     /* [retval][out] */ ADOColumns __RPC_FAR *__RPC_FAR *ppvObject);
  2541. void __RPC_STUB _Key_get_Columns_Stub(
  2542.     IRpcStubBuffer *This,
  2543.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2544.     PRPC_MESSAGE _pRpcMessage,
  2545.     DWORD *_pdwStubPhase);
  2546. #endif     /* ___Key_INTERFACE_DEFINED__ */
  2547. #ifndef __View_INTERFACE_DEFINED__
  2548. #define __View_INTERFACE_DEFINED__
  2549. /* interface ADOView */
  2550. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  2551. EXTERN_C const IID IID_View;
  2552. #if defined(__cplusplus) && !defined(CINTERFACE)
  2553.     
  2554.     MIDL_INTERFACE("00000613-0000-0010-8000-00AA006D2EA4")
  2555.     ADOView : public IDispatch
  2556.     {
  2557.     public:
  2558.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Command( 
  2559.             /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
  2560.         
  2561.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Command( 
  2562.             /* [in] */ VARIANT newVal) = 0;
  2563.         
  2564.         virtual /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE putref_Command( 
  2565.             /* [in] */ IDispatch __RPC_FAR *pComm) = 0;
  2566.         
  2567.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  2568.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  2569.         
  2570.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DateCreated( 
  2571.             /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
  2572.         
  2573.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DateModified( 
  2574.             /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
  2575.         
  2576.     };
  2577.     
  2578. #else     /* C style interface */
  2579.     typedef struct ViewVtbl
  2580.     {
  2581.         BEGIN_INTERFACE
  2582.         
  2583.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2584.             ADOView __RPC_FAR * This,
  2585.             /* [in] */ REFIID riid,
  2586.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2587.         
  2588.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2589.             ADOView __RPC_FAR * This);
  2590.         
  2591.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2592.             ADOView __RPC_FAR * This);
  2593.         
  2594.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  2595.             ADOView __RPC_FAR * This,
  2596.             /* [out] */ UINT __RPC_FAR *pctinfo);
  2597.         
  2598.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  2599.             ADOView __RPC_FAR * This,
  2600.             /* [in] */ UINT iTInfo,
  2601.             /* [in] */ LCID lcid,
  2602.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  2603.         
  2604.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  2605.             ADOView __RPC_FAR * This,
  2606.             /* [in] */ REFIID riid,
  2607.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2608.             /* [in] */ UINT cNames,
  2609.             /* [in] */ LCID lcid,
  2610.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  2611.         
  2612.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  2613.             ADOView __RPC_FAR * This,
  2614.             /* [in] */ DISPID dispIdMember,
  2615.             /* [in] */ REFIID riid,
  2616.             /* [in] */ LCID lcid,
  2617.             /* [in] */ WORD wFlags,
  2618.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  2619.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  2620.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  2621.             /* [out] */ UINT __RPC_FAR *puArgErr);
  2622.         
  2623.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Command )( 
  2624.             ADOView __RPC_FAR * This,
  2625.             /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2626.         
  2627.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Command )( 
  2628.             ADOView __RPC_FAR * This,
  2629.             /* [in] */ VARIANT newVal);
  2630.         
  2631.         /* [helpcontext][id][propputref] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *putref_Command )( 
  2632.             ADOView __RPC_FAR * This,
  2633.             /* [in] */ IDispatch __RPC_FAR *pComm);
  2634.         
  2635.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  2636.             ADOView __RPC_FAR * This,
  2637.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2638.         
  2639.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DateCreated )( 
  2640.             ADOView __RPC_FAR * This,
  2641.             /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2642.         
  2643.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DateModified )( 
  2644.             ADOView __RPC_FAR * This,
  2645.             /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2646.         
  2647.         END_INTERFACE
  2648.     } ViewVtbl;
  2649.     interface View
  2650.     {
  2651.         CONST_VTBL struct ViewVtbl __RPC_FAR *lpVtbl;
  2652.     };
  2653.     
  2654. #ifdef COBJMACROS
  2655. #define View_QueryInterface(This,riid,ppvObject)    \
  2656.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2657. #define View_AddRef(This)    \
  2658.     (This)->lpVtbl -> AddRef(This)
  2659. #define View_Release(This)    \
  2660.     (This)->lpVtbl -> Release(This)
  2661. #define View_GetTypeInfoCount(This,pctinfo)    \
  2662.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2663. #define View_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  2664.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2665. #define View_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  2666.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2667. #define View_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  2668.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2669. #define View_get_Command(This,pVal)    \
  2670.     (This)->lpVtbl -> get_Command(This,pVal)
  2671. #define View_put_Command(This,newVal)    \
  2672.     (This)->lpVtbl -> put_Command(This,newVal)
  2673. #define View_putref_Command(This,pComm)    \
  2674.     (This)->lpVtbl -> putref_Command(This,pComm)
  2675. #define View_get_Name(This,pVal)    \
  2676.     (This)->lpVtbl -> get_Name(This,pVal)
  2677. #define View_get_DateCreated(This,pVal)    \
  2678.     (This)->lpVtbl -> get_DateCreated(This,pVal)
  2679. #define View_get_DateModified(This,pVal)    \
  2680.     (This)->lpVtbl -> get_DateModified(This,pVal)
  2681. #endif /* COBJMACROS */
  2682. #endif     /* C style interface */
  2683. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE View_get_Command_Proxy( 
  2684.     ADOView __RPC_FAR * This,
  2685.     /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2686. void __RPC_STUB View_get_Command_Stub(
  2687.     IRpcStubBuffer *This,
  2688.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2689.     PRPC_MESSAGE _pRpcMessage,
  2690.     DWORD *_pdwStubPhase);
  2691. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE View_put_Command_Proxy( 
  2692.     ADOView __RPC_FAR * This,
  2693.     /* [in] */ VARIANT newVal);
  2694. void __RPC_STUB View_put_Command_Stub(
  2695.     IRpcStubBuffer *This,
  2696.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2697.     PRPC_MESSAGE _pRpcMessage,
  2698.     DWORD *_pdwStubPhase);
  2699. /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE View_putref_Command_Proxy( 
  2700.     ADOView __RPC_FAR * This,
  2701.     /* [in] */ IDispatch __RPC_FAR *pComm);
  2702. void __RPC_STUB View_putref_Command_Stub(
  2703.     IRpcStubBuffer *This,
  2704.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2705.     PRPC_MESSAGE _pRpcMessage,
  2706.     DWORD *_pdwStubPhase);
  2707. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE View_get_Name_Proxy( 
  2708.     ADOView __RPC_FAR * This,
  2709.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2710. void __RPC_STUB View_get_Name_Stub(
  2711.     IRpcStubBuffer *This,
  2712.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2713.     PRPC_MESSAGE _pRpcMessage,
  2714.     DWORD *_pdwStubPhase);
  2715. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE View_get_DateCreated_Proxy( 
  2716.     ADOView __RPC_FAR * This,
  2717.     /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2718. void __RPC_STUB View_get_DateCreated_Stub(
  2719.     IRpcStubBuffer *This,
  2720.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2721.     PRPC_MESSAGE _pRpcMessage,
  2722.     DWORD *_pdwStubPhase);
  2723. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE View_get_DateModified_Proxy( 
  2724.     ADOView __RPC_FAR * This,
  2725.     /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2726. void __RPC_STUB View_get_DateModified_Stub(
  2727.     IRpcStubBuffer *This,
  2728.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2729.     PRPC_MESSAGE _pRpcMessage,
  2730.     DWORD *_pdwStubPhase);
  2731. #endif     /* __View_INTERFACE_DEFINED__ */
  2732. #ifndef __Procedure_INTERFACE_DEFINED__
  2733. #define __Procedure_INTERFACE_DEFINED__
  2734. /* interface ADOProcedure */
  2735. /* [helpcontext][unique][dual][uuid][nonextensible][object] */ 
  2736. EXTERN_C const IID IID_Procedure;
  2737. #if defined(__cplusplus) && !defined(CINTERFACE)
  2738.     
  2739.     MIDL_INTERFACE("00000625-0000-0010-8000-00AA006D2EA4")
  2740.     ADOProcedure : public IDispatch
  2741.     {
  2742.     public:
  2743.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Command( 
  2744.             /* [retval][out] */ VARIANT __RPC_FAR *pVar) = 0;
  2745.         
  2746.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Command( 
  2747.             /* [in] */ VARIANT newVal) = 0;
  2748.         
  2749.         virtual /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE putref_Command( 
  2750.             /* [in] */ IDispatch __RPC_FAR *pComm) = 0;
  2751.         
  2752.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  2753.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  2754.         
  2755.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DateCreated( 
  2756.             /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
  2757.         
  2758.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_DateModified( 
  2759.             /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
  2760.         
  2761.     };
  2762.     
  2763. #else     /* C style interface */
  2764.     typedef struct ProcedureVtbl
  2765.     {
  2766.         BEGIN_INTERFACE
  2767.         
  2768.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2769.             ADOProcedure __RPC_FAR * This,
  2770.             /* [in] */ REFIID riid,
  2771.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2772.         
  2773.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2774.             ADOProcedure __RPC_FAR * This);
  2775.         
  2776.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2777.             ADOProcedure __RPC_FAR * This);
  2778.         
  2779.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  2780.             ADOProcedure __RPC_FAR * This,
  2781.             /* [out] */ UINT __RPC_FAR *pctinfo);
  2782.         
  2783.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  2784.             ADOProcedure __RPC_FAR * This,
  2785.             /* [in] */ UINT iTInfo,
  2786.             /* [in] */ LCID lcid,
  2787.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  2788.         
  2789.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  2790.             ADOProcedure __RPC_FAR * This,
  2791.             /* [in] */ REFIID riid,
  2792.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2793.             /* [in] */ UINT cNames,
  2794.             /* [in] */ LCID lcid,
  2795.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  2796.         
  2797.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  2798.             ADOProcedure __RPC_FAR * This,
  2799.             /* [in] */ DISPID dispIdMember,
  2800.             /* [in] */ REFIID riid,
  2801.             /* [in] */ LCID lcid,
  2802.             /* [in] */ WORD wFlags,
  2803.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  2804.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  2805.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  2806.             /* [out] */ UINT __RPC_FAR *puArgErr);
  2807.         
  2808.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Command )( 
  2809.             ADOProcedure __RPC_FAR * This,
  2810.             /* [retval][out] */ VARIANT __RPC_FAR *pVar);
  2811.         
  2812.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Command )( 
  2813.             ADOProcedure __RPC_FAR * This,
  2814.             /* [in] */ VARIANT newVal);
  2815.         
  2816.         /* [helpcontext][id][propputref] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *putref_Command )( 
  2817.             ADOProcedure __RPC_FAR * This,
  2818.             /* [in] */ IDispatch __RPC_FAR *pComm);
  2819.         
  2820.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  2821.             ADOProcedure __RPC_FAR * This,
  2822.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2823.         
  2824.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DateCreated )( 
  2825.             ADOProcedure __RPC_FAR * This,
  2826.             /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2827.         
  2828.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DateModified )( 
  2829.             ADOProcedure __RPC_FAR * This,
  2830.             /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2831.         
  2832.         END_INTERFACE
  2833.     } ProcedureVtbl;
  2834.     interface Procedure
  2835.     {
  2836.         CONST_VTBL struct ProcedureVtbl __RPC_FAR *lpVtbl;
  2837.     };
  2838.     
  2839. #ifdef COBJMACROS
  2840. #define Procedure_QueryInterface(This,riid,ppvObject)    \
  2841.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2842. #define Procedure_AddRef(This)    \
  2843.     (This)->lpVtbl -> AddRef(This)
  2844. #define Procedure_Release(This)    \
  2845.     (This)->lpVtbl -> Release(This)
  2846. #define Procedure_GetTypeInfoCount(This,pctinfo)    \
  2847.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2848. #define Procedure_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  2849.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2850. #define Procedure_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  2851.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2852. #define Procedure_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  2853.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2854. #define Procedure_get_Command(This,pVar)    \
  2855.     (This)->lpVtbl -> get_Command(This,pVar)
  2856. #define Procedure_put_Command(This,newVal)    \
  2857.     (This)->lpVtbl -> put_Command(This,newVal)
  2858. #define Procedure_putref_Command(This,pComm)    \
  2859.     (This)->lpVtbl -> putref_Command(This,pComm)
  2860. #define Procedure_get_Name(This,pVal)    \
  2861.     (This)->lpVtbl -> get_Name(This,pVal)
  2862. #define Procedure_get_DateCreated(This,pVal)    \
  2863.     (This)->lpVtbl -> get_DateCreated(This,pVal)
  2864. #define Procedure_get_DateModified(This,pVal)    \
  2865.     (This)->lpVtbl -> get_DateModified(This,pVal)
  2866. #endif /* COBJMACROS */
  2867. #endif     /* C style interface */
  2868. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Procedure_get_Command_Proxy( 
  2869.     ADOProcedure __RPC_FAR * This,
  2870.     /* [retval][out] */ VARIANT __RPC_FAR *pVar);
  2871. void __RPC_STUB Procedure_get_Command_Stub(
  2872.     IRpcStubBuffer *This,
  2873.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2874.     PRPC_MESSAGE _pRpcMessage,
  2875.     DWORD *_pdwStubPhase);
  2876. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE Procedure_put_Command_Proxy( 
  2877.     ADOProcedure __RPC_FAR * This,
  2878.     /* [in] */ VARIANT newVal);
  2879. void __RPC_STUB Procedure_put_Command_Stub(
  2880.     IRpcStubBuffer *This,
  2881.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2882.     PRPC_MESSAGE _pRpcMessage,
  2883.     DWORD *_pdwStubPhase);
  2884. /* [helpcontext][id][propputref] */ HRESULT STDMETHODCALLTYPE Procedure_putref_Command_Proxy( 
  2885.     ADOProcedure __RPC_FAR * This,
  2886.     /* [in] */ IDispatch __RPC_FAR *pComm);
  2887. void __RPC_STUB Procedure_putref_Command_Stub(
  2888.     IRpcStubBuffer *This,
  2889.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2890.     PRPC_MESSAGE _pRpcMessage,
  2891.     DWORD *_pdwStubPhase);
  2892. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Procedure_get_Name_Proxy( 
  2893.     ADOProcedure __RPC_FAR * This,
  2894.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  2895. void __RPC_STUB Procedure_get_Name_Stub(
  2896.     IRpcStubBuffer *This,
  2897.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2898.     PRPC_MESSAGE _pRpcMessage,
  2899.     DWORD *_pdwStubPhase);
  2900. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Procedure_get_DateCreated_Proxy( 
  2901.     ADOProcedure __RPC_FAR * This,
  2902.     /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2903. void __RPC_STUB Procedure_get_DateCreated_Stub(
  2904.     IRpcStubBuffer *This,
  2905.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2906.     PRPC_MESSAGE _pRpcMessage,
  2907.     DWORD *_pdwStubPhase);
  2908. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Procedure_get_DateModified_Proxy( 
  2909.     ADOProcedure __RPC_FAR * This,
  2910.     /* [retval][out] */ VARIANT __RPC_FAR *pVal);
  2911. void __RPC_STUB Procedure_get_DateModified_Stub(
  2912.     IRpcStubBuffer *This,
  2913.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2914.     PRPC_MESSAGE _pRpcMessage,
  2915.     DWORD *_pdwStubPhase);
  2916. #endif     /* __Procedure_INTERFACE_DEFINED__ */
  2917. EXTERN_C const CLSID CLSID_Catalog;
  2918. #ifdef __cplusplus
  2919. Catalog;
  2920. #endif
  2921. EXTERN_C const CLSID CLSID_Table;
  2922. #ifdef __cplusplus
  2923. Table;
  2924. #endif
  2925. #ifndef __Property_INTERFACE_DEFINED__
  2926. #define __Property_INTERFACE_DEFINED__
  2927. /* interface ADOProperty */
  2928. /* [object][helpcontext][uuid][nonextensible][dual] */ 
  2929. EXTERN_C const IID IID_Property;
  2930. #if defined(__cplusplus) && !defined(CINTERFACE)
  2931.     
  2932.     MIDL_INTERFACE("00000503-0000-0010-8000-00AA006D2EA4")
  2933.     ADOProperty : public IDispatch
  2934.     {
  2935.     public:
  2936.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
  2937.             /* [retval][out] */ VARIANT __RPC_FAR *pval) = 0;
  2938.         
  2939.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
  2940.             /* [in] */ VARIANT val) = 0;
  2941.         
  2942.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  2943.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  2944.         
  2945.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  2946.             /* [retval][out] */ DataTypeEnum __RPC_FAR *ptype) = 0;
  2947.         
  2948.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  2949.             /* [retval][out] */ long __RPC_FAR *plAttributes) = 0;
  2950.         
  2951.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Attributes( 
  2952.             /* [in] */ long lAttributes) = 0;
  2953.         
  2954.     };
  2955.     
  2956. #else     /* C style interface */
  2957.     typedef struct PropertyVtbl
  2958.     {
  2959.         BEGIN_INTERFACE
  2960.         
  2961.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2962.             ADOProperty __RPC_FAR * This,
  2963.             /* [in] */ REFIID riid,
  2964.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2965.         
  2966.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2967.             ADOProperty __RPC_FAR * This);
  2968.         
  2969.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2970.             ADOProperty __RPC_FAR * This);
  2971.         
  2972.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  2973.             ADOProperty __RPC_FAR * This,
  2974.             /* [out] */ UINT __RPC_FAR *pctinfo);
  2975.         
  2976.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  2977.             ADOProperty __RPC_FAR * This,
  2978.             /* [in] */ UINT iTInfo,
  2979.             /* [in] */ LCID lcid,
  2980.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  2981.         
  2982.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  2983.             ADOProperty __RPC_FAR * This,
  2984.             /* [in] */ REFIID riid,
  2985.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2986.             /* [in] */ UINT cNames,
  2987.             /* [in] */ LCID lcid,
  2988.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  2989.         
  2990.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  2991.             ADOProperty __RPC_FAR * This,
  2992.             /* [in] */ DISPID dispIdMember,
  2993.             /* [in] */ REFIID riid,
  2994.             /* [in] */ LCID lcid,
  2995.             /* [in] */ WORD wFlags,
  2996.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  2997.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  2998.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  2999.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3000.         
  3001.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
  3002.             ADOProperty __RPC_FAR * This,
  3003.             /* [retval][out] */ VARIANT __RPC_FAR *pval);
  3004.         
  3005.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
  3006.             ADOProperty __RPC_FAR * This,
  3007.             /* [in] */ VARIANT val);
  3008.         
  3009.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  3010.             ADOProperty __RPC_FAR * This,
  3011.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  3012.         
  3013.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
  3014.             ADOProperty __RPC_FAR * This,
  3015.             /* [retval][out] */ DataTypeEnum __RPC_FAR *ptype);
  3016.         
  3017.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attributes )( 
  3018.             ADOProperty __RPC_FAR * This,
  3019.             /* [retval][out] */ long __RPC_FAR *plAttributes);
  3020.         
  3021.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Attributes )( 
  3022.             ADOProperty __RPC_FAR * This,
  3023.             /* [in] */ long lAttributes);
  3024.         
  3025.         END_INTERFACE
  3026.     } PropertyVtbl;
  3027.     interface Property
  3028.     {
  3029.         CONST_VTBL struct PropertyVtbl __RPC_FAR *lpVtbl;
  3030.     };
  3031.     
  3032. #ifdef COBJMACROS
  3033. #define Property_QueryInterface(This,riid,ppvObject)    \
  3034.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3035. #define Property_AddRef(This)    \
  3036.     (This)->lpVtbl -> AddRef(This)
  3037. #define Property_Release(This)    \
  3038.     (This)->lpVtbl -> Release(This)
  3039. #define Property_GetTypeInfoCount(This,pctinfo)    \
  3040.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3041. #define Property_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  3042.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3043. #define Property_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  3044.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3045. #define Property_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  3046.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3047. #define Property_get_Value(This,pval)    \
  3048.     (This)->lpVtbl -> get_Value(This,pval)
  3049. #define Property_put_Value(This,val)    \
  3050.     (This)->lpVtbl -> put_Value(This,val)
  3051. #define Property_get_Name(This,pbstr)    \
  3052.     (This)->lpVtbl -> get_Name(This,pbstr)
  3053. #define Property_get_Type(This,ptype)    \
  3054.     (This)->lpVtbl -> get_Type(This,ptype)
  3055. #define Property_get_Attributes(This,plAttributes)    \
  3056.     (This)->lpVtbl -> get_Attributes(This,plAttributes)
  3057. #define Property_put_Attributes(This,lAttributes)    \
  3058.     (This)->lpVtbl -> put_Attributes(This,lAttributes)
  3059. #endif /* COBJMACROS */
  3060. #endif     /* C style interface */
  3061. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Value_Proxy( 
  3062.     ADOProperty __RPC_FAR * This,
  3063.     /* [retval][out] */ VARIANT __RPC_FAR *pval);
  3064. void __RPC_STUB Property_get_Value_Stub(
  3065.     IRpcStubBuffer *This,
  3066.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3067.     PRPC_MESSAGE _pRpcMessage,
  3068.     DWORD *_pdwStubPhase);
  3069. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE Property_put_Value_Proxy( 
  3070.     ADOProperty __RPC_FAR * This,
  3071.     /* [in] */ VARIANT val);
  3072. void __RPC_STUB Property_put_Value_Stub(
  3073.     IRpcStubBuffer *This,
  3074.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3075.     PRPC_MESSAGE _pRpcMessage,
  3076.     DWORD *_pdwStubPhase);
  3077. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Name_Proxy( 
  3078.     ADOProperty __RPC_FAR * This,
  3079.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  3080. void __RPC_STUB Property_get_Name_Stub(
  3081.     IRpcStubBuffer *This,
  3082.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3083.     PRPC_MESSAGE _pRpcMessage,
  3084.     DWORD *_pdwStubPhase);
  3085. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Type_Proxy( 
  3086.     ADOProperty __RPC_FAR * This,
  3087.     /* [retval][out] */ DataTypeEnum __RPC_FAR *ptype);
  3088. void __RPC_STUB Property_get_Type_Stub(
  3089.     IRpcStubBuffer *This,
  3090.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3091.     PRPC_MESSAGE _pRpcMessage,
  3092.     DWORD *_pdwStubPhase);
  3093. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Attributes_Proxy( 
  3094.     ADOProperty __RPC_FAR * This,
  3095.     /* [retval][out] */ long __RPC_FAR *plAttributes);
  3096. void __RPC_STUB Property_get_Attributes_Stub(
  3097.     IRpcStubBuffer *This,
  3098.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3099.     PRPC_MESSAGE _pRpcMessage,
  3100.     DWORD *_pdwStubPhase);
  3101. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE Property_put_Attributes_Proxy( 
  3102.     ADOProperty __RPC_FAR * This,
  3103.     /* [in] */ long lAttributes);
  3104. void __RPC_STUB Property_put_Attributes_Stub(
  3105.     IRpcStubBuffer *This,
  3106.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3107.     PRPC_MESSAGE _pRpcMessage,
  3108.     DWORD *_pdwStubPhase);
  3109. #endif     /* __Property_INTERFACE_DEFINED__ */
  3110. EXTERN_C const CLSID CLSID_Group;
  3111. #ifdef __cplusplus
  3112. Group;
  3113. #endif
  3114. EXTERN_C const CLSID CLSID_User;
  3115. #ifdef __cplusplus
  3116. User;
  3117. #endif
  3118. EXTERN_C const CLSID CLSID_Column;
  3119. #ifdef __cplusplus
  3120. Column;
  3121. #endif
  3122. EXTERN_C const CLSID CLSID_Index;
  3123. #ifdef __cplusplus
  3124. Index;
  3125. #endif
  3126. EXTERN_C const CLSID CLSID_Key;
  3127. #ifdef __cplusplus
  3128. Key;
  3129. #endif
  3130. #ifndef __Tables_INTERFACE_DEFINED__
  3131. #define __Tables_INTERFACE_DEFINED__
  3132. /* interface ADOTables */
  3133. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  3134. EXTERN_C const IID IID_Tables;
  3135. #if defined(__cplusplus) && !defined(CINTERFACE)
  3136.     
  3137.     MIDL_INTERFACE("00000611-0000-0010-8000-00AA006D2EA4")
  3138.     ADOTables : public _ADOCollection
  3139.     {
  3140.     public:
  3141.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  3142.             /* [in] */ VARIANT Item,
  3143.             /* [retval][out] */ Table    __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  3144.         
  3145.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  3146.             /* [in] */ VARIANT Item) = 0;
  3147.         
  3148.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  3149.             /* [in] */ VARIANT Item) = 0;
  3150.         
  3151.     };
  3152.     
  3153. #else     /* C style interface */
  3154.     typedef struct TablesVtbl
  3155.     {
  3156.         BEGIN_INTERFACE
  3157.         
  3158.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3159.             ADOTables __RPC_FAR * This,
  3160.             /* [in] */ REFIID riid,
  3161.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3162.         
  3163.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3164.             ADOTables __RPC_FAR * This);
  3165.         
  3166.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3167.             ADOTables __RPC_FAR * This);
  3168.         
  3169.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3170.             ADOTables __RPC_FAR * This,
  3171.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3172.         
  3173.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3174.             ADOTables __RPC_FAR * This,
  3175.             /* [in] */ UINT iTInfo,
  3176.             /* [in] */ LCID lcid,
  3177.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3178.         
  3179.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3180.             ADOTables __RPC_FAR * This,
  3181.             /* [in] */ REFIID riid,
  3182.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3183.             /* [in] */ UINT cNames,
  3184.             /* [in] */ LCID lcid,
  3185.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  3186.         
  3187.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3188.             ADOTables __RPC_FAR * This,
  3189.             /* [in] */ DISPID dispIdMember,
  3190.             /* [in] */ REFIID riid,
  3191.             /* [in] */ LCID lcid,
  3192.             /* [in] */ WORD wFlags,
  3193.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3194.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3195.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3196.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3197.         
  3198.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  3199.             ADOTables __RPC_FAR * This,
  3200.             /* [retval][out] */ long __RPC_FAR *c);
  3201.         
  3202.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  3203.             ADOTables __RPC_FAR * This,
  3204.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  3205.         
  3206.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  3207.             ADOTables __RPC_FAR * This);
  3208.         
  3209.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  3210.             ADOTables __RPC_FAR * This,
  3211.             /* [in] */ VARIANT Item,
  3212.             /* [retval][out] */ Table    __RPC_FAR *__RPC_FAR *ppvObject);
  3213.         
  3214.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  3215.             ADOTables __RPC_FAR * This,
  3216.             /* [in] */ VARIANT Item);
  3217.         
  3218.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  3219.             ADOTables __RPC_FAR * This,
  3220.             /* [in] */ VARIANT Item);
  3221.         
  3222.         END_INTERFACE
  3223.     } TablesVtbl;
  3224.     interface Tables
  3225.     {
  3226.         CONST_VTBL struct TablesVtbl __RPC_FAR *lpVtbl;
  3227.     };
  3228.     
  3229. #ifdef COBJMACROS
  3230. #define Tables_QueryInterface(This,riid,ppvObject)    \
  3231.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3232. #define Tables_AddRef(This)    \
  3233.     (This)->lpVtbl -> AddRef(This)
  3234. #define Tables_Release(This)    \
  3235.     (This)->lpVtbl -> Release(This)
  3236. #define Tables_GetTypeInfoCount(This,pctinfo)    \
  3237.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3238. #define Tables_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  3239.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3240. #define Tables_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  3241.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3242. #define Tables_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  3243.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3244. #define Tables_get_Count(This,c)    \
  3245.     (This)->lpVtbl -> get_Count(This,c)
  3246. #define Tables__NewEnum(This,ppvObject)    \
  3247.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  3248. #define Tables_Refresh(This)    \
  3249.     (This)->lpVtbl -> Refresh(This)
  3250. #define Tables_get_Item(This,Item,ppvObject)    \
  3251.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  3252. #define Tables_Append(This,Item)    \
  3253.     (This)->lpVtbl -> Append(This,Item)
  3254. #define Tables_Delete(This,Item)    \
  3255.     (This)->lpVtbl -> Delete(This,Item)
  3256. #endif /* COBJMACROS */
  3257. #endif     /* C style interface */
  3258. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Tables_get_Item_Proxy( 
  3259.     ADOTables __RPC_FAR * This,
  3260.     /* [in] */ VARIANT Item,
  3261.     /* [retval][out] */ Table    __RPC_FAR *__RPC_FAR *ppvObject);
  3262. void __RPC_STUB Tables_get_Item_Stub(
  3263.     IRpcStubBuffer *This,
  3264.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3265.     PRPC_MESSAGE _pRpcMessage,
  3266.     DWORD *_pdwStubPhase);
  3267. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Tables_Append_Proxy( 
  3268.     ADOTables __RPC_FAR * This,
  3269.     /* [in] */ VARIANT Item);
  3270. void __RPC_STUB Tables_Append_Stub(
  3271.     IRpcStubBuffer *This,
  3272.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3273.     PRPC_MESSAGE _pRpcMessage,
  3274.     DWORD *_pdwStubPhase);
  3275. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Tables_Delete_Proxy( 
  3276.     ADOTables __RPC_FAR * This,
  3277.     /* [in] */ VARIANT Item);
  3278. void __RPC_STUB Tables_Delete_Stub(
  3279.     IRpcStubBuffer *This,
  3280.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3281.     PRPC_MESSAGE _pRpcMessage,
  3282.     DWORD *_pdwStubPhase);
  3283. #endif     /* __Tables_INTERFACE_DEFINED__ */
  3284. #ifndef __Columns_INTERFACE_DEFINED__
  3285. #define __Columns_INTERFACE_DEFINED__
  3286. /* interface ADOColumns */
  3287. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  3288. EXTERN_C const IID IID_Columns;
  3289. #if defined(__cplusplus) && !defined(CINTERFACE)
  3290.     
  3291.     MIDL_INTERFACE("0000061D-0000-0010-8000-00AA006D2EA4")
  3292.     ADOColumns : public _ADOCollection
  3293.     {
  3294.     public:
  3295.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  3296.             /* [in] */ VARIANT Item,
  3297.             /* [retval][out] */ Column    __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  3298.         
  3299.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  3300.             /* [in] */ VARIANT Item,
  3301.             /* [defaultvalue][in] */ DataTypeEnum Type = adVarWChar,
  3302.             /* [defaultvalue][in] */ long DefinedSize = 0) = 0;
  3303.         
  3304.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  3305.             /* [in] */ VARIANT Item) = 0;
  3306.         
  3307.     };
  3308.     
  3309. #else     /* C style interface */
  3310.     typedef struct ColumnsVtbl
  3311.     {
  3312.         BEGIN_INTERFACE
  3313.         
  3314.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3315.             ADOColumns __RPC_FAR * This,
  3316.             /* [in] */ REFIID riid,
  3317.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3318.         
  3319.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3320.             ADOColumns __RPC_FAR * This);
  3321.         
  3322.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3323.             ADOColumns __RPC_FAR * This);
  3324.         
  3325.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3326.             ADOColumns __RPC_FAR * This,
  3327.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3328.         
  3329.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3330.             ADOColumns __RPC_FAR * This,
  3331.             /* [in] */ UINT iTInfo,
  3332.             /* [in] */ LCID lcid,
  3333.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3334.         
  3335.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3336.             ADOColumns __RPC_FAR * This,
  3337.             /* [in] */ REFIID riid,
  3338.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3339.             /* [in] */ UINT cNames,
  3340.             /* [in] */ LCID lcid,
  3341.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  3342.         
  3343.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3344.             ADOColumns __RPC_FAR * This,
  3345.             /* [in] */ DISPID dispIdMember,
  3346.             /* [in] */ REFIID riid,
  3347.             /* [in] */ LCID lcid,
  3348.             /* [in] */ WORD wFlags,
  3349.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3350.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3351.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3352.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3353.         
  3354.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  3355.             ADOColumns __RPC_FAR * This,
  3356.             /* [retval][out] */ long __RPC_FAR *c);
  3357.         
  3358.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  3359.             ADOColumns __RPC_FAR * This,
  3360.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  3361.         
  3362.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  3363.             ADOColumns __RPC_FAR * This);
  3364.         
  3365.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  3366.             ADOColumns __RPC_FAR * This,
  3367.             /* [in] */ VARIANT Item,
  3368.             /* [retval][out] */ Column    __RPC_FAR *__RPC_FAR *ppvObject);
  3369.         
  3370.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  3371.             ADOColumns __RPC_FAR * This,
  3372.             /* [in] */ VARIANT Item,
  3373.             /* [defaultvalue][in] */ DataTypeEnum Type,
  3374.             /* [defaultvalue][in] */ long DefinedSize);
  3375.         
  3376.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  3377.             ADOColumns __RPC_FAR * This,
  3378.             /* [in] */ VARIANT Item);
  3379.         
  3380.         END_INTERFACE
  3381.     } ColumnsVtbl;
  3382.     interface Columns
  3383.     {
  3384.         CONST_VTBL struct ColumnsVtbl __RPC_FAR *lpVtbl;
  3385.     };
  3386.     
  3387. #ifdef COBJMACROS
  3388. #define Columns_QueryInterface(This,riid,ppvObject)    \
  3389.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3390. #define Columns_AddRef(This)    \
  3391.     (This)->lpVtbl -> AddRef(This)
  3392. #define Columns_Release(This)    \
  3393.     (This)->lpVtbl -> Release(This)
  3394. #define Columns_GetTypeInfoCount(This,pctinfo)    \
  3395.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3396. #define Columns_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  3397.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3398. #define Columns_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  3399.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3400. #define Columns_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  3401.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3402. #define Columns_get_Count(This,c)    \
  3403.     (This)->lpVtbl -> get_Count(This,c)
  3404. #define Columns__NewEnum(This,ppvObject)    \
  3405.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  3406. #define Columns_Refresh(This)    \
  3407.     (This)->lpVtbl -> Refresh(This)
  3408. #define Columns_get_Item(This,Item,ppvObject)    \
  3409.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  3410. #define Columns_Append(This,Item,Type,DefinedSize)    \
  3411.     (This)->lpVtbl -> Append(This,Item,Type,DefinedSize)
  3412. #define Columns_Delete(This,Item)    \
  3413.     (This)->lpVtbl -> Delete(This,Item)
  3414. #endif /* COBJMACROS */
  3415. #endif     /* C style interface */
  3416. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Columns_get_Item_Proxy( 
  3417.     ADOColumns __RPC_FAR * This,
  3418.     /* [in] */ VARIANT Item,
  3419.     /* [retval][out] */ Column    __RPC_FAR *__RPC_FAR *ppvObject);
  3420. void __RPC_STUB Columns_get_Item_Stub(
  3421.     IRpcStubBuffer *This,
  3422.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3423.     PRPC_MESSAGE _pRpcMessage,
  3424.     DWORD *_pdwStubPhase);
  3425. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Columns_Append_Proxy( 
  3426.     ADOColumns __RPC_FAR * This,
  3427.     /* [in] */ VARIANT Item,
  3428.     /* [defaultvalue][in] */ DataTypeEnum Type,
  3429.     /* [defaultvalue][in] */ long DefinedSize);
  3430. void __RPC_STUB Columns_Append_Stub(
  3431.     IRpcStubBuffer *This,
  3432.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3433.     PRPC_MESSAGE _pRpcMessage,
  3434.     DWORD *_pdwStubPhase);
  3435. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Columns_Delete_Proxy( 
  3436.     ADOColumns __RPC_FAR * This,
  3437.     /* [in] */ VARIANT Item);
  3438. void __RPC_STUB Columns_Delete_Stub(
  3439.     IRpcStubBuffer *This,
  3440.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3441.     PRPC_MESSAGE _pRpcMessage,
  3442.     DWORD *_pdwStubPhase);
  3443. #endif     /* __Columns_INTERFACE_DEFINED__ */
  3444. #ifndef __Procedures_INTERFACE_DEFINED__
  3445. #define __Procedures_INTERFACE_DEFINED__
  3446. /* interface ADOProcedures */
  3447. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  3448. EXTERN_C const IID IID_Procedures;
  3449. #if defined(__cplusplus) && !defined(CINTERFACE)
  3450.     
  3451.     MIDL_INTERFACE("00000626-0000-0010-8000-00AA006D2EA4")
  3452.     ADOProcedures : public _ADOCollection
  3453.     {
  3454.     public:
  3455.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  3456.             /* [in] */ VARIANT Item,
  3457.             /* [retval][out] */ ADOProcedure __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  3458.         
  3459.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  3460.             /* [in] */ BSTR Name,
  3461.             /* [in] */ IDispatch __RPC_FAR *Command) = 0;
  3462.         
  3463.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  3464.             /* [in] */ VARIANT Item) = 0;
  3465.         
  3466.     };
  3467.     
  3468. #else     /* C style interface */
  3469.     typedef struct ProceduresVtbl
  3470.     {
  3471.         BEGIN_INTERFACE
  3472.         
  3473.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3474.             ADOProcedures __RPC_FAR * This,
  3475.             /* [in] */ REFIID riid,
  3476.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3477.         
  3478.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3479.             ADOProcedures __RPC_FAR * This);
  3480.         
  3481.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3482.             ADOProcedures __RPC_FAR * This);
  3483.         
  3484.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3485.             ADOProcedures __RPC_FAR * This,
  3486.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3487.         
  3488.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3489.             ADOProcedures __RPC_FAR * This,
  3490.             /* [in] */ UINT iTInfo,
  3491.             /* [in] */ LCID lcid,
  3492.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3493.         
  3494.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3495.             ADOProcedures __RPC_FAR * This,
  3496.             /* [in] */ REFIID riid,
  3497.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3498.             /* [in] */ UINT cNames,
  3499.             /* [in] */ LCID lcid,
  3500.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  3501.         
  3502.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3503.             ADOProcedures __RPC_FAR * This,
  3504.             /* [in] */ DISPID dispIdMember,
  3505.             /* [in] */ REFIID riid,
  3506.             /* [in] */ LCID lcid,
  3507.             /* [in] */ WORD wFlags,
  3508.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3509.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3510.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3511.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3512.         
  3513.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  3514.             ADOProcedures __RPC_FAR * This,
  3515.             /* [retval][out] */ long __RPC_FAR *c);
  3516.         
  3517.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  3518.             ADOProcedures __RPC_FAR * This,
  3519.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  3520.         
  3521.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  3522.             ADOProcedures __RPC_FAR * This);
  3523.         
  3524.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  3525.             ADOProcedures __RPC_FAR * This,
  3526.             /* [in] */ VARIANT Item,
  3527.             /* [retval][out] */ ADOProcedure __RPC_FAR *__RPC_FAR *ppvObject);
  3528.         
  3529.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  3530.             ADOProcedures __RPC_FAR * This,
  3531.             /* [in] */ BSTR Name,
  3532.             /* [in] */ IDispatch __RPC_FAR *Command);
  3533.         
  3534.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  3535.             ADOProcedures __RPC_FAR * This,
  3536.             /* [in] */ VARIANT Item);
  3537.         
  3538.         END_INTERFACE
  3539.     } ProceduresVtbl;
  3540.     interface Procedures
  3541.     {
  3542.         CONST_VTBL struct ProceduresVtbl __RPC_FAR *lpVtbl;
  3543.     };
  3544.     
  3545. #ifdef COBJMACROS
  3546. #define Procedures_QueryInterface(This,riid,ppvObject)    \
  3547.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3548. #define Procedures_AddRef(This)    \
  3549.     (This)->lpVtbl -> AddRef(This)
  3550. #define Procedures_Release(This)    \
  3551.     (This)->lpVtbl -> Release(This)
  3552. #define Procedures_GetTypeInfoCount(This,pctinfo)    \
  3553.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3554. #define Procedures_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  3555.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3556. #define Procedures_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  3557.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3558. #define Procedures_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  3559.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3560. #define Procedures_get_Count(This,c)    \
  3561.     (This)->lpVtbl -> get_Count(This,c)
  3562. #define Procedures__NewEnum(This,ppvObject)    \
  3563.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  3564. #define Procedures_Refresh(This)    \
  3565.     (This)->lpVtbl -> Refresh(This)
  3566. #define Procedures_get_Item(This,Item,ppvObject)    \
  3567.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  3568. #define Procedures_Append(This,Name,Command)    \
  3569.     (This)->lpVtbl -> Append(This,Name,Command)
  3570. #define Procedures_Delete(This,Item)    \
  3571.     (This)->lpVtbl -> Delete(This,Item)
  3572. #endif /* COBJMACROS */
  3573. #endif     /* C style interface */
  3574. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Procedures_get_Item_Proxy( 
  3575.     ADOProcedures __RPC_FAR * This,
  3576.     /* [in] */ VARIANT Item,
  3577.     /* [retval][out] */ ADOProcedure __RPC_FAR *__RPC_FAR *ppvObject);
  3578. void __RPC_STUB Procedures_get_Item_Stub(
  3579.     IRpcStubBuffer *This,
  3580.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3581.     PRPC_MESSAGE _pRpcMessage,
  3582.     DWORD *_pdwStubPhase);
  3583. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Procedures_Append_Proxy( 
  3584.     ADOProcedures __RPC_FAR * This,
  3585.     /* [in] */ BSTR Name,
  3586.     /* [in] */ IDispatch __RPC_FAR *Command);
  3587. void __RPC_STUB Procedures_Append_Stub(
  3588.     IRpcStubBuffer *This,
  3589.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3590.     PRPC_MESSAGE _pRpcMessage,
  3591.     DWORD *_pdwStubPhase);
  3592. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Procedures_Delete_Proxy( 
  3593.     ADOProcedures __RPC_FAR * This,
  3594.     /* [in] */ VARIANT Item);
  3595. void __RPC_STUB Procedures_Delete_Stub(
  3596.     IRpcStubBuffer *This,
  3597.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3598.     PRPC_MESSAGE _pRpcMessage,
  3599.     DWORD *_pdwStubPhase);
  3600. #endif     /* __Procedures_INTERFACE_DEFINED__ */
  3601. #ifndef __Views_INTERFACE_DEFINED__
  3602. #define __Views_INTERFACE_DEFINED__
  3603. /* interface ADOViews */
  3604. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  3605. EXTERN_C const IID IID_Views;
  3606. #if defined(__cplusplus) && !defined(CINTERFACE)
  3607.     
  3608.     MIDL_INTERFACE("00000614-0000-0010-8000-00AA006D2EA4")
  3609.     ADOViews : public _ADOCollection
  3610.     {
  3611.     public:
  3612.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  3613.             /* [in] */ VARIANT Item,
  3614.             /* [retval][out] */ ADOView __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  3615.         
  3616.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  3617.             /* [in] */ BSTR Name,
  3618.             /* [in] */ IDispatch __RPC_FAR *Command) = 0;
  3619.         
  3620.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  3621.             /* [in] */ VARIANT Item) = 0;
  3622.         
  3623.     };
  3624.     
  3625. #else     /* C style interface */
  3626.     typedef struct ViewsVtbl
  3627.     {
  3628.         BEGIN_INTERFACE
  3629.         
  3630.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3631.             ADOViews __RPC_FAR * This,
  3632.             /* [in] */ REFIID riid,
  3633.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3634.         
  3635.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3636.             ADOViews __RPC_FAR * This);
  3637.         
  3638.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3639.             ADOViews __RPC_FAR * This);
  3640.         
  3641.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3642.             ADOViews __RPC_FAR * This,
  3643.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3644.         
  3645.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3646.             ADOViews __RPC_FAR * This,
  3647.             /* [in] */ UINT iTInfo,
  3648.             /* [in] */ LCID lcid,
  3649.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3650.         
  3651.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3652.             ADOViews __RPC_FAR * This,
  3653.             /* [in] */ REFIID riid,
  3654.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3655.             /* [in] */ UINT cNames,
  3656.             /* [in] */ LCID lcid,
  3657.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  3658.         
  3659.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3660.             ADOViews __RPC_FAR * This,
  3661.             /* [in] */ DISPID dispIdMember,
  3662.             /* [in] */ REFIID riid,
  3663.             /* [in] */ LCID lcid,
  3664.             /* [in] */ WORD wFlags,
  3665.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3666.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3667.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3668.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3669.         
  3670.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  3671.             ADOViews __RPC_FAR * This,
  3672.             /* [retval][out] */ long __RPC_FAR *c);
  3673.         
  3674.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  3675.             ADOViews __RPC_FAR * This,
  3676.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  3677.         
  3678.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  3679.             ADOViews __RPC_FAR * This);
  3680.         
  3681.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  3682.             ADOViews __RPC_FAR * This,
  3683.             /* [in] */ VARIANT Item,
  3684.             /* [retval][out] */ ADOView __RPC_FAR *__RPC_FAR *ppvObject);
  3685.         
  3686.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  3687.             ADOViews __RPC_FAR * This,
  3688.             /* [in] */ BSTR Name,
  3689.             /* [in] */ IDispatch __RPC_FAR *Command);
  3690.         
  3691.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  3692.             ADOViews __RPC_FAR * This,
  3693.             /* [in] */ VARIANT Item);
  3694.         
  3695.         END_INTERFACE
  3696.     } ViewsVtbl;
  3697.     interface Views
  3698.     {
  3699.         CONST_VTBL struct ViewsVtbl __RPC_FAR *lpVtbl;
  3700.     };
  3701.     
  3702. #ifdef COBJMACROS
  3703. #define Views_QueryInterface(This,riid,ppvObject)    \
  3704.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3705. #define Views_AddRef(This)    \
  3706.     (This)->lpVtbl -> AddRef(This)
  3707. #define Views_Release(This)    \
  3708.     (This)->lpVtbl -> Release(This)
  3709. #define Views_GetTypeInfoCount(This,pctinfo)    \
  3710.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3711. #define Views_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  3712.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3713. #define Views_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  3714.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3715. #define Views_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  3716.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3717. #define Views_get_Count(This,c)    \
  3718.     (This)->lpVtbl -> get_Count(This,c)
  3719. #define Views__NewEnum(This,ppvObject)    \
  3720.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  3721. #define Views_Refresh(This)    \
  3722.     (This)->lpVtbl -> Refresh(This)
  3723. #define Views_get_Item(This,Item,ppvObject)    \
  3724.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  3725. #define Views_Append(This,Name,Command)    \
  3726.     (This)->lpVtbl -> Append(This,Name,Command)
  3727. #define Views_Delete(This,Item)    \
  3728.     (This)->lpVtbl -> Delete(This,Item)
  3729. #endif /* COBJMACROS */
  3730. #endif     /* C style interface */
  3731. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Views_get_Item_Proxy( 
  3732.     ADOViews __RPC_FAR * This,
  3733.     /* [in] */ VARIANT Item,
  3734.     /* [retval][out] */ ADOView __RPC_FAR *__RPC_FAR *ppvObject);
  3735. void __RPC_STUB Views_get_Item_Stub(
  3736.     IRpcStubBuffer *This,
  3737.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3738.     PRPC_MESSAGE _pRpcMessage,
  3739.     DWORD *_pdwStubPhase);
  3740. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Views_Append_Proxy( 
  3741.     ADOViews __RPC_FAR * This,
  3742.     /* [in] */ BSTR Name,
  3743.     /* [in] */ IDispatch __RPC_FAR *Command);
  3744. void __RPC_STUB Views_Append_Stub(
  3745.     IRpcStubBuffer *This,
  3746.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3747.     PRPC_MESSAGE _pRpcMessage,
  3748.     DWORD *_pdwStubPhase);
  3749. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Views_Delete_Proxy( 
  3750.     ADOViews __RPC_FAR * This,
  3751.     /* [in] */ VARIANT Item);
  3752. void __RPC_STUB Views_Delete_Stub(
  3753.     IRpcStubBuffer *This,
  3754.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3755.     PRPC_MESSAGE _pRpcMessage,
  3756.     DWORD *_pdwStubPhase);
  3757. #endif     /* __Views_INTERFACE_DEFINED__ */
  3758. #ifndef __Indexes_INTERFACE_DEFINED__
  3759. #define __Indexes_INTERFACE_DEFINED__
  3760. /* interface ADOIndexes */
  3761. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  3762. EXTERN_C const IID IID_Indexes;
  3763. #if defined(__cplusplus) && !defined(CINTERFACE)
  3764.     
  3765.     MIDL_INTERFACE("00000620-0000-0010-8000-00AA006D2EA4")
  3766.     ADOIndexes : public _ADOCollection
  3767.     {
  3768.     public:
  3769.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  3770.             /* [in] */ VARIANT Item,
  3771.             /* [retval][out] */ Index    __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  3772.         
  3773.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  3774.             /* [in] */ VARIANT Item,
  3775.             /* [optional][in] */ VARIANT columns) = 0;
  3776.         
  3777.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  3778.             /* [in] */ VARIANT Item) = 0;
  3779.         
  3780.     };
  3781.     
  3782. #else     /* C style interface */
  3783.     typedef struct IndexesVtbl
  3784.     {
  3785.         BEGIN_INTERFACE
  3786.         
  3787.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3788.             ADOIndexes __RPC_FAR * This,
  3789.             /* [in] */ REFIID riid,
  3790.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3791.         
  3792.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3793.             ADOIndexes __RPC_FAR * This);
  3794.         
  3795.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3796.             ADOIndexes __RPC_FAR * This);
  3797.         
  3798.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3799.             ADOIndexes __RPC_FAR * This,
  3800.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3801.         
  3802.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3803.             ADOIndexes __RPC_FAR * This,
  3804.             /* [in] */ UINT iTInfo,
  3805.             /* [in] */ LCID lcid,
  3806.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3807.         
  3808.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3809.             ADOIndexes __RPC_FAR * This,
  3810.             /* [in] */ REFIID riid,
  3811.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3812.             /* [in] */ UINT cNames,
  3813.             /* [in] */ LCID lcid,
  3814.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  3815.         
  3816.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3817.             ADOIndexes __RPC_FAR * This,
  3818.             /* [in] */ DISPID dispIdMember,
  3819.             /* [in] */ REFIID riid,
  3820.             /* [in] */ LCID lcid,
  3821.             /* [in] */ WORD wFlags,
  3822.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3823.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3824.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3825.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3826.         
  3827.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  3828.             ADOIndexes __RPC_FAR * This,
  3829.             /* [retval][out] */ long __RPC_FAR *c);
  3830.         
  3831.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  3832.             ADOIndexes __RPC_FAR * This,
  3833.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  3834.         
  3835.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  3836.             ADOIndexes __RPC_FAR * This);
  3837.         
  3838.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  3839.             ADOIndexes __RPC_FAR * This,
  3840.             /* [in] */ VARIANT Item,
  3841.             /* [retval][out] */ Index    __RPC_FAR *__RPC_FAR *ppvObject);
  3842.         
  3843.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  3844.             ADOIndexes __RPC_FAR * This,
  3845.             /* [in] */ VARIANT Item,
  3846.             /* [optional][in] */ VARIANT columns);
  3847.         
  3848.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  3849.             ADOIndexes __RPC_FAR * This,
  3850.             /* [in] */ VARIANT Item);
  3851.         
  3852.         END_INTERFACE
  3853.     } IndexesVtbl;
  3854.     interface Indexes
  3855.     {
  3856.         CONST_VTBL struct IndexesVtbl __RPC_FAR *lpVtbl;
  3857.     };
  3858.     
  3859. #ifdef COBJMACROS
  3860. #define Indexes_QueryInterface(This,riid,ppvObject)    \
  3861.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3862. #define Indexes_AddRef(This)    \
  3863.     (This)->lpVtbl -> AddRef(This)
  3864. #define Indexes_Release(This)    \
  3865.     (This)->lpVtbl -> Release(This)
  3866. #define Indexes_GetTypeInfoCount(This,pctinfo)    \
  3867.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3868. #define Indexes_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  3869.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  3870. #define Indexes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  3871.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  3872. #define Indexes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  3873.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  3874. #define Indexes_get_Count(This,c)    \
  3875.     (This)->lpVtbl -> get_Count(This,c)
  3876. #define Indexes__NewEnum(This,ppvObject)    \
  3877.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  3878. #define Indexes_Refresh(This)    \
  3879.     (This)->lpVtbl -> Refresh(This)
  3880. #define Indexes_get_Item(This,Item,ppvObject)    \
  3881.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  3882. #define Indexes_Append(This,Item,columns)    \
  3883.     (This)->lpVtbl -> Append(This,Item,columns)
  3884. #define Indexes_Delete(This,Item)    \
  3885.     (This)->lpVtbl -> Delete(This,Item)
  3886. #endif /* COBJMACROS */
  3887. #endif     /* C style interface */
  3888. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Indexes_get_Item_Proxy( 
  3889.     ADOIndexes __RPC_FAR * This,
  3890.     /* [in] */ VARIANT Item,
  3891.     /* [retval][out] */ Index    __RPC_FAR *__RPC_FAR *ppvObject);
  3892. void __RPC_STUB Indexes_get_Item_Stub(
  3893.     IRpcStubBuffer *This,
  3894.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3895.     PRPC_MESSAGE _pRpcMessage,
  3896.     DWORD *_pdwStubPhase);
  3897. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Indexes_Append_Proxy( 
  3898.     ADOIndexes __RPC_FAR * This,
  3899.     /* [in] */ VARIANT Item,
  3900.     /* [optional][in] */ VARIANT columns);
  3901. void __RPC_STUB Indexes_Append_Stub(
  3902.     IRpcStubBuffer *This,
  3903.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3904.     PRPC_MESSAGE _pRpcMessage,
  3905.     DWORD *_pdwStubPhase);
  3906. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Indexes_Delete_Proxy( 
  3907.     ADOIndexes __RPC_FAR * This,
  3908.     /* [in] */ VARIANT Item);
  3909. void __RPC_STUB Indexes_Delete_Stub(
  3910.     IRpcStubBuffer *This,
  3911.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3912.     PRPC_MESSAGE _pRpcMessage,
  3913.     DWORD *_pdwStubPhase);
  3914. #endif     /* __Indexes_INTERFACE_DEFINED__ */
  3915. #ifndef __Keys_INTERFACE_DEFINED__
  3916. #define __Keys_INTERFACE_DEFINED__
  3917. /* interface ADOKeys */
  3918. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  3919. EXTERN_C const IID IID_Keys;
  3920. #if defined(__cplusplus) && !defined(CINTERFACE)
  3921.     
  3922.     MIDL_INTERFACE("00000623-0000-0010-8000-00AA006D2EA4")
  3923.     ADOKeys : public _ADOCollection
  3924.     {
  3925.     public:
  3926.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  3927.             /* [in] */ VARIANT Item,
  3928.             /* [retval][out] */ Key    __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  3929.         
  3930.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  3931.             /* [in] */ VARIANT Item,
  3932.             /* [defaultvalue][in] */ KeyTypeEnum Type,
  3933.             /* [optional][in] */ VARIANT Column,
  3934.             /* [defaultvalue][in] */ BSTR RelatedADOTable = L"",
  3935.             /* [defaultvalue][in] */ BSTR RelatedADOColumn = L"") = 0;
  3936.         
  3937.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  3938.             /* [in] */ VARIANT Item) = 0;
  3939.         
  3940.     };
  3941.     
  3942. #else     /* C style interface */
  3943.     typedef struct KeysVtbl
  3944.     {
  3945.         BEGIN_INTERFACE
  3946.         
  3947.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3948.             ADOKeys __RPC_FAR * This,
  3949.             /* [in] */ REFIID riid,
  3950.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3951.         
  3952.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3953.             ADOKeys __RPC_FAR * This);
  3954.         
  3955.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3956.             ADOKeys __RPC_FAR * This);
  3957.         
  3958.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3959.             ADOKeys __RPC_FAR * This,
  3960.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3961.         
  3962.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3963.             ADOKeys __RPC_FAR * This,
  3964.             /* [in] */ UINT iTInfo,
  3965.             /* [in] */ LCID lcid,
  3966.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  3967.         
  3968.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3969.             ADOKeys __RPC_FAR * This,
  3970.             /* [in] */ REFIID riid,
  3971.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3972.             /* [in] */ UINT cNames,
  3973.             /* [in] */ LCID lcid,
  3974.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  3975.         
  3976.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3977.             ADOKeys __RPC_FAR * This,
  3978.             /* [in] */ DISPID dispIdMember,
  3979.             /* [in] */ REFIID riid,
  3980.             /* [in] */ LCID lcid,
  3981.             /* [in] */ WORD wFlags,
  3982.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  3983.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  3984.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  3985.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3986.         
  3987.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  3988.             ADOKeys __RPC_FAR * This,
  3989.             /* [retval][out] */ long __RPC_FAR *c);
  3990.         
  3991.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  3992.             ADOKeys __RPC_FAR * This,
  3993.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  3994.         
  3995.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  3996.             ADOKeys __RPC_FAR * This);
  3997.         
  3998.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  3999.             ADOKeys __RPC_FAR * This,
  4000.             /* [in] */ VARIANT Item,
  4001.             /* [retval][out] */ Key    __RPC_FAR *__RPC_FAR *ppvObject);
  4002.         
  4003.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  4004.             ADOKeys __RPC_FAR * This,
  4005.             /* [in] */ VARIANT Item,
  4006.             /* [defaultvalue][in] */ KeyTypeEnum Type,
  4007.             /* [optional][in] */ VARIANT Column,
  4008.             /* [defaultvalue][in] */ BSTR RelatedTable,
  4009.             /* [defaultvalue][in] */ BSTR RelatedColumn);
  4010.         
  4011.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  4012.             ADOKeys __RPC_FAR * This,
  4013.             /* [in] */ VARIANT Item);
  4014.         
  4015.         END_INTERFACE
  4016.     } KeysVtbl;
  4017.     interface Keys
  4018.     {
  4019.         CONST_VTBL struct KeysVtbl __RPC_FAR *lpVtbl;
  4020.     };
  4021.     
  4022. #ifdef COBJMACROS
  4023. #define Keys_QueryInterface(This,riid,ppvObject)    \
  4024.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4025. #define Keys_AddRef(This)    \
  4026.     (This)->lpVtbl -> AddRef(This)
  4027. #define Keys_Release(This)    \
  4028.     (This)->lpVtbl -> Release(This)
  4029. #define Keys_GetTypeInfoCount(This,pctinfo)    \
  4030.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  4031. #define Keys_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  4032.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  4033. #define Keys_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  4034.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  4035. #define Keys_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  4036.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  4037. #define Keys_get_Count(This,c)    \
  4038.     (This)->lpVtbl -> get_Count(This,c)
  4039. #define Keys__NewEnum(This,ppvObject)    \
  4040.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  4041. #define Keys_Refresh(This)    \
  4042.     (This)->lpVtbl -> Refresh(This)
  4043. #define Keys_get_Item(This,Item,ppvObject)    \
  4044.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  4045. #define Keys_Append(This,Item,Type,Column,RelatedTable,RelatedColumn)    \
  4046.     (This)->lpVtbl -> Append(This,Item,Type,Column,RelatedTable,RelatedColumn)
  4047. #define Keys_Delete(This,Item)    \
  4048.     (This)->lpVtbl -> Delete(This,Item)
  4049. #endif /* COBJMACROS */
  4050. #endif     /* C style interface */
  4051. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Keys_get_Item_Proxy( 
  4052.     ADOKeys __RPC_FAR * This,
  4053.     /* [in] */ VARIANT Item,
  4054.     /* [retval][out] */ Key    __RPC_FAR *__RPC_FAR *ppvObject);
  4055. void __RPC_STUB Keys_get_Item_Stub(
  4056.     IRpcStubBuffer *This,
  4057.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4058.     PRPC_MESSAGE _pRpcMessage,
  4059.     DWORD *_pdwStubPhase);
  4060. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Keys_Append_Proxy( 
  4061.     ADOKeys __RPC_FAR * This,
  4062.     /* [in] */ VARIANT Item,
  4063.     /* [defaultvalue][in] */ KeyTypeEnum Type,
  4064.     /* [optional][in] */ VARIANT Column,
  4065.     /* [defaultvalue][in] */ BSTR RelatedTable,
  4066.     /* [defaultvalue][in] */ BSTR RelatedColumn);
  4067. void __RPC_STUB Keys_Append_Stub(
  4068.     IRpcStubBuffer *This,
  4069.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4070.     PRPC_MESSAGE _pRpcMessage,
  4071.     DWORD *_pdwStubPhase);
  4072. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Keys_Delete_Proxy( 
  4073.     ADOKeys __RPC_FAR * This,
  4074.     /* [in] */ VARIANT Item);
  4075. void __RPC_STUB Keys_Delete_Stub(
  4076.     IRpcStubBuffer *This,
  4077.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4078.     PRPC_MESSAGE _pRpcMessage,
  4079.     DWORD *_pdwStubPhase);
  4080. #endif     /* __Keys_INTERFACE_DEFINED__ */
  4081. #ifndef __Users_INTERFACE_DEFINED__
  4082. #define __Users_INTERFACE_DEFINED__
  4083. /* interface ADOUsers */
  4084. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  4085. EXTERN_C const IID IID_Users;
  4086. #if defined(__cplusplus) && !defined(CINTERFACE)
  4087.     
  4088.     MIDL_INTERFACE("0000061A-0000-0010-8000-00AA006D2EA4")
  4089.     ADOUsers : public _ADOCollection
  4090.     {
  4091.     public:
  4092.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  4093.             /* [in] */ VARIANT Item,
  4094.             /* [retval][out] */ User    __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  4095.         
  4096.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  4097.             /* [in] */ VARIANT Item,
  4098.             /* [defaultvalue][in] */ BSTR Password = L"") = 0;
  4099.         
  4100.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  4101.             /* [in] */ VARIANT Item) = 0;
  4102.         
  4103.     };
  4104.     
  4105. #else     /* C style interface */
  4106.     typedef struct UsersVtbl
  4107.     {
  4108.         BEGIN_INTERFACE
  4109.         
  4110.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4111.             ADOUsers __RPC_FAR * This,
  4112.             /* [in] */ REFIID riid,
  4113.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4114.         
  4115.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4116.             ADOUsers __RPC_FAR * This);
  4117.         
  4118.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4119.             ADOUsers __RPC_FAR * This);
  4120.         
  4121.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  4122.             ADOUsers __RPC_FAR * This,
  4123.             /* [out] */ UINT __RPC_FAR *pctinfo);
  4124.         
  4125.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  4126.             ADOUsers __RPC_FAR * This,
  4127.             /* [in] */ UINT iTInfo,
  4128.             /* [in] */ LCID lcid,
  4129.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  4130.         
  4131.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  4132.             ADOUsers __RPC_FAR * This,
  4133.             /* [in] */ REFIID riid,
  4134.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  4135.             /* [in] */ UINT cNames,
  4136.             /* [in] */ LCID lcid,
  4137.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  4138.         
  4139.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  4140.             ADOUsers __RPC_FAR * This,
  4141.             /* [in] */ DISPID dispIdMember,
  4142.             /* [in] */ REFIID riid,
  4143.             /* [in] */ LCID lcid,
  4144.             /* [in] */ WORD wFlags,
  4145.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  4146.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  4147.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  4148.             /* [out] */ UINT __RPC_FAR *puArgErr);
  4149.         
  4150.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  4151.             ADOUsers __RPC_FAR * This,
  4152.             /* [retval][out] */ long __RPC_FAR *c);
  4153.         
  4154.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  4155.             ADOUsers __RPC_FAR * This,
  4156.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  4157.         
  4158.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  4159.             ADOUsers __RPC_FAR * This);
  4160.         
  4161.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  4162.             ADOUsers __RPC_FAR * This,
  4163.             /* [in] */ VARIANT Item,
  4164.             /* [retval][out] */ User    __RPC_FAR *__RPC_FAR *ppvObject);
  4165.         
  4166.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  4167.             ADOUsers __RPC_FAR * This,
  4168.             /* [in] */ VARIANT Item,
  4169.             /* [defaultvalue][in] */ BSTR Password);
  4170.         
  4171.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  4172.             ADOUsers __RPC_FAR * This,
  4173.             /* [in] */ VARIANT Item);
  4174.         
  4175.         END_INTERFACE
  4176.     } UsersVtbl;
  4177.     interface Users
  4178.     {
  4179.         CONST_VTBL struct UsersVtbl __RPC_FAR *lpVtbl;
  4180.     };
  4181.     
  4182. #ifdef COBJMACROS
  4183. #define Users_QueryInterface(This,riid,ppvObject)    \
  4184.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4185. #define Users_AddRef(This)    \
  4186.     (This)->lpVtbl -> AddRef(This)
  4187. #define Users_Release(This)    \
  4188.     (This)->lpVtbl -> Release(This)
  4189. #define Users_GetTypeInfoCount(This,pctinfo)    \
  4190.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  4191. #define Users_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  4192.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  4193. #define Users_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  4194.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  4195. #define Users_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  4196.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  4197. #define Users_get_Count(This,c)    \
  4198.     (This)->lpVtbl -> get_Count(This,c)
  4199. #define Users__NewEnum(This,ppvObject)    \
  4200.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  4201. #define Users_Refresh(This)    \
  4202.     (This)->lpVtbl -> Refresh(This)
  4203. #define Users_get_Item(This,Item,ppvObject)    \
  4204.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  4205. #define Users_Append(This,Item,Password)    \
  4206.     (This)->lpVtbl -> Append(This,Item,Password)
  4207. #define Users_Delete(This,Item)    \
  4208.     (This)->lpVtbl -> Delete(This,Item)
  4209. #endif /* COBJMACROS */
  4210. #endif     /* C style interface */
  4211. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Users_get_Item_Proxy( 
  4212.     ADOUsers __RPC_FAR * This,
  4213.     /* [in] */ VARIANT Item,
  4214.     /* [retval][out] */ User    __RPC_FAR *__RPC_FAR *ppvObject);
  4215. void __RPC_STUB Users_get_Item_Stub(
  4216.     IRpcStubBuffer *This,
  4217.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4218.     PRPC_MESSAGE _pRpcMessage,
  4219.     DWORD *_pdwStubPhase);
  4220. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Users_Append_Proxy( 
  4221.     ADOUsers __RPC_FAR * This,
  4222.     /* [in] */ VARIANT Item,
  4223.     /* [defaultvalue][in] */ BSTR Password);
  4224. void __RPC_STUB Users_Append_Stub(
  4225.     IRpcStubBuffer *This,
  4226.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4227.     PRPC_MESSAGE _pRpcMessage,
  4228.     DWORD *_pdwStubPhase);
  4229. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Users_Delete_Proxy( 
  4230.     ADOUsers __RPC_FAR * This,
  4231.     /* [in] */ VARIANT Item);
  4232. void __RPC_STUB Users_Delete_Stub(
  4233.     IRpcStubBuffer *This,
  4234.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4235.     PRPC_MESSAGE _pRpcMessage,
  4236.     DWORD *_pdwStubPhase);
  4237. #endif     /* __Users_INTERFACE_DEFINED__ */
  4238. #ifndef __Groups_INTERFACE_DEFINED__
  4239. #define __Groups_INTERFACE_DEFINED__
  4240. /* interface ADOGroups */
  4241. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  4242. EXTERN_C const IID IID_Groups;
  4243. #if defined(__cplusplus) && !defined(CINTERFACE)
  4244.     
  4245.     MIDL_INTERFACE("00000617-0000-0010-8000-00AA006D2EA4")
  4246.     ADOGroups : public _ADOCollection
  4247.     {
  4248.     public:
  4249.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  4250.             /* [in] */ VARIANT Item,
  4251.             /* [retval][out] */ Group    __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  4252.         
  4253.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  4254.             /* [in] */ VARIANT Item) = 0;
  4255.         
  4256.         virtual /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  4257.             /* [in] */ VARIANT Item) = 0;
  4258.         
  4259.     };
  4260.     
  4261. #else     /* C style interface */
  4262.     typedef struct GroupsVtbl
  4263.     {
  4264.         BEGIN_INTERFACE
  4265.         
  4266.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4267.             ADOGroups __RPC_FAR * This,
  4268.             /* [in] */ REFIID riid,
  4269.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4270.         
  4271.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4272.             ADOGroups __RPC_FAR * This);
  4273.         
  4274.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4275.             ADOGroups __RPC_FAR * This);
  4276.         
  4277.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  4278.             ADOGroups __RPC_FAR * This,
  4279.             /* [out] */ UINT __RPC_FAR *pctinfo);
  4280.         
  4281.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  4282.             ADOGroups __RPC_FAR * This,
  4283.             /* [in] */ UINT iTInfo,
  4284.             /* [in] */ LCID lcid,
  4285.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  4286.         
  4287.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  4288.             ADOGroups __RPC_FAR * This,
  4289.             /* [in] */ REFIID riid,
  4290.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  4291.             /* [in] */ UINT cNames,
  4292.             /* [in] */ LCID lcid,
  4293.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  4294.         
  4295.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  4296.             ADOGroups __RPC_FAR * This,
  4297.             /* [in] */ DISPID dispIdMember,
  4298.             /* [in] */ REFIID riid,
  4299.             /* [in] */ LCID lcid,
  4300.             /* [in] */ WORD wFlags,
  4301.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  4302.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  4303.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  4304.             /* [out] */ UINT __RPC_FAR *puArgErr);
  4305.         
  4306.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  4307.             ADOGroups __RPC_FAR * This,
  4308.             /* [retval][out] */ long __RPC_FAR *c);
  4309.         
  4310.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  4311.             ADOGroups __RPC_FAR * This,
  4312.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  4313.         
  4314.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  4315.             ADOGroups __RPC_FAR * This);
  4316.         
  4317.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  4318.             ADOGroups __RPC_FAR * This,
  4319.             /* [in] */ VARIANT Item,
  4320.             /* [retval][out] */ Group    __RPC_FAR *__RPC_FAR *ppvObject);
  4321.         
  4322.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  4323.             ADOGroups __RPC_FAR * This,
  4324.             /* [in] */ VARIANT Item);
  4325.         
  4326.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  4327.             ADOGroups __RPC_FAR * This,
  4328.             /* [in] */ VARIANT Item);
  4329.         
  4330.         END_INTERFACE
  4331.     } GroupsVtbl;
  4332.     interface Groups
  4333.     {
  4334.         CONST_VTBL struct GroupsVtbl __RPC_FAR *lpVtbl;
  4335.     };
  4336.     
  4337. #ifdef COBJMACROS
  4338. #define Groups_QueryInterface(This,riid,ppvObject)    \
  4339.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4340. #define Groups_AddRef(This)    \
  4341.     (This)->lpVtbl -> AddRef(This)
  4342. #define Groups_Release(This)    \
  4343.     (This)->lpVtbl -> Release(This)
  4344. #define Groups_GetTypeInfoCount(This,pctinfo)    \
  4345.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  4346. #define Groups_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  4347.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  4348. #define Groups_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  4349.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  4350. #define Groups_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  4351.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  4352. #define Groups_get_Count(This,c)    \
  4353.     (This)->lpVtbl -> get_Count(This,c)
  4354. #define Groups__NewEnum(This,ppvObject)    \
  4355.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  4356. #define Groups_Refresh(This)    \
  4357.     (This)->lpVtbl -> Refresh(This)
  4358. #define Groups_get_Item(This,Item,ppvObject)    \
  4359.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  4360. #define Groups_Append(This,Item)    \
  4361.     (This)->lpVtbl -> Append(This,Item)
  4362. #define Groups_Delete(This,Item)    \
  4363.     (This)->lpVtbl -> Delete(This,Item)
  4364. #endif /* COBJMACROS */
  4365. #endif     /* C style interface */
  4366. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Groups_get_Item_Proxy( 
  4367.     ADOGroups __RPC_FAR * This,
  4368.     /* [in] */ VARIANT Item,
  4369.     /* [retval][out] */ Group    __RPC_FAR *__RPC_FAR *ppvObject);
  4370. void __RPC_STUB Groups_get_Item_Stub(
  4371.     IRpcStubBuffer *This,
  4372.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4373.     PRPC_MESSAGE _pRpcMessage,
  4374.     DWORD *_pdwStubPhase);
  4375. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Groups_Append_Proxy( 
  4376.     ADOGroups __RPC_FAR * This,
  4377.     /* [in] */ VARIANT Item);
  4378. void __RPC_STUB Groups_Append_Stub(
  4379.     IRpcStubBuffer *This,
  4380.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4381.     PRPC_MESSAGE _pRpcMessage,
  4382.     DWORD *_pdwStubPhase);
  4383. /* [helpcontext] */ HRESULT STDMETHODCALLTYPE Groups_Delete_Proxy( 
  4384.     ADOGroups __RPC_FAR * This,
  4385.     /* [in] */ VARIANT Item);
  4386. void __RPC_STUB Groups_Delete_Stub(
  4387.     IRpcStubBuffer *This,
  4388.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4389.     PRPC_MESSAGE _pRpcMessage,
  4390.     DWORD *_pdwStubPhase);
  4391. #endif     /* __Groups_INTERFACE_DEFINED__ */
  4392. #ifndef __Properties_INTERFACE_DEFINED__
  4393. #define __Properties_INTERFACE_DEFINED__
  4394. /* interface ADOProperties */
  4395. /* [object][uuid][helpcontext][nonextensible][dual] */ 
  4396. EXTERN_C const IID IID_Properties;
  4397. #if defined(__cplusplus) && !defined(CINTERFACE)
  4398.     
  4399.     MIDL_INTERFACE("00000504-0000-0010-8000-00AA006D2EA4")
  4400.     ADOProperties : public _ADOCollection
  4401.     {
  4402.     public:
  4403.         virtual /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  4404.             /* [in] */ VARIANT Item,
  4405.             /* [retval][out] */ ADOProperty __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  4406.         
  4407.     };
  4408.     
  4409. #else     /* C style interface */
  4410.     typedef struct PropertiesVtbl
  4411.     {
  4412.         BEGIN_INTERFACE
  4413.         
  4414.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4415.             ADOProperties __RPC_FAR * This,
  4416.             /* [in] */ REFIID riid,
  4417.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4418.         
  4419.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4420.             ADOProperties __RPC_FAR * This);
  4421.         
  4422.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4423.             ADOProperties __RPC_FAR * This);
  4424.         
  4425.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  4426.             ADOProperties __RPC_FAR * This,
  4427.             /* [out] */ UINT __RPC_FAR *pctinfo);
  4428.         
  4429.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  4430.             ADOProperties __RPC_FAR * This,
  4431.             /* [in] */ UINT iTInfo,
  4432.             /* [in] */ LCID lcid,
  4433.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  4434.         
  4435.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  4436.             ADOProperties __RPC_FAR * This,
  4437.             /* [in] */ REFIID riid,
  4438.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  4439.             /* [in] */ UINT cNames,
  4440.             /* [in] */ LCID lcid,
  4441.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  4442.         
  4443.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  4444.             ADOProperties __RPC_FAR * This,
  4445.             /* [in] */ DISPID dispIdMember,
  4446.             /* [in] */ REFIID riid,
  4447.             /* [in] */ LCID lcid,
  4448.             /* [in] */ WORD wFlags,
  4449.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  4450.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  4451.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  4452.             /* [out] */ UINT __RPC_FAR *puArgErr);
  4453.         
  4454.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  4455.             ADOProperties __RPC_FAR * This,
  4456.             /* [retval][out] */ long __RPC_FAR *c);
  4457.         
  4458.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  4459.             ADOProperties __RPC_FAR * This,
  4460.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  4461.         
  4462.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  4463.             ADOProperties __RPC_FAR * This);
  4464.         
  4465.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  4466.             ADOProperties __RPC_FAR * This,
  4467.             /* [in] */ VARIANT Item,
  4468.             /* [retval][out] */ ADOProperty __RPC_FAR *__RPC_FAR *ppvObject);
  4469.         
  4470.         END_INTERFACE
  4471.     } PropertiesVtbl;
  4472.     interface Properties
  4473.     {
  4474.         CONST_VTBL struct PropertiesVtbl __RPC_FAR *lpVtbl;
  4475.     };
  4476.     
  4477. #ifdef COBJMACROS
  4478. #define Properties_QueryInterface(This,riid,ppvObject)    \
  4479.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4480. #define Properties_AddRef(This)    \
  4481.     (This)->lpVtbl -> AddRef(This)
  4482. #define Properties_Release(This)    \
  4483.     (This)->lpVtbl -> Release(This)
  4484. #define Properties_GetTypeInfoCount(This,pctinfo)    \
  4485.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  4486. #define Properties_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  4487.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  4488. #define Properties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  4489.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  4490. #define Properties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  4491.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  4492. #define Properties_get_Count(This,c)    \
  4493.     (This)->lpVtbl -> get_Count(This,c)
  4494. #define Properties__NewEnum(This,ppvObject)    \
  4495.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  4496. #define Properties_Refresh(This)    \
  4497.     (This)->lpVtbl -> Refresh(This)
  4498. #define Properties_get_Item(This,Item,ppvObject)    \
  4499.     (This)->lpVtbl -> get_Item(This,Item,ppvObject)
  4500. #endif /* COBJMACROS */
  4501. #endif     /* C style interface */
  4502. /* [id][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Properties_get_Item_Proxy( 
  4503.     ADOProperties __RPC_FAR * This,
  4504.     /* [in] */ VARIANT Item,
  4505.     /* [retval][out] */ ADOProperty __RPC_FAR *__RPC_FAR *ppvObject);
  4506. void __RPC_STUB Properties_get_Item_Stub(
  4507.     IRpcStubBuffer *This,
  4508.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4509.     PRPC_MESSAGE _pRpcMessage,
  4510.     DWORD *_pdwStubPhase);
  4511. #endif     /* __Properties_INTERFACE_DEFINED__ */
  4512. #endif /* __ADOX_LIBRARY_DEFINED__ */
  4513. /* Additional Prototypes for ALL interfaces */
  4514. /* end of Additional Prototypes */
  4515. #ifdef __cplusplus
  4516. }
  4517. #endif
  4518. #endif
  4519. /***********************************
  4520. Forwards
  4521. */
  4522. #define ADOCatalog _ADOCatalog
  4523. #define ADOTable _ADOTable
  4524. #define ADOGroup _ADOGroup
  4525. #define ADOUser _ADOUser
  4526. #define ADOIndex _ADOIndex
  4527. #define ADOColumn _ADOColumn
  4528. #define ADOKey _ADOKey
  4529. #define ADOParameter _ADOParameter
  4530. #define ADOCollection _ADOCollection
  4531. #define ADODynaCollection _ADODynaCollection
  4532.  
  4533.  
  4534. #pragma option pop /*P_O_Pop*/
  4535. #endif // _ADOCTINT_H_
  4536.