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