home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 32 / IOPROG_32.ISO / SOFT / SqlEval7 / devtools / include / adoint.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-04-09  |  195.1 KB  |  4,528 lines

  1. //--------------------------------------------------------------------
  2. // Microsoft ADO
  3. //
  4. // (c) 1996 Microsoft Corporation.  All Rights Reserved.
  5. //
  6. // @doc
  7. //
  8. // @module    adoint.h | ADO Interface header
  9. //
  10. // @devnote None
  11. //--------------------------------------------------------------------
  12. #ifndef _ADOINT_H_
  13. #define _ADOINT_H_
  14.  
  15. #ifndef _INC_TCHAR
  16. #include <tchar.h>
  17. #endif
  18.  
  19. /***********************************
  20. Forwards
  21. */
  22. #define ADOCommand _ADOCommand
  23. #define ADORecordset _ADORecordset
  24. #define ADOParameter _ADOParameter
  25. #define ADOConnection _ADOConnection
  26.  
  27.  
  28. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  29. /* File created by MIDL compiler version 3.00.30 */
  30. /* at Thu Dec 05 17:09:47 1996
  31.  */
  32. /* Compiler settings for DAO40\m_bobj.odl:
  33.     Os (OptLev=s), W1, Zp8, env=Win32, ms_ext, c_ext
  34.     error checks: none
  35. */
  36. //@@MIDL_FILE_HEADING(  )
  37. #include "rpc.h"
  38. #include "rpcndr.h"
  39. #ifndef __m_bobj_tmp__
  40. #define __m_bobj_tmp__
  41. #ifdef __cplusplus
  42. extern "C"{
  43. #endif 
  44. /* Forward Declarations */ 
  45. #ifndef ___ADOCollection_FWD_DEFINED__
  46. #define ___ADOCollection_FWD_DEFINED__
  47. typedef interface _ADOCollection _ADOCollection;
  48. #endif     /* ___ADOCollection_FWD_DEFINED__ */
  49. #ifndef ___ADODynaCollection_FWD_DEFINED__
  50. #define ___ADODynaCollection_FWD_DEFINED__
  51. typedef interface _ADODynaCollection _ADODynaCollection;
  52. #endif     /* ___ADODynaCollection_FWD_DEFINED__ */
  53. #ifndef ___ADO_FWD_DEFINED__
  54. #define ___ADO_FWD_DEFINED__
  55. typedef interface _ADO _ADO;
  56. #endif     /* ___ADO_FWD_DEFINED__ */
  57. #ifndef __Error_FWD_DEFINED__
  58. #define __Error_FWD_DEFINED__
  59. typedef interface ADOError Error;
  60. #endif     /* __Error_FWD_DEFINED__ */
  61. #ifndef __Errors_FWD_DEFINED__
  62. #define __Errors_FWD_DEFINED__
  63. typedef interface ADOErrors Errors;
  64. #endif     /* __Errors_FWD_DEFINED__ */
  65. #ifndef ___Command_FWD_DEFINED__
  66. #define ___Command_FWD_DEFINED__
  67. typedef interface _ADOCommand _Command;
  68. #endif     /* ___Command_FWD_DEFINED__ */
  69. #ifndef ___Connection_FWD_DEFINED__
  70. #define ___Connection_FWD_DEFINED__
  71. typedef interface _ADOConnection _Connection;
  72. #endif     /* ___Connection_FWD_DEFINED__ */
  73. #ifndef __ICADOConnection_FWD_DEFINED__
  74. #define __ICADOConnection_FWD_DEFINED__
  75. typedef interface ICADOADOConnection ICADOConnection;
  76. #endif     /* __ICADOConnection_FWD_DEFINED__ */
  77. #ifndef ___Recordset_FWD_DEFINED__
  78. #define ___Recordset_FWD_DEFINED__
  79. typedef interface _ADORecordset _Recordset;
  80. #endif     /* ___Recordset_FWD_DEFINED__ */
  81. #ifndef __IADORecordsetConstruction_FWD_DEFINED__
  82. #define __IADORecordsetConstruction_FWD_DEFINED__
  83. typedef interface IADORecordsetConstruction IADORecordsetConstruction;
  84. #endif     /* __IADORecordsetConstruction_FWD_DEFINED__ */
  85. #ifndef __Field_FWD_DEFINED__
  86. #define __Field_FWD_DEFINED__
  87. typedef interface ADOField Field;
  88. #endif     /* __Field_FWD_DEFINED__ */
  89. #ifndef __Fields_FWD_DEFINED__
  90. #define __Fields_FWD_DEFINED__
  91. typedef interface ADOFields Fields;
  92. #endif     /* __Fields_FWD_DEFINED__ */
  93. #ifndef ___Parameter_FWD_DEFINED__
  94. #define ___Parameter_FWD_DEFINED__
  95. typedef interface _ADOParameter _Parameter;
  96. #endif     /* ___Parameter_FWD_DEFINED__ */
  97. #ifndef __Parameters_FWD_DEFINED__
  98. #define __Parameters_FWD_DEFINED__
  99. typedef interface ADOParameters Parameters;
  100. #endif     /* __Parameters_FWD_DEFINED__ */
  101. #ifndef __Property_FWD_DEFINED__
  102. #define __Property_FWD_DEFINED__
  103. typedef interface ADOProperty Property;
  104. #endif     /* __Property_FWD_DEFINED__ */
  105. #ifndef __Properties_FWD_DEFINED__
  106. #define __Properties_FWD_DEFINED__
  107. typedef interface ADOProperties Properties;
  108. #endif     /* __Properties_FWD_DEFINED__ */
  109. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  110. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  111. /****************************************
  112.  * Generated header for interface: __MIDL__intf_0000
  113.  * at Thu Dec 05 17:09:47 1996
  114.  * using MIDL 3.00.30
  115.  ****************************************/
  116. /* [local] */ 
  117. extern RPC_IF_HANDLE __MIDL__intf_0000_v0_0_c_ifspec;
  118. extern RPC_IF_HANDLE __MIDL__intf_0000_v0_0_s_ifspec;
  119. #ifndef __ADODB_LIBRARY_DEFINED__
  120. #define __ADODB_LIBRARY_DEFINED__
  121. /****************************************
  122.  * Generated header for library: ADODB
  123.  * at Thu Dec 05 17:09:47 1996
  124.  * using MIDL 3.00.30
  125.  ****************************************/
  126. /* [helpstring][version][helpcontext][helpfile][uuid] */ 
  127. typedef /* [uuid][public] */ 
  128. enum CursorTypeEnum
  129.     {    adOpenUnspecified    = -1,
  130.     adOpenForwardOnly    = 0,
  131.     adOpenKeyset    = 1,
  132.     adOpenDynamic    = 2,
  133.     adOpenStatic    = 3
  134.     }    CursorTypeEnum;
  135. typedef /* [uuid] */ 
  136. enum CursorOptionEnum
  137.     {    adHoldRecords    = 0x100,
  138.     adMovePrevious    = 0x200,
  139.     adAddNew    = 0x1000400,
  140.     adDelete    = 0x1000800,
  141.     adUpdate    = 0x1008000,
  142.     adBookmark    = 0x2000,
  143.     adApproxPosition    = 0x4000,
  144.     adUpdateBatch    = 0x10000,
  145.     adResync    = 0x20000
  146.     }    CursorOptionEnum;
  147. typedef /* [uuid] */ 
  148. enum LockTypeEnum
  149.     {    adLockUnspecified    = -1,
  150.     adLockReadOnly    = 1,
  151.     adLockPessimistic    = 2,
  152.     adLockOptimistic    = 3,
  153.     adLockBatchOptimistic    = 4
  154.     }    LockTypeEnum;
  155. typedef /* [hidden][uuid] */ 
  156. enum CursorLocationEnum
  157.     {    adUseClient    = 1,
  158.     adUseServer    = 2,
  159.     adUseClientBatch    = 3
  160.     }    CursorLocationEnum;
  161. typedef /* [uuid] */ 
  162. enum DataTypeEnum
  163.     {    adEmpty    = 0,
  164.     adTinyInt    = 16,
  165.     adSmallInt    = 2,
  166.     adInteger    = 3,
  167.     adBigInt    = 20,
  168.     adUnsignedTinyInt    = 17,
  169.     adUnsignedSmallInt    = 18,
  170.     adUnsignedInt    = 19,
  171.     adUnsignedBigInt    = 21,
  172.     adSingle    = 4,
  173.     adDouble    = 5,
  174.     adCurrency    = 6,
  175.     adDecimal    = 14,
  176.     adNumeric    = 131,
  177.     adBoolean    = 11,
  178.     adError    = 10,
  179.     adUserDefined    = 132,
  180.     adVariant    = 12,
  181.     adIDispatch    = 9,
  182.     adIUnknown    = 13,
  183.     adGUID    = 72,
  184.     adDate    = 7,
  185.     adDBDate    = 133,
  186.     adDBTime    = 134,
  187.     adDBTimeStamp    = 135,
  188.     adBSTR    = 8,
  189.     adChar    = 129,
  190.     adVarChar    = 200,
  191.     adLongVarChar    = 201,
  192.     adWChar    = 130,
  193.     adVarWChar    = 202,
  194.     adLongVarWChar    = 203,
  195.     adBinary    = 128,
  196.     adVarBinary    = 204,
  197.     adLongVarBinary    = 205
  198.     }    DataTypeEnum;
  199. typedef /* [uuid] */ 
  200. enum FieldAttributeEnum
  201.     {    adFldMayDefer    = 0x2,
  202.     adFldUpdatable    = 0x4,
  203.     adFldUnknownUpdatable    = 0x8,
  204.     adFldFixed    = 0x10,
  205.     adFldIsNullable    = 0x20,
  206.     adFldMayBeNull    = 0x40,
  207.     adFldLong    = 0x80,
  208.     adFldRowID    = 0x100,
  209.     adFldRowVersion    = 0x200,
  210.     adFldCacheDeferred    = 0x1000
  211.     }    FieldAttributeEnum;
  212. typedef /* [uuid] */ 
  213. enum EditModeEnum
  214.     {    adEditNone    = 0,
  215.     adEditInProgress    = 0x1,
  216.     adEditAdd    = 0x2
  217.     }    EditModeEnum;
  218. typedef /* [uuid] */ 
  219. enum RecordStatusEnum
  220.     {    adRecOK    = 0,
  221.     adRecNew    = 0x1,
  222.     adRecModified    = 0x2,
  223.     adRecDeleted    = 0x4,
  224.     adRecUnmodified    = 0x8,
  225.     adRecInvalid    = 0x10,
  226.     adRecMultipleChanges    = 0x40,
  227.     adRecPendingChanges    = 0x80,
  228.     adRecCanceled    = 0x100,
  229.     adRecCantRelease    = 0x400,
  230.     adRecConcurrencyViolation    = 0x800,
  231.     adRecIntegrityViolation    = 0x1000,
  232.     adRecMaxChangesExceeded    = 0x2000,
  233.     adRecObjectOpen    = 0x4000,
  234.     adRecOutOfMemory    = 0x8000,
  235.     adRecPermissionDenied    = 0x10000,
  236.     adRecSchemaViolation    = 0x20000,
  237.     adRecDBDeleted    = 0x40000
  238.     }    RecordStatusEnum;
  239. typedef 
  240. enum GetRowsOptionEnum
  241.     {    adGetRowsRest    = -1
  242.     }    GetRowsOptionEnum;
  243. typedef /* [uuid] */ 
  244. enum PositionEnum
  245.     {    adPosUnknown    = -1,
  246.     adPosBOF    = -2,
  247.     adPosEOF    = -3
  248.     }    PositionEnum;
  249. typedef 
  250. enum AffectEnum
  251.     {    adAffectCurrent    = 1,
  252.     adAffectGroup    = 2,
  253.     adAffectAll    = 3
  254.     }    AffectEnum;
  255. typedef 
  256. enum FilterGroupEnum
  257.     {    adFilterNone    = 0,
  258.     adFilterPendingRecords    = 1,
  259.     adFilterAffectedRecords    = 2,
  260.     adFilterFetchedRecords    = 3,
  261.     adFilterPredicate    = 4
  262.     }    FilterGroupEnum;
  263. typedef /* [uuid] */ 
  264. enum ConnectPromptEnum
  265.     {    adPromptAlways    = 1,
  266.     adPromptComplete    = 2,
  267.     adPromptCompleteRequired    = 3,
  268.     adPromptNever    = 4
  269.     }    ConnectPromptEnum;
  270. typedef /* [uuid] */ 
  271. enum ConnectModeEnum
  272.     {    adModeUnknown    = 0,
  273.     adModeRead    = 1,
  274.     adModeWrite    = 2,
  275.     adModeReadWrite    = 3,
  276.     adModeShareDenyRead    = 4,
  277.     adModeShareDenyWrite    = 8,
  278.     adModeShareExclusive    = 0xc,
  279.     adModeShareDenyNone    = 0x10
  280.     }    ConnectModeEnum;
  281. typedef /* [uuid] */ 
  282. enum IsolationLevelEnum
  283.     {    adXactUnspecified    = 0xffffffff,
  284.     adXactChaos    = 0x10,
  285.     adXactReadUncommitted    = 0x100,
  286.     adXactBrowse    = 0x100,
  287.     adXactCursorStability    = 0x1000,
  288.     adXactReadCommitted    = 0x1000,
  289.     adXactRepeatableRead    = 0x10000,
  290.     adXactSerializable    = 0x100000,
  291.     adXactIsolated    = 0x100000
  292.     }    IsolationLevelEnum;
  293. typedef /* [uuid] */ 
  294. enum XactAttributeEnum
  295.     {    adXactCommitRetaining    = 0x20000,
  296.     adXactAbortRetaining    = 0x40000
  297.     }    XactAttributeEnum;
  298. typedef /* [uuid] */ 
  299. enum PropertyAttributesEnum
  300.     {    adPropNotSupported    = 0,
  301.     adPropRequired    = 0x1,
  302.     adPropOptional    = 0x2,
  303.     adPropRead    = 0x200,
  304.     adPropWrite    = 0x400
  305.     }    PropertyAttributesEnum;
  306. typedef /* [uuid] */ 
  307. enum ErrorValueEnum
  308.     {    adErrInvalidArgument    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xbb9),
  309.     adErrNoCurrentRecord    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xbcd),
  310.     adErrIllegalOperation    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xc93),
  311.     adErrInTransaction    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xcae),
  312.     adErrFeatureNotAvailable    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xcb3),
  313.     adErrItemNotFound    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xcc1),
  314.     adErrObjectInADOCollection    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xd27),
  315.     adErrObjectNotSet    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xd5c),
  316.     adErrDataConversion    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xd5d),
  317.     adErrObjectClosed    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xe78),
  318.     adErrObjectOpen    = 0xe79,
  319.     adErrProviderNotFound    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xe7a),
  320.     adErrBoundToCommand    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xe7b),
  321.     adErrInvalidParamInfo    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xe7c),
  322.     adErrInvalidConnection    =     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_CONTROL, 0xe7d),
  323.     }    ErrorValueEnum;
  324. typedef /* [uuid] */ 
  325. enum ParameterAttributesEnum
  326.     {    adParamSigned    = 0x10,
  327.     adParamNullable    = 0x40,
  328.     adParamLong    = 0x80
  329.     }    ParameterAttributesEnum;
  330. typedef /* [uuid] */ 
  331. enum ParameterDirectionEnum
  332.     {    adParamUnknown    = 0,
  333.     adParamInput    = 0x1,
  334.     adParamOutput    = 0x2,
  335.     adParamInputOutput    = 0x3,
  336.     adParamReturnValue    = 0x4
  337.     }    ParameterDirectionEnum;
  338. typedef /* [uuid] */ 
  339. enum CommandTypeEnum
  340.     {    adCmdUnspecified    = -1,
  341.     adCmdUnknown    = 0x8,
  342.     adCmdText    = 0x1,
  343.     adCmdTable    = 0x2,
  344.     adCmdStoredProc    = 0x4
  345.     }    CommandTypeEnum;
  346. EXTERN_C const IID LIBID_ADODB;
  347. #ifndef ___ADOCollection_INTERFACE_DEFINED__
  348. #define ___ADOCollection_INTERFACE_DEFINED__
  349. /****************************************
  350.  * Generated header for interface: _ADOCollection
  351.  * at Thu Dec 05 17:09:47 1996
  352.  * using MIDL 3.00.30
  353.  ****************************************/
  354. /* [object][uuid][nonextensible][dual] */ 
  355. EXTERN_C const IID IID__ADOCollection;
  356. #if defined(__cplusplus) && !defined(CINTERFACE)
  357.     
  358.     interface _ADOCollection : public IDispatch
  359.     {
  360.     public:
  361.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
  362.             /* [retval][out] */ long __RPC_FAR *c) = 0;
  363.         
  364.         virtual /* [id][restricted] */ HRESULT STDMETHODCALLTYPE _NewEnum( 
  365.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  366.         
  367.         virtual /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE Refresh( void) = 0;
  368.         
  369.     };
  370.     
  371. #else     /* C style interface */
  372.     typedef struct _ADOCollectionVtbl
  373.     {
  374.         BEGIN_INTERFACE
  375.         
  376.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  377.             _ADOCollection __RPC_FAR * This,
  378.             /* [in] */ REFIID riid,
  379.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  380.         
  381.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  382.             _ADOCollection __RPC_FAR * This);
  383.         
  384.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  385.             _ADOCollection __RPC_FAR * This);
  386.         
  387.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  388.             _ADOCollection __RPC_FAR * This,
  389.             /* [out] */ UINT __RPC_FAR *pctinfo);
  390.         
  391.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  392.             _ADOCollection __RPC_FAR * This,
  393.             /* [in] */ UINT itinfo,
  394.             /* [in] */ LCID lcid,
  395.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  396.         
  397.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  398.             _ADOCollection __RPC_FAR * This,
  399.             /* [in] */ REFIID riid,
  400.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  401.             /* [in] */ UINT cNames,
  402.             /* [in] */ LCID lcid,
  403.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  404.         
  405.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  406.             _ADOCollection __RPC_FAR * This,
  407.             /* [in] */ DISPID dispidMember,
  408.             /* [in] */ REFIID riid,
  409.             /* [in] */ LCID lcid,
  410.             /* [in] */ WORD wFlags,
  411.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  412.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  413.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  414.             /* [out] */ UINT __RPC_FAR *puArgErr);
  415.         
  416.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  417.             _ADOCollection __RPC_FAR * This,
  418.             /* [retval][out] */ long __RPC_FAR *c);
  419.         
  420.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  421.             _ADOCollection __RPC_FAR * This,
  422.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  423.         
  424.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  425.             _ADOCollection __RPC_FAR * This);
  426.         
  427.         END_INTERFACE
  428.     } _ADOCollectionVtbl;
  429.     interface _ADOCollection
  430.     {
  431.         CONST_VTBL struct _ADOCollectionVtbl __RPC_FAR *lpVtbl;
  432.     };
  433.     
  434. #ifdef COBJMACROS
  435. #define _ADOCollection_QueryInterface(This,riid,ppvObject)    \
  436.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  437. #define _ADOCollection_AddRef(This)    \
  438.     (This)->lpVtbl -> AddRef(This)
  439. #define _ADOCollection_Release(This)    \
  440.     (This)->lpVtbl -> Release(This)
  441. #define _ADOCollection_GetTypeInfoCount(This,pctinfo)    \
  442.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  443. #define _ADOCollection_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  444.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  445. #define _ADOCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  446.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  447. #define _ADOCollection_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  448.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  449. #define _Collection_get_Count(This,c)    \
  450.     (This)->lpVtbl -> get_Count(This,c)
  451. #define _ADOCollection__NewEnum(This,ppvObject)    \
  452.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  453. #define _ADOCollection_Refresh(This)    \
  454.     (This)->lpVtbl -> Refresh(This)
  455. #endif /* COBJMACROS */
  456. #endif     /* C style interface */
  457. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Collection_get_Count_Proxy( 
  458.     _ADOCollection __RPC_FAR * This,
  459.     /* [retval][out] */ long __RPC_FAR *c);
  460. void __RPC_STUB _Collection_get_Count_Stub(
  461.     IRpcStubBuffer *This,
  462.     IRpcChannelBuffer *_pRpcChannelBuffer,
  463.     PRPC_MESSAGE _pRpcMessage,
  464.     DWORD *_pdwStubPhase);
  465. /* [id][restricted] */ HRESULT STDMETHODCALLTYPE _ADOCollection__NewEnum_Proxy( 
  466.     _ADOCollection __RPC_FAR * This,
  467.     /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  468. void __RPC_STUB _ADOCollection__NewEnum_Stub(
  469.     IRpcStubBuffer *This,
  470.     IRpcChannelBuffer *_pRpcChannelBuffer,
  471.     PRPC_MESSAGE _pRpcMessage,
  472.     DWORD *_pdwStubPhase);
  473. /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE _ADOCollection_Refresh_Proxy( 
  474.     _ADOCollection __RPC_FAR * This);
  475. void __RPC_STUB _ADOCollection_Refresh_Stub(
  476.     IRpcStubBuffer *This,
  477.     IRpcChannelBuffer *_pRpcChannelBuffer,
  478.     PRPC_MESSAGE _pRpcMessage,
  479.     DWORD *_pdwStubPhase);
  480. #endif     /* ___ADOCollection_INTERFACE_DEFINED__ */
  481. #ifndef ___ADODynaCollection_INTERFACE_DEFINED__
  482. #define ___ADODynaCollection_INTERFACE_DEFINED__
  483. /****************************************
  484.  * Generated header for interface: _ADODynaCollection
  485.  * at Thu Dec 05 17:09:47 1996
  486.  * using MIDL 3.00.30
  487.  ****************************************/
  488. /* [object][uuid][nonextensible][dual] */ 
  489. EXTERN_C const IID IID__ADODynaCollection;
  490. #if defined(__cplusplus) && !defined(CINTERFACE)
  491.     
  492. interface _ADODynaCollection : public _ADOCollection
  493.     {
  494.     public:
  495.         virtual /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE Append( 
  496.             /* [in] */ IDispatch __RPC_FAR *Object) = 0;
  497.         
  498.         virtual /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE Delete( 
  499.             /* [in] */ VARIANT Index) = 0;
  500.         
  501.     };
  502.     
  503. #else     /* C style interface */
  504.     typedef struct _ADODynaCollectionVtbl
  505.     {
  506.         BEGIN_INTERFACE
  507.         
  508.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  509.             _ADODynaCollection __RPC_FAR * This,
  510.             /* [in] */ REFIID riid,
  511.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  512.         
  513.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  514.             _ADODynaCollection __RPC_FAR * This);
  515.         
  516.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  517.             _ADODynaCollection __RPC_FAR * This);
  518.         
  519.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  520.             _ADODynaCollection __RPC_FAR * This,
  521.             /* [out] */ UINT __RPC_FAR *pctinfo);
  522.         
  523.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  524.             _ADODynaCollection __RPC_FAR * This,
  525.             /* [in] */ UINT itinfo,
  526.             /* [in] */ LCID lcid,
  527.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  528.         
  529.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  530.             _ADODynaCollection __RPC_FAR * This,
  531.             /* [in] */ REFIID riid,
  532.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  533.             /* [in] */ UINT cNames,
  534.             /* [in] */ LCID lcid,
  535.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  536.         
  537.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  538.             _ADODynaCollection __RPC_FAR * This,
  539.             /* [in] */ DISPID dispidMember,
  540.             /* [in] */ REFIID riid,
  541.             /* [in] */ LCID lcid,
  542.             /* [in] */ WORD wFlags,
  543.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  544.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  545.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  546.             /* [out] */ UINT __RPC_FAR *puArgErr);
  547.         
  548.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  549.             _ADODynaCollection __RPC_FAR * This,
  550.             /* [retval][out] */ long __RPC_FAR *c);
  551.         
  552.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  553.             _ADODynaCollection __RPC_FAR * This,
  554.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  555.         
  556.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  557.             _ADODynaCollection __RPC_FAR * This);
  558.         
  559.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  560.             _ADODynaCollection __RPC_FAR * This,
  561.             /* [in] */ IDispatch __RPC_FAR *Object);
  562.         
  563.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  564.             _ADODynaCollection __RPC_FAR * This,
  565.             /* [in] */ VARIANT Index);
  566.         
  567.         END_INTERFACE
  568.     } _ADODynaCollectionVtbl;
  569.     interface _ADODynaCollection
  570.     {
  571.         CONST_VTBL struct _ADODynaCollectionVtbl __RPC_FAR *lpVtbl;
  572.     };
  573.     
  574. #ifdef COBJMACROS
  575. #define _ADODynaCollection_QueryInterface(This,riid,ppvObject)    \
  576.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  577. #define _ADODynaCollection_AddRef(This)    \
  578.     (This)->lpVtbl -> AddRef(This)
  579. #define _ADODynaCollection_Release(This)    \
  580.     (This)->lpVtbl -> Release(This)
  581. #define _ADODynaCollection_GetTypeInfoCount(This,pctinfo)    \
  582.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  583. #define _ADODynaCollection_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  584.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  585. #define _ADODynaCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  586.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  587. #define _ADODynaCollection_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  588.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  589. #define _DynaCollection_get_Count(This,c)    \
  590.     (This)->lpVtbl -> get_Count(This,c)
  591. #define _ADODynaCollection__NewEnum(This,ppvObject)    \
  592.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  593. #define _ADODynaCollection_Refresh(This)    \
  594.     (This)->lpVtbl -> Refresh(This)
  595. #define _ADODynaCollection_Append(This,Object)    \
  596.     (This)->lpVtbl -> Append(This,Object)
  597. #define _ADODynaCollection_Delete(This,Index)    \
  598.     (This)->lpVtbl -> Delete(This,Index)
  599. #endif /* COBJMACROS */
  600. #endif     /* C style interface */
  601. /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE _ADODynaCollection_Append_Proxy( 
  602.     _ADODynaCollection __RPC_FAR * This,
  603.     /* [in] */ IDispatch __RPC_FAR *Object);
  604. void __RPC_STUB _ADODynaCollection_Append_Stub(
  605.     IRpcStubBuffer *This,
  606.     IRpcChannelBuffer *_pRpcChannelBuffer,
  607.     PRPC_MESSAGE _pRpcMessage,
  608.     DWORD *_pdwStubPhase);
  609. /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE _ADODynaCollection_Delete_Proxy( 
  610.     _ADODynaCollection __RPC_FAR * This,
  611.     /* [in] */ VARIANT Index);
  612. void __RPC_STUB _ADODynaCollection_Delete_Stub(
  613.     IRpcStubBuffer *This,
  614.     IRpcChannelBuffer *_pRpcChannelBuffer,
  615.     PRPC_MESSAGE _pRpcMessage,
  616.     DWORD *_pdwStubPhase);
  617. #endif     /* ___ADODynaCollection_INTERFACE_DEFINED__ */
  618. #ifndef ___ADO_INTERFACE_DEFINED__
  619. #define ___ADO_INTERFACE_DEFINED__
  620. /****************************************
  621.  * Generated header for interface: _ADO
  622.  * at Thu Dec 05 17:09:47 1996
  623.  * using MIDL 3.00.30
  624.  ****************************************/
  625. /* [object][uuid][nonextensible][dual] */ 
  626. EXTERN_C const IID IID__ADO;
  627. #if defined(__cplusplus) && !defined(CINTERFACE)
  628.     
  629.     interface _ADO : public IDispatch
  630.     {
  631.     public:
  632.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Properties( 
  633.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  634.         
  635.     };
  636.     
  637. #else     /* C style interface */
  638.     typedef struct _ADOVtbl
  639.     {
  640.         BEGIN_INTERFACE
  641.         
  642.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  643.             _ADO __RPC_FAR * This,
  644.             /* [in] */ REFIID riid,
  645.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  646.         
  647.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  648.             _ADO __RPC_FAR * This);
  649.         
  650.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  651.             _ADO __RPC_FAR * This);
  652.         
  653.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  654.             _ADO __RPC_FAR * This,
  655.             /* [out] */ UINT __RPC_FAR *pctinfo);
  656.         
  657.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  658.             _ADO __RPC_FAR * This,
  659.             /* [in] */ UINT itinfo,
  660.             /* [in] */ LCID lcid,
  661.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  662.         
  663.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  664.             _ADO __RPC_FAR * This,
  665.             /* [in] */ REFIID riid,
  666.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  667.             /* [in] */ UINT cNames,
  668.             /* [in] */ LCID lcid,
  669.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  670.         
  671.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  672.             _ADO __RPC_FAR * This,
  673.             /* [in] */ DISPID dispidMember,
  674.             /* [in] */ REFIID riid,
  675.             /* [in] */ LCID lcid,
  676.             /* [in] */ WORD wFlags,
  677.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  678.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  679.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  680.             /* [out] */ UINT __RPC_FAR *puArgErr);
  681.         
  682.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  683.             _ADO __RPC_FAR * This,
  684.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  685.         
  686.         END_INTERFACE
  687.     } _ADOVtbl;
  688.     interface _ADO
  689.     {
  690.         CONST_VTBL struct _ADOVtbl __RPC_FAR *lpVtbl;
  691.     };
  692.     
  693. #ifdef COBJMACROS
  694. #define _ADO_QueryInterface(This,riid,ppvObject)    \
  695.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  696. #define _ADO_AddRef(This)    \
  697.     (This)->lpVtbl -> AddRef(This)
  698. #define _ADO_Release(This)    \
  699.     (This)->lpVtbl -> Release(This)
  700. #define _ADO_GetTypeInfoCount(This,pctinfo)    \
  701.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  702. #define _ADO_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  703.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  704. #define _ADO_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  705.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  706. #define _ADO_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  707.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  708. #define _ADO_get_Properties(This,ppvObject)    \
  709.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  710. #endif /* COBJMACROS */
  711. #endif     /* C style interface */
  712. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _ADO_get_Properties_Proxy( 
  713.     _ADO __RPC_FAR * This,
  714.     /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  715. void __RPC_STUB _ADO_get_Properties_Stub(
  716.     IRpcStubBuffer *This,
  717.     IRpcChannelBuffer *_pRpcChannelBuffer,
  718.     PRPC_MESSAGE _pRpcMessage,
  719.     DWORD *_pdwStubPhase);
  720. #endif     /* ___ADO_INTERFACE_DEFINED__ */
  721. #ifndef __Error_INTERFACE_DEFINED__
  722. #define __Error_INTERFACE_DEFINED__
  723. /****************************************
  724.  * Generated header for interface: Error
  725.  * at Thu Dec 05 17:09:47 1996
  726.  * using MIDL 3.00.30
  727.  ****************************************/
  728. /* [object][helpstring][helpcontext][uuid][nonextensible][dual] */ 
  729. EXTERN_C const IID IID_Error;
  730. #if defined(__cplusplus) && !defined(CINTERFACE)
  731.     
  732.     interface ADOError : public IDispatch
  733.     {
  734.     public:
  735.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
  736.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  737.         
  738.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Source( 
  739.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  740.         
  741.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
  742.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  743.         
  744.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_HelpFile( 
  745.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  746.         
  747.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_HelpContext( 
  748.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  749.         
  750.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_SQLState( 
  751.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  752.         
  753.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_NativeError( 
  754.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  755.         
  756.     };
  757.     
  758. #else     /* C style interface */
  759.     typedef struct ErrorVtbl
  760.     {
  761.         BEGIN_INTERFACE
  762.         
  763.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  764.             ADOError __RPC_FAR * This,
  765.             /* [in] */ REFIID riid,
  766.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  767.         
  768.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  769.             ADOError __RPC_FAR * This);
  770.         
  771.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  772.             ADOError __RPC_FAR * This);
  773.         
  774.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  775.             ADOError __RPC_FAR * This,
  776.             /* [out] */ UINT __RPC_FAR *pctinfo);
  777.         
  778.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  779.             ADOError __RPC_FAR * This,
  780.             /* [in] */ UINT itinfo,
  781.             /* [in] */ LCID lcid,
  782.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  783.         
  784.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  785.             ADOError __RPC_FAR * This,
  786.             /* [in] */ REFIID riid,
  787.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  788.             /* [in] */ UINT cNames,
  789.             /* [in] */ LCID lcid,
  790.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  791.         
  792.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  793.             ADOError __RPC_FAR * This,
  794.             /* [in] */ DISPID dispidMember,
  795.             /* [in] */ REFIID riid,
  796.             /* [in] */ LCID lcid,
  797.             /* [in] */ WORD wFlags,
  798.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  799.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  800.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  801.             /* [out] */ UINT __RPC_FAR *puArgErr);
  802.         
  803.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
  804.             ADOError __RPC_FAR * This,
  805.             /* [retval][out] */ long __RPC_FAR *pl);
  806.         
  807.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Source )( 
  808.             ADOError __RPC_FAR * This,
  809.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  810.         
  811.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Description )( 
  812.             ADOError __RPC_FAR * This,
  813.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  814.         
  815.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HelpFile )( 
  816.             ADOError __RPC_FAR * This,
  817.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  818.         
  819.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HelpContext )( 
  820.             ADOError __RPC_FAR * This,
  821.             /* [retval][out] */ long __RPC_FAR *pl);
  822.         
  823.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SQLState )( 
  824.             ADOError __RPC_FAR * This,
  825.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  826.         
  827.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NativeError )( 
  828.             ADOError __RPC_FAR * This,
  829.             /* [retval][out] */ long __RPC_FAR *pl);
  830.         
  831.         END_INTERFACE
  832.     } ErrorVtbl;
  833.     interface Error
  834.     {
  835.         CONST_VTBL struct ErrorVtbl __RPC_FAR *lpVtbl;
  836.     };
  837.     
  838. #ifdef COBJMACROS
  839. #define Error_QueryInterface(This,riid,ppvObject)    \
  840.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  841. #define Error_AddRef(This)    \
  842.     (This)->lpVtbl -> AddRef(This)
  843. #define Error_Release(This)    \
  844.     (This)->lpVtbl -> Release(This)
  845. #define Error_GetTypeInfoCount(This,pctinfo)    \
  846.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  847. #define Error_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  848.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  849. #define Error_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  850.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  851. #define Error_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  852.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  853. #define Error_get_Number(This,pl)    \
  854.     (This)->lpVtbl -> get_Number(This,pl)
  855. #define Error_get_Source(This,pbstr)    \
  856.     (This)->lpVtbl -> get_Source(This,pbstr)
  857. #define Error_get_Description(This,pbstr)    \
  858.     (This)->lpVtbl -> get_Description(This,pbstr)
  859. #define Error_get_HelpFile(This,pbstr)    \
  860.     (This)->lpVtbl -> get_HelpFile(This,pbstr)
  861. #define Error_get_HelpContext(This,pl)    \
  862.     (This)->lpVtbl -> get_HelpContext(This,pl)
  863. #define Error_get_SQLState(This,pbstr)    \
  864.     (This)->lpVtbl -> get_SQLState(This,pbstr)
  865. #define Error_get_NativeError(This,pl)    \
  866.     (This)->lpVtbl -> get_NativeError(This,pl)
  867. #endif /* COBJMACROS */
  868. #endif     /* C style interface */
  869. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Error_get_Number_Proxy( 
  870.     ADOError __RPC_FAR * This,
  871.     /* [retval][out] */ long __RPC_FAR *pl);
  872. void __RPC_STUB Error_get_Number_Stub(
  873.     IRpcStubBuffer *This,
  874.     IRpcChannelBuffer *_pRpcChannelBuffer,
  875.     PRPC_MESSAGE _pRpcMessage,
  876.     DWORD *_pdwStubPhase);
  877. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Error_get_Source_Proxy( 
  878.     ADOError __RPC_FAR * This,
  879.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  880. void __RPC_STUB Error_get_Source_Stub(
  881.     IRpcStubBuffer *This,
  882.     IRpcChannelBuffer *_pRpcChannelBuffer,
  883.     PRPC_MESSAGE _pRpcMessage,
  884.     DWORD *_pdwStubPhase);
  885. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Error_get_Description_Proxy( 
  886.     ADOError __RPC_FAR * This,
  887.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  888. void __RPC_STUB Error_get_Description_Stub(
  889.     IRpcStubBuffer *This,
  890.     IRpcChannelBuffer *_pRpcChannelBuffer,
  891.     PRPC_MESSAGE _pRpcMessage,
  892.     DWORD *_pdwStubPhase);
  893. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Error_get_HelpFile_Proxy( 
  894.     ADOError __RPC_FAR * This,
  895.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  896. void __RPC_STUB Error_get_HelpFile_Stub(
  897.     IRpcStubBuffer *This,
  898.     IRpcChannelBuffer *_pRpcChannelBuffer,
  899.     PRPC_MESSAGE _pRpcMessage,
  900.     DWORD *_pdwStubPhase);
  901. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Error_get_HelpContext_Proxy( 
  902.     ADOError __RPC_FAR * This,
  903.     /* [retval][out] */ long __RPC_FAR *pl);
  904. void __RPC_STUB Error_get_HelpContext_Stub(
  905.     IRpcStubBuffer *This,
  906.     IRpcChannelBuffer *_pRpcChannelBuffer,
  907.     PRPC_MESSAGE _pRpcMessage,
  908.     DWORD *_pdwStubPhase);
  909. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Error_get_SQLState_Proxy( 
  910.     ADOError __RPC_FAR * This,
  911.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  912. void __RPC_STUB Error_get_SQLState_Stub(
  913.     IRpcStubBuffer *This,
  914.     IRpcChannelBuffer *_pRpcChannelBuffer,
  915.     PRPC_MESSAGE _pRpcMessage,
  916.     DWORD *_pdwStubPhase);
  917. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Error_get_NativeError_Proxy( 
  918.     ADOError __RPC_FAR * This,
  919.     /* [retval][out] */ long __RPC_FAR *pl);
  920. void __RPC_STUB Error_get_NativeError_Stub(
  921.     IRpcStubBuffer *This,
  922.     IRpcChannelBuffer *_pRpcChannelBuffer,
  923.     PRPC_MESSAGE _pRpcMessage,
  924.     DWORD *_pdwStubPhase);
  925. #endif     /* __Error_INTERFACE_DEFINED__ */
  926. #ifndef __Errors_INTERFACE_DEFINED__
  927. #define __Errors_INTERFACE_DEFINED__
  928. /****************************************
  929.  * Generated header for interface: Errors
  930.  * at Thu Dec 05 17:09:47 1996
  931.  * using MIDL 3.00.30
  932.  ****************************************/
  933. /* [object][uuid][helpstring][helpcontext][nonextensible][dual] */ 
  934. EXTERN_C const IID IID_Errors;
  935. #if defined(__cplusplus) && !defined(CINTERFACE)
  936.     
  937.     interface ADOErrors : public _ADOCollection
  938.     {
  939.     public:
  940.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  941.             /* [in] */ VARIANT Index,
  942.             /* [retval][out] */ ADOError __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  943.         
  944.         virtual HRESULT STDMETHODCALLTYPE Clear( void) = 0;
  945.         
  946.     };
  947.     
  948. #else     /* C style interface */
  949.     typedef struct ErrorsVtbl
  950.     {
  951.         BEGIN_INTERFACE
  952.         
  953.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  954.             ADOErrors __RPC_FAR * This,
  955.             /* [in] */ REFIID riid,
  956.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  957.         
  958.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  959.             ADOErrors __RPC_FAR * This);
  960.         
  961.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  962.             ADOErrors __RPC_FAR * This);
  963.         
  964.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  965.             ADOErrors __RPC_FAR * This,
  966.             /* [out] */ UINT __RPC_FAR *pctinfo);
  967.         
  968.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  969.             ADOErrors __RPC_FAR * This,
  970.             /* [in] */ UINT itinfo,
  971.             /* [in] */ LCID lcid,
  972.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  973.         
  974.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  975.             ADOErrors __RPC_FAR * This,
  976.             /* [in] */ REFIID riid,
  977.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  978.             /* [in] */ UINT cNames,
  979.             /* [in] */ LCID lcid,
  980.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  981.         
  982.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  983.             ADOErrors __RPC_FAR * This,
  984.             /* [in] */ DISPID dispidMember,
  985.             /* [in] */ REFIID riid,
  986.             /* [in] */ LCID lcid,
  987.             /* [in] */ WORD wFlags,
  988.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  989.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  990.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  991.             /* [out] */ UINT __RPC_FAR *puArgErr);
  992.         
  993.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  994.             ADOErrors __RPC_FAR * This,
  995.             /* [retval][out] */ long __RPC_FAR *c);
  996.         
  997.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  998.             ADOErrors __RPC_FAR * This,
  999.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  1000.         
  1001.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  1002.             ADOErrors __RPC_FAR * This);
  1003.         
  1004.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  1005.             ADOErrors __RPC_FAR * This,
  1006.             /* [in] */ VARIANT Index,
  1007.             /* [retval][out] */ ADOError __RPC_FAR *__RPC_FAR *ppvObject);
  1008.         
  1009.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
  1010.             ADOErrors __RPC_FAR * This);
  1011.         
  1012.         END_INTERFACE
  1013.     } ErrorsVtbl;
  1014.     interface Errors
  1015.     {
  1016.         CONST_VTBL struct ErrorsVtbl __RPC_FAR *lpVtbl;
  1017.     };
  1018.     
  1019. #ifdef COBJMACROS
  1020. #define Errors_QueryInterface(This,riid,ppvObject)    \
  1021.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1022. #define Errors_AddRef(This)    \
  1023.     (This)->lpVtbl -> AddRef(This)
  1024. #define Errors_Release(This)    \
  1025.     (This)->lpVtbl -> Release(This)
  1026. #define Errors_GetTypeInfoCount(This,pctinfo)    \
  1027.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1028. #define Errors_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  1029.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  1030. #define Errors_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  1031.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  1032. #define Errors_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  1033.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  1034. #define Errors_get_Count(This,c)    \
  1035.     (This)->lpVtbl -> get_Count(This,c)
  1036. #define Errors__NewEnum(This,ppvObject)    \
  1037.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  1038. #define Errors_Refresh(This)    \
  1039.     (This)->lpVtbl -> Refresh(This)
  1040. #define Errors_get_Item(This,Index,ppvObject)    \
  1041.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  1042. #define Errors_Clear(This)    \
  1043.     (This)->lpVtbl -> Clear(This)
  1044. #endif /* COBJMACROS */
  1045. #endif     /* C style interface */
  1046. /* [id][propget] */ HRESULT STDMETHODCALLTYPE Errors_get_Item_Proxy( 
  1047.     ADOErrors __RPC_FAR * This,
  1048.     /* [in] */ VARIANT Index,
  1049.     /* [retval][out] */ ADOError __RPC_FAR *__RPC_FAR *ppvObject);
  1050. void __RPC_STUB Errors_get_Item_Stub(
  1051.     IRpcStubBuffer *This,
  1052.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1053.     PRPC_MESSAGE _pRpcMessage,
  1054.     DWORD *_pdwStubPhase);
  1055. HRESULT STDMETHODCALLTYPE Errors_Clear_Proxy( 
  1056.     ADOErrors __RPC_FAR * This);
  1057. void __RPC_STUB Errors_Clear_Stub(
  1058.     IRpcStubBuffer *This,
  1059.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1060.     PRPC_MESSAGE _pRpcMessage,
  1061.     DWORD *_pdwStubPhase);
  1062. #endif     /* __Errors_INTERFACE_DEFINED__ */
  1063. #ifndef ___Command_INTERFACE_DEFINED__
  1064. #define ___Command_INTERFACE_DEFINED__
  1065. /****************************************
  1066.  * Generated header for interface: _Command
  1067.  * at Thu Dec 05 17:09:47 1996
  1068.  * using MIDL 3.00.30
  1069.  ****************************************/
  1070. /* [object][uuid][nonextensible][dual] */ 
  1071. EXTERN_C const IID IID__Command;
  1072. #if defined(__cplusplus) && !defined(CINTERFACE)
  1073.     
  1074.     interface _ADOCommand : public _ADO
  1075.     {
  1076.     public:
  1077.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ActiveConnection( 
  1078.             /* [retval][out] */ _ADOConnection __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  1079.         
  1080.         virtual /* [propputref] */ HRESULT STDMETHODCALLTYPE putref_ActiveConnection( 
  1081.             /* [in] */ _ADOConnection __RPC_FAR *pCon) = 0;
  1082.         
  1083.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ActiveConnection( 
  1084.             /* [in] */ BSTR bstrConn) = 0;
  1085.         
  1086.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CommandText( 
  1087.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  1088.         
  1089.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CommandText( 
  1090.             /* [in] */ BSTR bstr) = 0;
  1091.         
  1092.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CommandTimeout( 
  1093.             /* [retval][out] */ LONG __RPC_FAR *pl) = 0;
  1094.         
  1095.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CommandTimeout( 
  1096.             /* [in] */ LONG Timeout) = 0;
  1097.         
  1098.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Prepared( 
  1099.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pfPrepared) = 0;
  1100.         
  1101.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Prepared( 
  1102.             /* [in] */ VARIANT_BOOL fPrepared) = 0;
  1103.         
  1104.         virtual /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE Execute( 
  1105.             /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  1106.             /* [optional][in] */ VARIANT __RPC_FAR *Parameters,
  1107.             /* [defaultvalue][in] */ long Options,
  1108.             /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppirs) = 0;
  1109.         
  1110.         virtual HRESULT STDMETHODCALLTYPE CreateParameter( 
  1111.             /* [defaultvalue][in] */ BSTR Name,
  1112.             /* [defaultvalue][in] */ DataTypeEnum Type,
  1113.             /* [defaultvalue][in] */ ParameterDirectionEnum Direction,
  1114.             /* [defaultvalue][in] */ long Size,
  1115.             /* [optional][in] */ VARIANT Value,
  1116.             /* [retval][out] */ _ADOParameter __RPC_FAR *__RPC_FAR *ppiprm) = 0;
  1117.         
  1118.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Parameters( 
  1119.             /* [retval][out] */ ADOParameters __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  1120.         
  1121.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CommandType( 
  1122.             /* [in] */ CommandTypeEnum lCmdType) = 0;
  1123.         
  1124.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CommandType( 
  1125.             /* [retval][out] */ CommandTypeEnum __RPC_FAR *plCmdType) = 0;
  1126.         
  1127.     };
  1128.     
  1129. #else     /* C style interface */
  1130.     typedef struct _CommandVtbl
  1131.     {
  1132.         BEGIN_INTERFACE
  1133.         
  1134.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1135.             _ADOCommand __RPC_FAR * This,
  1136.             /* [in] */ REFIID riid,
  1137.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1138.         
  1139.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1140.             _ADOCommand __RPC_FAR * This);
  1141.         
  1142.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1143.             _ADOCommand __RPC_FAR * This);
  1144.         
  1145.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1146.             _ADOCommand __RPC_FAR * This,
  1147.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1148.         
  1149.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1150.             _ADOCommand __RPC_FAR * This,
  1151.             /* [in] */ UINT itinfo,
  1152.             /* [in] */ LCID lcid,
  1153.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  1154.         
  1155.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1156.             _ADOCommand __RPC_FAR * This,
  1157.             /* [in] */ REFIID riid,
  1158.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1159.             /* [in] */ UINT cNames,
  1160.             /* [in] */ LCID lcid,
  1161.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  1162.         
  1163.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1164.             _ADOCommand __RPC_FAR * This,
  1165.             /* [in] */ DISPID dispidMember,
  1166.             /* [in] */ REFIID riid,
  1167.             /* [in] */ LCID lcid,
  1168.             /* [in] */ WORD wFlags,
  1169.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  1170.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  1171.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  1172.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1173.         
  1174.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  1175.             _ADOCommand __RPC_FAR * This,
  1176.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  1177.         
  1178.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveConnection )( 
  1179.             _ADOCommand __RPC_FAR * This,
  1180.             /* [retval][out] */ _ADOConnection __RPC_FAR *__RPC_FAR *ppvObject);
  1181.         
  1182.         /* [propputref] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *putref_ActiveADOConnection )( 
  1183.             _ADOCommand __RPC_FAR * This,
  1184.             /* [in] */ _ADOConnection __RPC_FAR *pCon);
  1185.         
  1186.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ActiveConnection )( 
  1187.             _ADOCommand __RPC_FAR * This,
  1188.             /* [in] */ BSTR bstrConn);
  1189.         
  1190.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CommandText )( 
  1191.             _ADOCommand __RPC_FAR * This,
  1192.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1193.         
  1194.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CommandText )( 
  1195.             _ADOCommand __RPC_FAR * This,
  1196.             /* [in] */ BSTR bstr);
  1197.         
  1198.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CommandTimeout )( 
  1199.             _ADOCommand __RPC_FAR * This,
  1200.             /* [retval][out] */ LONG __RPC_FAR *pl);
  1201.         
  1202.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CommandTimeout )( 
  1203.             _ADOCommand __RPC_FAR * This,
  1204.             /* [in] */ LONG Timeout);
  1205.         
  1206.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Prepared )( 
  1207.             _ADOCommand __RPC_FAR * This,
  1208.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pfPrepared);
  1209.         
  1210.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Prepared )( 
  1211.             _ADOCommand __RPC_FAR * This,
  1212.             /* [in] */ VARIANT_BOOL fPrepared);
  1213.         
  1214.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
  1215.             _ADOCommand __RPC_FAR * This,
  1216.             /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  1217.             /* [optional][in] */ VARIANT __RPC_FAR *Parameters,
  1218.             /* [defaultvalue][in] */ long Options,
  1219.             /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppirs);
  1220.         
  1221.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateParameter )( 
  1222.             _ADOCommand __RPC_FAR * This,
  1223.             /* [defaultvalue][in] */ BSTR Name,
  1224.             /* [defaultvalue][in] */ DataTypeEnum Type,
  1225.             /* [defaultvalue][in] */ ParameterDirectionEnum Direction,
  1226.             /* [defaultvalue][in] */ long Size,
  1227.             /* [optional][in] */ VARIANT Value,
  1228.             /* [retval][out] */ _ADOParameter __RPC_FAR *__RPC_FAR *ppiprm);
  1229.         
  1230.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parameters )( 
  1231.             _ADOCommand __RPC_FAR * This,
  1232.             /* [retval][out] */ ADOParameters __RPC_FAR *__RPC_FAR *ppvObject);
  1233.         
  1234.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CommandType )( 
  1235.             _ADOCommand __RPC_FAR * This,
  1236.             /* [in] */ CommandTypeEnum lCmdType);
  1237.         
  1238.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CommandType )( 
  1239.             _ADOCommand __RPC_FAR * This,
  1240.             /* [retval][out] */ CommandTypeEnum __RPC_FAR *plCmdType);
  1241.         
  1242.         END_INTERFACE
  1243.     } _CommandVtbl;
  1244.     interface _Command
  1245.     {
  1246.         CONST_VTBL struct _CommandVtbl __RPC_FAR *lpVtbl;
  1247.     };
  1248.     
  1249. #ifdef COBJMACROS
  1250. #define _Command_QueryInterface(This,riid,ppvObject)    \
  1251.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1252. #define _Command_AddRef(This)    \
  1253.     (This)->lpVtbl -> AddRef(This)
  1254. #define _Command_Release(This)    \
  1255.     (This)->lpVtbl -> Release(This)
  1256. #define _Command_GetTypeInfoCount(This,pctinfo)    \
  1257.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1258. #define _Command_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  1259.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  1260. #define _Command_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  1261.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  1262. #define _Command_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  1263.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  1264. #define _Command_get_Properties(This,ppvObject)    \
  1265.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  1266. #define _Command_get_ActiveConnection(This,ppvObject)    \
  1267.     (This)->lpVtbl -> get_ActiveConnection(This,ppvObject)
  1268. #define _Command_putref_ActiveConnection(This,pCon)    \
  1269.     (This)->lpVtbl -> putref_ActiveConnection(This,pCon)
  1270. #define _Command_put_ActiveConnection(This,bstrConn)    \
  1271.     (This)->lpVtbl -> put_ActiveConnection(This,bstrConn)
  1272. #define _Command_get_CommandText(This,pbstr)    \
  1273.     (This)->lpVtbl -> get_CommandText(This,pbstr)
  1274. #define _Command_put_CommandText(This,bstr)    \
  1275.     (This)->lpVtbl -> put_CommandText(This,bstr)
  1276. #define _Command_get_CommandTimeout(This,pl)    \
  1277.     (This)->lpVtbl -> get_CommandTimeout(This,pl)
  1278. #define _Command_put_CommandTimeout(This,Timeout)    \
  1279.     (This)->lpVtbl -> put_CommandTimeout(This,Timeout)
  1280. #define _Command_get_Prepared(This,pfPrepared)    \
  1281.     (This)->lpVtbl -> get_Prepared(This,pfPrepared)
  1282. #define _Command_put_Prepared(This,fPrepared)    \
  1283.     (This)->lpVtbl -> put_Prepared(This,fPrepared)
  1284. #define _Command_Execute(This,RecordsAffected,Parameters,Options,ppirs)    \
  1285.     (This)->lpVtbl -> Execute(This,RecordsAffected,Parameters,Options,ppirs)
  1286. #define _Command_CreateParameter(This,Name,Type,Direction,Size,Value,ppiprm)    \
  1287.     (This)->lpVtbl -> CreateParameter(This,Name,Type,Direction,Size,Value,ppiprm)
  1288. #define _Command_get_Parameters(This,ppvObject)    \
  1289.     (This)->lpVtbl -> get_Parameters(This,ppvObject)
  1290. #define _Command_put_CommandType(This,lCmdType)    \
  1291.     (This)->lpVtbl -> put_CommandType(This,lCmdType)
  1292. #define _Command_get_CommandType(This,plCmdType)    \
  1293.     (This)->lpVtbl -> get_CommandType(This,plCmdType)
  1294. #endif /* COBJMACROS */
  1295. #endif     /* C style interface */
  1296. /* [propget] */ HRESULT STDMETHODCALLTYPE _Command_get_ActiveConnection_Proxy( 
  1297.     _ADOCommand __RPC_FAR * This,
  1298.     /* [retval][out] */ _ADOConnection __RPC_FAR *__RPC_FAR *ppvObject);
  1299. void __RPC_STUB _Command_get_ActiveConnection_Stub(
  1300.     IRpcStubBuffer *This,
  1301.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1302.     PRPC_MESSAGE _pRpcMessage,
  1303.     DWORD *_pdwStubPhase);
  1304. /* [propputref] */ HRESULT STDMETHODCALLTYPE _Command_putref_ActiveConnection_Proxy( 
  1305.     _ADOCommand __RPC_FAR * This,
  1306.     /* [in] */ _ADOConnection __RPC_FAR *pCon);
  1307. void __RPC_STUB _Command_putref_ActiveConnection_Stub(
  1308.     IRpcStubBuffer *This,
  1309.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1310.     PRPC_MESSAGE _pRpcMessage,
  1311.     DWORD *_pdwStubPhase);
  1312. /* [propput] */ HRESULT STDMETHODCALLTYPE _Command_put_ActiveConnection_Proxy( 
  1313.     _ADOCommand __RPC_FAR * This,
  1314.     /* [in] */ BSTR bstrConn);
  1315. void __RPC_STUB _Command_put_ActiveConnection_Stub(
  1316.     IRpcStubBuffer *This,
  1317.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1318.     PRPC_MESSAGE _pRpcMessage,
  1319.     DWORD *_pdwStubPhase);
  1320. /* [propget] */ HRESULT STDMETHODCALLTYPE _Command_get_CommandText_Proxy( 
  1321.     _ADOCommand __RPC_FAR * This,
  1322.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1323. void __RPC_STUB _Command_get_CommandText_Stub(
  1324.     IRpcStubBuffer *This,
  1325.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1326.     PRPC_MESSAGE _pRpcMessage,
  1327.     DWORD *_pdwStubPhase);
  1328. /* [propput] */ HRESULT STDMETHODCALLTYPE _Command_put_CommandText_Proxy( 
  1329.     _ADOCommand __RPC_FAR * This,
  1330.     /* [in] */ BSTR bstr);
  1331. void __RPC_STUB _Command_put_CommandText_Stub(
  1332.     IRpcStubBuffer *This,
  1333.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1334.     PRPC_MESSAGE _pRpcMessage,
  1335.     DWORD *_pdwStubPhase);
  1336. /* [propget] */ HRESULT STDMETHODCALLTYPE _Command_get_CommandTimeout_Proxy( 
  1337.     _ADOCommand __RPC_FAR * This,
  1338.     /* [retval][out] */ LONG __RPC_FAR *pl);
  1339. void __RPC_STUB _Command_get_CommandTimeout_Stub(
  1340.     IRpcStubBuffer *This,
  1341.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1342.     PRPC_MESSAGE _pRpcMessage,
  1343.     DWORD *_pdwStubPhase);
  1344. /* [propput] */ HRESULT STDMETHODCALLTYPE _Command_put_CommandTimeout_Proxy( 
  1345.     _ADOCommand __RPC_FAR * This,
  1346.     /* [in] */ LONG Timeout);
  1347. void __RPC_STUB _Command_put_CommandTimeout_Stub(
  1348.     IRpcStubBuffer *This,
  1349.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1350.     PRPC_MESSAGE _pRpcMessage,
  1351.     DWORD *_pdwStubPhase);
  1352. /* [propget] */ HRESULT STDMETHODCALLTYPE _Command_get_Prepared_Proxy( 
  1353.     _ADOCommand __RPC_FAR * This,
  1354.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pfPrepared);
  1355. void __RPC_STUB _Command_get_Prepared_Stub(
  1356.     IRpcStubBuffer *This,
  1357.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1358.     PRPC_MESSAGE _pRpcMessage,
  1359.     DWORD *_pdwStubPhase);
  1360. /* [propput] */ HRESULT STDMETHODCALLTYPE _Command_put_Prepared_Proxy( 
  1361.     _ADOCommand __RPC_FAR * This,
  1362.     /* [in] */ VARIANT_BOOL fPrepared);
  1363. void __RPC_STUB _Command_put_Prepared_Stub(
  1364.     IRpcStubBuffer *This,
  1365.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1366.     PRPC_MESSAGE _pRpcMessage,
  1367.     DWORD *_pdwStubPhase);
  1368. /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE _Command_Execute_Proxy( 
  1369.     _ADOCommand __RPC_FAR * This,
  1370.     /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  1371.     /* [optional][in] */ VARIANT __RPC_FAR *Parameters,
  1372.     /* [defaultvalue][in] */ long Options,
  1373.     /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppirs);
  1374. void __RPC_STUB _Command_Execute_Stub(
  1375.     IRpcStubBuffer *This,
  1376.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1377.     PRPC_MESSAGE _pRpcMessage,
  1378.     DWORD *_pdwStubPhase);
  1379. HRESULT STDMETHODCALLTYPE _Command_CreateParameter_Proxy( 
  1380.     _ADOCommand __RPC_FAR * This,
  1381.     /* [defaultvalue][in] */ BSTR Name,
  1382.     /* [defaultvalue][in] */ DataTypeEnum Type,
  1383.     /* [defaultvalue][in] */ ParameterDirectionEnum Direction,
  1384.     /* [defaultvalue][in] */ long Size,
  1385.     /* [optional][in] */ VARIANT Value,
  1386.     /* [retval][out] */ _ADOParameter __RPC_FAR *__RPC_FAR *ppiprm);
  1387. void __RPC_STUB _Command_CreateParameter_Stub(
  1388.     IRpcStubBuffer *This,
  1389.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1390.     PRPC_MESSAGE _pRpcMessage,
  1391.     DWORD *_pdwStubPhase);
  1392. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Command_get_Parameters_Proxy( 
  1393.     _ADOCommand __RPC_FAR * This,
  1394.     /* [retval][out] */ ADOParameters __RPC_FAR *__RPC_FAR *ppvObject);
  1395. void __RPC_STUB _Command_get_Parameters_Stub(
  1396.     IRpcStubBuffer *This,
  1397.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1398.     PRPC_MESSAGE _pRpcMessage,
  1399.     DWORD *_pdwStubPhase);
  1400. /* [propput] */ HRESULT STDMETHODCALLTYPE _Command_put_CommandType_Proxy( 
  1401.     _ADOCommand __RPC_FAR * This,
  1402.     /* [in] */ CommandTypeEnum lCmdType);
  1403. void __RPC_STUB _Command_put_CommandType_Stub(
  1404.     IRpcStubBuffer *This,
  1405.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1406.     PRPC_MESSAGE _pRpcMessage,
  1407.     DWORD *_pdwStubPhase);
  1408. /* [propget] */ HRESULT STDMETHODCALLTYPE _Command_get_CommandType_Proxy( 
  1409.     _ADOCommand __RPC_FAR * This,
  1410.     /* [retval][out] */ CommandTypeEnum __RPC_FAR *plCmdType);
  1411. void __RPC_STUB _Command_get_CommandType_Stub(
  1412.     IRpcStubBuffer *This,
  1413.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1414.     PRPC_MESSAGE _pRpcMessage,
  1415.     DWORD *_pdwStubPhase);
  1416. #endif     /* ___Command_INTERFACE_DEFINED__ */
  1417. #ifndef ___Connection_INTERFACE_DEFINED__
  1418. #define ___Connection_INTERFACE_DEFINED__
  1419. /****************************************
  1420.  * Generated header for interface: _Connection
  1421.  * at Thu Dec 05 17:09:47 1996
  1422.  * using MIDL 3.00.30
  1423.  ****************************************/
  1424. /* [object][helpstring][helpcontext][uuid][nonextensible][dual] */ 
  1425. EXTERN_C const IID IID__Connection;
  1426. #if defined(__cplusplus) && !defined(CINTERFACE)
  1427.     
  1428.     interface _ADOConnection : public _ADO
  1429.     {
  1430.     public:
  1431.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_ConnectionString( 
  1432.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  1433.         
  1434.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_ConnectionString( 
  1435.             /* [in] */ BSTR bstr) = 0;
  1436.         
  1437.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_CommandTimeout( 
  1438.             /* [retval][out] */ LONG __RPC_FAR *plTimeout) = 0;
  1439.         
  1440.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_CommandTimeout( 
  1441.             /* [in] */ LONG lTimeout) = 0;
  1442.         
  1443.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConnectionTimeout( 
  1444.             /* [retval][out] */ LONG __RPC_FAR *plTimeout) = 0;
  1445.         
  1446.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_ConnectionTimeout( 
  1447.             /* [in] */ LONG lTimeout) = 0;
  1448.         
  1449.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Version( 
  1450.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  1451.         
  1452.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Close( void) = 0;
  1453.         
  1454.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Execute( 
  1455.             /* [in] */ BSTR CommandText,
  1456.             /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  1457.             /* [defaultvalue][in] */ long Options,
  1458.             /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppiRset) = 0;
  1459.         
  1460.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE BeginTrans( 
  1461.             /* [retval][out] */ long __RPC_FAR *TransactionLevel) = 0;
  1462.         
  1463.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CommitTrans( void) = 0;
  1464.         
  1465.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE RollbackTrans( void) = 0;
  1466.         
  1467.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Open( 
  1468.             /* [defaultvalue][in] */ BSTR ConnectionString,
  1469.             /* [defaultvalue][in] */ BSTR UserID,
  1470.             /* [defaultvalue][in] */ BSTR Password) = 0;
  1471.         
  1472.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Errors( 
  1473.             /* [retval][out] */ ADOErrors __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  1474.         
  1475.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_DefaultDatabase( 
  1476.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  1477.         
  1478.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_DefaultDatabase( 
  1479.             /* [in] */ BSTR bstr) = 0;
  1480.         
  1481.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsolationLevel( 
  1482.             /* [retval][out] */ IsolationLevelEnum __RPC_FAR *Level) = 0;
  1483.         
  1484.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_IsolationLevel( 
  1485.             /* [in] */ IsolationLevelEnum Level) = 0;
  1486.         
  1487.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  1488.             /* [retval][out] */ long __RPC_FAR *plAttr) = 0;
  1489.         
  1490.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Attributes( 
  1491.             /* [in] */ long lAttr) = 0;
  1492.         
  1493.         virtual /* [hidden][propget][id] */ HRESULT STDMETHODCALLTYPE get_CursorLocation( 
  1494.             /* [retval][out] */ CursorLocationEnum __RPC_FAR *plCursorLoc) = 0;
  1495.         
  1496.         virtual /* [hidden][propput][id] */ HRESULT STDMETHODCALLTYPE put_CursorLocation( 
  1497.             /* [in] */ CursorLocationEnum lCursorLoc) = 0;
  1498.         
  1499.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Mode( 
  1500.             /* [retval][out] */ ConnectModeEnum __RPC_FAR *plMode) = 0;
  1501.         
  1502.         virtual /* [helpstring][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Mode( 
  1503.             /* [in] */ ConnectModeEnum lMode) = 0;
  1504.         
  1505.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Provider( 
  1506.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  1507.         
  1508.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Provider( 
  1509.             /* [in] */ BSTR Provider) = 0;
  1510.         
  1511.     };
  1512.     
  1513. #else     /* C style interface */
  1514.     typedef struct _ConnectionVtbl
  1515.     {
  1516.         BEGIN_INTERFACE
  1517.         
  1518.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1519.             _ADOConnection __RPC_FAR * This,
  1520.             /* [in] */ REFIID riid,
  1521.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1522.         
  1523.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1524.             _ADOConnection __RPC_FAR * This);
  1525.         
  1526.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1527.             _ADOConnection __RPC_FAR * This);
  1528.         
  1529.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1530.             _ADOConnection __RPC_FAR * This,
  1531.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1532.         
  1533.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1534.             _ADOConnection __RPC_FAR * This,
  1535.             /* [in] */ UINT itinfo,
  1536.             /* [in] */ LCID lcid,
  1537.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  1538.         
  1539.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1540.             _ADOConnection __RPC_FAR * This,
  1541.             /* [in] */ REFIID riid,
  1542.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1543.             /* [in] */ UINT cNames,
  1544.             /* [in] */ LCID lcid,
  1545.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  1546.         
  1547.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1548.             _ADOConnection __RPC_FAR * This,
  1549.             /* [in] */ DISPID dispidMember,
  1550.             /* [in] */ REFIID riid,
  1551.             /* [in] */ LCID lcid,
  1552.             /* [in] */ WORD wFlags,
  1553.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  1554.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  1555.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  1556.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1557.         
  1558.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  1559.             _ADOConnection __RPC_FAR * This,
  1560.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  1561.         
  1562.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ConnectionString )( 
  1563.             _ADOConnection __RPC_FAR * This,
  1564.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1565.         
  1566.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ConnectionString )( 
  1567.             _ADOConnection __RPC_FAR * This,
  1568.             /* [in] */ BSTR bstr);
  1569.         
  1570.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CommandTimeout )( 
  1571.             _ADOConnection __RPC_FAR * This,
  1572.             /* [retval][out] */ LONG __RPC_FAR *plTimeout);
  1573.         
  1574.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CommandTimeout )( 
  1575.             _ADOConnection __RPC_FAR * This,
  1576.             /* [in] */ LONG lTimeout);
  1577.         
  1578.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ConnectionTimeout )( 
  1579.             _ADOConnection __RPC_FAR * This,
  1580.             /* [retval][out] */ LONG __RPC_FAR *plTimeout);
  1581.         
  1582.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ConnectionTimeout )( 
  1583.             _ADOConnection __RPC_FAR * This,
  1584.             /* [in] */ LONG lTimeout);
  1585.         
  1586.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Version )( 
  1587.             _ADOConnection __RPC_FAR * This,
  1588.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1589.         
  1590.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
  1591.             _ADOConnection __RPC_FAR * This);
  1592.         
  1593.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
  1594.             _ADOConnection __RPC_FAR * This,
  1595.             /* [in] */ BSTR CommandText,
  1596.             /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  1597.             /* [defaultvalue][in] */ long Options,
  1598.             /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppiRset);
  1599.         
  1600.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *BeginTrans )( 
  1601.             _ADOConnection __RPC_FAR * This,
  1602.             /* [retval][out] */ long __RPC_FAR *TransactionLevel);
  1603.         
  1604.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CommitTrans )( 
  1605.             _ADOConnection __RPC_FAR * This);
  1606.         
  1607.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RollbackTrans )( 
  1608.             _ADOConnection __RPC_FAR * This);
  1609.         
  1610.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )( 
  1611.             _ADOConnection __RPC_FAR * This,
  1612.             /* [defaultvalue][in] */ BSTR ConnectionString,
  1613.             /* [defaultvalue][in] */ BSTR UserID,
  1614.             /* [defaultvalue][in] */ BSTR Password);
  1615.         
  1616.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Errors )( 
  1617.             _ADOConnection __RPC_FAR * This,
  1618.             /* [retval][out] */ ADOErrors __RPC_FAR *__RPC_FAR *ppvObject);
  1619.         
  1620.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefaultDatabase )( 
  1621.             _ADOConnection __RPC_FAR * This,
  1622.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1623.         
  1624.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DefaultDatabase )( 
  1625.             _ADOConnection __RPC_FAR * This,
  1626.             /* [in] */ BSTR bstr);
  1627.         
  1628.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsolationLevel )( 
  1629.             _ADOConnection __RPC_FAR * This,
  1630.             /* [retval][out] */ IsolationLevelEnum __RPC_FAR *Level);
  1631.         
  1632.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IsolationLevel )( 
  1633.             _ADOConnection __RPC_FAR * This,
  1634.             /* [in] */ IsolationLevelEnum Level);
  1635.         
  1636.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attributes )( 
  1637.             _ADOConnection __RPC_FAR * This,
  1638.             /* [retval][out] */ long __RPC_FAR *plAttr);
  1639.         
  1640.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Attributes )( 
  1641.             _ADOConnection __RPC_FAR * This,
  1642.             /* [in] */ long lAttr);
  1643.         
  1644.         /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CursorLocation )( 
  1645.             _ADOConnection __RPC_FAR * This,
  1646.             /* [retval][out] */ CursorLocationEnum __RPC_FAR *plCursorLoc);
  1647.         
  1648.         /* [hidden][propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CursorLocation )( 
  1649.             _ADOConnection __RPC_FAR * This,
  1650.             /* [in] */ CursorLocationEnum lCursorLoc);
  1651.         
  1652.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Mode )( 
  1653.             _ADOConnection __RPC_FAR * This,
  1654.             /* [retval][out] */ ConnectModeEnum __RPC_FAR *plMode);
  1655.         
  1656.         /* [helpstring][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Mode )( 
  1657.             _ADOConnection __RPC_FAR * This,
  1658.             /* [in] */ ConnectModeEnum lMode);
  1659.         
  1660.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Provider )( 
  1661.             _ADOConnection __RPC_FAR * This,
  1662.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1663.         
  1664.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Provider )( 
  1665.             _ADOConnection __RPC_FAR * This,
  1666.             /* [in] */ BSTR Provider);
  1667.         
  1668.         END_INTERFACE
  1669.     } _ConnectionVtbl;
  1670.     interface _Connection
  1671.     {
  1672.         CONST_VTBL struct _ConnectionVtbl __RPC_FAR *lpVtbl;
  1673.     };
  1674.     
  1675. #ifdef COBJMACROS
  1676. #define _Connection_QueryInterface(This,riid,ppvObject)    \
  1677.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1678. #define _Connection_AddRef(This)    \
  1679.     (This)->lpVtbl -> AddRef(This)
  1680. #define _Connection_Release(This)    \
  1681.     (This)->lpVtbl -> Release(This)
  1682. #define _Connection_GetTypeInfoCount(This,pctinfo)    \
  1683.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1684. #define _Connection_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  1685.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  1686. #define _Connection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  1687.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  1688. #define _Connection_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  1689.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  1690. #define _Connection_get_Properties(This,ppvObject)    \
  1691.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  1692. #define _Connection_get_ConnectionString(This,pbstr)    \
  1693.     (This)->lpVtbl -> get_ConnectionString(This,pbstr)
  1694. #define _Connection_put_ConnectionString(This,bstr)    \
  1695.     (This)->lpVtbl -> put_ConnectionString(This,bstr)
  1696. #define _Connection_get_CommandTimeout(This,plTimeout)    \
  1697.     (This)->lpVtbl -> get_CommandTimeout(This,plTimeout)
  1698. #define _Connection_put_CommandTimeout(This,lTimeout)    \
  1699.     (This)->lpVtbl -> put_CommandTimeout(This,lTimeout)
  1700. #define _Connection_get_ConnectionTimeout(This,plTimeout)    \
  1701.     (This)->lpVtbl -> get_ConnectionTimeout(This,plTimeout)
  1702. #define _Connection_put_ConnectionTimeout(This,lTimeout)    \
  1703.     (This)->lpVtbl -> put_ConnectionTimeout(This,lTimeout)
  1704. #define _Connection_get_Version(This,pbstr)    \
  1705.     (This)->lpVtbl -> get_Version(This,pbstr)
  1706. #define _Connection_Close(This)    \
  1707.     (This)->lpVtbl -> Close(This)
  1708. #define _Connection_Execute(This,CommandText,RecordsAffected,Options,ppiRset)    \
  1709.     (This)->lpVtbl -> Execute(This,CommandText,RecordsAffected,Options,ppiRset)
  1710. #define _Connection_BeginTrans(This,TransactionLevel)    \
  1711.     (This)->lpVtbl -> BeginTrans(This,TransactionLevel)
  1712. #define _Connection_CommitTrans(This)    \
  1713.     (This)->lpVtbl -> CommitTrans(This)
  1714. #define _Connection_RollbackTrans(This)    \
  1715.     (This)->lpVtbl -> RollbackTrans(This)
  1716. #define _Connection_Open(This,ConnectionString,UserID,Password)    \
  1717.     (This)->lpVtbl -> Open(This,ConnectionString,UserID,Password)
  1718. #define _Connection_get_Errors(This,ppvObject)    \
  1719.     (This)->lpVtbl -> get_Errors(This,ppvObject)
  1720. #define _Connection_get_DefaultDatabase(This,pbstr)    \
  1721.     (This)->lpVtbl -> get_DefaultDatabase(This,pbstr)
  1722. #define _Connection_put_DefaultDatabase(This,bstr)    \
  1723.     (This)->lpVtbl -> put_DefaultDatabase(This,bstr)
  1724. #define _Connection_get_IsolationLevel(This,Level)    \
  1725.     (This)->lpVtbl -> get_IsolationLevel(This,Level)
  1726. #define _Connection_put_IsolationLevel(This,Level)    \
  1727.     (This)->lpVtbl -> put_IsolationLevel(This,Level)
  1728. #define _Connection_get_Attributes(This,plAttr)    \
  1729.     (This)->lpVtbl -> get_Attributes(This,plAttr)
  1730. #define _Connection_put_Attributes(This,lAttr)    \
  1731.     (This)->lpVtbl -> put_Attributes(This,lAttr)
  1732. #define _Connection_get_CursorLocation(This,plCursorLoc)    \
  1733.     (This)->lpVtbl -> get_CursorLocation(This,plCursorLoc)
  1734. #define _Connection_put_CursorLocation(This,lCursorLoc)    \
  1735.     (This)->lpVtbl -> put_CursorLocation(This,lCursorLoc)
  1736. #define _Connection_get_Mode(This,plMode)    \
  1737.     (This)->lpVtbl -> get_Mode(This,plMode)
  1738. #define _Connection_put_Mode(This,lMode)    \
  1739.     (This)->lpVtbl -> put_Mode(This,lMode)
  1740. #define _Connection_get_Provider(This,pbstr)    \
  1741.     (This)->lpVtbl -> get_Provider(This,pbstr)
  1742. #define _Connection_put_Provider(This,Provider)    \
  1743.     (This)->lpVtbl -> put_Provider(This,Provider)
  1744. #endif /* COBJMACROS */
  1745. #endif     /* C style interface */
  1746. /* [id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_ConnectionString_Proxy( 
  1747.     _ADOConnection __RPC_FAR * This,
  1748.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1749. void __RPC_STUB _Connection_get_ConnectionString_Stub(
  1750.     IRpcStubBuffer *This,
  1751.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1752.     PRPC_MESSAGE _pRpcMessage,
  1753.     DWORD *_pdwStubPhase);
  1754. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Connection_put_ConnectionString_Proxy( 
  1755.     _ADOConnection __RPC_FAR * This,
  1756.     /* [in] */ BSTR bstr);
  1757. void __RPC_STUB _Connection_put_ConnectionString_Stub(
  1758.     IRpcStubBuffer *This,
  1759.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1760.     PRPC_MESSAGE _pRpcMessage,
  1761.     DWORD *_pdwStubPhase);
  1762. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_CommandTimeout_Proxy( 
  1763.     _ADOConnection __RPC_FAR * This,
  1764.     /* [retval][out] */ LONG __RPC_FAR *plTimeout);
  1765. void __RPC_STUB _Connection_get_CommandTimeout_Stub(
  1766.     IRpcStubBuffer *This,
  1767.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1768.     PRPC_MESSAGE _pRpcMessage,
  1769.     DWORD *_pdwStubPhase);
  1770. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Connection_put_CommandTimeout_Proxy( 
  1771.     _ADOConnection __RPC_FAR * This,
  1772.     /* [in] */ LONG lTimeout);
  1773. void __RPC_STUB _Connection_put_CommandTimeout_Stub(
  1774.     IRpcStubBuffer *This,
  1775.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1776.     PRPC_MESSAGE _pRpcMessage,
  1777.     DWORD *_pdwStubPhase);
  1778. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_ConnectionTimeout_Proxy( 
  1779.     _ADOConnection __RPC_FAR * This,
  1780.     /* [retval][out] */ LONG __RPC_FAR *plTimeout);
  1781. void __RPC_STUB _Connection_get_ConnectionTimeout_Stub(
  1782.     IRpcStubBuffer *This,
  1783.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1784.     PRPC_MESSAGE _pRpcMessage,
  1785.     DWORD *_pdwStubPhase);
  1786. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Connection_put_ConnectionTimeout_Proxy( 
  1787.     _ADOConnection __RPC_FAR * This,
  1788.     /* [in] */ LONG lTimeout);
  1789. void __RPC_STUB _Connection_put_ConnectionTimeout_Stub(
  1790.     IRpcStubBuffer *This,
  1791.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1792.     PRPC_MESSAGE _pRpcMessage,
  1793.     DWORD *_pdwStubPhase);
  1794. /* [propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_Version_Proxy( 
  1795.     _ADOConnection __RPC_FAR * This,
  1796.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1797. void __RPC_STUB _Connection_get_Version_Stub(
  1798.     IRpcStubBuffer *This,
  1799.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1800.     PRPC_MESSAGE _pRpcMessage,
  1801.     DWORD *_pdwStubPhase);
  1802. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Connection_Close_Proxy( 
  1803.     _ADOConnection __RPC_FAR * This);
  1804. void __RPC_STUB _Connection_Close_Stub(
  1805.     IRpcStubBuffer *This,
  1806.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1807.     PRPC_MESSAGE _pRpcMessage,
  1808.     DWORD *_pdwStubPhase);
  1809. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Connection_Execute_Proxy( 
  1810.     _ADOConnection __RPC_FAR * This,
  1811.     /* [in] */ BSTR CommandText,
  1812.     /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  1813.     /* [defaultvalue][in] */ long Options,
  1814.     /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppiRset);
  1815. void __RPC_STUB _Connection_Execute_Stub(
  1816.     IRpcStubBuffer *This,
  1817.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1818.     PRPC_MESSAGE _pRpcMessage,
  1819.     DWORD *_pdwStubPhase);
  1820. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Connection_BeginTrans_Proxy( 
  1821.     _ADOConnection __RPC_FAR * This,
  1822.     /* [retval][out] */ long __RPC_FAR *TransactionLevel);
  1823. void __RPC_STUB _Connection_BeginTrans_Stub(
  1824.     IRpcStubBuffer *This,
  1825.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1826.     PRPC_MESSAGE _pRpcMessage,
  1827.     DWORD *_pdwStubPhase);
  1828. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Connection_CommitTrans_Proxy( 
  1829.     _ADOConnection __RPC_FAR * This);
  1830. void __RPC_STUB _Connection_CommitTrans_Stub(
  1831.     IRpcStubBuffer *This,
  1832.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1833.     PRPC_MESSAGE _pRpcMessage,
  1834.     DWORD *_pdwStubPhase);
  1835. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Connection_RollbackTrans_Proxy( 
  1836.     _ADOConnection __RPC_FAR * This);
  1837. void __RPC_STUB _Connection_RollbackTrans_Stub(
  1838.     IRpcStubBuffer *This,
  1839.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1840.     PRPC_MESSAGE _pRpcMessage,
  1841.     DWORD *_pdwStubPhase);
  1842. /* [id] */ HRESULT STDMETHODCALLTYPE _Connection_Open_Proxy( 
  1843.     _ADOConnection __RPC_FAR * This,
  1844.     /* [defaultvalue][in] */ BSTR ConnectionString,
  1845.     /* [defaultvalue][in] */ BSTR UserID,
  1846.     /* [defaultvalue][in] */ BSTR Password);
  1847. void __RPC_STUB _Connection_Open_Stub(
  1848.     IRpcStubBuffer *This,
  1849.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1850.     PRPC_MESSAGE _pRpcMessage,
  1851.     DWORD *_pdwStubPhase);
  1852. /* [id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_Errors_Proxy( 
  1853.     _ADOConnection __RPC_FAR * This,
  1854.     /* [retval][out] */ ADOErrors __RPC_FAR *__RPC_FAR *ppvObject);
  1855. void __RPC_STUB _Connection_get_Errors_Stub(
  1856.     IRpcStubBuffer *This,
  1857.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1858.     PRPC_MESSAGE _pRpcMessage,
  1859.     DWORD *_pdwStubPhase);
  1860. /* [id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_DefaultDatabase_Proxy( 
  1861.     _ADOConnection __RPC_FAR * This,
  1862.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1863. void __RPC_STUB _Connection_get_DefaultDatabase_Stub(
  1864.     IRpcStubBuffer *This,
  1865.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1866.     PRPC_MESSAGE _pRpcMessage,
  1867.     DWORD *_pdwStubPhase);
  1868. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Connection_put_DefaultDatabase_Proxy( 
  1869.     _ADOConnection __RPC_FAR * This,
  1870.     /* [in] */ BSTR bstr);
  1871. void __RPC_STUB _Connection_put_DefaultDatabase_Stub(
  1872.     IRpcStubBuffer *This,
  1873.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1874.     PRPC_MESSAGE _pRpcMessage,
  1875.     DWORD *_pdwStubPhase);
  1876. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_IsolationLevel_Proxy( 
  1877.     _ADOConnection __RPC_FAR * This,
  1878.     /* [retval][out] */ IsolationLevelEnum __RPC_FAR *Level);
  1879. void __RPC_STUB _Connection_get_IsolationLevel_Stub(
  1880.     IRpcStubBuffer *This,
  1881.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1882.     PRPC_MESSAGE _pRpcMessage,
  1883.     DWORD *_pdwStubPhase);
  1884. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Connection_put_IsolationLevel_Proxy( 
  1885.     _ADOConnection __RPC_FAR * This,
  1886.     /* [in] */ IsolationLevelEnum Level);
  1887. void __RPC_STUB _Connection_put_IsolationLevel_Stub(
  1888.     IRpcStubBuffer *This,
  1889.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1890.     PRPC_MESSAGE _pRpcMessage,
  1891.     DWORD *_pdwStubPhase);
  1892. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_Attributes_Proxy( 
  1893.     _ADOConnection __RPC_FAR * This,
  1894.     /* [retval][out] */ long __RPC_FAR *plAttr);
  1895. void __RPC_STUB _Connection_get_Attributes_Stub(
  1896.     IRpcStubBuffer *This,
  1897.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1898.     PRPC_MESSAGE _pRpcMessage,
  1899.     DWORD *_pdwStubPhase);
  1900. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Connection_put_Attributes_Proxy( 
  1901.     _ADOConnection __RPC_FAR * This,
  1902.     /* [in] */ long lAttr);
  1903. void __RPC_STUB _Connection_put_Attributes_Stub(
  1904.     IRpcStubBuffer *This,
  1905.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1906.     PRPC_MESSAGE _pRpcMessage,
  1907.     DWORD *_pdwStubPhase);
  1908. /* [hidden][propget][id] */ HRESULT STDMETHODCALLTYPE _Connection_get_CursorLocation_Proxy( 
  1909.     _ADOConnection __RPC_FAR * This,
  1910.     /* [retval][out] */ CursorLocationEnum __RPC_FAR *plCursorLoc);
  1911. void __RPC_STUB _Connection_get_CursorLocation_Stub(
  1912.     IRpcStubBuffer *This,
  1913.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1914.     PRPC_MESSAGE _pRpcMessage,
  1915.     DWORD *_pdwStubPhase);
  1916. /* [hidden][propput][id] */ HRESULT STDMETHODCALLTYPE _Connection_put_CursorLocation_Proxy( 
  1917.     _ADOConnection __RPC_FAR * This,
  1918.     /* [in] */ CursorLocationEnum lCursorLoc);
  1919. void __RPC_STUB _Connection_put_CursorLocation_Stub(
  1920.     IRpcStubBuffer *This,
  1921.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1922.     PRPC_MESSAGE _pRpcMessage,
  1923.     DWORD *_pdwStubPhase);
  1924. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_Mode_Proxy( 
  1925.     _ADOConnection __RPC_FAR * This,
  1926.     /* [retval][out] */ ConnectModeEnum __RPC_FAR *plMode);
  1927. void __RPC_STUB _Connection_get_Mode_Stub(
  1928.     IRpcStubBuffer *This,
  1929.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1930.     PRPC_MESSAGE _pRpcMessage,
  1931.     DWORD *_pdwStubPhase);
  1932. /* [helpstring][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE _Connection_put_Mode_Proxy( 
  1933.     _ADOConnection __RPC_FAR * This,
  1934.     /* [in] */ ConnectModeEnum lMode);
  1935. void __RPC_STUB _Connection_put_Mode_Stub(
  1936.     IRpcStubBuffer *This,
  1937.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1938.     PRPC_MESSAGE _pRpcMessage,
  1939.     DWORD *_pdwStubPhase);
  1940. /* [id][propget] */ HRESULT STDMETHODCALLTYPE _Connection_get_Provider_Proxy( 
  1941.     _ADOConnection __RPC_FAR * This,
  1942.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  1943. void __RPC_STUB _Connection_get_Provider_Stub(
  1944.     IRpcStubBuffer *This,
  1945.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1946.     PRPC_MESSAGE _pRpcMessage,
  1947.     DWORD *_pdwStubPhase);
  1948. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Connection_put_Provider_Proxy( 
  1949.     _ADOConnection __RPC_FAR * This,
  1950.     /* [in] */ BSTR Provider);
  1951. void __RPC_STUB _Connection_put_Provider_Stub(
  1952.     IRpcStubBuffer *This,
  1953.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1954.     PRPC_MESSAGE _pRpcMessage,
  1955.     DWORD *_pdwStubPhase);
  1956. #endif     /* ___Connection_INTERFACE_DEFINED__ */
  1957. #ifndef __ICADOConnection_INTERFACE_DEFINED__
  1958. #define __ICADOConnection_INTERFACE_DEFINED__
  1959. /****************************************
  1960.  * Generated header for interface: ICADOConnection
  1961.  * at Thu Dec 05 17:09:47 1996
  1962.  * using MIDL 3.00.30
  1963.  ****************************************/
  1964. /* [object][uuid][restricted] */ 
  1965. EXTERN_C const IID IID_ICADOConnection;
  1966. #if defined(__cplusplus) && !defined(CINTERFACE)
  1967.     
  1968.     interface ICADOADOConnection : public IUnknown
  1969.     {
  1970.     public:
  1971.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DSO( 
  1972.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDSO) = 0;
  1973.         
  1974.     };
  1975.     
  1976. #else     /* C style interface */
  1977.     typedef struct ICADOConnectionVtbl
  1978.     {
  1979.         BEGIN_INTERFACE
  1980.         
  1981.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1982.             ICADOADOConnection __RPC_FAR * This,
  1983.             /* [in] */ REFIID riid,
  1984.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1985.         
  1986.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1987.             ICADOADOConnection __RPC_FAR * This);
  1988.         
  1989.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1990.             ICADOADOConnection __RPC_FAR * This);
  1991.         
  1992.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DSO )( 
  1993.             ICADOADOConnection __RPC_FAR * This,
  1994.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDSO);
  1995.         
  1996.         END_INTERFACE
  1997.     } ICADOConnectionVtbl;
  1998.     interface ICADOConnection
  1999.     {
  2000.         CONST_VTBL struct ICADOConnectionVtbl __RPC_FAR *lpVtbl;
  2001.     };
  2002.     
  2003. #ifdef COBJMACROS
  2004. #define ICADOConnection_QueryInterface(This,riid,ppvObject)    \
  2005.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2006. #define ICADOConnection_AddRef(This)    \
  2007.     (This)->lpVtbl -> AddRef(This)
  2008. #define ICADOConnection_Release(This)    \
  2009.     (This)->lpVtbl -> Release(This)
  2010. #define ICADOConnection_get_DSO(This,ppDSO)    \
  2011.     (This)->lpVtbl -> get_DSO(This,ppDSO)
  2012. #endif /* COBJMACROS */
  2013. #endif     /* C style interface */
  2014. /* [propget] */ HRESULT STDMETHODCALLTYPE ICADOConnection_get_DSO_Proxy( 
  2015.     ICADOADOConnection __RPC_FAR * This,
  2016.     /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDSO);
  2017. void __RPC_STUB ICADOConnection_get_DSO_Stub(
  2018.     IRpcStubBuffer *This,
  2019.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2020.     PRPC_MESSAGE _pRpcMessage,
  2021.     DWORD *_pdwStubPhase);
  2022. #endif     /* __ICADOConnection_INTERFACE_DEFINED__ */
  2023. #ifdef __cplusplus
  2024. EXTERN_C const CLSID CLSID_Connection;
  2025. #endif
  2026. #ifdef __cplusplus
  2027. EXTERN_C const CLSID CLSID_Command;
  2028. #endif
  2029. #ifndef ___Recordset_INTERFACE_DEFINED__
  2030. #define ___Recordset_INTERFACE_DEFINED__
  2031. /****************************************
  2032.  * Generated header for interface: _Recordset
  2033.  * at Thu Dec 05 17:09:47 1996
  2034.  * using MIDL 3.00.30
  2035.  ****************************************/
  2036. /* [object][helpstring][helpcontext][uuid][nonextensible][dual] */ 
  2037. EXTERN_C const IID IID__Recordset;
  2038. #if defined(__cplusplus) && !defined(CINTERFACE)
  2039.     
  2040.     interface _ADORecordset : public _ADO
  2041.     {
  2042.     public:
  2043.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_AbsolutePosition( 
  2044.             /* [retval][out] */ PositionEnum __RPC_FAR *pl) = 0;
  2045.         
  2046.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_AbsolutePosition( 
  2047.             /* [in] */ PositionEnum Position) = 0;
  2048.         
  2049.         virtual /* [propputref][id] */ HRESULT STDMETHODCALLTYPE putref_ActiveConnection( 
  2050.             /* [in] */ IDispatch __RPC_FAR *pconn) = 0;
  2051.         
  2052.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ActiveConnection( 
  2053.             /* [in] */ BSTR bstrConn) = 0;
  2054.         
  2055.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ActiveConnection( 
  2056.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppConn) = 0;
  2057.         
  2058.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_BOF( 
  2059.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb) = 0;
  2060.         
  2061.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Bookmark( 
  2062.             /* [retval][out] */ VARIANT __RPC_FAR *pvBookmark) = 0;
  2063.         
  2064.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Bookmark( 
  2065.             /* [in] */ VARIANT vBookmark) = 0;
  2066.         
  2067.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_CacheSize( 
  2068.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  2069.         
  2070.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_CacheSize( 
  2071.             /* [in] */ long CacheSize) = 0;
  2072.         
  2073.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CursorType( 
  2074.             /* [retval][out] */ CursorTypeEnum __RPC_FAR *plCursorType) = 0;
  2075.         
  2076.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_CursorType( 
  2077.             /* [in] */ CursorTypeEnum lCursorType) = 0;
  2078.         
  2079.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_EOF( 
  2080.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb) = 0;
  2081.         
  2082.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Fields( 
  2083.             /* [retval][out] */ ADOFields __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  2084.         
  2085.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_LockType( 
  2086.             /* [retval][out] */ LockTypeEnum __RPC_FAR *plLockType) = 0;
  2087.         
  2088.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_LockType( 
  2089.             /* [in] */ LockTypeEnum lLockType) = 0;
  2090.         
  2091.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MaxRecords( 
  2092.             /* [retval][out] */ long __RPC_FAR *plMaxRecords) = 0;
  2093.         
  2094.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MaxRecords( 
  2095.             /* [in] */ long lMaxRecords) = 0;
  2096.         
  2097.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_RecordCount( 
  2098.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  2099.         
  2100.         virtual /* [propputref][id] */ HRESULT STDMETHODCALLTYPE putref_Source( 
  2101.             /* [in] */ IDispatch __RPC_FAR *pcmd) = 0;
  2102.         
  2103.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Source( 
  2104.             /* [in] */ BSTR bstrConn) = 0;
  2105.         
  2106.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Source( 
  2107.             /* [retval][out] */ VARIANT __RPC_FAR *pvSource) = 0;
  2108.         
  2109.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE AddNew( 
  2110.             /* [optional][in] */ VARIANT FieldList,
  2111.             /* [optional][in] */ VARIANT Values) = 0;
  2112.         
  2113.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE CancelUpdate( void) = 0;
  2114.         
  2115.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Close( void) = 0;
  2116.         
  2117.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Delete( 
  2118.             /* [defaultvalue][in] */ AffectEnum AffectRecords) = 0;
  2119.         
  2120.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE GetRows( 
  2121.             /* [defaultvalue][in] */ long Rows,
  2122.             /* [optional][in] */ VARIANT Start,
  2123.             /* [optional][in] */ VARIANT Fields,
  2124.             /* [retval][out] */ VARIANT __RPC_FAR *pvar) = 0;
  2125.         
  2126.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Move( 
  2127.             /* [in] */ long NumRecords,
  2128.             /* [optional][in] */ VARIANT Start) = 0;
  2129.         
  2130.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE MoveNext( void) = 0;
  2131.         
  2132.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE MovePrevious( void) = 0;
  2133.         
  2134.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE MoveFirst( void) = 0;
  2135.         
  2136.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE MoveLast( void) = 0;
  2137.         
  2138.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Open( 
  2139.             /* [optional][in] */ VARIANT Source,
  2140.             /* [optional][in] */ VARIANT ActiveConnection,
  2141.             /* [defaultvalue][in] */ CursorTypeEnum CursorType,
  2142.             /* [defaultvalue][in] */ LockTypeEnum LockType,
  2143.             /* [defaultvalue][in] */ LONG Options) = 0;
  2144.         
  2145.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Requery( void) = 0;
  2146.         
  2147.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Resync( 
  2148.             /* [defaultvalue][in] */ AffectEnum AffectRecords) = 0;
  2149.         
  2150.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Update( 
  2151.             /* [optional][in] */ VARIANT Fields,
  2152.             /* [optional][in] */ VARIANT Values) = 0;
  2153.         
  2154.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AbsolutePage( 
  2155.             /* [retval][out] */ PositionEnum __RPC_FAR *pl) = 0;
  2156.         
  2157.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_AbsolutePage( 
  2158.             /* [in] */ PositionEnum Page) = 0;
  2159.         
  2160.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EditMode( 
  2161.             /* [retval][out] */ EditModeEnum __RPC_FAR *pl) = 0;
  2162.         
  2163.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Filter( 
  2164.             /* [retval][out] */ VARIANT __RPC_FAR *Criteria) = 0;
  2165.         
  2166.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Filter( 
  2167.             /* [in] */ VARIANT Criteria) = 0;
  2168.         
  2169.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_PageCount( 
  2170.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  2171.         
  2172.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_PageSize( 
  2173.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  2174.         
  2175.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PageSize( 
  2176.             /* [in] */ long PageSize) = 0;
  2177.         
  2178.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Status( 
  2179.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  2180.         
  2181.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Clone( 
  2182.             /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  2183.         
  2184.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE UpdateBatch( 
  2185.             /* [defaultvalue][in] */ AffectEnum AffectRecords) = 0;
  2186.         
  2187.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE CancelBatch( 
  2188.             /* [defaultvalue][in] */ AffectEnum AffectRecords) = 0;
  2189.         
  2190.         virtual /* [hidden][propget][id] */ HRESULT STDMETHODCALLTYPE get_CursorLocation( 
  2191.             /* [retval][out] */ CursorLocationEnum __RPC_FAR *plCursorLoc) = 0;
  2192.         
  2193.         virtual /* [hidden][propput][id] */ HRESULT STDMETHODCALLTYPE put_CursorLocation( 
  2194.             /* [in] */ CursorLocationEnum lCursorLoc) = 0;
  2195.         
  2196.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE NextRecordset( 
  2197.             /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  2198.             /* [retval][out] */ _ADORecordset __RPC_FAR *__RPC_FAR *ppiRs) = 0;
  2199.         
  2200.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Supports( 
  2201.             /* [in] */ CursorOptionEnum CursorOptions,
  2202.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb) = 0;
  2203.         
  2204.         virtual /* [hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_Collect( 
  2205.             /* [in] */ VARIANT Index,
  2206.             /* [retval][out] */ VARIANT __RPC_FAR *pvar) = 0;
  2207.         
  2208.         virtual /* [hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_Collect( 
  2209.             /* [in] */ VARIANT Index,
  2210.             /* [in] */ VARIANT value) = 0;
  2211.         
  2212.     };
  2213.     
  2214. #else     /* C style interface */
  2215.     typedef struct _RecordsetVtbl
  2216.     {
  2217.         BEGIN_INTERFACE
  2218.         
  2219.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2220.             _ADORecordset __RPC_FAR * This,
  2221.             /* [in] */ REFIID riid,
  2222.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2223.         
  2224.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2225.             _ADORecordset __RPC_FAR * This);
  2226.         
  2227.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2228.             _ADORecordset __RPC_FAR * This);
  2229.         
  2230.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  2231.             _ADORecordset __RPC_FAR * This,
  2232.             /* [out] */ UINT __RPC_FAR *pctinfo);
  2233.         
  2234.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  2235.             _ADORecordset __RPC_FAR * This,
  2236.             /* [in] */ UINT itinfo,
  2237.             /* [in] */ LCID lcid,
  2238.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  2239.         
  2240.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  2241.             _ADORecordset __RPC_FAR * This,
  2242.             /* [in] */ REFIID riid,
  2243.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2244.             /* [in] */ UINT cNames,
  2245.             /* [in] */ LCID lcid,
  2246.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  2247.         
  2248.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  2249.             _ADORecordset __RPC_FAR * This,
  2250.             /* [in] */ DISPID dispidMember,
  2251.             /* [in] */ REFIID riid,
  2252.             /* [in] */ LCID lcid,
  2253.             /* [in] */ WORD wFlags,
  2254.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  2255.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  2256.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  2257.             /* [out] */ UINT __RPC_FAR *puArgErr);
  2258.         
  2259.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  2260.             _ADORecordset __RPC_FAR * This,
  2261.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  2262.         
  2263.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AbsolutePosition )( 
  2264.             _ADORecordset __RPC_FAR * This,
  2265.             /* [retval][out] */ PositionEnum __RPC_FAR *pl);
  2266.         
  2267.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AbsolutePosition )( 
  2268.             _ADORecordset __RPC_FAR * This,
  2269.             /* [in] */ PositionEnum Position);
  2270.         
  2271.         /* [propputref][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *putref_ActiveADOConnection )( 
  2272.             _ADORecordset __RPC_FAR * This,
  2273.             /* [in] */ IDispatch __RPC_FAR *pconn);
  2274.         
  2275.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ActiveConnection )( 
  2276.             _ADORecordset __RPC_FAR * This,
  2277.             /* [in] */ BSTR bstrConn);
  2278.         
  2279.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveConnection )( 
  2280.             _ADORecordset __RPC_FAR * This,
  2281.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppConn);
  2282.         
  2283.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BOF )( 
  2284.             _ADORecordset __RPC_FAR * This,
  2285.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb);
  2286.         
  2287.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Bookmark )( 
  2288.             _ADORecordset __RPC_FAR * This,
  2289.             /* [retval][out] */ VARIANT __RPC_FAR *pvBookmark);
  2290.         
  2291.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Bookmark )( 
  2292.             _ADORecordset __RPC_FAR * This,
  2293.             /* [in] */ VARIANT vBookmark);
  2294.         
  2295.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CacheSize )( 
  2296.             _ADORecordset __RPC_FAR * This,
  2297.             /* [retval][out] */ long __RPC_FAR *pl);
  2298.         
  2299.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CacheSize )( 
  2300.             _ADORecordset __RPC_FAR * This,
  2301.             /* [in] */ long CacheSize);
  2302.         
  2303.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CursorType )( 
  2304.             _ADORecordset __RPC_FAR * This,
  2305.             /* [retval][out] */ CursorTypeEnum __RPC_FAR *plCursorType);
  2306.         
  2307.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CursorType )( 
  2308.             _ADORecordset __RPC_FAR * This,
  2309.             /* [in] */ CursorTypeEnum lCursorType);
  2310.         
  2311.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EOF )( 
  2312.             _ADORecordset __RPC_FAR * This,
  2313.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb);
  2314.         
  2315.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Fields )( 
  2316.             _ADORecordset __RPC_FAR * This,
  2317.             /* [retval][out] */ ADOFields __RPC_FAR *__RPC_FAR *ppvObject);
  2318.         
  2319.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LockType )( 
  2320.             _ADORecordset __RPC_FAR * This,
  2321.             /* [retval][out] */ LockTypeEnum __RPC_FAR *plLockType);
  2322.         
  2323.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LockType )( 
  2324.             _ADORecordset __RPC_FAR * This,
  2325.             /* [in] */ LockTypeEnum lLockType);
  2326.         
  2327.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MaxRecords )( 
  2328.             _ADORecordset __RPC_FAR * This,
  2329.             /* [retval][out] */ long __RPC_FAR *plMaxRecords);
  2330.         
  2331.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MaxRecords )( 
  2332.             _ADORecordset __RPC_FAR * This,
  2333.             /* [in] */ long lMaxRecords);
  2334.         
  2335.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RecordCount )( 
  2336.             _ADORecordset __RPC_FAR * This,
  2337.             /* [retval][out] */ long __RPC_FAR *pl);
  2338.         
  2339.         /* [propputref][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *putref_Source )( 
  2340.             _ADORecordset __RPC_FAR * This,
  2341.             /* [in] */ IDispatch __RPC_FAR *pcmd);
  2342.         
  2343.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Source )( 
  2344.             _ADORecordset __RPC_FAR * This,
  2345.             /* [in] */ BSTR bstrConn);
  2346.         
  2347.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Source )( 
  2348.             _ADORecordset __RPC_FAR * This,
  2349.             /* [retval][out] */ VARIANT __RPC_FAR *pvSource);
  2350.         
  2351.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddNew )( 
  2352.             _ADORecordset __RPC_FAR * This,
  2353.             /* [optional][in] */ VARIANT FieldList,
  2354.             /* [optional][in] */ VARIANT Values);
  2355.         
  2356.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CancelUpdate )( 
  2357.             _ADORecordset __RPC_FAR * This);
  2358.         
  2359.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
  2360.             _ADORecordset __RPC_FAR * This);
  2361.         
  2362.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  2363.             _ADORecordset __RPC_FAR * This,
  2364.             /* [defaultvalue][in] */ AffectEnum AffectRecords);
  2365.         
  2366.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRows )( 
  2367.             _ADORecordset __RPC_FAR * This,
  2368.             /* [defaultvalue][in] */ long Rows,
  2369.             /* [optional][in] */ VARIANT Start,
  2370.             /* [optional][in] */ VARIANT Fields,
  2371.             /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  2372.         
  2373.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Move )( 
  2374.             _ADORecordset __RPC_FAR * This,
  2375.             /* [in] */ long NumRecords,
  2376.             /* [optional][in] */ VARIANT Start);
  2377.         
  2378.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MoveNext )( 
  2379.             _ADORecordset __RPC_FAR * This);
  2380.         
  2381.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MovePrevious )( 
  2382.             _ADORecordset __RPC_FAR * This);
  2383.         
  2384.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MoveFirst )( 
  2385.             _ADORecordset __RPC_FAR * This);
  2386.         
  2387.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MoveLast )( 
  2388.             _ADORecordset __RPC_FAR * This);
  2389.         
  2390.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )( 
  2391.             _ADORecordset __RPC_FAR * This,
  2392.             /* [optional][in] */ VARIANT Source,
  2393.             /* [optional][in] */ VARIANT ActiveConnection,
  2394.             /* [defaultvalue][in] */ CursorTypeEnum CursorType,
  2395.             /* [defaultvalue][in] */ LockTypeEnum LockType,
  2396.             /* [defaultvalue][in] */ LONG Options);
  2397.         
  2398.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Requery )( 
  2399.             _ADORecordset __RPC_FAR * This);
  2400.         
  2401.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Resync )( 
  2402.             _ADORecordset __RPC_FAR * This,
  2403.             /* [defaultvalue][in] */ AffectEnum AffectRecords);
  2404.         
  2405.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
  2406.             _ADORecordset __RPC_FAR * This,
  2407.             /* [optional][in] */ VARIANT Fields,
  2408.             /* [optional][in] */ VARIANT Values);
  2409.         
  2410.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AbsolutePage )( 
  2411.             _ADORecordset __RPC_FAR * This,
  2412.             /* [retval][out] */ PositionEnum __RPC_FAR *pl);
  2413.         
  2414.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AbsolutePage )( 
  2415.             _ADORecordset __RPC_FAR * This,
  2416.             /* [in] */ PositionEnum Page);
  2417.         
  2418.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EditMode )( 
  2419.             _ADORecordset __RPC_FAR * This,
  2420.             /* [retval][out] */ EditModeEnum __RPC_FAR *pl);
  2421.         
  2422.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Filter )( 
  2423.             _ADORecordset __RPC_FAR * This,
  2424.             /* [retval][out] */ VARIANT __RPC_FAR *Criteria);
  2425.         
  2426.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Filter )( 
  2427.             _ADORecordset __RPC_FAR * This,
  2428.             /* [in] */ VARIANT Criteria);
  2429.         
  2430.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PageCount )( 
  2431.             _ADORecordset __RPC_FAR * This,
  2432.             /* [retval][out] */ long __RPC_FAR *pl);
  2433.         
  2434.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PageSize )( 
  2435.             _ADORecordset __RPC_FAR * This,
  2436.             /* [retval][out] */ long __RPC_FAR *pl);
  2437.         
  2438.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PageSize )( 
  2439.             _ADORecordset __RPC_FAR * This,
  2440.             /* [in] */ long PageSize);
  2441.         
  2442.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Status )( 
  2443.             _ADORecordset __RPC_FAR * This,
  2444.             /* [retval][out] */ long __RPC_FAR *pl);
  2445.         
  2446.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clone )( 
  2447.             _ADORecordset __RPC_FAR * This,
  2448.             /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppvObject);
  2449.         
  2450.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UpdateBatch )( 
  2451.             _ADORecordset __RPC_FAR * This,
  2452.             /* [defaultvalue][in] */ AffectEnum AffectRecords);
  2453.         
  2454.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CancelBatch )( 
  2455.             _ADORecordset __RPC_FAR * This,
  2456.             /* [defaultvalue][in] */ AffectEnum AffectRecords);
  2457.         
  2458.         /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CursorLocation )( 
  2459.             _ADORecordset __RPC_FAR * This,
  2460.             /* [retval][out] */ CursorLocationEnum __RPC_FAR *plCursorLoc);
  2461.         
  2462.         /* [hidden][propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CursorLocation )( 
  2463.             _ADORecordset __RPC_FAR * This,
  2464.             /* [in] */ CursorLocationEnum lCursorLoc);
  2465.         
  2466.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *NextADORecordset )( 
  2467.             _ADORecordset __RPC_FAR * This,
  2468.             /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  2469.             /* [retval][out] */ _ADORecordset __RPC_FAR *__RPC_FAR *ppiRs);
  2470.         
  2471.         /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Supports )( 
  2472.             _ADORecordset __RPC_FAR * This,
  2473.             /* [in] */ CursorOptionEnum CursorOptions,
  2474.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb);
  2475.         
  2476.         /* [hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Collect )( 
  2477.             _ADORecordset __RPC_FAR * This,
  2478.             /* [in] */ VARIANT Index,
  2479.             /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  2480.         
  2481.         /* [hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Collect )( 
  2482.             _ADORecordset __RPC_FAR * This,
  2483.             /* [in] */ VARIANT Index,
  2484.             /* [in] */ VARIANT value);
  2485.         
  2486.         END_INTERFACE
  2487.     } _RecordsetVtbl;
  2488.     interface _Recordset
  2489.     {
  2490.         CONST_VTBL struct _RecordsetVtbl __RPC_FAR *lpVtbl;
  2491.     };
  2492.     
  2493. #ifdef COBJMACROS
  2494. #define _Recordset_QueryInterface(This,riid,ppvObject)    \
  2495.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2496. #define _Recordset_AddRef(This)    \
  2497.     (This)->lpVtbl -> AddRef(This)
  2498. #define _Recordset_Release(This)    \
  2499.     (This)->lpVtbl -> Release(This)
  2500. #define _Recordset_GetTypeInfoCount(This,pctinfo)    \
  2501.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2502. #define _Recordset_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  2503.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  2504. #define _Recordset_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  2505.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  2506. #define _Recordset_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  2507.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  2508. #define _Recordset_get_Properties(This,ppvObject)    \
  2509.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  2510. #define _Recordset_get_AbsolutePosition(This,pl)    \
  2511.     (This)->lpVtbl -> get_AbsolutePosition(This,pl)
  2512. #define _Recordset_put_AbsolutePosition(This,Position)    \
  2513.     (This)->lpVtbl -> put_AbsolutePosition(This,Position)
  2514. #define _Recordset_putref_ActiveConnection(This,pconn)    \
  2515.     (This)->lpVtbl -> putref_ActiveConnection(This,pconn)
  2516. #define _Recordset_put_ActiveConnection(This,bstrConn)    \
  2517.     (This)->lpVtbl -> put_ActiveConnection(This,bstrConn)
  2518. #define _Recordset_get_ActiveConnection(This,ppConn)    \
  2519.     (This)->lpVtbl -> get_ActiveConnection(This,ppConn)
  2520. #define _Recordset_get_BOF(This,pb)    \
  2521.     (This)->lpVtbl -> get_BOF(This,pb)
  2522. #define _Recordset_get_Bookmark(This,pvBookmark)    \
  2523.     (This)->lpVtbl -> get_Bookmark(This,pvBookmark)
  2524. #define _Recordset_put_Bookmark(This,vBookmark)    \
  2525.     (This)->lpVtbl -> put_Bookmark(This,vBookmark)
  2526. #define _Recordset_get_CacheSize(This,pl)    \
  2527.     (This)->lpVtbl -> get_CacheSize(This,pl)
  2528. #define _Recordset_put_CacheSize(This,CacheSize)    \
  2529.     (This)->lpVtbl -> put_CacheSize(This,CacheSize)
  2530. #define _Recordset_get_CursorType(This,plCursorType)    \
  2531.     (This)->lpVtbl -> get_CursorType(This,plCursorType)
  2532. #define _Recordset_put_CursorType(This,lCursorType)    \
  2533.     (This)->lpVtbl -> put_CursorType(This,lCursorType)
  2534. #define _Recordset_get_EOF(This,pb)    \
  2535.     (This)->lpVtbl -> get_EOF(This,pb)
  2536. #define _Recordset_get_Fields(This,ppvObject)    \
  2537.     (This)->lpVtbl -> get_Fields(This,ppvObject)
  2538. #define _Recordset_get_LockType(This,plLockType)    \
  2539.     (This)->lpVtbl -> get_LockType(This,plLockType)
  2540. #define _Recordset_put_LockType(This,lLockType)    \
  2541.     (This)->lpVtbl -> put_LockType(This,lLockType)
  2542. #define _Recordset_get_MaxRecords(This,plMaxRecords)    \
  2543.     (This)->lpVtbl -> get_MaxRecords(This,plMaxRecords)
  2544. #define _Recordset_put_MaxRecords(This,lMaxRecords)    \
  2545.     (This)->lpVtbl -> put_MaxRecords(This,lMaxRecords)
  2546. #define _Recordset_get_RecordCount(This,pl)    \
  2547.     (This)->lpVtbl -> get_RecordCount(This,pl)
  2548. #define _Recordset_putref_Source(This,pcmd)    \
  2549.     (This)->lpVtbl -> putref_Source(This,pcmd)
  2550. #define _Recordset_put_Source(This,bstrConn)    \
  2551.     (This)->lpVtbl -> put_Source(This,bstrConn)
  2552. #define _Recordset_get_Source(This,pvSource)    \
  2553.     (This)->lpVtbl -> get_Source(This,pvSource)
  2554. #define _Recordset_AddNew(This,FieldList,Values)    \
  2555.     (This)->lpVtbl -> AddNew(This,FieldList,Values)
  2556. #define _Recordset_CancelUpdate(This)    \
  2557.     (This)->lpVtbl -> CancelUpdate(This)
  2558. #define _Recordset_Close(This)    \
  2559.     (This)->lpVtbl -> Close(This)
  2560. #define _Recordset_Delete(This,AffectRecords)    \
  2561.     (This)->lpVtbl -> Delete(This,AffectRecords)
  2562. #define _Recordset_GetRows(This,Rows,Start,Fields,pvar)    \
  2563.     (This)->lpVtbl -> GetRows(This,Rows,Start,Fields,pvar)
  2564. #define _Recordset_Move(This,NumRecords,Start)    \
  2565.     (This)->lpVtbl -> Move(This,NumRecords,Start)
  2566. #define _Recordset_MoveNext(This)    \
  2567.     (This)->lpVtbl -> MoveNext(This)
  2568. #define _Recordset_MovePrevious(This)    \
  2569.     (This)->lpVtbl -> MovePrevious(This)
  2570. #define _Recordset_MoveFirst(This)    \
  2571.     (This)->lpVtbl -> MoveFirst(This)
  2572. #define _Recordset_MoveLast(This)    \
  2573.     (This)->lpVtbl -> MoveLast(This)
  2574. #define _Recordset_Open(This,Source,ActiveConnection,CursorType,LockType,Options)    \
  2575.     (This)->lpVtbl -> Open(This,Source,ActiveConnection,CursorType,LockType,Options)
  2576. #define _Recordset_Requery(This)    \
  2577.     (This)->lpVtbl -> Requery(This)
  2578. #define _Recordset_Resync(This,AffectRecords)    \
  2579.     (This)->lpVtbl -> Resync(This,AffectRecords)
  2580. #define _Recordset_Update(This,Fields,Values)    \
  2581.     (This)->lpVtbl -> Update(This,Fields,Values)
  2582. #define _Recordset_get_AbsolutePage(This,pl)    \
  2583.     (This)->lpVtbl -> get_AbsolutePage(This,pl)
  2584. #define _Recordset_put_AbsolutePage(This,Page)    \
  2585.     (This)->lpVtbl -> put_AbsolutePage(This,Page)
  2586. #define _Recordset_get_EditMode(This,pl)    \
  2587.     (This)->lpVtbl -> get_EditMode(This,pl)
  2588. #define _Recordset_get_Filter(This,Criteria)    \
  2589.     (This)->lpVtbl -> get_Filter(This,Criteria)
  2590. #define _Recordset_put_Filter(This,Criteria)    \
  2591.     (This)->lpVtbl -> put_Filter(This,Criteria)
  2592. #define _Recordset_get_PageCount(This,pl)    \
  2593.     (This)->lpVtbl -> get_PageCount(This,pl)
  2594. #define _Recordset_get_PageSize(This,pl)    \
  2595.     (This)->lpVtbl -> get_PageSize(This,pl)
  2596. #define _Recordset_put_PageSize(This,PageSize)    \
  2597.     (This)->lpVtbl -> put_PageSize(This,PageSize)
  2598. #define _Recordset_get_Status(This,pl)    \
  2599.     (This)->lpVtbl -> get_Status(This,pl)
  2600. #define _Recordset_Clone(This,ppvObject)    \
  2601.     (This)->lpVtbl -> Clone(This,ppvObject)
  2602. #define _Recordset_UpdateBatch(This,AffectRecords)    \
  2603.     (This)->lpVtbl -> UpdateBatch(This,AffectRecords)
  2604. #define _Recordset_CancelBatch(This,AffectRecords)    \
  2605.     (This)->lpVtbl -> CancelBatch(This,AffectRecords)
  2606. #define _Recordset_get_CursorLocation(This,plCursorLoc)    \
  2607.     (This)->lpVtbl -> get_CursorLocation(This,plCursorLoc)
  2608. #define _Recordset_put_CursorLocation(This,lCursorLoc)    \
  2609.     (This)->lpVtbl -> put_CursorLocation(This,lCursorLoc)
  2610. #define _Recordset_NextRecordset(This,RecordsAffected,ppiRs)    \
  2611.     (This)->lpVtbl -> NextRecordset(This,RecordsAffected,ppiRs)
  2612. #define _Recordset_Supports(This,CursorOptions,pb)    \
  2613.     (This)->lpVtbl -> Supports(This,CursorOptions,pb)
  2614. #define _Recordset_get_Collect(This,Index,pvar)    \
  2615.     (This)->lpVtbl -> get_Collect(This,Index,pvar)
  2616. #define _Recordset_put_Collect(This,Index,value)    \
  2617.     (This)->lpVtbl -> put_Collect(This,Index,value)
  2618. #endif /* COBJMACROS */
  2619. #endif     /* C style interface */
  2620. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_AbsolutePosition_Proxy( 
  2621.     _ADORecordset __RPC_FAR * This,
  2622.     /* [retval][out] */ PositionEnum __RPC_FAR *pl);
  2623. void __RPC_STUB _Recordset_get_AbsolutePosition_Stub(
  2624.     IRpcStubBuffer *This,
  2625.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2626.     PRPC_MESSAGE _pRpcMessage,
  2627.     DWORD *_pdwStubPhase);
  2628. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_AbsolutePosition_Proxy( 
  2629.     _ADORecordset __RPC_FAR * This,
  2630.     /* [in] */ PositionEnum Position);
  2631. void __RPC_STUB _Recordset_put_AbsolutePosition_Stub(
  2632.     IRpcStubBuffer *This,
  2633.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2634.     PRPC_MESSAGE _pRpcMessage,
  2635.     DWORD *_pdwStubPhase);
  2636. /* [propputref][id] */ HRESULT STDMETHODCALLTYPE _Recordset_putref_ActiveConnection_Proxy( 
  2637.     _ADORecordset __RPC_FAR * This,
  2638.     /* [in] */ IDispatch __RPC_FAR *pconn);
  2639. void __RPC_STUB _Recordset_putref_ActiveConnection_Stub(
  2640.     IRpcStubBuffer *This,
  2641.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2642.     PRPC_MESSAGE _pRpcMessage,
  2643.     DWORD *_pdwStubPhase);
  2644. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_ActiveConnection_Proxy( 
  2645.     _ADORecordset __RPC_FAR * This,
  2646.     /* [in] */ BSTR bstrConn);
  2647. void __RPC_STUB _Recordset_put_ActiveConnection_Stub(
  2648.     IRpcStubBuffer *This,
  2649.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2650.     PRPC_MESSAGE _pRpcMessage,
  2651.     DWORD *_pdwStubPhase);
  2652. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_ActiveConnection_Proxy( 
  2653.     _ADORecordset __RPC_FAR * This,
  2654.     /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppConn);
  2655. void __RPC_STUB _Recordset_get_ActiveConnection_Stub(
  2656.     IRpcStubBuffer *This,
  2657.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2658.     PRPC_MESSAGE _pRpcMessage,
  2659.     DWORD *_pdwStubPhase);
  2660. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_BOF_Proxy( 
  2661.     _ADORecordset __RPC_FAR * This,
  2662.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb);
  2663. void __RPC_STUB _Recordset_get_BOF_Stub(
  2664.     IRpcStubBuffer *This,
  2665.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2666.     PRPC_MESSAGE _pRpcMessage,
  2667.     DWORD *_pdwStubPhase);
  2668. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_Bookmark_Proxy( 
  2669.     _ADORecordset __RPC_FAR * This,
  2670.     /* [retval][out] */ VARIANT __RPC_FAR *pvBookmark);
  2671. void __RPC_STUB _Recordset_get_Bookmark_Stub(
  2672.     IRpcStubBuffer *This,
  2673.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2674.     PRPC_MESSAGE _pRpcMessage,
  2675.     DWORD *_pdwStubPhase);
  2676. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_Bookmark_Proxy( 
  2677.     _ADORecordset __RPC_FAR * This,
  2678.     /* [in] */ VARIANT vBookmark);
  2679. void __RPC_STUB _Recordset_put_Bookmark_Stub(
  2680.     IRpcStubBuffer *This,
  2681.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2682.     PRPC_MESSAGE _pRpcMessage,
  2683.     DWORD *_pdwStubPhase);
  2684. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_CacheSize_Proxy( 
  2685.     _ADORecordset __RPC_FAR * This,
  2686.     /* [retval][out] */ long __RPC_FAR *pl);
  2687. void __RPC_STUB _Recordset_get_CacheSize_Stub(
  2688.     IRpcStubBuffer *This,
  2689.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2690.     PRPC_MESSAGE _pRpcMessage,
  2691.     DWORD *_pdwStubPhase);
  2692. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_CacheSize_Proxy( 
  2693.     _ADORecordset __RPC_FAR * This,
  2694.     /* [in] */ long CacheSize);
  2695. void __RPC_STUB _Recordset_put_CacheSize_Stub(
  2696.     IRpcStubBuffer *This,
  2697.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2698.     PRPC_MESSAGE _pRpcMessage,
  2699.     DWORD *_pdwStubPhase);
  2700. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_CursorType_Proxy( 
  2701.     _ADORecordset __RPC_FAR * This,
  2702.     /* [retval][out] */ CursorTypeEnum __RPC_FAR *plCursorType);
  2703. void __RPC_STUB _Recordset_get_CursorType_Stub(
  2704.     IRpcStubBuffer *This,
  2705.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2706.     PRPC_MESSAGE _pRpcMessage,
  2707.     DWORD *_pdwStubPhase);
  2708. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_CursorType_Proxy( 
  2709.     _ADORecordset __RPC_FAR * This,
  2710.     /* [in] */ CursorTypeEnum lCursorType);
  2711. void __RPC_STUB _Recordset_put_CursorType_Stub(
  2712.     IRpcStubBuffer *This,
  2713.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2714.     PRPC_MESSAGE _pRpcMessage,
  2715.     DWORD *_pdwStubPhase);
  2716. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_EOF_Proxy( 
  2717.     _ADORecordset __RPC_FAR * This,
  2718.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb);
  2719. void __RPC_STUB _Recordset_get_EOF_Stub(
  2720.     IRpcStubBuffer *This,
  2721.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2722.     PRPC_MESSAGE _pRpcMessage,
  2723.     DWORD *_pdwStubPhase);
  2724. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_Fields_Proxy( 
  2725.     _ADORecordset __RPC_FAR * This,
  2726.     /* [retval][out] */ ADOFields __RPC_FAR *__RPC_FAR *ppvObject);
  2727. void __RPC_STUB _Recordset_get_Fields_Stub(
  2728.     IRpcStubBuffer *This,
  2729.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2730.     PRPC_MESSAGE _pRpcMessage,
  2731.     DWORD *_pdwStubPhase);
  2732. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_LockType_Proxy( 
  2733.     _ADORecordset __RPC_FAR * This,
  2734.     /* [retval][out] */ LockTypeEnum __RPC_FAR *plLockType);
  2735. void __RPC_STUB _Recordset_get_LockType_Stub(
  2736.     IRpcStubBuffer *This,
  2737.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2738.     PRPC_MESSAGE _pRpcMessage,
  2739.     DWORD *_pdwStubPhase);
  2740. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_LockType_Proxy( 
  2741.     _ADORecordset __RPC_FAR * This,
  2742.     /* [in] */ LockTypeEnum lLockType);
  2743. void __RPC_STUB _Recordset_put_LockType_Stub(
  2744.     IRpcStubBuffer *This,
  2745.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2746.     PRPC_MESSAGE _pRpcMessage,
  2747.     DWORD *_pdwStubPhase);
  2748. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_MaxRecords_Proxy( 
  2749.     _ADORecordset __RPC_FAR * This,
  2750.     /* [retval][out] */ long __RPC_FAR *plMaxRecords);
  2751. void __RPC_STUB _Recordset_get_MaxRecords_Stub(
  2752.     IRpcStubBuffer *This,
  2753.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2754.     PRPC_MESSAGE _pRpcMessage,
  2755.     DWORD *_pdwStubPhase);
  2756. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_MaxRecords_Proxy( 
  2757.     _ADORecordset __RPC_FAR * This,
  2758.     /* [in] */ long lMaxRecords);
  2759. void __RPC_STUB _Recordset_put_MaxRecords_Stub(
  2760.     IRpcStubBuffer *This,
  2761.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2762.     PRPC_MESSAGE _pRpcMessage,
  2763.     DWORD *_pdwStubPhase);
  2764. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_RecordCount_Proxy( 
  2765.     _ADORecordset __RPC_FAR * This,
  2766.     /* [retval][out] */ long __RPC_FAR *pl);
  2767. void __RPC_STUB _Recordset_get_RecordCount_Stub(
  2768.     IRpcStubBuffer *This,
  2769.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2770.     PRPC_MESSAGE _pRpcMessage,
  2771.     DWORD *_pdwStubPhase);
  2772. /* [propputref][id] */ HRESULT STDMETHODCALLTYPE _Recordset_putref_Source_Proxy( 
  2773.     _ADORecordset __RPC_FAR * This,
  2774.     /* [in] */ IDispatch __RPC_FAR *pcmd);
  2775. void __RPC_STUB _Recordset_putref_Source_Stub(
  2776.     IRpcStubBuffer *This,
  2777.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2778.     PRPC_MESSAGE _pRpcMessage,
  2779.     DWORD *_pdwStubPhase);
  2780. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_Source_Proxy( 
  2781.     _ADORecordset __RPC_FAR * This,
  2782.     /* [in] */ BSTR bstrConn);
  2783. void __RPC_STUB _Recordset_put_Source_Stub(
  2784.     IRpcStubBuffer *This,
  2785.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2786.     PRPC_MESSAGE _pRpcMessage,
  2787.     DWORD *_pdwStubPhase);
  2788. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_Source_Proxy( 
  2789.     _ADORecordset __RPC_FAR * This,
  2790.     /* [retval][out] */ VARIANT __RPC_FAR *pvSource);
  2791. void __RPC_STUB _Recordset_get_Source_Stub(
  2792.     IRpcStubBuffer *This,
  2793.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2794.     PRPC_MESSAGE _pRpcMessage,
  2795.     DWORD *_pdwStubPhase);
  2796. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_AddNew_Proxy( 
  2797.     _ADORecordset __RPC_FAR * This,
  2798.     /* [optional][in] */ VARIANT FieldList,
  2799.     /* [optional][in] */ VARIANT Values);
  2800. void __RPC_STUB _Recordset_AddNew_Stub(
  2801.     IRpcStubBuffer *This,
  2802.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2803.     PRPC_MESSAGE _pRpcMessage,
  2804.     DWORD *_pdwStubPhase);
  2805. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_CancelUpdate_Proxy( 
  2806.     _ADORecordset __RPC_FAR * This);
  2807. void __RPC_STUB _Recordset_CancelUpdate_Stub(
  2808.     IRpcStubBuffer *This,
  2809.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2810.     PRPC_MESSAGE _pRpcMessage,
  2811.     DWORD *_pdwStubPhase);
  2812. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Close_Proxy( 
  2813.     _ADORecordset __RPC_FAR * This);
  2814. void __RPC_STUB _Recordset_Close_Stub(
  2815.     IRpcStubBuffer *This,
  2816.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2817.     PRPC_MESSAGE _pRpcMessage,
  2818.     DWORD *_pdwStubPhase);
  2819. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Delete_Proxy( 
  2820.     _ADORecordset __RPC_FAR * This,
  2821.     /* [defaultvalue][in] */ AffectEnum AffectRecords);
  2822. void __RPC_STUB _Recordset_Delete_Stub(
  2823.     IRpcStubBuffer *This,
  2824.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2825.     PRPC_MESSAGE _pRpcMessage,
  2826.     DWORD *_pdwStubPhase);
  2827. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_GetRows_Proxy( 
  2828.     _ADORecordset __RPC_FAR * This,
  2829.     /* [defaultvalue][in] */ long Rows,
  2830.     /* [optional][in] */ VARIANT Start,
  2831.     /* [optional][in] */ VARIANT Fields,
  2832.     /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  2833. void __RPC_STUB _Recordset_GetRows_Stub(
  2834.     IRpcStubBuffer *This,
  2835.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2836.     PRPC_MESSAGE _pRpcMessage,
  2837.     DWORD *_pdwStubPhase);
  2838. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Move_Proxy( 
  2839.     _ADORecordset __RPC_FAR * This,
  2840.     /* [in] */ long NumRecords,
  2841.     /* [optional][in] */ VARIANT Start);
  2842. void __RPC_STUB _Recordset_Move_Stub(
  2843.     IRpcStubBuffer *This,
  2844.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2845.     PRPC_MESSAGE _pRpcMessage,
  2846.     DWORD *_pdwStubPhase);
  2847. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_MoveNext_Proxy( 
  2848.     _ADORecordset __RPC_FAR * This);
  2849. void __RPC_STUB _Recordset_MoveNext_Stub(
  2850.     IRpcStubBuffer *This,
  2851.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2852.     PRPC_MESSAGE _pRpcMessage,
  2853.     DWORD *_pdwStubPhase);
  2854. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_MovePrevious_Proxy( 
  2855.     _ADORecordset __RPC_FAR * This);
  2856. void __RPC_STUB _Recordset_MovePrevious_Stub(
  2857.     IRpcStubBuffer *This,
  2858.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2859.     PRPC_MESSAGE _pRpcMessage,
  2860.     DWORD *_pdwStubPhase);
  2861. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_MoveFirst_Proxy( 
  2862.     _ADORecordset __RPC_FAR * This);
  2863. void __RPC_STUB _Recordset_MoveFirst_Stub(
  2864.     IRpcStubBuffer *This,
  2865.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2866.     PRPC_MESSAGE _pRpcMessage,
  2867.     DWORD *_pdwStubPhase);
  2868. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_MoveLast_Proxy( 
  2869.     _ADORecordset __RPC_FAR * This);
  2870. void __RPC_STUB _Recordset_MoveLast_Stub(
  2871.     IRpcStubBuffer *This,
  2872.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2873.     PRPC_MESSAGE _pRpcMessage,
  2874.     DWORD *_pdwStubPhase);
  2875. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Open_Proxy( 
  2876.     _ADORecordset __RPC_FAR * This,
  2877.     /* [optional][in] */ VARIANT Source,
  2878.     /* [optional][in] */ VARIANT ActiveConnection,
  2879.     /* [defaultvalue][in] */ CursorTypeEnum CursorType,
  2880.     /* [defaultvalue][in] */ LockTypeEnum LockType,
  2881.     /* [defaultvalue][in] */ LONG Options);
  2882. void __RPC_STUB _Recordset_Open_Stub(
  2883.     IRpcStubBuffer *This,
  2884.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2885.     PRPC_MESSAGE _pRpcMessage,
  2886.     DWORD *_pdwStubPhase);
  2887. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Requery_Proxy( 
  2888.     _ADORecordset __RPC_FAR * This);
  2889. void __RPC_STUB _Recordset_Requery_Stub(
  2890.     IRpcStubBuffer *This,
  2891.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2892.     PRPC_MESSAGE _pRpcMessage,
  2893.     DWORD *_pdwStubPhase);
  2894. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Resync_Proxy( 
  2895.     _ADORecordset __RPC_FAR * This,
  2896.     /* [defaultvalue][in] */ AffectEnum AffectRecords);
  2897. void __RPC_STUB _Recordset_Resync_Stub(
  2898.     IRpcStubBuffer *This,
  2899.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2900.     PRPC_MESSAGE _pRpcMessage,
  2901.     DWORD *_pdwStubPhase);
  2902. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Update_Proxy( 
  2903.     _ADORecordset __RPC_FAR * This,
  2904.     /* [optional][in] */ VARIANT Fields,
  2905.     /* [optional][in] */ VARIANT Values);
  2906. void __RPC_STUB _Recordset_Update_Stub(
  2907.     IRpcStubBuffer *This,
  2908.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2909.     PRPC_MESSAGE _pRpcMessage,
  2910.     DWORD *_pdwStubPhase);
  2911. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_AbsolutePage_Proxy( 
  2912.     _ADORecordset __RPC_FAR * This,
  2913.     /* [retval][out] */ PositionEnum __RPC_FAR *pl);
  2914. void __RPC_STUB _Recordset_get_AbsolutePage_Stub(
  2915.     IRpcStubBuffer *This,
  2916.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2917.     PRPC_MESSAGE _pRpcMessage,
  2918.     DWORD *_pdwStubPhase);
  2919. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_AbsolutePage_Proxy( 
  2920.     _ADORecordset __RPC_FAR * This,
  2921.     /* [in] */ PositionEnum Page);
  2922. void __RPC_STUB _Recordset_put_AbsolutePage_Stub(
  2923.     IRpcStubBuffer *This,
  2924.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2925.     PRPC_MESSAGE _pRpcMessage,
  2926.     DWORD *_pdwStubPhase);
  2927. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_EditMode_Proxy( 
  2928.     _ADORecordset __RPC_FAR * This,
  2929.     /* [retval][out] */ EditModeEnum __RPC_FAR *pl);
  2930. void __RPC_STUB _Recordset_get_EditMode_Stub(
  2931.     IRpcStubBuffer *This,
  2932.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2933.     PRPC_MESSAGE _pRpcMessage,
  2934.     DWORD *_pdwStubPhase);
  2935. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_Filter_Proxy( 
  2936.     _ADORecordset __RPC_FAR * This,
  2937.     /* [retval][out] */ VARIANT __RPC_FAR *Criteria);
  2938. void __RPC_STUB _Recordset_get_Filter_Stub(
  2939.     IRpcStubBuffer *This,
  2940.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2941.     PRPC_MESSAGE _pRpcMessage,
  2942.     DWORD *_pdwStubPhase);
  2943. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_Filter_Proxy( 
  2944.     _ADORecordset __RPC_FAR * This,
  2945.     /* [in] */ VARIANT Criteria);
  2946. void __RPC_STUB _Recordset_put_Filter_Stub(
  2947.     IRpcStubBuffer *This,
  2948.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2949.     PRPC_MESSAGE _pRpcMessage,
  2950.     DWORD *_pdwStubPhase);
  2951. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_PageCount_Proxy( 
  2952.     _ADORecordset __RPC_FAR * This,
  2953.     /* [retval][out] */ long __RPC_FAR *pl);
  2954. void __RPC_STUB _Recordset_get_PageCount_Stub(
  2955.     IRpcStubBuffer *This,
  2956.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2957.     PRPC_MESSAGE _pRpcMessage,
  2958.     DWORD *_pdwStubPhase);
  2959. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_PageSize_Proxy( 
  2960.     _ADORecordset __RPC_FAR * This,
  2961.     /* [retval][out] */ long __RPC_FAR *pl);
  2962. void __RPC_STUB _Recordset_get_PageSize_Stub(
  2963.     IRpcStubBuffer *This,
  2964.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2965.     PRPC_MESSAGE _pRpcMessage,
  2966.     DWORD *_pdwStubPhase);
  2967. /* [propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_PageSize_Proxy( 
  2968.     _ADORecordset __RPC_FAR * This,
  2969.     /* [in] */ long PageSize);
  2970. void __RPC_STUB _Recordset_put_PageSize_Stub(
  2971.     IRpcStubBuffer *This,
  2972.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2973.     PRPC_MESSAGE _pRpcMessage,
  2974.     DWORD *_pdwStubPhase);
  2975. /* [propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_Status_Proxy( 
  2976.     _ADORecordset __RPC_FAR * This,
  2977.     /* [retval][out] */ long __RPC_FAR *pl);
  2978. void __RPC_STUB _Recordset_get_Status_Stub(
  2979.     IRpcStubBuffer *This,
  2980.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2981.     PRPC_MESSAGE _pRpcMessage,
  2982.     DWORD *_pdwStubPhase);
  2983. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Clone_Proxy( 
  2984.     _ADORecordset __RPC_FAR * This,
  2985.     /* [retval][out] */ ADORecordset __RPC_FAR *__RPC_FAR *ppvObject);
  2986. void __RPC_STUB _Recordset_Clone_Stub(
  2987.     IRpcStubBuffer *This,
  2988.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2989.     PRPC_MESSAGE _pRpcMessage,
  2990.     DWORD *_pdwStubPhase);
  2991. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_UpdateBatch_Proxy( 
  2992.     _ADORecordset __RPC_FAR * This,
  2993.     /* [defaultvalue][in] */ AffectEnum AffectRecords);
  2994. void __RPC_STUB _Recordset_UpdateBatch_Stub(
  2995.     IRpcStubBuffer *This,
  2996.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2997.     PRPC_MESSAGE _pRpcMessage,
  2998.     DWORD *_pdwStubPhase);
  2999. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_CancelBatch_Proxy( 
  3000.     _ADORecordset __RPC_FAR * This,
  3001.     /* [defaultvalue][in] */ AffectEnum AffectRecords);
  3002. void __RPC_STUB _Recordset_CancelBatch_Stub(
  3003.     IRpcStubBuffer *This,
  3004.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3005.     PRPC_MESSAGE _pRpcMessage,
  3006.     DWORD *_pdwStubPhase);
  3007. /* [hidden][propget][id] */ HRESULT STDMETHODCALLTYPE _Recordset_get_CursorLocation_Proxy( 
  3008.     _ADORecordset __RPC_FAR * This,
  3009.     /* [retval][out] */ CursorLocationEnum __RPC_FAR *plCursorLoc);
  3010. void __RPC_STUB _Recordset_get_CursorLocation_Stub(
  3011.     IRpcStubBuffer *This,
  3012.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3013.     PRPC_MESSAGE _pRpcMessage,
  3014.     DWORD *_pdwStubPhase);
  3015. /* [hidden][propput][id] */ HRESULT STDMETHODCALLTYPE _Recordset_put_CursorLocation_Proxy( 
  3016.     _ADORecordset __RPC_FAR * This,
  3017.     /* [in] */ CursorLocationEnum lCursorLoc);
  3018. void __RPC_STUB _Recordset_put_CursorLocation_Stub(
  3019.     IRpcStubBuffer *This,
  3020.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3021.     PRPC_MESSAGE _pRpcMessage,
  3022.     DWORD *_pdwStubPhase);
  3023. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_NextRecordset_Proxy( 
  3024.     _ADORecordset __RPC_FAR * This,
  3025.     /* [optional][out] */ VARIANT __RPC_FAR *RecordsAffected,
  3026.     /* [retval][out] */ _ADORecordset __RPC_FAR *__RPC_FAR *ppiRs);
  3027. void __RPC_STUB _Recordset_NextRecordset_Stub(
  3028.     IRpcStubBuffer *This,
  3029.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3030.     PRPC_MESSAGE _pRpcMessage,
  3031.     DWORD *_pdwStubPhase);
  3032. /* [id] */ HRESULT STDMETHODCALLTYPE _Recordset_Supports_Proxy( 
  3033.     _ADORecordset __RPC_FAR * This,
  3034.     /* [in] */ CursorOptionEnum CursorOptions,
  3035.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pb);
  3036. void __RPC_STUB _Recordset_Supports_Stub(
  3037.     IRpcStubBuffer *This,
  3038.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3039.     PRPC_MESSAGE _pRpcMessage,
  3040.     DWORD *_pdwStubPhase);
  3041. /* [hidden][id][propget] */ HRESULT STDMETHODCALLTYPE _Recordset_get_Collect_Proxy( 
  3042.     _ADORecordset __RPC_FAR * This,
  3043.     /* [in] */ VARIANT Index,
  3044.     /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3045. void __RPC_STUB _Recordset_get_Collect_Stub(
  3046.     IRpcStubBuffer *This,
  3047.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3048.     PRPC_MESSAGE _pRpcMessage,
  3049.     DWORD *_pdwStubPhase);
  3050. /* [hidden][id][propput] */ HRESULT STDMETHODCALLTYPE _Recordset_put_Collect_Proxy( 
  3051.     _ADORecordset __RPC_FAR * This,
  3052.     /* [in] */ VARIANT Index,
  3053.     /* [in] */ VARIANT value);
  3054. void __RPC_STUB _Recordset_put_Collect_Stub(
  3055.     IRpcStubBuffer *This,
  3056.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3057.     PRPC_MESSAGE _pRpcMessage,
  3058.     DWORD *_pdwStubPhase);
  3059. #endif     /* ___Recordset_INTERFACE_DEFINED__ */
  3060. #ifdef __cplusplus
  3061. EXTERN_C const CLSID CLSID_Recordset;
  3062. #endif
  3063. #ifndef __IADORecordsetConstruction_INTERFACE_DEFINED__
  3064. #define __IADORecordsetConstruction_INTERFACE_DEFINED__
  3065. /****************************************
  3066.  * Generated header for interface: IADORecordsetConstruction
  3067.  * at Thu Dec 05 17:09:47 1996
  3068.  * using MIDL 3.00.30
  3069.  ****************************************/
  3070. /* [object][uuid][restricted] */ 
  3071. EXTERN_C const IID IID_IADORecordsetConstruction;
  3072. #if defined(__cplusplus) && !defined(CINTERFACE)
  3073.     
  3074.     interface IADORecordsetConstruction : public IDispatch
  3075.     {
  3076.     public:
  3077.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Rowset( 
  3078.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  3079.         
  3080.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Rowset( 
  3081.             /* [in] */ IUnknown __RPC_FAR *pRowset) = 0;
  3082.         
  3083.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Chapter( 
  3084.             /* [retval][out] */ LONG __RPC_FAR *plChapter) = 0;
  3085.         
  3086.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Chapter( 
  3087.             /* [in] */ LONG lChapter) = 0;
  3088.         
  3089.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RowPosition( 
  3090.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowPos) = 0;
  3091.         
  3092.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RowPosition( 
  3093.             /* [in] */ IUnknown __RPC_FAR *pRowPos) = 0;
  3094.         
  3095.     };
  3096.     
  3097. #else     /* C style interface */
  3098.     typedef struct IADORecordsetConstructionVtbl
  3099.     {
  3100.         BEGIN_INTERFACE
  3101.         
  3102.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3103.             IADORecordsetConstruction __RPC_FAR * This,
  3104.             /* [in] */ REFIID riid,
  3105.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3106.         
  3107.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3108.             IADORecordsetConstruction __RPC_FAR * This);
  3109.         
  3110.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3111.             IADORecordsetConstruction __RPC_FAR * This);
  3112.         
  3113.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3114.             IADORecordsetConstruction __RPC_FAR * This,
  3115.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3116.         
  3117.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3118.             IADORecordsetConstruction __RPC_FAR * This,
  3119.             /* [in] */ UINT itinfo,
  3120.             /* [in] */ LCID lcid,
  3121.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  3122.         
  3123.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3124.             IADORecordsetConstruction __RPC_FAR * This,
  3125.             /* [in] */ REFIID riid,
  3126.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3127.             /* [in] */ UINT cNames,
  3128.             /* [in] */ LCID lcid,
  3129.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  3130.         
  3131.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3132.             IADORecordsetConstruction __RPC_FAR * This,
  3133.             /* [in] */ DISPID dispidMember,
  3134.             /* [in] */ REFIID riid,
  3135.             /* [in] */ LCID lcid,
  3136.             /* [in] */ WORD wFlags,
  3137.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  3138.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  3139.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  3140.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3141.         
  3142.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Rowset )( 
  3143.             IADORecordsetConstruction __RPC_FAR * This,
  3144.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  3145.         
  3146.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Rowset )( 
  3147.             IADORecordsetConstruction __RPC_FAR * This,
  3148.             /* [in] */ IUnknown __RPC_FAR *pRowset);
  3149.         
  3150.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Chapter )( 
  3151.             IADORecordsetConstruction __RPC_FAR * This,
  3152.             /* [retval][out] */ LONG __RPC_FAR *plChapter);
  3153.         
  3154.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Chapter )( 
  3155.             IADORecordsetConstruction __RPC_FAR * This,
  3156.             /* [in] */ LONG lChapter);
  3157.         
  3158.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RowPosition )( 
  3159.             IADORecordsetConstruction __RPC_FAR * This,
  3160.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowPos);
  3161.         
  3162.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RowPosition )( 
  3163.             IADORecordsetConstruction __RPC_FAR * This,
  3164.             /* [in] */ IUnknown __RPC_FAR *pRowPos);
  3165.         
  3166.         END_INTERFACE
  3167.     } IADORecordsetConstructionVtbl;
  3168.     interface IADORecordsetConstruction
  3169.     {
  3170.         CONST_VTBL struct IADORecordsetConstructionVtbl __RPC_FAR *lpVtbl;
  3171.     };
  3172.     
  3173. #ifdef COBJMACROS
  3174. #define IADORecordsetConstruction_QueryInterface(This,riid,ppvObject)    \
  3175.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3176. #define IADORecordsetConstruction_AddRef(This)    \
  3177.     (This)->lpVtbl -> AddRef(This)
  3178. #define IADORecordsetConstruction_Release(This)    \
  3179.     (This)->lpVtbl -> Release(This)
  3180. #define IADORecordsetConstruction_GetTypeInfoCount(This,pctinfo)    \
  3181.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3182. #define IADORecordsetConstruction_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  3183.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  3184. #define IADORecordsetConstruction_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  3185.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  3186. #define IADORecordsetConstruction_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  3187.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  3188. #define IADORecordsetConstruction_get_Rowset(This,ppRowset)    \
  3189.     (This)->lpVtbl -> get_Rowset(This,ppRowset)
  3190. #define IADORecordsetConstruction_put_Rowset(This,pRowset)    \
  3191.     (This)->lpVtbl -> put_Rowset(This,pRowset)
  3192. #define IADORecordsetConstruction_get_Chapter(This,plChapter)    \
  3193.     (This)->lpVtbl -> get_Chapter(This,plChapter)
  3194. #define IADORecordsetConstruction_put_Chapter(This,lChapter)    \
  3195.     (This)->lpVtbl -> put_Chapter(This,lChapter)
  3196. #define IADORecordsetConstruction_get_RowPosition(This,ppRowPos)    \
  3197.     (This)->lpVtbl -> get_RowPosition(This,ppRowPos)
  3198. #define IADORecordsetConstruction_put_RowPosition(This,pRowPos)    \
  3199.     (This)->lpVtbl -> put_RowPosition(This,pRowPos)
  3200. #endif /* COBJMACROS */
  3201. #endif     /* C style interface */
  3202. /* [propget] */ HRESULT STDMETHODCALLTYPE IADORecordsetConstruction_get_Rowset_Proxy( 
  3203.     IADORecordsetConstruction __RPC_FAR * This,
  3204.     /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  3205. void __RPC_STUB IADORecordsetConstruction_get_Rowset_Stub(
  3206.     IRpcStubBuffer *This,
  3207.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3208.     PRPC_MESSAGE _pRpcMessage,
  3209.     DWORD *_pdwStubPhase);
  3210. /* [propput] */ HRESULT STDMETHODCALLTYPE IADORecordsetConstruction_put_Rowset_Proxy( 
  3211.     IADORecordsetConstruction __RPC_FAR * This,
  3212.     /* [in] */ IUnknown __RPC_FAR *pRowset);
  3213. void __RPC_STUB IADORecordsetConstruction_put_Rowset_Stub(
  3214.     IRpcStubBuffer *This,
  3215.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3216.     PRPC_MESSAGE _pRpcMessage,
  3217.     DWORD *_pdwStubPhase);
  3218. /* [propget] */ HRESULT STDMETHODCALLTYPE IADORecordsetConstruction_get_Chapter_Proxy( 
  3219.     IADORecordsetConstruction __RPC_FAR * This,
  3220.     /* [retval][out] */ LONG __RPC_FAR *plChapter);
  3221. void __RPC_STUB IADORecordsetConstruction_get_Chapter_Stub(
  3222.     IRpcStubBuffer *This,
  3223.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3224.     PRPC_MESSAGE _pRpcMessage,
  3225.     DWORD *_pdwStubPhase);
  3226. /* [propput] */ HRESULT STDMETHODCALLTYPE IADORecordsetConstruction_put_Chapter_Proxy( 
  3227.     IADORecordsetConstruction __RPC_FAR * This,
  3228.     /* [in] */ LONG lChapter);
  3229. void __RPC_STUB IADORecordsetConstruction_put_Chapter_Stub(
  3230.     IRpcStubBuffer *This,
  3231.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3232.     PRPC_MESSAGE _pRpcMessage,
  3233.     DWORD *_pdwStubPhase);
  3234. /* [propget] */ HRESULT STDMETHODCALLTYPE IADORecordsetConstruction_get_RowPosition_Proxy( 
  3235.     IADORecordsetConstruction __RPC_FAR * This,
  3236.     /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowPos);
  3237. void __RPC_STUB IADORecordsetConstruction_get_RowPosition_Stub(
  3238.     IRpcStubBuffer *This,
  3239.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3240.     PRPC_MESSAGE _pRpcMessage,
  3241.     DWORD *_pdwStubPhase);
  3242. /* [propput] */ HRESULT STDMETHODCALLTYPE IADORecordsetConstruction_put_RowPosition_Proxy( 
  3243.     IADORecordsetConstruction __RPC_FAR * This,
  3244.     /* [in] */ IUnknown __RPC_FAR *pRowPos);
  3245. void __RPC_STUB IADORecordsetConstruction_put_RowPosition_Stub(
  3246.     IRpcStubBuffer *This,
  3247.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3248.     PRPC_MESSAGE _pRpcMessage,
  3249.     DWORD *_pdwStubPhase);
  3250. #endif     /* __IADORecordsetConstruction_INTERFACE_DEFINED__ */
  3251. #ifndef __Field_INTERFACE_DEFINED__
  3252. #define __Field_INTERFACE_DEFINED__
  3253. /****************************************
  3254.  * Generated header for interface: Field
  3255.  * at Thu Dec 05 17:09:47 1996
  3256.  * using MIDL 3.00.30
  3257.  ****************************************/
  3258. /* [object][helpstring][helpcontext][uuid][nonextensible][dual] */ 
  3259. EXTERN_C const IID IID_Field;
  3260. #if defined(__cplusplus) && !defined(CINTERFACE)
  3261.     
  3262.     interface ADOField : public _ADO
  3263.     {
  3264.     public:
  3265.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ActualSize( 
  3266.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  3267.         
  3268.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  3269.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  3270.         
  3271.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DefinedSize( 
  3272.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  3273.         
  3274.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Name( 
  3275.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  3276.         
  3277.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Type( 
  3278.             /* [retval][out] */ DataTypeEnum __RPC_FAR *pDataType) = 0;
  3279.         
  3280.         virtual /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Value( 
  3281.             /* [retval][out] */ VARIANT __RPC_FAR *pvar) = 0;
  3282.         
  3283.         virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Value( 
  3284.             /* [in] */ VARIANT Val) = 0;
  3285.         
  3286.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Precision( 
  3287.             /* [retval][out] */ BYTE __RPC_FAR *pbPrecision) = 0;
  3288.         
  3289.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_NumericScale( 
  3290.             /* [retval][out] */ BYTE __RPC_FAR *pbNumericScale) = 0;
  3291.         
  3292.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendChunk( 
  3293.             /* [in] */ VARIANT Data) = 0;
  3294.         
  3295.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetChunk( 
  3296.             /* [in] */ long Length,
  3297.             /* [retval][out] */ VARIANT __RPC_FAR *pvar) = 0;
  3298.         
  3299.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_OriginalValue( 
  3300.             /* [retval][out] */ VARIANT __RPC_FAR *pvar) = 0;
  3301.         
  3302.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_UnderlyingValue( 
  3303.             /* [retval][out] */ VARIANT __RPC_FAR *pvar) = 0;
  3304.         
  3305.     };
  3306.     
  3307. #else     /* C style interface */
  3308.     typedef struct FieldVtbl
  3309.     {
  3310.         BEGIN_INTERFACE
  3311.         
  3312.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3313.             ADOField __RPC_FAR * This,
  3314.             /* [in] */ REFIID riid,
  3315.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3316.         
  3317.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3318.             ADOField __RPC_FAR * This);
  3319.         
  3320.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3321.             ADOField __RPC_FAR * This);
  3322.         
  3323.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3324.             ADOField __RPC_FAR * This,
  3325.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3326.         
  3327.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3328.             ADOField __RPC_FAR * This,
  3329.             /* [in] */ UINT itinfo,
  3330.             /* [in] */ LCID lcid,
  3331.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  3332.         
  3333.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3334.             ADOField __RPC_FAR * This,
  3335.             /* [in] */ REFIID riid,
  3336.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3337.             /* [in] */ UINT cNames,
  3338.             /* [in] */ LCID lcid,
  3339.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  3340.         
  3341.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3342.             ADOField __RPC_FAR * This,
  3343.             /* [in] */ DISPID dispidMember,
  3344.             /* [in] */ REFIID riid,
  3345.             /* [in] */ LCID lcid,
  3346.             /* [in] */ WORD wFlags,
  3347.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  3348.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  3349.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  3350.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3351.         
  3352.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  3353.             ADOField __RPC_FAR * This,
  3354.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  3355.         
  3356.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActualSize )( 
  3357.             ADOField __RPC_FAR * This,
  3358.             /* [retval][out] */ long __RPC_FAR *pl);
  3359.         
  3360.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attributes )( 
  3361.             ADOField __RPC_FAR * This,
  3362.             /* [retval][out] */ long __RPC_FAR *pl);
  3363.         
  3364.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefinedSize )( 
  3365.             ADOField __RPC_FAR * This,
  3366.             /* [retval][out] */ long __RPC_FAR *pl);
  3367.         
  3368.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  3369.             ADOField __RPC_FAR * This,
  3370.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  3371.         
  3372.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
  3373.             ADOField __RPC_FAR * This,
  3374.             /* [retval][out] */ DataTypeEnum __RPC_FAR *pDataType);
  3375.         
  3376.         /* [helpstring][helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
  3377.             ADOField __RPC_FAR * This,
  3378.             /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3379.         
  3380.         /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
  3381.             ADOField __RPC_FAR * This,
  3382.             /* [in] */ VARIANT Val);
  3383.         
  3384.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Precision )( 
  3385.             ADOField __RPC_FAR * This,
  3386.             /* [retval][out] */ BYTE __RPC_FAR *pbPrecision);
  3387.         
  3388.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NumericScale )( 
  3389.             ADOField __RPC_FAR * This,
  3390.             /* [retval][out] */ BYTE __RPC_FAR *pbNumericScale);
  3391.         
  3392.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AppendChunk )( 
  3393.             ADOField __RPC_FAR * This,
  3394.             /* [in] */ VARIANT Data);
  3395.         
  3396.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetChunk )( 
  3397.             ADOField __RPC_FAR * This,
  3398.             /* [in] */ long Length,
  3399.             /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3400.         
  3401.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OriginalValue )( 
  3402.             ADOField __RPC_FAR * This,
  3403.             /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3404.         
  3405.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnderlyingValue )( 
  3406.             ADOField __RPC_FAR * This,
  3407.             /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3408.         
  3409.         END_INTERFACE
  3410.     } FieldVtbl;
  3411.     interface Field
  3412.     {
  3413.         CONST_VTBL struct FieldVtbl __RPC_FAR *lpVtbl;
  3414.     };
  3415.     
  3416. #ifdef COBJMACROS
  3417. #define Field_QueryInterface(This,riid,ppvObject)    \
  3418.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3419. #define Field_AddRef(This)    \
  3420.     (This)->lpVtbl -> AddRef(This)
  3421. #define Field_Release(This)    \
  3422.     (This)->lpVtbl -> Release(This)
  3423. #define Field_GetTypeInfoCount(This,pctinfo)    \
  3424.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3425. #define Field_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  3426.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  3427. #define Field_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  3428.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  3429. #define Field_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  3430.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  3431. #define Field_get_Properties(This,ppvObject)    \
  3432.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  3433. #define Field_get_ActualSize(This,pl)    \
  3434.     (This)->lpVtbl -> get_ActualSize(This,pl)
  3435. #define Field_get_Attributes(This,pl)    \
  3436.     (This)->lpVtbl -> get_Attributes(This,pl)
  3437. #define Field_get_DefinedSize(This,pl)    \
  3438.     (This)->lpVtbl -> get_DefinedSize(This,pl)
  3439. #define Field_get_Name(This,pbstr)    \
  3440.     (This)->lpVtbl -> get_Name(This,pbstr)
  3441. #define Field_get_Type(This,pDataType)    \
  3442.     (This)->lpVtbl -> get_Type(This,pDataType)
  3443. #define Field_get_Value(This,pvar)    \
  3444.     (This)->lpVtbl -> get_Value(This,pvar)
  3445. #define Field_put_Value(This,Val)    \
  3446.     (This)->lpVtbl -> put_Value(This,Val)
  3447. #define Field_get_Precision(This,pbPrecision)    \
  3448.     (This)->lpVtbl -> get_Precision(This,pbPrecision)
  3449. #define Field_get_NumericScale(This,pbNumericScale)    \
  3450.     (This)->lpVtbl -> get_NumericScale(This,pbNumericScale)
  3451. #define Field_AppendChunk(This,Data)    \
  3452.     (This)->lpVtbl -> AppendChunk(This,Data)
  3453. #define Field_GetChunk(This,Length,pvar)    \
  3454.     (This)->lpVtbl -> GetChunk(This,Length,pvar)
  3455. #define Field_get_OriginalValue(This,pvar)    \
  3456.     (This)->lpVtbl -> get_OriginalValue(This,pvar)
  3457. #define Field_get_UnderlyingValue(This,pvar)    \
  3458.     (This)->lpVtbl -> get_UnderlyingValue(This,pvar)
  3459. #endif /* COBJMACROS */
  3460. #endif     /* C style interface */
  3461. /* [propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_ActualSize_Proxy( 
  3462.     ADOField __RPC_FAR * This,
  3463.     /* [retval][out] */ long __RPC_FAR *pl);
  3464. void __RPC_STUB Field_get_ActualSize_Stub(
  3465.     IRpcStubBuffer *This,
  3466.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3467.     PRPC_MESSAGE _pRpcMessage,
  3468.     DWORD *_pdwStubPhase);
  3469. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_Attributes_Proxy( 
  3470.     ADOField __RPC_FAR * This,
  3471.     /* [retval][out] */ long __RPC_FAR *pl);
  3472. void __RPC_STUB Field_get_Attributes_Stub(
  3473.     IRpcStubBuffer *This,
  3474.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3475.     PRPC_MESSAGE _pRpcMessage,
  3476.     DWORD *_pdwStubPhase);
  3477. /* [propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_DefinedSize_Proxy( 
  3478.     ADOField __RPC_FAR * This,
  3479.     /* [retval][out] */ long __RPC_FAR *pl);
  3480. void __RPC_STUB Field_get_DefinedSize_Stub(
  3481.     IRpcStubBuffer *This,
  3482.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3483.     PRPC_MESSAGE _pRpcMessage,
  3484.     DWORD *_pdwStubPhase);
  3485. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_Name_Proxy( 
  3486.     ADOField __RPC_FAR * This,
  3487.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  3488. void __RPC_STUB Field_get_Name_Stub(
  3489.     IRpcStubBuffer *This,
  3490.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3491.     PRPC_MESSAGE _pRpcMessage,
  3492.     DWORD *_pdwStubPhase);
  3493. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_Type_Proxy( 
  3494.     ADOField __RPC_FAR * This,
  3495.     /* [retval][out] */ DataTypeEnum __RPC_FAR *pDataType);
  3496. void __RPC_STUB Field_get_Type_Stub(
  3497.     IRpcStubBuffer *This,
  3498.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3499.     PRPC_MESSAGE _pRpcMessage,
  3500.     DWORD *_pdwStubPhase);
  3501. /* [helpstring][helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_Value_Proxy( 
  3502.     ADOField __RPC_FAR * This,
  3503.     /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3504. void __RPC_STUB Field_get_Value_Stub(
  3505.     IRpcStubBuffer *This,
  3506.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3507.     PRPC_MESSAGE _pRpcMessage,
  3508.     DWORD *_pdwStubPhase);
  3509. /* [propput][id] */ HRESULT STDMETHODCALLTYPE Field_put_Value_Proxy( 
  3510.     ADOField __RPC_FAR * This,
  3511.     /* [in] */ VARIANT Val);
  3512. void __RPC_STUB Field_put_Value_Stub(
  3513.     IRpcStubBuffer *This,
  3514.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3515.     PRPC_MESSAGE _pRpcMessage,
  3516.     DWORD *_pdwStubPhase);
  3517. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Field_get_Precision_Proxy( 
  3518.     ADOField __RPC_FAR * This,
  3519.     /* [retval][out] */ BYTE __RPC_FAR *pbPrecision);
  3520. void __RPC_STUB Field_get_Precision_Stub(
  3521.     IRpcStubBuffer *This,
  3522.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3523.     PRPC_MESSAGE _pRpcMessage,
  3524.     DWORD *_pdwStubPhase);
  3525. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Field_get_NumericScale_Proxy( 
  3526.     ADOField __RPC_FAR * This,
  3527.     /* [retval][out] */ BYTE __RPC_FAR *pbNumericScale);
  3528. void __RPC_STUB Field_get_NumericScale_Stub(
  3529.     IRpcStubBuffer *This,
  3530.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3531.     PRPC_MESSAGE _pRpcMessage,
  3532.     DWORD *_pdwStubPhase);
  3533. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Field_AppendChunk_Proxy( 
  3534.     ADOField __RPC_FAR * This,
  3535.     /* [in] */ VARIANT Data);
  3536. void __RPC_STUB Field_AppendChunk_Stub(
  3537.     IRpcStubBuffer *This,
  3538.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3539.     PRPC_MESSAGE _pRpcMessage,
  3540.     DWORD *_pdwStubPhase);
  3541. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE Field_GetChunk_Proxy( 
  3542.     ADOField __RPC_FAR * This,
  3543.     /* [in] */ long Length,
  3544.     /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3545. void __RPC_STUB Field_GetChunk_Stub(
  3546.     IRpcStubBuffer *This,
  3547.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3548.     PRPC_MESSAGE _pRpcMessage,
  3549.     DWORD *_pdwStubPhase);
  3550. /* [propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_OriginalValue_Proxy( 
  3551.     ADOField __RPC_FAR * This,
  3552.     /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3553. void __RPC_STUB Field_get_OriginalValue_Stub(
  3554.     IRpcStubBuffer *This,
  3555.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3556.     PRPC_MESSAGE _pRpcMessage,
  3557.     DWORD *_pdwStubPhase);
  3558. /* [propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_UnderlyingValue_Proxy( 
  3559.     ADOField __RPC_FAR * This,
  3560.     /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3561. void __RPC_STUB Field_get_UnderlyingValue_Stub(
  3562.     IRpcStubBuffer *This,
  3563.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3564.     PRPC_MESSAGE _pRpcMessage,
  3565.     DWORD *_pdwStubPhase);
  3566. #endif     /* __Field_INTERFACE_DEFINED__ */
  3567. #ifndef __Fields_INTERFACE_DEFINED__
  3568. #define __Fields_INTERFACE_DEFINED__
  3569. /****************************************
  3570.  * Generated header for interface: Fields
  3571.  * at Thu Dec 05 17:09:47 1996
  3572.  * using MIDL 3.00.30
  3573.  ****************************************/
  3574. /* [object][uuid][helpstring][helpcontext][nonextensible][dual] */ 
  3575. EXTERN_C const IID IID_Fields;
  3576. #if defined(__cplusplus) && !defined(CINTERFACE)
  3577.     
  3578.     interface ADOFields : public _ADOCollection
  3579.     {
  3580.     public:
  3581.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  3582.             /* [in] */ VARIANT Index,
  3583.             /* [retval][out] */ ADOField __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  3584.         
  3585.     };
  3586.     
  3587. #else     /* C style interface */
  3588.     typedef struct FieldsVtbl
  3589.     {
  3590.         BEGIN_INTERFACE
  3591.         
  3592.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3593.             ADOFields __RPC_FAR * This,
  3594.             /* [in] */ REFIID riid,
  3595.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3596.         
  3597.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3598.             ADOFields __RPC_FAR * This);
  3599.         
  3600.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3601.             ADOFields __RPC_FAR * This);
  3602.         
  3603.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3604.             ADOFields __RPC_FAR * This,
  3605.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3606.         
  3607.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3608.             ADOFields __RPC_FAR * This,
  3609.             /* [in] */ UINT itinfo,
  3610.             /* [in] */ LCID lcid,
  3611.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  3612.         
  3613.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3614.             ADOFields __RPC_FAR * This,
  3615.             /* [in] */ REFIID riid,
  3616.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3617.             /* [in] */ UINT cNames,
  3618.             /* [in] */ LCID lcid,
  3619.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  3620.         
  3621.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3622.             ADOFields __RPC_FAR * This,
  3623.             /* [in] */ DISPID dispidMember,
  3624.             /* [in] */ REFIID riid,
  3625.             /* [in] */ LCID lcid,
  3626.             /* [in] */ WORD wFlags,
  3627.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  3628.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  3629.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  3630.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3631.         
  3632.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  3633.             ADOFields __RPC_FAR * This,
  3634.             /* [retval][out] */ long __RPC_FAR *c);
  3635.         
  3636.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  3637.             ADOFields __RPC_FAR * This,
  3638.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  3639.         
  3640.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  3641.             ADOFields __RPC_FAR * This);
  3642.         
  3643.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  3644.             ADOFields __RPC_FAR * This,
  3645.             /* [in] */ VARIANT Index,
  3646.             /* [retval][out] */ ADOField __RPC_FAR *__RPC_FAR *ppvObject);
  3647.         
  3648.         END_INTERFACE
  3649.     } FieldsVtbl;
  3650.     interface Fields
  3651.     {
  3652.         CONST_VTBL struct FieldsVtbl __RPC_FAR *lpVtbl;
  3653.     };
  3654.     
  3655. #ifdef COBJMACROS
  3656. #define Fields_QueryInterface(This,riid,ppvObject)    \
  3657.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3658. #define Fields_AddRef(This)    \
  3659.     (This)->lpVtbl -> AddRef(This)
  3660. #define Fields_Release(This)    \
  3661.     (This)->lpVtbl -> Release(This)
  3662. #define Fields_GetTypeInfoCount(This,pctinfo)    \
  3663.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3664. #define Fields_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  3665.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  3666. #define Fields_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  3667.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  3668. #define Fields_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  3669.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  3670. #define Fields_get_Count(This,c)    \
  3671.     (This)->lpVtbl -> get_Count(This,c)
  3672. #define Fields__NewEnum(This,ppvObject)    \
  3673.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  3674. #define Fields_Refresh(This)    \
  3675.     (This)->lpVtbl -> Refresh(This)
  3676. #define Fields_get_Item(This,Index,ppvObject)    \
  3677.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  3678. #endif /* COBJMACROS */
  3679. #endif     /* C style interface */
  3680. /* [id][propget] */ HRESULT STDMETHODCALLTYPE Fields_get_Item_Proxy( 
  3681.     ADOFields __RPC_FAR * This,
  3682.     /* [in] */ VARIANT Index,
  3683.     /* [retval][out] */ ADOField __RPC_FAR *__RPC_FAR *ppvObject);
  3684. void __RPC_STUB Fields_get_Item_Stub(
  3685.     IRpcStubBuffer *This,
  3686.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3687.     PRPC_MESSAGE _pRpcMessage,
  3688.     DWORD *_pdwStubPhase);
  3689. #endif     /* __Fields_INTERFACE_DEFINED__ */
  3690. #ifndef ___Parameter_INTERFACE_DEFINED__
  3691. #define ___Parameter_INTERFACE_DEFINED__
  3692. /****************************************
  3693.  * Generated header for interface: _Parameter
  3694.  * at Thu Dec 05 17:09:47 1996
  3695.  * using MIDL 3.00.30
  3696.  ****************************************/
  3697. /* [object][helpstring][helpcontext][uuid][nonextensible][dual] */ 
  3698. EXTERN_C const IID IID__Parameter;
  3699. #if defined(__cplusplus) && !defined(CINTERFACE)
  3700.     
  3701.     interface _ADOParameter : public _ADO
  3702.     {
  3703.     public:
  3704.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  3705.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  3706.         
  3707.         virtual /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
  3708.             /* [in] */ BSTR bstr) = 0;
  3709.         
  3710.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
  3711.             /* [retval][out] */ VARIANT __RPC_FAR *pvar) = 0;
  3712.         
  3713.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
  3714.             /* [in] */ VARIANT val) = 0;
  3715.         
  3716.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  3717.             /* [retval][out] */ DataTypeEnum __RPC_FAR *psDataType) = 0;
  3718.         
  3719.         virtual /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_Type( 
  3720.             /* [in] */ DataTypeEnum sDataType) = 0;
  3721.         
  3722.         virtual /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
  3723.             /* [in] */ ParameterDirectionEnum lParmDirection) = 0;
  3724.         
  3725.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
  3726.             /* [retval][out] */ ParameterDirectionEnum __RPC_FAR *plParmDirection) = 0;
  3727.         
  3728.         virtual /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_Precision( 
  3729.             /* [in] */ BYTE bPrecision) = 0;
  3730.         
  3731.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Precision( 
  3732.             /* [retval][out] */ BYTE __RPC_FAR *pbPrecision) = 0;
  3733.         
  3734.         virtual /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_NumericScale( 
  3735.             /* [in] */ BYTE bScale) = 0;
  3736.         
  3737.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_NumericScale( 
  3738.             /* [retval][out] */ BYTE __RPC_FAR *pbScale) = 0;
  3739.         
  3740.         virtual /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_Size( 
  3741.             /* [in] */ long l) = 0;
  3742.         
  3743.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Size( 
  3744.             /* [retval][out] */ long __RPC_FAR *pl) = 0;
  3745.         
  3746.         virtual HRESULT STDMETHODCALLTYPE AppendChunk( 
  3747.             /* [in] */ VARIANT Val) = 0;
  3748.         
  3749.         virtual /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  3750.             /* [retval][out] */ LONG __RPC_FAR *plParmAttribs) = 0;
  3751.         
  3752.         virtual /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_Attributes( 
  3753.             /* [in] */ LONG lParmAttribs) = 0;
  3754.         
  3755.     };
  3756.     
  3757. #else     /* C style interface */
  3758.     typedef struct _ParameterVtbl
  3759.     {
  3760.         BEGIN_INTERFACE
  3761.         
  3762.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3763.             _ADOParameter __RPC_FAR * This,
  3764.             /* [in] */ REFIID riid,
  3765.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3766.         
  3767.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3768.             _ADOParameter __RPC_FAR * This);
  3769.         
  3770.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3771.             _ADOParameter __RPC_FAR * This);
  3772.         
  3773.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  3774.             _ADOParameter __RPC_FAR * This,
  3775.             /* [out] */ UINT __RPC_FAR *pctinfo);
  3776.         
  3777.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  3778.             _ADOParameter __RPC_FAR * This,
  3779.             /* [in] */ UINT itinfo,
  3780.             /* [in] */ LCID lcid,
  3781.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  3782.         
  3783.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  3784.             _ADOParameter __RPC_FAR * This,
  3785.             /* [in] */ REFIID riid,
  3786.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  3787.             /* [in] */ UINT cNames,
  3788.             /* [in] */ LCID lcid,
  3789.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  3790.         
  3791.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  3792.             _ADOParameter __RPC_FAR * This,
  3793.             /* [in] */ DISPID dispidMember,
  3794.             /* [in] */ REFIID riid,
  3795.             /* [in] */ LCID lcid,
  3796.             /* [in] */ WORD wFlags,
  3797.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  3798.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  3799.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  3800.             /* [out] */ UINT __RPC_FAR *puArgErr);
  3801.         
  3802.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Properties )( 
  3803.             _ADOParameter __RPC_FAR * This,
  3804.             /* [retval][out] */ ADOProperties __RPC_FAR *__RPC_FAR *ppvObject);
  3805.         
  3806.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  3807.             _ADOParameter __RPC_FAR * This,
  3808.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  3809.         
  3810.         /* [helpstring][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
  3811.             _ADOParameter __RPC_FAR * This,
  3812.             /* [in] */ BSTR bstr);
  3813.         
  3814.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
  3815.             _ADOParameter __RPC_FAR * This,
  3816.             /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3817.         
  3818.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
  3819.             _ADOParameter __RPC_FAR * This,
  3820.             /* [in] */ VARIANT val);
  3821.         
  3822.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
  3823.             _ADOParameter __RPC_FAR * This,
  3824.             /* [retval][out] */ DataTypeEnum __RPC_FAR *psDataType);
  3825.         
  3826.         /* [helpstring][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Type )( 
  3827.             _ADOParameter __RPC_FAR * This,
  3828.             /* [in] */ DataTypeEnum sDataType);
  3829.         
  3830.         /* [helpstring][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
  3831.             _ADOParameter __RPC_FAR * This,
  3832.             /* [in] */ ParameterDirectionEnum lParmDirection);
  3833.         
  3834.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
  3835.             _ADOParameter __RPC_FAR * This,
  3836.             /* [retval][out] */ ParameterDirectionEnum __RPC_FAR *plParmDirection);
  3837.         
  3838.         /* [helpstring][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Precision )( 
  3839.             _ADOParameter __RPC_FAR * This,
  3840.             /* [in] */ BYTE bPrecision);
  3841.         
  3842.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Precision )( 
  3843.             _ADOParameter __RPC_FAR * This,
  3844.             /* [retval][out] */ BYTE __RPC_FAR *pbPrecision);
  3845.         
  3846.         /* [helpstring][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NumericScale )( 
  3847.             _ADOParameter __RPC_FAR * This,
  3848.             /* [in] */ BYTE bScale);
  3849.         
  3850.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NumericScale )( 
  3851.             _ADOParameter __RPC_FAR * This,
  3852.             /* [retval][out] */ BYTE __RPC_FAR *pbScale);
  3853.         
  3854.         /* [helpstring][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Size )( 
  3855.             _ADOParameter __RPC_FAR * This,
  3856.             /* [in] */ long l);
  3857.         
  3858.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Size )( 
  3859.             _ADOParameter __RPC_FAR * This,
  3860.             /* [retval][out] */ long __RPC_FAR *pl);
  3861.         
  3862.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AppendChunk )( 
  3863.             _ADOParameter __RPC_FAR * This,
  3864.             /* [in] */ VARIANT Val);
  3865.         
  3866.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attributes )( 
  3867.             _ADOParameter __RPC_FAR * This,
  3868.             /* [retval][out] */ LONG __RPC_FAR *plParmAttribs);
  3869.         
  3870.         /* [helpstring][helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Attributes )( 
  3871.             _ADOParameter __RPC_FAR * This,
  3872.             /* [in] */ LONG lParmAttribs);
  3873.         
  3874.         END_INTERFACE
  3875.     } _ParameterVtbl;
  3876.     interface _Parameter
  3877.     {
  3878.         CONST_VTBL struct _ParameterVtbl __RPC_FAR *lpVtbl;
  3879.     };
  3880.     
  3881. #ifdef COBJMACROS
  3882. #define _Parameter_QueryInterface(This,riid,ppvObject)    \
  3883.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3884. #define _Parameter_AddRef(This)    \
  3885.     (This)->lpVtbl -> AddRef(This)
  3886. #define _Parameter_Release(This)    \
  3887.     (This)->lpVtbl -> Release(This)
  3888. #define _Parameter_GetTypeInfoCount(This,pctinfo)    \
  3889.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  3890. #define _Parameter_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  3891.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  3892. #define _Parameter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  3893.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  3894. #define _Parameter_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  3895.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  3896. #define _Parameter_get_Properties(This,ppvObject)    \
  3897.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  3898. #define _Parameter_get_Name(This,pbstr)    \
  3899.     (This)->lpVtbl -> get_Name(This,pbstr)
  3900. #define _Parameter_put_Name(This,bstr)    \
  3901.     (This)->lpVtbl -> put_Name(This,bstr)
  3902. #define _Parameter_get_Value(This,pvar)    \
  3903.     (This)->lpVtbl -> get_Value(This,pvar)
  3904. #define _Parameter_put_Value(This,val)    \
  3905.     (This)->lpVtbl -> put_Value(This,val)
  3906. #define _Parameter_get_Type(This,psDataType)    \
  3907.     (This)->lpVtbl -> get_Type(This,psDataType)
  3908. #define _Parameter_put_Type(This,sDataType)    \
  3909.     (This)->lpVtbl -> put_Type(This,sDataType)
  3910. #define _Parameter_put_Direction(This,lParmDirection)    \
  3911.     (This)->lpVtbl -> put_Direction(This,lParmDirection)
  3912. #define _Parameter_get_Direction(This,plParmDirection)    \
  3913.     (This)->lpVtbl -> get_Direction(This,plParmDirection)
  3914. #define _Parameter_put_Precision(This,bPrecision)    \
  3915.     (This)->lpVtbl -> put_Precision(This,bPrecision)
  3916. #define _Parameter_get_Precision(This,pbPrecision)    \
  3917.     (This)->lpVtbl -> get_Precision(This,pbPrecision)
  3918. #define _Parameter_put_NumericScale(This,bScale)    \
  3919.     (This)->lpVtbl -> put_NumericScale(This,bScale)
  3920. #define _Parameter_get_NumericScale(This,pbScale)    \
  3921.     (This)->lpVtbl -> get_NumericScale(This,pbScale)
  3922. #define _Parameter_put_Size(This,l)    \
  3923.     (This)->lpVtbl -> put_Size(This,l)
  3924. #define _Parameter_get_Size(This,pl)    \
  3925.     (This)->lpVtbl -> get_Size(This,pl)
  3926. #define _Parameter_AppendChunk(This,Val)    \
  3927.     (This)->lpVtbl -> AppendChunk(This,Val)
  3928. #define _Parameter_get_Attributes(This,plParmAttribs)    \
  3929.     (This)->lpVtbl -> get_Attributes(This,plParmAttribs)
  3930. #define _Parameter_put_Attributes(This,lParmAttribs)    \
  3931.     (This)->lpVtbl -> put_Attributes(This,lParmAttribs)
  3932. #endif /* COBJMACROS */
  3933. #endif     /* C style interface */
  3934. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Name_Proxy( 
  3935.     _ADOParameter __RPC_FAR * This,
  3936.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  3937. void __RPC_STUB _Parameter_get_Name_Stub(
  3938.     IRpcStubBuffer *This,
  3939.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3940.     PRPC_MESSAGE _pRpcMessage,
  3941.     DWORD *_pdwStubPhase);
  3942. /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Name_Proxy( 
  3943.     _ADOParameter __RPC_FAR * This,
  3944.     /* [in] */ BSTR bstr);
  3945. void __RPC_STUB _Parameter_put_Name_Stub(
  3946.     IRpcStubBuffer *This,
  3947.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3948.     PRPC_MESSAGE _pRpcMessage,
  3949.     DWORD *_pdwStubPhase);
  3950. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Value_Proxy( 
  3951.     _ADOParameter __RPC_FAR * This,
  3952.     /* [retval][out] */ VARIANT __RPC_FAR *pvar);
  3953. void __RPC_STUB _Parameter_get_Value_Stub(
  3954.     IRpcStubBuffer *This,
  3955.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3956.     PRPC_MESSAGE _pRpcMessage,
  3957.     DWORD *_pdwStubPhase);
  3958. /* [id][propput] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Value_Proxy( 
  3959.     _ADOParameter __RPC_FAR * This,
  3960.     /* [in] */ VARIANT val);
  3961. void __RPC_STUB _Parameter_put_Value_Stub(
  3962.     IRpcStubBuffer *This,
  3963.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3964.     PRPC_MESSAGE _pRpcMessage,
  3965.     DWORD *_pdwStubPhase);
  3966. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Type_Proxy( 
  3967.     _ADOParameter __RPC_FAR * This,
  3968.     /* [retval][out] */ DataTypeEnum __RPC_FAR *psDataType);
  3969. void __RPC_STUB _Parameter_get_Type_Stub(
  3970.     IRpcStubBuffer *This,
  3971.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3972.     PRPC_MESSAGE _pRpcMessage,
  3973.     DWORD *_pdwStubPhase);
  3974. /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Type_Proxy( 
  3975.     _ADOParameter __RPC_FAR * This,
  3976.     /* [in] */ DataTypeEnum sDataType);
  3977. void __RPC_STUB _Parameter_put_Type_Stub(
  3978.     IRpcStubBuffer *This,
  3979.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3980.     PRPC_MESSAGE _pRpcMessage,
  3981.     DWORD *_pdwStubPhase);
  3982. /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Direction_Proxy( 
  3983.     _ADOParameter __RPC_FAR * This,
  3984.     /* [in] */ ParameterDirectionEnum lParmDirection);
  3985. void __RPC_STUB _Parameter_put_Direction_Stub(
  3986.     IRpcStubBuffer *This,
  3987.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3988.     PRPC_MESSAGE _pRpcMessage,
  3989.     DWORD *_pdwStubPhase);
  3990. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Direction_Proxy( 
  3991.     _ADOParameter __RPC_FAR * This,
  3992.     /* [retval][out] */ ParameterDirectionEnum __RPC_FAR *plParmDirection);
  3993. void __RPC_STUB _Parameter_get_Direction_Stub(
  3994.     IRpcStubBuffer *This,
  3995.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3996.     PRPC_MESSAGE _pRpcMessage,
  3997.     DWORD *_pdwStubPhase);
  3998. /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Precision_Proxy( 
  3999.     _ADOParameter __RPC_FAR * This,
  4000.     /* [in] */ BYTE bPrecision);
  4001. void __RPC_STUB _Parameter_put_Precision_Stub(
  4002.     IRpcStubBuffer *This,
  4003.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4004.     PRPC_MESSAGE _pRpcMessage,
  4005.     DWORD *_pdwStubPhase);
  4006. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Precision_Proxy( 
  4007.     _ADOParameter __RPC_FAR * This,
  4008.     /* [retval][out] */ BYTE __RPC_FAR *pbPrecision);
  4009. void __RPC_STUB _Parameter_get_Precision_Stub(
  4010.     IRpcStubBuffer *This,
  4011.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4012.     PRPC_MESSAGE _pRpcMessage,
  4013.     DWORD *_pdwStubPhase);
  4014. /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE _Parameter_put_NumericScale_Proxy( 
  4015.     _ADOParameter __RPC_FAR * This,
  4016.     /* [in] */ BYTE bScale);
  4017. void __RPC_STUB _Parameter_put_NumericScale_Stub(
  4018.     IRpcStubBuffer *This,
  4019.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4020.     PRPC_MESSAGE _pRpcMessage,
  4021.     DWORD *_pdwStubPhase);
  4022. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Parameter_get_NumericScale_Proxy( 
  4023.     _ADOParameter __RPC_FAR * This,
  4024.     /* [retval][out] */ BYTE __RPC_FAR *pbScale);
  4025. void __RPC_STUB _Parameter_get_NumericScale_Stub(
  4026.     IRpcStubBuffer *This,
  4027.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4028.     PRPC_MESSAGE _pRpcMessage,
  4029.     DWORD *_pdwStubPhase);
  4030. /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Size_Proxy( 
  4031.     _ADOParameter __RPC_FAR * This,
  4032.     /* [in] */ long l);
  4033. void __RPC_STUB _Parameter_put_Size_Stub(
  4034.     IRpcStubBuffer *This,
  4035.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4036.     PRPC_MESSAGE _pRpcMessage,
  4037.     DWORD *_pdwStubPhase);
  4038. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Size_Proxy( 
  4039.     _ADOParameter __RPC_FAR * This,
  4040.     /* [retval][out] */ long __RPC_FAR *pl);
  4041. void __RPC_STUB _Parameter_get_Size_Stub(
  4042.     IRpcStubBuffer *This,
  4043.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4044.     PRPC_MESSAGE _pRpcMessage,
  4045.     DWORD *_pdwStubPhase);
  4046. HRESULT STDMETHODCALLTYPE _Parameter_AppendChunk_Proxy( 
  4047.     _ADOParameter __RPC_FAR * This,
  4048.     /* [in] */ VARIANT Val);
  4049. void __RPC_STUB _Parameter_AppendChunk_Stub(
  4050.     IRpcStubBuffer *This,
  4051.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4052.     PRPC_MESSAGE _pRpcMessage,
  4053.     DWORD *_pdwStubPhase);
  4054. /* [helpstring][helpcontext][propget] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Attributes_Proxy( 
  4055.     _ADOParameter __RPC_FAR * This,
  4056.     /* [retval][out] */ LONG __RPC_FAR *plParmAttribs);
  4057. void __RPC_STUB _Parameter_get_Attributes_Stub(
  4058.     IRpcStubBuffer *This,
  4059.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4060.     PRPC_MESSAGE _pRpcMessage,
  4061.     DWORD *_pdwStubPhase);
  4062. /* [helpstring][helpcontext][propput] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Attributes_Proxy( 
  4063.     _ADOParameter __RPC_FAR * This,
  4064.     /* [in] */ LONG lParmAttribs);
  4065. void __RPC_STUB _Parameter_put_Attributes_Stub(
  4066.     IRpcStubBuffer *This,
  4067.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4068.     PRPC_MESSAGE _pRpcMessage,
  4069.     DWORD *_pdwStubPhase);
  4070. #endif     /* ___Parameter_INTERFACE_DEFINED__ */
  4071. #ifdef __cplusplus
  4072. EXTERN_C const CLSID CLSID_Parameter;
  4073. #endif
  4074. #ifndef __Parameters_INTERFACE_DEFINED__
  4075. #define __Parameters_INTERFACE_DEFINED__
  4076. /****************************************
  4077.  * Generated header for interface: Parameters
  4078.  * at Thu Dec 05 17:09:47 1996
  4079.  * using MIDL 3.00.30
  4080.  ****************************************/
  4081. /* [object][uuid][helpstring][helpcontext][nonextensible][dual] */ 
  4082. EXTERN_C const IID IID_Parameters;
  4083. #if defined(__cplusplus) && !defined(CINTERFACE)
  4084.     
  4085.     interface ADOParameters : public _ADODynaCollection
  4086.     {
  4087.     public:
  4088.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  4089.             /* [in] */ VARIANT Index,
  4090.             /* [retval][out] */ _ADOParameter __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  4091.         
  4092.     };
  4093.     
  4094. #else     /* C style interface */
  4095.     typedef struct ParametersVtbl
  4096.     {
  4097.         BEGIN_INTERFACE
  4098.         
  4099.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4100.             ADOParameters __RPC_FAR * This,
  4101.             /* [in] */ REFIID riid,
  4102.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4103.         
  4104.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4105.             ADOParameters __RPC_FAR * This);
  4106.         
  4107.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4108.             ADOParameters __RPC_FAR * This);
  4109.         
  4110.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  4111.             ADOParameters __RPC_FAR * This,
  4112.             /* [out] */ UINT __RPC_FAR *pctinfo);
  4113.         
  4114.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  4115.             ADOParameters __RPC_FAR * This,
  4116.             /* [in] */ UINT itinfo,
  4117.             /* [in] */ LCID lcid,
  4118.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  4119.         
  4120.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  4121.             ADOParameters __RPC_FAR * This,
  4122.             /* [in] */ REFIID riid,
  4123.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  4124.             /* [in] */ UINT cNames,
  4125.             /* [in] */ LCID lcid,
  4126.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  4127.         
  4128.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  4129.             ADOParameters __RPC_FAR * This,
  4130.             /* [in] */ DISPID dispidMember,
  4131.             /* [in] */ REFIID riid,
  4132.             /* [in] */ LCID lcid,
  4133.             /* [in] */ WORD wFlags,
  4134.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  4135.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  4136.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  4137.             /* [out] */ UINT __RPC_FAR *puArgErr);
  4138.         
  4139.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  4140.             ADOParameters __RPC_FAR * This,
  4141.             /* [retval][out] */ long __RPC_FAR *c);
  4142.         
  4143.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  4144.             ADOParameters __RPC_FAR * This,
  4145.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  4146.         
  4147.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  4148.             ADOParameters __RPC_FAR * This);
  4149.         
  4150.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Append )( 
  4151.             ADOParameters __RPC_FAR * This,
  4152.             /* [in] */ IDispatch __RPC_FAR *Object);
  4153.         
  4154.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  4155.             ADOParameters __RPC_FAR * This,
  4156.             /* [in] */ VARIANT Index);
  4157.         
  4158.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  4159.             ADOParameters __RPC_FAR * This,
  4160.             /* [in] */ VARIANT Index,
  4161.             /* [retval][out] */ _ADOParameter __RPC_FAR *__RPC_FAR *ppvObject);
  4162.         
  4163.         END_INTERFACE
  4164.     } ParametersVtbl;
  4165.     interface Parameters
  4166.     {
  4167.         CONST_VTBL struct ParametersVtbl __RPC_FAR *lpVtbl;
  4168.     };
  4169.     
  4170. #ifdef COBJMACROS
  4171. #define Parameters_QueryInterface(This,riid,ppvObject)    \
  4172.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4173. #define Parameters_AddRef(This)    \
  4174.     (This)->lpVtbl -> AddRef(This)
  4175. #define Parameters_Release(This)    \
  4176.     (This)->lpVtbl -> Release(This)
  4177. #define Parameters_GetTypeInfoCount(This,pctinfo)    \
  4178.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  4179. #define Parameters_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  4180.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  4181. #define Parameters_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  4182.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  4183. #define Parameters_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  4184.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  4185. #define Parameters_get_Count(This,c)    \
  4186.     (This)->lpVtbl -> get_Count(This,c)
  4187. #define Parameters__NewEnum(This,ppvObject)    \
  4188.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  4189. #define Parameters_Refresh(This)    \
  4190.     (This)->lpVtbl -> Refresh(This)
  4191. #define Parameters_Append(This,Object)    \
  4192.     (This)->lpVtbl -> Append(This,Object)
  4193. #define Parameters_Delete(This,Index)    \
  4194.     (This)->lpVtbl -> Delete(This,Index)
  4195. #define Parameters_get_Item(This,Index,ppvObject)    \
  4196.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  4197. #endif /* COBJMACROS */
  4198. #endif     /* C style interface */
  4199. /* [id][propget] */ HRESULT STDMETHODCALLTYPE Parameters_get_Item_Proxy( 
  4200.     ADOParameters __RPC_FAR * This,
  4201.     /* [in] */ VARIANT Index,
  4202.     /* [retval][out] */ _ADOParameter __RPC_FAR *__RPC_FAR *ppvObject);
  4203. void __RPC_STUB Parameters_get_Item_Stub(
  4204.     IRpcStubBuffer *This,
  4205.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4206.     PRPC_MESSAGE _pRpcMessage,
  4207.     DWORD *_pdwStubPhase);
  4208. #endif     /* __Parameters_INTERFACE_DEFINED__ */
  4209. #ifndef __Property_INTERFACE_DEFINED__
  4210. #define __Property_INTERFACE_DEFINED__
  4211. /****************************************
  4212.  * Generated header for interface: Property
  4213.  * at Thu Dec 05 17:09:47 1996
  4214.  * using MIDL 3.00.30
  4215.  ****************************************/
  4216. /* [object][helpstring][helpcontext][uuid][nonextensible][dual] */ 
  4217. EXTERN_C const IID IID_Property;
  4218. #if defined(__cplusplus) && !defined(CINTERFACE)
  4219.     
  4220.     interface ADOProperty : public IDispatch
  4221.     {
  4222.     public:
  4223.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
  4224.             /* [retval][out] */ VARIANT __RPC_FAR *pval) = 0;
  4225.         
  4226.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
  4227.             /* [in] */ VARIANT val) = 0;
  4228.         
  4229.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  4230.             /* [retval][out] */ BSTR __RPC_FAR *pbstr) = 0;
  4231.         
  4232.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  4233.             /* [retval][out] */ DataTypeEnum __RPC_FAR *ptype) = 0;
  4234.         
  4235.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  4236.             /* [retval][out] */ long __RPC_FAR *plAttributes) = 0;
  4237.         
  4238.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Attributes( 
  4239.             /* [in] */ long lAttributes) = 0;
  4240.         
  4241.     };
  4242.     
  4243. #else     /* C style interface */
  4244.     typedef struct PropertyVtbl
  4245.     {
  4246.         BEGIN_INTERFACE
  4247.         
  4248.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4249.             ADOProperty __RPC_FAR * This,
  4250.             /* [in] */ REFIID riid,
  4251.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4252.         
  4253.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4254.             ADOProperty __RPC_FAR * This);
  4255.         
  4256.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4257.             ADOProperty __RPC_FAR * This);
  4258.         
  4259.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  4260.             ADOProperty __RPC_FAR * This,
  4261.             /* [out] */ UINT __RPC_FAR *pctinfo);
  4262.         
  4263.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  4264.             ADOProperty __RPC_FAR * This,
  4265.             /* [in] */ UINT itinfo,
  4266.             /* [in] */ LCID lcid,
  4267.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  4268.         
  4269.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  4270.             ADOProperty __RPC_FAR * This,
  4271.             /* [in] */ REFIID riid,
  4272.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  4273.             /* [in] */ UINT cNames,
  4274.             /* [in] */ LCID lcid,
  4275.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  4276.         
  4277.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  4278.             ADOProperty __RPC_FAR * This,
  4279.             /* [in] */ DISPID dispidMember,
  4280.             /* [in] */ REFIID riid,
  4281.             /* [in] */ LCID lcid,
  4282.             /* [in] */ WORD wFlags,
  4283.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  4284.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  4285.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  4286.             /* [out] */ UINT __RPC_FAR *puArgErr);
  4287.         
  4288.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
  4289.             ADOProperty __RPC_FAR * This,
  4290.             /* [retval][out] */ VARIANT __RPC_FAR *pval);
  4291.         
  4292.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
  4293.             ADOProperty __RPC_FAR * This,
  4294.             /* [in] */ VARIANT val);
  4295.         
  4296.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  4297.             ADOProperty __RPC_FAR * This,
  4298.             /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  4299.         
  4300.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
  4301.             ADOProperty __RPC_FAR * This,
  4302.             /* [retval][out] */ DataTypeEnum __RPC_FAR *ptype);
  4303.         
  4304.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attributes )( 
  4305.             ADOProperty __RPC_FAR * This,
  4306.             /* [retval][out] */ long __RPC_FAR *plAttributes);
  4307.         
  4308.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Attributes )( 
  4309.             ADOProperty __RPC_FAR * This,
  4310.             /* [in] */ long lAttributes);
  4311.         
  4312.         END_INTERFACE
  4313.     } PropertyVtbl;
  4314.     interface Property
  4315.     {
  4316.         CONST_VTBL struct PropertyVtbl __RPC_FAR *lpVtbl;
  4317.     };
  4318.     
  4319. #ifdef COBJMACROS
  4320. #define Property_QueryInterface(This,riid,ppvObject)    \
  4321.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4322. #define Property_AddRef(This)    \
  4323.     (This)->lpVtbl -> AddRef(This)
  4324. #define Property_Release(This)    \
  4325.     (This)->lpVtbl -> Release(This)
  4326. #define Property_GetTypeInfoCount(This,pctinfo)    \
  4327.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  4328. #define Property_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  4329.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  4330. #define Property_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  4331.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  4332. #define Property_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  4333.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  4334. #define Property_get_Value(This,pval)    \
  4335.     (This)->lpVtbl -> get_Value(This,pval)
  4336. #define Property_put_Value(This,val)    \
  4337.     (This)->lpVtbl -> put_Value(This,val)
  4338. #define Property_get_Name(This,pbstr)    \
  4339.     (This)->lpVtbl -> get_Name(This,pbstr)
  4340. #define Property_get_Type(This,ptype)    \
  4341.     (This)->lpVtbl -> get_Type(This,ptype)
  4342. #define Property_get_Attributes(This,plAttributes)    \
  4343.     (This)->lpVtbl -> get_Attributes(This,plAttributes)
  4344. #define Property_put_Attributes(This,lAttributes)    \
  4345.     (This)->lpVtbl -> put_Attributes(This,lAttributes)
  4346. #endif /* COBJMACROS */
  4347. #endif     /* C style interface */
  4348. /* [id][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Value_Proxy( 
  4349.     ADOProperty __RPC_FAR * This,
  4350.     /* [retval][out] */ VARIANT __RPC_FAR *pval);
  4351. void __RPC_STUB Property_get_Value_Stub(
  4352.     IRpcStubBuffer *This,
  4353.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4354.     PRPC_MESSAGE _pRpcMessage,
  4355.     DWORD *_pdwStubPhase);
  4356. /* [id][propput] */ HRESULT STDMETHODCALLTYPE Property_put_Value_Proxy( 
  4357.     ADOProperty __RPC_FAR * This,
  4358.     /* [in] */ VARIANT val);
  4359. void __RPC_STUB Property_put_Value_Stub(
  4360.     IRpcStubBuffer *This,
  4361.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4362.     PRPC_MESSAGE _pRpcMessage,
  4363.     DWORD *_pdwStubPhase);
  4364. /* [propget] */ HRESULT STDMETHODCALLTYPE Property_get_Name_Proxy( 
  4365.     ADOProperty __RPC_FAR * This,
  4366.     /* [retval][out] */ BSTR __RPC_FAR *pbstr);
  4367. void __RPC_STUB Property_get_Name_Stub(
  4368.     IRpcStubBuffer *This,
  4369.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4370.     PRPC_MESSAGE _pRpcMessage,
  4371.     DWORD *_pdwStubPhase);
  4372. /* [propget] */ HRESULT STDMETHODCALLTYPE Property_get_Type_Proxy( 
  4373.     ADOProperty __RPC_FAR * This,
  4374.     /* [retval][out] */ DataTypeEnum __RPC_FAR *ptype);
  4375. void __RPC_STUB Property_get_Type_Stub(
  4376.     IRpcStubBuffer *This,
  4377.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4378.     PRPC_MESSAGE _pRpcMessage,
  4379.     DWORD *_pdwStubPhase);
  4380. /* [propget] */ HRESULT STDMETHODCALLTYPE Property_get_Attributes_Proxy( 
  4381.     ADOProperty __RPC_FAR * This,
  4382.     /* [retval][out] */ long __RPC_FAR *plAttributes);
  4383. void __RPC_STUB Property_get_Attributes_Stub(
  4384.     IRpcStubBuffer *This,
  4385.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4386.     PRPC_MESSAGE _pRpcMessage,
  4387.     DWORD *_pdwStubPhase);
  4388. /* [propput] */ HRESULT STDMETHODCALLTYPE Property_put_Attributes_Proxy( 
  4389.     ADOProperty __RPC_FAR * This,
  4390.     /* [in] */ long lAttributes);
  4391. void __RPC_STUB Property_put_Attributes_Stub(
  4392.     IRpcStubBuffer *This,
  4393.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4394.     PRPC_MESSAGE _pRpcMessage,
  4395.     DWORD *_pdwStubPhase);
  4396. #endif     /* __Property_INTERFACE_DEFINED__ */
  4397. #ifndef __Properties_INTERFACE_DEFINED__
  4398. #define __Properties_INTERFACE_DEFINED__
  4399. /****************************************
  4400.  * Generated header for interface: Properties
  4401.  * at Thu Dec 05 17:09:47 1996
  4402.  * using MIDL 3.00.30
  4403.  ****************************************/
  4404. /* [object][uuid][helpstring][helpcontext][nonextensible][dual] */ 
  4405. EXTERN_C const IID IID_Properties;
  4406. #if defined(__cplusplus) && !defined(CINTERFACE)
  4407.     
  4408.     interface ADOProperties : public _ADOCollection
  4409.     {
  4410.     public:
  4411.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  4412.             /* [in] */ VARIANT Index,
  4413.             /* [retval][out] */ ADOProperty __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  4414.         
  4415.     };
  4416.     
  4417. #else     /* C style interface */
  4418.     typedef struct PropertiesVtbl
  4419.     {
  4420.         BEGIN_INTERFACE
  4421.         
  4422.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4423.             ADOProperties __RPC_FAR * This,
  4424.             /* [in] */ REFIID riid,
  4425.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4426.         
  4427.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4428.             ADOProperties __RPC_FAR * This);
  4429.         
  4430.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4431.             ADOProperties __RPC_FAR * This);
  4432.         
  4433.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  4434.             ADOProperties __RPC_FAR * This,
  4435.             /* [out] */ UINT __RPC_FAR *pctinfo);
  4436.         
  4437.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  4438.             ADOProperties __RPC_FAR * This,
  4439.             /* [in] */ UINT itinfo,
  4440.             /* [in] */ LCID lcid,
  4441.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *pptinfo);
  4442.         
  4443.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  4444.             ADOProperties __RPC_FAR * This,
  4445.             /* [in] */ REFIID riid,
  4446.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  4447.             /* [in] */ UINT cNames,
  4448.             /* [in] */ LCID lcid,
  4449.             /* [size_is][out][in] */ DISPID __RPC_FAR *rgdispid);
  4450.         
  4451.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  4452.             ADOProperties __RPC_FAR * This,
  4453.             /* [in] */ DISPID dispidMember,
  4454.             /* [in] */ REFIID riid,
  4455.             /* [in] */ LCID lcid,
  4456.             /* [in] */ WORD wFlags,
  4457.             /* [unique][in] */ DISPPARAMS __RPC_FAR *pdispparams,
  4458.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarResult,
  4459.             /* [out] */ EXCEPINFO __RPC_FAR *pexcepinfo,
  4460.             /* [out] */ UINT __RPC_FAR *puArgErr);
  4461.         
  4462.         /* [helpstring][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  4463.             ADOProperties __RPC_FAR * This,
  4464.             /* [retval][out] */ long __RPC_FAR *c);
  4465.         
  4466.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *_NewEnum )( 
  4467.             ADOProperties __RPC_FAR * This,
  4468.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  4469.         
  4470.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  4471.             ADOProperties __RPC_FAR * This);
  4472.         
  4473.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  4474.             ADOProperties __RPC_FAR * This,
  4475.             /* [in] */ VARIANT Index,
  4476.             /* [retval][out] */ ADOProperty __RPC_FAR *__RPC_FAR *ppvObject);
  4477.         
  4478.         END_INTERFACE
  4479.     } PropertiesVtbl;
  4480.     interface Properties
  4481.     {
  4482.         CONST_VTBL struct PropertiesVtbl __RPC_FAR *lpVtbl;
  4483.     };
  4484.     
  4485. #ifdef COBJMACROS
  4486. #define Properties_QueryInterface(This,riid,ppvObject)    \
  4487.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4488. #define Properties_AddRef(This)    \
  4489.     (This)->lpVtbl -> AddRef(This)
  4490. #define Properties_Release(This)    \
  4491.     (This)->lpVtbl -> Release(This)
  4492. #define Properties_GetTypeInfoCount(This,pctinfo)    \
  4493.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  4494. #define Properties_GetTypeInfo(This,itinfo,lcid,pptinfo)    \
  4495.     (This)->lpVtbl -> GetTypeInfo(This,itinfo,lcid,pptinfo)
  4496. #define Properties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)    \
  4497.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgdispid)
  4498. #define Properties_Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)    \
  4499.     (This)->lpVtbl -> Invoke(This,dispidMember,riid,lcid,wFlags,pdispparams,pvarResult,pexcepinfo,puArgErr)
  4500. #define Properties_get_Count(This,c)    \
  4501.     (This)->lpVtbl -> get_Count(This,c)
  4502. #define Properties__NewEnum(This,ppvObject)    \
  4503.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  4504. #define Properties_Refresh(This)    \
  4505.     (This)->lpVtbl -> Refresh(This)
  4506. #define Properties_get_Item(This,Index,ppvObject)    \
  4507.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  4508. #endif /* COBJMACROS */
  4509. #endif     /* C style interface */
  4510. /* [id][propget] */ HRESULT STDMETHODCALLTYPE Properties_get_Item_Proxy( 
  4511.     ADOProperties __RPC_FAR * This,
  4512.     /* [in] */ VARIANT Index,
  4513.     /* [retval][out] */ ADOProperty __RPC_FAR *__RPC_FAR *ppvObject);
  4514. void __RPC_STUB Properties_get_Item_Stub(
  4515.     IRpcStubBuffer *This,
  4516.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4517.     PRPC_MESSAGE _pRpcMessage,
  4518.     DWORD *_pdwStubPhase);
  4519. #endif     /* __Properties_INTERFACE_DEFINED__ */
  4520. #endif /* __ADODB_LIBRARY_DEFINED__ */
  4521. /* Additional Prototypes for ALL interfaces */
  4522. /* end of Additional Prototypes */
  4523. #ifdef __cplusplus
  4524. }
  4525. #endif
  4526. #endif
  4527. #endif // _ADOINT_H_
  4528.