AdoInt.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:471k
源码类别:

模拟服务器

开发平台:

C/C++

  1.         
  2.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CursorLocation )( 
  3.             _ADORecordset * This,
  4.             /* [retval][out] */ CursorLocationEnum *plCursorLoc);
  5.         
  6.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CursorLocation )( 
  7.             _ADORecordset * This,
  8.             /* [in] */ CursorLocationEnum lCursorLoc);
  9.         
  10.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *NextADORecordset )( 
  11.             _ADORecordset * This,
  12.             /* [optional][out] */ VARIANT *RecordsAffected,
  13.             /* [retval][out] */ _ADORecordset **ppiRs);
  14.         
  15.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Supports )( 
  16.             _ADORecordset * This,
  17.             /* [in] */ CursorOptionEnum CursorOptions,
  18.             /* [retval][out] */ VARIANT_BOOL *pb);
  19.         
  20.         /* [hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Collect )( 
  21.             _ADORecordset * This,
  22.             /* [in] */ VARIANT Index,
  23.             /* [retval][out] */ VARIANT *pvar);
  24.         
  25.         /* [hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Collect )( 
  26.             _ADORecordset * This,
  27.             /* [in] */ VARIANT Index,
  28.             /* [in] */ VARIANT value);
  29.         
  30.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MarshalOptions )( 
  31.             _ADORecordset * This,
  32.             /* [retval][out] */ MarshalOptionsEnum *peMarshal);
  33.         
  34.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MarshalOptions )( 
  35.             _ADORecordset * This,
  36.             /* [in] */ MarshalOptionsEnum eMarshal);
  37.         
  38.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Find )( 
  39.             _ADORecordset * This,
  40.             /* [in] */ BSTR Criteria,
  41.             /* [defaultvalue][in] */ ADO_LONGPTR SkipRecords,
  42.             /* [defaultvalue][in] */ SearchDirectionEnum SearchDirection,
  43.             /* [optional][in] */ VARIANT Start);
  44.         
  45.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Cancel )( 
  46.             _ADORecordset * This);
  47.         
  48.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DataSource )( 
  49.             _ADORecordset * This,
  50.             /* [retval][out] */ IUnknown **ppunkDataSource);
  51.         
  52.         /* [helpcontext][propputref][id] */ HRESULT ( STDMETHODCALLTYPE *putref_DataSource )( 
  53.             _ADORecordset * This,
  54.             /* [in] */ IUnknown *punkDataSource);
  55.         
  56.         /* [hidden] */ HRESULT ( STDMETHODCALLTYPE *_xSave )( 
  57.             _ADORecordset * This,
  58.             /* [defaultvalue][in] */ BSTR FileName,
  59.             /* [defaultvalue][in] */ PersistFormatEnum PersistFormat);
  60.         
  61.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ActiveCommand )( 
  62.             _ADORecordset * This,
  63.             /* [retval][out] */ IDispatch **ppCmd);
  64.         
  65.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StayInSync )( 
  66.             _ADORecordset * This,
  67.             /* [in] */ VARIANT_BOOL bStayInSync);
  68.         
  69.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StayInSync )( 
  70.             _ADORecordset * This,
  71.             /* [retval][out] */ VARIANT_BOOL *pbStayInSync);
  72.         
  73.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetString )( 
  74.             _ADORecordset * This,
  75.             /* [defaultvalue][in] */ StringFormatEnum StringFormat,
  76.             /* [defaultvalue][in] */ long NumRows,
  77.             /* [defaultvalue][in] */ BSTR ColumnDelimeter,
  78.             /* [defaultvalue][in] */ BSTR RowDelimeter,
  79.             /* [defaultvalue][in] */ BSTR NullExpr,
  80.             /* [retval][out] */ BSTR *pRetString);
  81.         
  82.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DataMember )( 
  83.             _ADORecordset * This,
  84.             /* [retval][out] */ BSTR *pbstrDataMember);
  85.         
  86.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DataMember )( 
  87.             _ADORecordset * This,
  88.             /* [in] */ BSTR bstrDataMember);
  89.         
  90.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CompareBookmarks )( 
  91.             _ADORecordset * This,
  92.             /* [in] */ VARIANT Bookmark1,
  93.             /* [in] */ VARIANT Bookmark2,
  94.             /* [retval][out] */ CompareEnum *pCompare);
  95.         
  96.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
  97.             _ADORecordset * This,
  98.             /* [defaultvalue][in] */ LockTypeEnum LockType,
  99.             /* [retval][out] */ _ADORecordset **ppvObject);
  100.         
  101.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Resync )( 
  102.             _ADORecordset * This,
  103.             /* [defaultvalue][in] */ AffectEnum AffectRecords,
  104.             /* [defaultvalue][in] */ ResyncEnum ResyncValues);
  105.         
  106.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Seek )( 
  107.             _ADORecordset * This,
  108.             /* [in] */ VARIANT KeyValues,
  109.             /* [defaultvalue][in] */ SeekEnum SeekOption);
  110.         
  111.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Index )( 
  112.             _ADORecordset * This,
  113.             /* [in] */ BSTR Index);
  114.         
  115.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Index )( 
  116.             _ADORecordset * This,
  117.             /* [retval][out] */ BSTR *pbstrIndex);
  118.         
  119.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Save )( 
  120.             _ADORecordset * This,
  121.             /* [optional][in] */ VARIANT Destination,
  122.             /* [defaultvalue][in] */ PersistFormatEnum PersistFormat);
  123.         
  124.         END_INTERFACE
  125.     } _RecordsetVtbl;
  126.     interface _Recordset
  127.     {
  128.         CONST_VTBL struct _RecordsetVtbl *lpVtbl;
  129.     };
  130.     
  131. #ifdef COBJMACROS
  132. #define _Recordset_QueryInterface(This,riid,ppvObject)
  133.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  134. #define _Recordset_AddRef(This)
  135.     (This)->lpVtbl -> AddRef(This)
  136. #define _Recordset_Release(This)
  137.     (This)->lpVtbl -> Release(This)
  138. #define _Recordset_GetTypeInfoCount(This,pctinfo)
  139.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  140. #define _Recordset_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  141.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  142. #define _Recordset_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  143.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  144. #define _Recordset_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  145.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  146. #define _Recordset_get_Properties(This,ppvObject)
  147.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  148. #define _Recordset_get_AbsolutePosition(This,pl)
  149.     (This)->lpVtbl -> get_AbsolutePosition(This,pl)
  150. #define _Recordset_put_AbsolutePosition(This,Position)
  151.     (This)->lpVtbl -> put_AbsolutePosition(This,Position)
  152. #define _Recordset_putref_ActiveConnection(This,pconn)
  153.     (This)->lpVtbl -> putref_ActiveConnection(This,pconn)
  154. #define _Recordset_put_ActiveConnection(This,vConn)
  155.     (This)->lpVtbl -> put_ActiveConnection(This,vConn)
  156. #define _Recordset_get_ActiveConnection(This,pvar)
  157.     (This)->lpVtbl -> get_ActiveConnection(This,pvar)
  158. #define _Recordset_get_BOF(This,pb)
  159.     (This)->lpVtbl -> get_BOF(This,pb)
  160. #define _Recordset_get_Bookmark(This,pvBookmark)
  161.     (This)->lpVtbl -> get_Bookmark(This,pvBookmark)
  162. #define _Recordset_put_Bookmark(This,vBookmark)
  163.     (This)->lpVtbl -> put_Bookmark(This,vBookmark)
  164. #define _Recordset_get_CacheSize(This,pl)
  165.     (This)->lpVtbl -> get_CacheSize(This,pl)
  166. #define _Recordset_put_CacheSize(This,CacheSize)
  167.     (This)->lpVtbl -> put_CacheSize(This,CacheSize)
  168. #define _Recordset_get_CursorType(This,plCursorType)
  169.     (This)->lpVtbl -> get_CursorType(This,plCursorType)
  170. #define _Recordset_put_CursorType(This,lCursorType)
  171.     (This)->lpVtbl -> put_CursorType(This,lCursorType)
  172. #define _Recordset_get_EOF(This,pb)
  173.     (This)->lpVtbl -> get_EOF(This,pb)
  174. #define _Recordset_get_Fields(This,ppvObject)
  175.     (This)->lpVtbl -> get_Fields(This,ppvObject)
  176. #define _Recordset_get_LockType(This,plLockType)
  177.     (This)->lpVtbl -> get_LockType(This,plLockType)
  178. #define _Recordset_put_LockType(This,lLockType)
  179.     (This)->lpVtbl -> put_LockType(This,lLockType)
  180. #define _Recordset_get_MaxRecords(This,plMaxRecords)
  181.     (This)->lpVtbl -> get_MaxRecords(This,plMaxRecords)
  182. #define _Recordset_put_MaxRecords(This,lMaxRecords)
  183.     (This)->lpVtbl -> put_MaxRecords(This,lMaxRecords)
  184. #define _Recordset_get_RecordCount(This,pl)
  185.     (This)->lpVtbl -> get_RecordCount(This,pl)
  186. #define _Recordset_putref_Source(This,pcmd)
  187.     (This)->lpVtbl -> putref_Source(This,pcmd)
  188. #define _Recordset_put_Source(This,bstrConn)
  189.     (This)->lpVtbl -> put_Source(This,bstrConn)
  190. #define _Recordset_get_Source(This,pvSource)
  191.     (This)->lpVtbl -> get_Source(This,pvSource)
  192. #define _Recordset_AddNew(This,FieldList,Values)
  193.     (This)->lpVtbl -> AddNew(This,FieldList,Values)
  194. #define _Recordset_CancelUpdate(This)
  195.     (This)->lpVtbl -> CancelUpdate(This)
  196. #define _Recordset_Close(This)
  197.     (This)->lpVtbl -> Close(This)
  198. #define _Recordset_Delete(This,AffectRecords)
  199.     (This)->lpVtbl -> Delete(This,AffectRecords)
  200. #define _Recordset_GetRows(This,Rows,Start,Fields,pvar)
  201.     (This)->lpVtbl -> GetRows(This,Rows,Start,Fields,pvar)
  202. #define _Recordset_Move(This,NumRecords,Start)
  203.     (This)->lpVtbl -> Move(This,NumRecords,Start)
  204. #define _Recordset_MoveNext(This)
  205.     (This)->lpVtbl -> MoveNext(This)
  206. #define _Recordset_MovePrevious(This)
  207.     (This)->lpVtbl -> MovePrevious(This)
  208. #define _Recordset_MoveFirst(This)
  209.     (This)->lpVtbl -> MoveFirst(This)
  210. #define _Recordset_MoveLast(This)
  211.     (This)->lpVtbl -> MoveLast(This)
  212. #define _Recordset_Open(This,Source,ActiveConnection,CursorType,LockType,Options)
  213.     (This)->lpVtbl -> Open(This,Source,ActiveConnection,CursorType,LockType,Options)
  214. #define _Recordset_Requery(This,Options)
  215.     (This)->lpVtbl -> Requery(This,Options)
  216. #define _Recordset__xResync(This,AffectRecords)
  217.     (This)->lpVtbl -> _xResync(This,AffectRecords)
  218. #define _Recordset_Update(This,Fields,Values)
  219.     (This)->lpVtbl -> Update(This,Fields,Values)
  220. #define _Recordset_get_AbsolutePage(This,pl)
  221.     (This)->lpVtbl -> get_AbsolutePage(This,pl)
  222. #define _Recordset_put_AbsolutePage(This,Page)
  223.     (This)->lpVtbl -> put_AbsolutePage(This,Page)
  224. #define _Recordset_get_EditMode(This,pl)
  225.     (This)->lpVtbl -> get_EditMode(This,pl)
  226. #define _Recordset_get_Filter(This,Criteria)
  227.     (This)->lpVtbl -> get_Filter(This,Criteria)
  228. #define _Recordset_put_Filter(This,Criteria)
  229.     (This)->lpVtbl -> put_Filter(This,Criteria)
  230. #define _Recordset_get_PageCount(This,pl)
  231.     (This)->lpVtbl -> get_PageCount(This,pl)
  232. #define _Recordset_get_PageSize(This,pl)
  233.     (This)->lpVtbl -> get_PageSize(This,pl)
  234. #define _Recordset_put_PageSize(This,PageSize)
  235.     (This)->lpVtbl -> put_PageSize(This,PageSize)
  236. #define _Recordset_get_Sort(This,Criteria)
  237.     (This)->lpVtbl -> get_Sort(This,Criteria)
  238. #define _Recordset_put_Sort(This,Criteria)
  239.     (This)->lpVtbl -> put_Sort(This,Criteria)
  240. #define _Recordset_get_Status(This,pl)
  241.     (This)->lpVtbl -> get_Status(This,pl)
  242. #define _Recordset_get_State(This,plObjState)
  243.     (This)->lpVtbl -> get_State(This,plObjState)
  244. #define _Recordset__xClone(This,ppvObject)
  245.     (This)->lpVtbl -> _xClone(This,ppvObject)
  246. #define _Recordset_UpdateBatch(This,AffectRecords)
  247.     (This)->lpVtbl -> UpdateBatch(This,AffectRecords)
  248. #define _Recordset_CancelBatch(This,AffectRecords)
  249.     (This)->lpVtbl -> CancelBatch(This,AffectRecords)
  250. #define _Recordset_get_CursorLocation(This,plCursorLoc)
  251.     (This)->lpVtbl -> get_CursorLocation(This,plCursorLoc)
  252. #define _Recordset_put_CursorLocation(This,lCursorLoc)
  253.     (This)->lpVtbl -> put_CursorLocation(This,lCursorLoc)
  254. #define _Recordset_NextRecordset(This,RecordsAffected,ppiRs)
  255.     (This)->lpVtbl -> NextRecordset(This,RecordsAffected,ppiRs)
  256. #define _Recordset_Supports(This,CursorOptions,pb)
  257.     (This)->lpVtbl -> Supports(This,CursorOptions,pb)
  258. #define _Recordset_get_Collect(This,Index,pvar)
  259.     (This)->lpVtbl -> get_Collect(This,Index,pvar)
  260. #define _Recordset_put_Collect(This,Index,value)
  261.     (This)->lpVtbl -> put_Collect(This,Index,value)
  262. #define _Recordset_get_MarshalOptions(This,peMarshal)
  263.     (This)->lpVtbl -> get_MarshalOptions(This,peMarshal)
  264. #define _Recordset_put_MarshalOptions(This,eMarshal)
  265.     (This)->lpVtbl -> put_MarshalOptions(This,eMarshal)
  266. #define _Recordset_Find(This,Criteria,SkipRecords,SearchDirection,Start)
  267.     (This)->lpVtbl -> Find(This,Criteria,SkipRecords,SearchDirection,Start)
  268. #define _Recordset_Cancel(This)
  269.     (This)->lpVtbl -> Cancel(This)
  270. #define _Recordset_get_DataSource(This,ppunkDataSource)
  271.     (This)->lpVtbl -> get_DataSource(This,ppunkDataSource)
  272. #define _Recordset_putref_DataSource(This,punkDataSource)
  273.     (This)->lpVtbl -> putref_DataSource(This,punkDataSource)
  274. #define _Recordset__xSave(This,FileName,PersistFormat)
  275.     (This)->lpVtbl -> _xSave(This,FileName,PersistFormat)
  276. #define _Recordset_get_ActiveCommand(This,ppCmd)
  277.     (This)->lpVtbl -> get_ActiveCommand(This,ppCmd)
  278. #define _Recordset_put_StayInSync(This,bStayInSync)
  279.     (This)->lpVtbl -> put_StayInSync(This,bStayInSync)
  280. #define _Recordset_get_StayInSync(This,pbStayInSync)
  281.     (This)->lpVtbl -> get_StayInSync(This,pbStayInSync)
  282. #define _Recordset_GetString(This,StringFormat,NumRows,ColumnDelimeter,RowDelimeter,NullExpr,pRetString)
  283.     (This)->lpVtbl -> GetString(This,StringFormat,NumRows,ColumnDelimeter,RowDelimeter,NullExpr,pRetString)
  284. #define _Recordset_get_DataMember(This,pbstrDataMember)
  285.     (This)->lpVtbl -> get_DataMember(This,pbstrDataMember)
  286. #define _Recordset_put_DataMember(This,bstrDataMember)
  287.     (This)->lpVtbl -> put_DataMember(This,bstrDataMember)
  288. #define _Recordset_CompareBookmarks(This,Bookmark1,Bookmark2,pCompare)
  289.     (This)->lpVtbl -> CompareBookmarks(This,Bookmark1,Bookmark2,pCompare)
  290. #define _Recordset_Clone(This,LockType,ppvObject)
  291.     (This)->lpVtbl -> Clone(This,LockType,ppvObject)
  292. #define _Recordset_Resync(This,AffectRecords,ResyncValues)
  293.     (This)->lpVtbl -> Resync(This,AffectRecords,ResyncValues)
  294. #define _Recordset_Seek(This,KeyValues,SeekOption)
  295.     (This)->lpVtbl -> Seek(This,KeyValues,SeekOption)
  296. #define _Recordset_put_Index(This,Index)
  297.     (This)->lpVtbl -> put_Index(This,Index)
  298. #define _Recordset_get_Index(This,pbstrIndex)
  299.     (This)->lpVtbl -> get_Index(This,pbstrIndex)
  300. #define _Recordset_Save(This,Destination,PersistFormat)
  301.     (This)->lpVtbl -> Save(This,Destination,PersistFormat)
  302. #endif /* COBJMACROS */
  303. #endif  /* C style interface */
  304. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Recordset_Save_Proxy( 
  305.     _ADORecordset * This,
  306.     /* [optional][in] */ VARIANT Destination,
  307.     /* [defaultvalue][in] */ PersistFormatEnum PersistFormat);
  308. void __RPC_STUB _Recordset_Save_Stub(
  309.     IRpcStubBuffer *This,
  310.     IRpcChannelBuffer *_pRpcChannelBuffer,
  311.     PRPC_MESSAGE _pRpcMessage,
  312.     DWORD *_pdwStubPhase);
  313. #endif  /* ___Recordset_INTERFACE_DEFINED__ */
  314. #ifndef __ADORecordsetConstruction_INTERFACE_DEFINED__
  315. #define __ADORecordsetConstruction_INTERFACE_DEFINED__
  316. /* interface ADORecordsetConstruction */
  317. /* [object][uuid][restricted] */ 
  318. EXTERN_C const IID IID_ADORecordsetConstruction;
  319. #if defined(__cplusplus) && !defined(CINTERFACE)
  320.     
  321.     MIDL_INTERFACE("00000283-0000-0010-8000-00AA006D2EA4")
  322.     ADORecordsetConstruction : public IDispatch
  323.     {
  324.     public:
  325.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Rowset( 
  326.             /* [retval][out] */ IUnknown **ppRowset) = 0;
  327.         
  328.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Rowset( 
  329.             /* [in] */ IUnknown *pRowset) = 0;
  330.         
  331.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Chapter( 
  332.             /* [retval][out] */ ADO_LONGPTR *plChapter) = 0;
  333.         
  334.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Chapter( 
  335.             /* [in] */ ADO_LONGPTR lChapter) = 0;
  336.         
  337.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RowPosition( 
  338.             /* [retval][out] */ IUnknown **ppRowPos) = 0;
  339.         
  340.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RowPosition( 
  341.             /* [in] */ IUnknown *pRowPos) = 0;
  342.         
  343.     };
  344.     
  345. #else  /* C style interface */
  346.     typedef struct ADORecordsetConstructionVtbl
  347.     {
  348.         BEGIN_INTERFACE
  349.         
  350.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  351.             ADORecordsetConstruction * This,
  352.             /* [in] */ REFIID riid,
  353.             /* [iid_is][out] */ void **ppvObject);
  354.         
  355.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  356.             ADORecordsetConstruction * This);
  357.         
  358.         ULONG ( STDMETHODCALLTYPE *Release )( 
  359.             ADORecordsetConstruction * This);
  360.         
  361.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  362.             ADORecordsetConstruction * This,
  363.             /* [out] */ UINT *pctinfo);
  364.         
  365.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  366.             ADORecordsetConstruction * This,
  367.             /* [in] */ UINT iTInfo,
  368.             /* [in] */ LCID lcid,
  369.             /* [out] */ ITypeInfo **ppTInfo);
  370.         
  371.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  372.             ADORecordsetConstruction * This,
  373.             /* [in] */ REFIID riid,
  374.             /* [size_is][in] */ LPOLESTR *rgszNames,
  375.             /* [in] */ UINT cNames,
  376.             /* [in] */ LCID lcid,
  377.             /* [size_is][out] */ DISPID *rgDispId);
  378.         
  379.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  380.             ADORecordsetConstruction * This,
  381.             /* [in] */ DISPID dispIdMember,
  382.             /* [in] */ REFIID riid,
  383.             /* [in] */ LCID lcid,
  384.             /* [in] */ WORD wFlags,
  385.             /* [out][in] */ DISPPARAMS *pDispParams,
  386.             /* [out] */ VARIANT *pVarResult,
  387.             /* [out] */ EXCEPINFO *pExcepInfo,
  388.             /* [out] */ UINT *puArgErr);
  389.         
  390.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rowset )( 
  391.             ADORecordsetConstruction * This,
  392.             /* [retval][out] */ IUnknown **ppRowset);
  393.         
  394.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rowset )( 
  395.             ADORecordsetConstruction * This,
  396.             /* [in] */ IUnknown *pRowset);
  397.         
  398.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Chapter )( 
  399.             ADORecordsetConstruction * This,
  400.             /* [retval][out] */ ADO_LONGPTR *plChapter);
  401.         
  402.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Chapter )( 
  403.             ADORecordsetConstruction * This,
  404.             /* [in] */ ADO_LONGPTR lChapter);
  405.         
  406.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RowPosition )( 
  407.             ADORecordsetConstruction * This,
  408.             /* [retval][out] */ IUnknown **ppRowPos);
  409.         
  410.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RowPosition )( 
  411.             ADORecordsetConstruction * This,
  412.             /* [in] */ IUnknown *pRowPos);
  413.         
  414.         END_INTERFACE
  415.     } ADORecordsetConstructionVtbl;
  416.     interface ADORecordsetConstruction
  417.     {
  418.         CONST_VTBL struct ADORecordsetConstructionVtbl *lpVtbl;
  419.     };
  420.     
  421. #ifdef COBJMACROS
  422. #define ADORecordsetConstruction_QueryInterface(This,riid,ppvObject)
  423.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  424. #define ADORecordsetConstruction_AddRef(This)
  425.     (This)->lpVtbl -> AddRef(This)
  426. #define ADORecordsetConstruction_Release(This)
  427.     (This)->lpVtbl -> Release(This)
  428. #define ADORecordsetConstruction_GetTypeInfoCount(This,pctinfo)
  429.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  430. #define ADORecordsetConstruction_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  431.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  432. #define ADORecordsetConstruction_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  433.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  434. #define ADORecordsetConstruction_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  435.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  436. #define ADORecordsetConstruction_get_Rowset(This,ppRowset)
  437.     (This)->lpVtbl -> get_Rowset(This,ppRowset)
  438. #define ADORecordsetConstruction_put_Rowset(This,pRowset)
  439.     (This)->lpVtbl -> put_Rowset(This,pRowset)
  440. #define ADORecordsetConstruction_get_Chapter(This,plChapter)
  441.     (This)->lpVtbl -> get_Chapter(This,plChapter)
  442. #define ADORecordsetConstruction_put_Chapter(This,lChapter)
  443.     (This)->lpVtbl -> put_Chapter(This,lChapter)
  444. #define ADORecordsetConstruction_get_RowPosition(This,ppRowPos)
  445.     (This)->lpVtbl -> get_RowPosition(This,ppRowPos)
  446. #define ADORecordsetConstruction_put_RowPosition(This,pRowPos)
  447.     (This)->lpVtbl -> put_RowPosition(This,pRowPos)
  448. #endif /* COBJMACROS */
  449. #endif  /* C style interface */
  450. /* [propget] */ HRESULT STDMETHODCALLTYPE ADORecordsetConstruction_get_Rowset_Proxy( 
  451.     ADORecordsetConstruction * This,
  452.     /* [retval][out] */ IUnknown **ppRowset);
  453. void __RPC_STUB ADORecordsetConstruction_get_Rowset_Stub(
  454.     IRpcStubBuffer *This,
  455.     IRpcChannelBuffer *_pRpcChannelBuffer,
  456.     PRPC_MESSAGE _pRpcMessage,
  457.     DWORD *_pdwStubPhase);
  458. /* [propput] */ HRESULT STDMETHODCALLTYPE ADORecordsetConstruction_put_Rowset_Proxy( 
  459.     ADORecordsetConstruction * This,
  460.     /* [in] */ IUnknown *pRowset);
  461. void __RPC_STUB ADORecordsetConstruction_put_Rowset_Stub(
  462.     IRpcStubBuffer *This,
  463.     IRpcChannelBuffer *_pRpcChannelBuffer,
  464.     PRPC_MESSAGE _pRpcMessage,
  465.     DWORD *_pdwStubPhase);
  466. /* [propget] */ HRESULT STDMETHODCALLTYPE ADORecordsetConstruction_get_Chapter_Proxy( 
  467.     ADORecordsetConstruction * This,
  468.     /* [retval][out] */ ADO_LONGPTR *plChapter);
  469. void __RPC_STUB ADORecordsetConstruction_get_Chapter_Stub(
  470.     IRpcStubBuffer *This,
  471.     IRpcChannelBuffer *_pRpcChannelBuffer,
  472.     PRPC_MESSAGE _pRpcMessage,
  473.     DWORD *_pdwStubPhase);
  474. /* [propput] */ HRESULT STDMETHODCALLTYPE ADORecordsetConstruction_put_Chapter_Proxy( 
  475.     ADORecordsetConstruction * This,
  476.     /* [in] */ ADO_LONGPTR lChapter);
  477. void __RPC_STUB ADORecordsetConstruction_put_Chapter_Stub(
  478.     IRpcStubBuffer *This,
  479.     IRpcChannelBuffer *_pRpcChannelBuffer,
  480.     PRPC_MESSAGE _pRpcMessage,
  481.     DWORD *_pdwStubPhase);
  482. /* [propget] */ HRESULT STDMETHODCALLTYPE ADORecordsetConstruction_get_RowPosition_Proxy( 
  483.     ADORecordsetConstruction * This,
  484.     /* [retval][out] */ IUnknown **ppRowPos);
  485. void __RPC_STUB ADORecordsetConstruction_get_RowPosition_Stub(
  486.     IRpcStubBuffer *This,
  487.     IRpcChannelBuffer *_pRpcChannelBuffer,
  488.     PRPC_MESSAGE _pRpcMessage,
  489.     DWORD *_pdwStubPhase);
  490. /* [propput] */ HRESULT STDMETHODCALLTYPE ADORecordsetConstruction_put_RowPosition_Proxy( 
  491.     ADORecordsetConstruction * This,
  492.     /* [in] */ IUnknown *pRowPos);
  493. void __RPC_STUB ADORecordsetConstruction_put_RowPosition_Stub(
  494.     IRpcStubBuffer *This,
  495.     IRpcChannelBuffer *_pRpcChannelBuffer,
  496.     PRPC_MESSAGE _pRpcMessage,
  497.     DWORD *_pdwStubPhase);
  498. #endif  /* __ADORecordsetConstruction_INTERFACE_DEFINED__ */
  499. #ifndef __Field15_INTERFACE_DEFINED__
  500. #define __Field15_INTERFACE_DEFINED__
  501. /* interface Field15 */
  502. /* [object][helpcontext][uuid][hidden][nonextensible][dual] */ 
  503. EXTERN_C const IID IID_Field15;
  504. #if defined(__cplusplus) && !defined(CINTERFACE)
  505.     
  506.     MIDL_INTERFACE("00000505-0000-0010-8000-00AA006D2EA4")
  507.     Field15 : public _ADO
  508.     {
  509.     public:
  510.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_ActualSize( 
  511.             /* [retval][out] */ ADO_LONGPTR *pl) = 0;
  512.         
  513.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  514.             /* [retval][out] */ long *pl) = 0;
  515.         
  516.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_DefinedSize( 
  517.             /* [retval][out] */ ADO_LONGPTR *pl) = 0;
  518.         
  519.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Name( 
  520.             /* [retval][out] */ BSTR *pbstr) = 0;
  521.         
  522.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Type( 
  523.             /* [retval][out] */ DataTypeEnum *pDataType) = 0;
  524.         
  525.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Value( 
  526.             /* [retval][out] */ VARIANT *pvar) = 0;
  527.         
  528.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Value( 
  529.             /* [in] */ VARIANT Val) = 0;
  530.         
  531.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Precision( 
  532.             /* [retval][out] */ BYTE *pbPrecision) = 0;
  533.         
  534.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_NumericScale( 
  535.             /* [retval][out] */ BYTE *pbNumericScale) = 0;
  536.         
  537.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendChunk( 
  538.             /* [in] */ VARIANT Data) = 0;
  539.         
  540.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetChunk( 
  541.             /* [in] */ long Length,
  542.             /* [retval][out] */ VARIANT *pvar) = 0;
  543.         
  544.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_OriginalValue( 
  545.             /* [retval][out] */ VARIANT *pvar) = 0;
  546.         
  547.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_UnderlyingValue( 
  548.             /* [retval][out] */ VARIANT *pvar) = 0;
  549.         
  550.     };
  551.     
  552. #else  /* C style interface */
  553.     typedef struct Field15Vtbl
  554.     {
  555.         BEGIN_INTERFACE
  556.         
  557.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  558.             Field15 * This,
  559.             /* [in] */ REFIID riid,
  560.             /* [iid_is][out] */ void **ppvObject);
  561.         
  562.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  563.             Field15 * This);
  564.         
  565.         ULONG ( STDMETHODCALLTYPE *Release )( 
  566.             Field15 * This);
  567.         
  568.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  569.             Field15 * This,
  570.             /* [out] */ UINT *pctinfo);
  571.         
  572.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  573.             Field15 * This,
  574.             /* [in] */ UINT iTInfo,
  575.             /* [in] */ LCID lcid,
  576.             /* [out] */ ITypeInfo **ppTInfo);
  577.         
  578.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  579.             Field15 * This,
  580.             /* [in] */ REFIID riid,
  581.             /* [size_is][in] */ LPOLESTR *rgszNames,
  582.             /* [in] */ UINT cNames,
  583.             /* [in] */ LCID lcid,
  584.             /* [size_is][out] */ DISPID *rgDispId);
  585.         
  586.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  587.             Field15 * This,
  588.             /* [in] */ DISPID dispIdMember,
  589.             /* [in] */ REFIID riid,
  590.             /* [in] */ LCID lcid,
  591.             /* [in] */ WORD wFlags,
  592.             /* [out][in] */ DISPPARAMS *pDispParams,
  593.             /* [out] */ VARIANT *pVarResult,
  594.             /* [out] */ EXCEPINFO *pExcepInfo,
  595.             /* [out] */ UINT *puArgErr);
  596.         
  597.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Properties )( 
  598.             Field15 * This,
  599.             /* [retval][out] */ ADOProperties **ppvObject);
  600.         
  601.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ActualSize )( 
  602.             Field15 * This,
  603.             /* [retval][out] */ ADO_LONGPTR *pl);
  604.         
  605.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Attributes )( 
  606.             Field15 * This,
  607.             /* [retval][out] */ long *pl);
  608.         
  609.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DefinedSize )( 
  610.             Field15 * This,
  611.             /* [retval][out] */ ADO_LONGPTR *pl);
  612.         
  613.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  614.             Field15 * This,
  615.             /* [retval][out] */ BSTR *pbstr);
  616.         
  617.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  618.             Field15 * This,
  619.             /* [retval][out] */ DataTypeEnum *pDataType);
  620.         
  621.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
  622.             Field15 * This,
  623.             /* [retval][out] */ VARIANT *pvar);
  624.         
  625.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
  626.             Field15 * This,
  627.             /* [in] */ VARIANT Val);
  628.         
  629.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Precision )( 
  630.             Field15 * This,
  631.             /* [retval][out] */ BYTE *pbPrecision);
  632.         
  633.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumericScale )( 
  634.             Field15 * This,
  635.             /* [retval][out] */ BYTE *pbNumericScale);
  636.         
  637.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendChunk )( 
  638.             Field15 * This,
  639.             /* [in] */ VARIANT Data);
  640.         
  641.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetChunk )( 
  642.             Field15 * This,
  643.             /* [in] */ long Length,
  644.             /* [retval][out] */ VARIANT *pvar);
  645.         
  646.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_OriginalValue )( 
  647.             Field15 * This,
  648.             /* [retval][out] */ VARIANT *pvar);
  649.         
  650.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlyingValue )( 
  651.             Field15 * This,
  652.             /* [retval][out] */ VARIANT *pvar);
  653.         
  654.         END_INTERFACE
  655.     } Field15Vtbl;
  656.     interface Field15
  657.     {
  658.         CONST_VTBL struct Field15Vtbl *lpVtbl;
  659.     };
  660.     
  661. #ifdef COBJMACROS
  662. #define Field15_QueryInterface(This,riid,ppvObject)
  663.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  664. #define Field15_AddRef(This)
  665.     (This)->lpVtbl -> AddRef(This)
  666. #define Field15_Release(This)
  667.     (This)->lpVtbl -> Release(This)
  668. #define Field15_GetTypeInfoCount(This,pctinfo)
  669.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  670. #define Field15_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  671.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  672. #define Field15_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  673.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  674. #define Field15_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  675.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  676. #define Field15_get_Properties(This,ppvObject)
  677.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  678. #define Field15_get_ActualSize(This,pl)
  679.     (This)->lpVtbl -> get_ActualSize(This,pl)
  680. #define Field15_get_Attributes(This,pl)
  681.     (This)->lpVtbl -> get_Attributes(This,pl)
  682. #define Field15_get_DefinedSize(This,pl)
  683.     (This)->lpVtbl -> get_DefinedSize(This,pl)
  684. #define Field15_get_Name(This,pbstr)
  685.     (This)->lpVtbl -> get_Name(This,pbstr)
  686. #define Field15_get_Type(This,pDataType)
  687.     (This)->lpVtbl -> get_Type(This,pDataType)
  688. #define Field15_get_Value(This,pvar)
  689.     (This)->lpVtbl -> get_Value(This,pvar)
  690. #define Field15_put_Value(This,Val)
  691.     (This)->lpVtbl -> put_Value(This,Val)
  692. #define Field15_get_Precision(This,pbPrecision)
  693.     (This)->lpVtbl -> get_Precision(This,pbPrecision)
  694. #define Field15_get_NumericScale(This,pbNumericScale)
  695.     (This)->lpVtbl -> get_NumericScale(This,pbNumericScale)
  696. #define Field15_AppendChunk(This,Data)
  697.     (This)->lpVtbl -> AppendChunk(This,Data)
  698. #define Field15_GetChunk(This,Length,pvar)
  699.     (This)->lpVtbl -> GetChunk(This,Length,pvar)
  700. #define Field15_get_OriginalValue(This,pvar)
  701.     (This)->lpVtbl -> get_OriginalValue(This,pvar)
  702. #define Field15_get_UnderlyingValue(This,pvar)
  703.     (This)->lpVtbl -> get_UnderlyingValue(This,pvar)
  704. #endif /* COBJMACROS */
  705. #endif  /* C style interface */
  706. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_ActualSize_Proxy( 
  707.     Field15 * This,
  708.     /* [retval][out] */ ADO_LONGPTR *pl);
  709. void __RPC_STUB Field15_get_ActualSize_Stub(
  710.     IRpcStubBuffer *This,
  711.     IRpcChannelBuffer *_pRpcChannelBuffer,
  712.     PRPC_MESSAGE _pRpcMessage,
  713.     DWORD *_pdwStubPhase);
  714. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_Attributes_Proxy( 
  715.     Field15 * This,
  716.     /* [retval][out] */ long *pl);
  717. void __RPC_STUB Field15_get_Attributes_Stub(
  718.     IRpcStubBuffer *This,
  719.     IRpcChannelBuffer *_pRpcChannelBuffer,
  720.     PRPC_MESSAGE _pRpcMessage,
  721.     DWORD *_pdwStubPhase);
  722. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_DefinedSize_Proxy( 
  723.     Field15 * This,
  724.     /* [retval][out] */ ADO_LONGPTR *pl);
  725. void __RPC_STUB Field15_get_DefinedSize_Stub(
  726.     IRpcStubBuffer *This,
  727.     IRpcChannelBuffer *_pRpcChannelBuffer,
  728.     PRPC_MESSAGE _pRpcMessage,
  729.     DWORD *_pdwStubPhase);
  730. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_Name_Proxy( 
  731.     Field15 * This,
  732.     /* [retval][out] */ BSTR *pbstr);
  733. void __RPC_STUB Field15_get_Name_Stub(
  734.     IRpcStubBuffer *This,
  735.     IRpcChannelBuffer *_pRpcChannelBuffer,
  736.     PRPC_MESSAGE _pRpcMessage,
  737.     DWORD *_pdwStubPhase);
  738. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_Type_Proxy( 
  739.     Field15 * This,
  740.     /* [retval][out] */ DataTypeEnum *pDataType);
  741. void __RPC_STUB Field15_get_Type_Stub(
  742.     IRpcStubBuffer *This,
  743.     IRpcChannelBuffer *_pRpcChannelBuffer,
  744.     PRPC_MESSAGE _pRpcMessage,
  745.     DWORD *_pdwStubPhase);
  746. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_Value_Proxy( 
  747.     Field15 * This,
  748.     /* [retval][out] */ VARIANT *pvar);
  749. void __RPC_STUB Field15_get_Value_Stub(
  750.     IRpcStubBuffer *This,
  751.     IRpcChannelBuffer *_pRpcChannelBuffer,
  752.     PRPC_MESSAGE _pRpcMessage,
  753.     DWORD *_pdwStubPhase);
  754. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE Field15_put_Value_Proxy( 
  755.     Field15 * This,
  756.     /* [in] */ VARIANT Val);
  757. void __RPC_STUB Field15_put_Value_Stub(
  758.     IRpcStubBuffer *This,
  759.     IRpcChannelBuffer *_pRpcChannelBuffer,
  760.     PRPC_MESSAGE _pRpcMessage,
  761.     DWORD *_pdwStubPhase);
  762. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_Precision_Proxy( 
  763.     Field15 * This,
  764.     /* [retval][out] */ BYTE *pbPrecision);
  765. void __RPC_STUB Field15_get_Precision_Stub(
  766.     IRpcStubBuffer *This,
  767.     IRpcChannelBuffer *_pRpcChannelBuffer,
  768.     PRPC_MESSAGE _pRpcMessage,
  769.     DWORD *_pdwStubPhase);
  770. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_NumericScale_Proxy( 
  771.     Field15 * This,
  772.     /* [retval][out] */ BYTE *pbNumericScale);
  773. void __RPC_STUB Field15_get_NumericScale_Stub(
  774.     IRpcStubBuffer *This,
  775.     IRpcChannelBuffer *_pRpcChannelBuffer,
  776.     PRPC_MESSAGE _pRpcMessage,
  777.     DWORD *_pdwStubPhase);
  778. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Field15_AppendChunk_Proxy( 
  779.     Field15 * This,
  780.     /* [in] */ VARIANT Data);
  781. void __RPC_STUB Field15_AppendChunk_Stub(
  782.     IRpcStubBuffer *This,
  783.     IRpcChannelBuffer *_pRpcChannelBuffer,
  784.     PRPC_MESSAGE _pRpcMessage,
  785.     DWORD *_pdwStubPhase);
  786. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Field15_GetChunk_Proxy( 
  787.     Field15 * This,
  788.     /* [in] */ long Length,
  789.     /* [retval][out] */ VARIANT *pvar);
  790. void __RPC_STUB Field15_GetChunk_Stub(
  791.     IRpcStubBuffer *This,
  792.     IRpcChannelBuffer *_pRpcChannelBuffer,
  793.     PRPC_MESSAGE _pRpcMessage,
  794.     DWORD *_pdwStubPhase);
  795. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_OriginalValue_Proxy( 
  796.     Field15 * This,
  797.     /* [retval][out] */ VARIANT *pvar);
  798. void __RPC_STUB Field15_get_OriginalValue_Stub(
  799.     IRpcStubBuffer *This,
  800.     IRpcChannelBuffer *_pRpcChannelBuffer,
  801.     PRPC_MESSAGE _pRpcMessage,
  802.     DWORD *_pdwStubPhase);
  803. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field15_get_UnderlyingValue_Proxy( 
  804.     Field15 * This,
  805.     /* [retval][out] */ VARIANT *pvar);
  806. void __RPC_STUB Field15_get_UnderlyingValue_Stub(
  807.     IRpcStubBuffer *This,
  808.     IRpcChannelBuffer *_pRpcChannelBuffer,
  809.     PRPC_MESSAGE _pRpcMessage,
  810.     DWORD *_pdwStubPhase);
  811. #endif  /* __Field15_INTERFACE_DEFINED__ */
  812. #ifndef __Field20_INTERFACE_DEFINED__
  813. #define __Field20_INTERFACE_DEFINED__
  814. /* interface Field20 */
  815. /* [object][helpcontext][uuid][hidden][nonextensible][dual] */ 
  816. EXTERN_C const IID IID_Field20;
  817. #if defined(__cplusplus) && !defined(CINTERFACE)
  818.     
  819.     MIDL_INTERFACE("0000054C-0000-0010-8000-00AA006D2EA4")
  820.     Field20 : public _ADO
  821.     {
  822.     public:
  823.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_ActualSize( 
  824.             /* [retval][out] */ ADO_LONGPTR *pl) = 0;
  825.         
  826.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  827.             /* [retval][out] */ long *pl) = 0;
  828.         
  829.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_DefinedSize( 
  830.             /* [retval][out] */ ADO_LONGPTR *pl) = 0;
  831.         
  832.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Name( 
  833.             /* [retval][out] */ BSTR *pbstr) = 0;
  834.         
  835.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Type( 
  836.             /* [retval][out] */ DataTypeEnum *pDataType) = 0;
  837.         
  838.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Value( 
  839.             /* [retval][out] */ VARIANT *pvar) = 0;
  840.         
  841.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Value( 
  842.             /* [in] */ VARIANT Val) = 0;
  843.         
  844.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Precision( 
  845.             /* [retval][out] */ BYTE *pbPrecision) = 0;
  846.         
  847.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_NumericScale( 
  848.             /* [retval][out] */ BYTE *pbNumericScale) = 0;
  849.         
  850.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendChunk( 
  851.             /* [in] */ VARIANT Data) = 0;
  852.         
  853.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE GetChunk( 
  854.             /* [in] */ long Length,
  855.             /* [retval][out] */ VARIANT *pvar) = 0;
  856.         
  857.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_OriginalValue( 
  858.             /* [retval][out] */ VARIANT *pvar) = 0;
  859.         
  860.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_UnderlyingValue( 
  861.             /* [retval][out] */ VARIANT *pvar) = 0;
  862.         
  863.         virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DataFormat( 
  864.             /* [retval][out] */ IUnknown **ppiDF) = 0;
  865.         
  866.         virtual /* [propputref][id] */ HRESULT STDMETHODCALLTYPE putref_DataFormat( 
  867.             /* [in] */ IUnknown *piDF) = 0;
  868.         
  869.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Precision( 
  870.             /* [in] */ BYTE bPrecision) = 0;
  871.         
  872.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_NumericScale( 
  873.             /* [in] */ BYTE bScale) = 0;
  874.         
  875.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Type( 
  876.             /* [in] */ DataTypeEnum DataType) = 0;
  877.         
  878.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_DefinedSize( 
  879.             /* [in] */ ADO_LONGPTR lSize) = 0;
  880.         
  881.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Attributes( 
  882.             /* [in] */ long lAttributes) = 0;
  883.         
  884.     };
  885.     
  886. #else  /* C style interface */
  887.     typedef struct Field20Vtbl
  888.     {
  889.         BEGIN_INTERFACE
  890.         
  891.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  892.             Field20 * This,
  893.             /* [in] */ REFIID riid,
  894.             /* [iid_is][out] */ void **ppvObject);
  895.         
  896.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  897.             Field20 * This);
  898.         
  899.         ULONG ( STDMETHODCALLTYPE *Release )( 
  900.             Field20 * This);
  901.         
  902.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  903.             Field20 * This,
  904.             /* [out] */ UINT *pctinfo);
  905.         
  906.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  907.             Field20 * This,
  908.             /* [in] */ UINT iTInfo,
  909.             /* [in] */ LCID lcid,
  910.             /* [out] */ ITypeInfo **ppTInfo);
  911.         
  912.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  913.             Field20 * This,
  914.             /* [in] */ REFIID riid,
  915.             /* [size_is][in] */ LPOLESTR *rgszNames,
  916.             /* [in] */ UINT cNames,
  917.             /* [in] */ LCID lcid,
  918.             /* [size_is][out] */ DISPID *rgDispId);
  919.         
  920.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  921.             Field20 * This,
  922.             /* [in] */ DISPID dispIdMember,
  923.             /* [in] */ REFIID riid,
  924.             /* [in] */ LCID lcid,
  925.             /* [in] */ WORD wFlags,
  926.             /* [out][in] */ DISPPARAMS *pDispParams,
  927.             /* [out] */ VARIANT *pVarResult,
  928.             /* [out] */ EXCEPINFO *pExcepInfo,
  929.             /* [out] */ UINT *puArgErr);
  930.         
  931.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Properties )( 
  932.             Field20 * This,
  933.             /* [retval][out] */ ADOProperties **ppvObject);
  934.         
  935.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ActualSize )( 
  936.             Field20 * This,
  937.             /* [retval][out] */ ADO_LONGPTR *pl);
  938.         
  939.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Attributes )( 
  940.             Field20 * This,
  941.             /* [retval][out] */ long *pl);
  942.         
  943.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DefinedSize )( 
  944.             Field20 * This,
  945.             /* [retval][out] */ ADO_LONGPTR *pl);
  946.         
  947.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  948.             Field20 * This,
  949.             /* [retval][out] */ BSTR *pbstr);
  950.         
  951.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  952.             Field20 * This,
  953.             /* [retval][out] */ DataTypeEnum *pDataType);
  954.         
  955.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
  956.             Field20 * This,
  957.             /* [retval][out] */ VARIANT *pvar);
  958.         
  959.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
  960.             Field20 * This,
  961.             /* [in] */ VARIANT Val);
  962.         
  963.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Precision )( 
  964.             Field20 * This,
  965.             /* [retval][out] */ BYTE *pbPrecision);
  966.         
  967.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumericScale )( 
  968.             Field20 * This,
  969.             /* [retval][out] */ BYTE *pbNumericScale);
  970.         
  971.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendChunk )( 
  972.             Field20 * This,
  973.             /* [in] */ VARIANT Data);
  974.         
  975.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetChunk )( 
  976.             Field20 * This,
  977.             /* [in] */ long Length,
  978.             /* [retval][out] */ VARIANT *pvar);
  979.         
  980.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_OriginalValue )( 
  981.             Field20 * This,
  982.             /* [retval][out] */ VARIANT *pvar);
  983.         
  984.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlyingValue )( 
  985.             Field20 * This,
  986.             /* [retval][out] */ VARIANT *pvar);
  987.         
  988.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DataFormat )( 
  989.             Field20 * This,
  990.             /* [retval][out] */ IUnknown **ppiDF);
  991.         
  992.         /* [propputref][id] */ HRESULT ( STDMETHODCALLTYPE *putref_DataFormat )( 
  993.             Field20 * This,
  994.             /* [in] */ IUnknown *piDF);
  995.         
  996.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Precision )( 
  997.             Field20 * This,
  998.             /* [in] */ BYTE bPrecision);
  999.         
  1000.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumericScale )( 
  1001.             Field20 * This,
  1002.             /* [in] */ BYTE bScale);
  1003.         
  1004.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
  1005.             Field20 * This,
  1006.             /* [in] */ DataTypeEnum DataType);
  1007.         
  1008.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DefinedSize )( 
  1009.             Field20 * This,
  1010.             /* [in] */ ADO_LONGPTR lSize);
  1011.         
  1012.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Attributes )( 
  1013.             Field20 * This,
  1014.             /* [in] */ long lAttributes);
  1015.         
  1016.         END_INTERFACE
  1017.     } Field20Vtbl;
  1018.     interface Field20
  1019.     {
  1020.         CONST_VTBL struct Field20Vtbl *lpVtbl;
  1021.     };
  1022.     
  1023. #ifdef COBJMACROS
  1024. #define Field20_QueryInterface(This,riid,ppvObject)
  1025.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1026. #define Field20_AddRef(This)
  1027.     (This)->lpVtbl -> AddRef(This)
  1028. #define Field20_Release(This)
  1029.     (This)->lpVtbl -> Release(This)
  1030. #define Field20_GetTypeInfoCount(This,pctinfo)
  1031.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1032. #define Field20_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1033.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1034. #define Field20_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1035.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1036. #define Field20_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1037.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1038. #define Field20_get_Properties(This,ppvObject)
  1039.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  1040. #define Field20_get_ActualSize(This,pl)
  1041.     (This)->lpVtbl -> get_ActualSize(This,pl)
  1042. #define Field20_get_Attributes(This,pl)
  1043.     (This)->lpVtbl -> get_Attributes(This,pl)
  1044. #define Field20_get_DefinedSize(This,pl)
  1045.     (This)->lpVtbl -> get_DefinedSize(This,pl)
  1046. #define Field20_get_Name(This,pbstr)
  1047.     (This)->lpVtbl -> get_Name(This,pbstr)
  1048. #define Field20_get_Type(This,pDataType)
  1049.     (This)->lpVtbl -> get_Type(This,pDataType)
  1050. #define Field20_get_Value(This,pvar)
  1051.     (This)->lpVtbl -> get_Value(This,pvar)
  1052. #define Field20_put_Value(This,Val)
  1053.     (This)->lpVtbl -> put_Value(This,Val)
  1054. #define Field20_get_Precision(This,pbPrecision)
  1055.     (This)->lpVtbl -> get_Precision(This,pbPrecision)
  1056. #define Field20_get_NumericScale(This,pbNumericScale)
  1057.     (This)->lpVtbl -> get_NumericScale(This,pbNumericScale)
  1058. #define Field20_AppendChunk(This,Data)
  1059.     (This)->lpVtbl -> AppendChunk(This,Data)
  1060. #define Field20_GetChunk(This,Length,pvar)
  1061.     (This)->lpVtbl -> GetChunk(This,Length,pvar)
  1062. #define Field20_get_OriginalValue(This,pvar)
  1063.     (This)->lpVtbl -> get_OriginalValue(This,pvar)
  1064. #define Field20_get_UnderlyingValue(This,pvar)
  1065.     (This)->lpVtbl -> get_UnderlyingValue(This,pvar)
  1066. #define Field20_get_DataFormat(This,ppiDF)
  1067.     (This)->lpVtbl -> get_DataFormat(This,ppiDF)
  1068. #define Field20_putref_DataFormat(This,piDF)
  1069.     (This)->lpVtbl -> putref_DataFormat(This,piDF)
  1070. #define Field20_put_Precision(This,bPrecision)
  1071.     (This)->lpVtbl -> put_Precision(This,bPrecision)
  1072. #define Field20_put_NumericScale(This,bScale)
  1073.     (This)->lpVtbl -> put_NumericScale(This,bScale)
  1074. #define Field20_put_Type(This,DataType)
  1075.     (This)->lpVtbl -> put_Type(This,DataType)
  1076. #define Field20_put_DefinedSize(This,lSize)
  1077.     (This)->lpVtbl -> put_DefinedSize(This,lSize)
  1078. #define Field20_put_Attributes(This,lAttributes)
  1079.     (This)->lpVtbl -> put_Attributes(This,lAttributes)
  1080. #endif /* COBJMACROS */
  1081. #endif  /* C style interface */
  1082. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_ActualSize_Proxy( 
  1083.     Field20 * This,
  1084.     /* [retval][out] */ ADO_LONGPTR *pl);
  1085. void __RPC_STUB Field20_get_ActualSize_Stub(
  1086.     IRpcStubBuffer *This,
  1087.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1088.     PRPC_MESSAGE _pRpcMessage,
  1089.     DWORD *_pdwStubPhase);
  1090. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_Attributes_Proxy( 
  1091.     Field20 * This,
  1092.     /* [retval][out] */ long *pl);
  1093. void __RPC_STUB Field20_get_Attributes_Stub(
  1094.     IRpcStubBuffer *This,
  1095.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1096.     PRPC_MESSAGE _pRpcMessage,
  1097.     DWORD *_pdwStubPhase);
  1098. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_DefinedSize_Proxy( 
  1099.     Field20 * This,
  1100.     /* [retval][out] */ ADO_LONGPTR *pl);
  1101. void __RPC_STUB Field20_get_DefinedSize_Stub(
  1102.     IRpcStubBuffer *This,
  1103.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1104.     PRPC_MESSAGE _pRpcMessage,
  1105.     DWORD *_pdwStubPhase);
  1106. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_Name_Proxy( 
  1107.     Field20 * This,
  1108.     /* [retval][out] */ BSTR *pbstr);
  1109. void __RPC_STUB Field20_get_Name_Stub(
  1110.     IRpcStubBuffer *This,
  1111.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1112.     PRPC_MESSAGE _pRpcMessage,
  1113.     DWORD *_pdwStubPhase);
  1114. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_Type_Proxy( 
  1115.     Field20 * This,
  1116.     /* [retval][out] */ DataTypeEnum *pDataType);
  1117. void __RPC_STUB Field20_get_Type_Stub(
  1118.     IRpcStubBuffer *This,
  1119.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1120.     PRPC_MESSAGE _pRpcMessage,
  1121.     DWORD *_pdwStubPhase);
  1122. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_Value_Proxy( 
  1123.     Field20 * This,
  1124.     /* [retval][out] */ VARIANT *pvar);
  1125. void __RPC_STUB Field20_get_Value_Stub(
  1126.     IRpcStubBuffer *This,
  1127.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1128.     PRPC_MESSAGE _pRpcMessage,
  1129.     DWORD *_pdwStubPhase);
  1130. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE Field20_put_Value_Proxy( 
  1131.     Field20 * This,
  1132.     /* [in] */ VARIANT Val);
  1133. void __RPC_STUB Field20_put_Value_Stub(
  1134.     IRpcStubBuffer *This,
  1135.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1136.     PRPC_MESSAGE _pRpcMessage,
  1137.     DWORD *_pdwStubPhase);
  1138. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_Precision_Proxy( 
  1139.     Field20 * This,
  1140.     /* [retval][out] */ BYTE *pbPrecision);
  1141. void __RPC_STUB Field20_get_Precision_Stub(
  1142.     IRpcStubBuffer *This,
  1143.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1144.     PRPC_MESSAGE _pRpcMessage,
  1145.     DWORD *_pdwStubPhase);
  1146. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_NumericScale_Proxy( 
  1147.     Field20 * This,
  1148.     /* [retval][out] */ BYTE *pbNumericScale);
  1149. void __RPC_STUB Field20_get_NumericScale_Stub(
  1150.     IRpcStubBuffer *This,
  1151.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1152.     PRPC_MESSAGE _pRpcMessage,
  1153.     DWORD *_pdwStubPhase);
  1154. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Field20_AppendChunk_Proxy( 
  1155.     Field20 * This,
  1156.     /* [in] */ VARIANT Data);
  1157. void __RPC_STUB Field20_AppendChunk_Stub(
  1158.     IRpcStubBuffer *This,
  1159.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1160.     PRPC_MESSAGE _pRpcMessage,
  1161.     DWORD *_pdwStubPhase);
  1162. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Field20_GetChunk_Proxy( 
  1163.     Field20 * This,
  1164.     /* [in] */ long Length,
  1165.     /* [retval][out] */ VARIANT *pvar);
  1166. void __RPC_STUB Field20_GetChunk_Stub(
  1167.     IRpcStubBuffer *This,
  1168.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1169.     PRPC_MESSAGE _pRpcMessage,
  1170.     DWORD *_pdwStubPhase);
  1171. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_OriginalValue_Proxy( 
  1172.     Field20 * This,
  1173.     /* [retval][out] */ VARIANT *pvar);
  1174. void __RPC_STUB Field20_get_OriginalValue_Stub(
  1175.     IRpcStubBuffer *This,
  1176.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1177.     PRPC_MESSAGE _pRpcMessage,
  1178.     DWORD *_pdwStubPhase);
  1179. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_UnderlyingValue_Proxy( 
  1180.     Field20 * This,
  1181.     /* [retval][out] */ VARIANT *pvar);
  1182. void __RPC_STUB Field20_get_UnderlyingValue_Stub(
  1183.     IRpcStubBuffer *This,
  1184.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1185.     PRPC_MESSAGE _pRpcMessage,
  1186.     DWORD *_pdwStubPhase);
  1187. /* [propget][id] */ HRESULT STDMETHODCALLTYPE Field20_get_DataFormat_Proxy( 
  1188.     Field20 * This,
  1189.     /* [retval][out] */ IUnknown **ppiDF);
  1190. void __RPC_STUB Field20_get_DataFormat_Stub(
  1191.     IRpcStubBuffer *This,
  1192.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1193.     PRPC_MESSAGE _pRpcMessage,
  1194.     DWORD *_pdwStubPhase);
  1195. /* [propputref][id] */ HRESULT STDMETHODCALLTYPE Field20_putref_DataFormat_Proxy( 
  1196.     Field20 * This,
  1197.     /* [in] */ IUnknown *piDF);
  1198. void __RPC_STUB Field20_putref_DataFormat_Stub(
  1199.     IRpcStubBuffer *This,
  1200.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1201.     PRPC_MESSAGE _pRpcMessage,
  1202.     DWORD *_pdwStubPhase);
  1203. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE Field20_put_Precision_Proxy( 
  1204.     Field20 * This,
  1205.     /* [in] */ BYTE bPrecision);
  1206. void __RPC_STUB Field20_put_Precision_Stub(
  1207.     IRpcStubBuffer *This,
  1208.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1209.     PRPC_MESSAGE _pRpcMessage,
  1210.     DWORD *_pdwStubPhase);
  1211. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE Field20_put_NumericScale_Proxy( 
  1212.     Field20 * This,
  1213.     /* [in] */ BYTE bScale);
  1214. void __RPC_STUB Field20_put_NumericScale_Stub(
  1215.     IRpcStubBuffer *This,
  1216.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1217.     PRPC_MESSAGE _pRpcMessage,
  1218.     DWORD *_pdwStubPhase);
  1219. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE Field20_put_Type_Proxy( 
  1220.     Field20 * This,
  1221.     /* [in] */ DataTypeEnum DataType);
  1222. void __RPC_STUB Field20_put_Type_Stub(
  1223.     IRpcStubBuffer *This,
  1224.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1225.     PRPC_MESSAGE _pRpcMessage,
  1226.     DWORD *_pdwStubPhase);
  1227. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE Field20_put_DefinedSize_Proxy( 
  1228.     Field20 * This,
  1229.     /* [in] */ ADO_LONGPTR lSize);
  1230. void __RPC_STUB Field20_put_DefinedSize_Stub(
  1231.     IRpcStubBuffer *This,
  1232.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1233.     PRPC_MESSAGE _pRpcMessage,
  1234.     DWORD *_pdwStubPhase);
  1235. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE Field20_put_Attributes_Proxy( 
  1236.     Field20 * This,
  1237.     /* [in] */ long lAttributes);
  1238. void __RPC_STUB Field20_put_Attributes_Stub(
  1239.     IRpcStubBuffer *This,
  1240.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1241.     PRPC_MESSAGE _pRpcMessage,
  1242.     DWORD *_pdwStubPhase);
  1243. #endif  /* __Field20_INTERFACE_DEFINED__ */
  1244. #ifndef __Field_INTERFACE_DEFINED__
  1245. #define __Field_INTERFACE_DEFINED__
  1246. /* interface ADOField */
  1247. /* [object][helpcontext][uuid][nonextensible][dual] */ 
  1248. EXTERN_C const IID IID_Field;
  1249. #if defined(__cplusplus) && !defined(CINTERFACE)
  1250.     
  1251.     MIDL_INTERFACE("00000569-0000-0010-8000-00AA006D2EA4")
  1252.     ADOField : public Field20
  1253.     {
  1254.     public:
  1255.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Status( 
  1256.             /* [retval][out] */ long *pFStatus) = 0;
  1257.         
  1258.     };
  1259.     
  1260. #else  /* C style interface */
  1261.     typedef struct FieldVtbl
  1262.     {
  1263.         BEGIN_INTERFACE
  1264.         
  1265.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1266.             ADOField * This,
  1267.             /* [in] */ REFIID riid,
  1268.             /* [iid_is][out] */ void **ppvObject);
  1269.         
  1270.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1271.             ADOField * This);
  1272.         
  1273.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1274.             ADOField * This);
  1275.         
  1276.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1277.             ADOField * This,
  1278.             /* [out] */ UINT *pctinfo);
  1279.         
  1280.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1281.             ADOField * This,
  1282.             /* [in] */ UINT iTInfo,
  1283.             /* [in] */ LCID lcid,
  1284.             /* [out] */ ITypeInfo **ppTInfo);
  1285.         
  1286.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1287.             ADOField * This,
  1288.             /* [in] */ REFIID riid,
  1289.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1290.             /* [in] */ UINT cNames,
  1291.             /* [in] */ LCID lcid,
  1292.             /* [size_is][out] */ DISPID *rgDispId);
  1293.         
  1294.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1295.             ADOField * This,
  1296.             /* [in] */ DISPID dispIdMember,
  1297.             /* [in] */ REFIID riid,
  1298.             /* [in] */ LCID lcid,
  1299.             /* [in] */ WORD wFlags,
  1300.             /* [out][in] */ DISPPARAMS *pDispParams,
  1301.             /* [out] */ VARIANT *pVarResult,
  1302.             /* [out] */ EXCEPINFO *pExcepInfo,
  1303.             /* [out] */ UINT *puArgErr);
  1304.         
  1305.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Properties )( 
  1306.             ADOField * This,
  1307.             /* [retval][out] */ ADOProperties **ppvObject);
  1308.         
  1309.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ActualSize )( 
  1310.             ADOField * This,
  1311.             /* [retval][out] */ ADO_LONGPTR *pl);
  1312.         
  1313.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Attributes )( 
  1314.             ADOField * This,
  1315.             /* [retval][out] */ long *pl);
  1316.         
  1317.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DefinedSize )( 
  1318.             ADOField * This,
  1319.             /* [retval][out] */ ADO_LONGPTR *pl);
  1320.         
  1321.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  1322.             ADOField * This,
  1323.             /* [retval][out] */ BSTR *pbstr);
  1324.         
  1325.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  1326.             ADOField * This,
  1327.             /* [retval][out] */ DataTypeEnum *pDataType);
  1328.         
  1329.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
  1330.             ADOField * This,
  1331.             /* [retval][out] */ VARIANT *pvar);
  1332.         
  1333.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
  1334.             ADOField * This,
  1335.             /* [in] */ VARIANT Val);
  1336.         
  1337.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Precision )( 
  1338.             ADOField * This,
  1339.             /* [retval][out] */ BYTE *pbPrecision);
  1340.         
  1341.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumericScale )( 
  1342.             ADOField * This,
  1343.             /* [retval][out] */ BYTE *pbNumericScale);
  1344.         
  1345.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendChunk )( 
  1346.             ADOField * This,
  1347.             /* [in] */ VARIANT Data);
  1348.         
  1349.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *GetChunk )( 
  1350.             ADOField * This,
  1351.             /* [in] */ long Length,
  1352.             /* [retval][out] */ VARIANT *pvar);
  1353.         
  1354.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_OriginalValue )( 
  1355.             ADOField * This,
  1356.             /* [retval][out] */ VARIANT *pvar);
  1357.         
  1358.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UnderlyingValue )( 
  1359.             ADOField * This,
  1360.             /* [retval][out] */ VARIANT *pvar);
  1361.         
  1362.         /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DataFormat )( 
  1363.             ADOField * This,
  1364.             /* [retval][out] */ IUnknown **ppiDF);
  1365.         
  1366.         /* [propputref][id] */ HRESULT ( STDMETHODCALLTYPE *putref_DataFormat )( 
  1367.             ADOField * This,
  1368.             /* [in] */ IUnknown *piDF);
  1369.         
  1370.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Precision )( 
  1371.             ADOField * This,
  1372.             /* [in] */ BYTE bPrecision);
  1373.         
  1374.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumericScale )( 
  1375.             ADOField * This,
  1376.             /* [in] */ BYTE bScale);
  1377.         
  1378.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
  1379.             ADOField * This,
  1380.             /* [in] */ DataTypeEnum DataType);
  1381.         
  1382.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DefinedSize )( 
  1383.             ADOField * This,
  1384.             /* [in] */ ADO_LONGPTR lSize);
  1385.         
  1386.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Attributes )( 
  1387.             ADOField * This,
  1388.             /* [in] */ long lAttributes);
  1389.         
  1390.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  1391.             ADOField * This,
  1392.             /* [retval][out] */ long *pFStatus);
  1393.         
  1394.         END_INTERFACE
  1395.     } FieldVtbl;
  1396.     interface Field
  1397.     {
  1398.         CONST_VTBL struct FieldVtbl *lpVtbl;
  1399.     };
  1400.     
  1401. #ifdef COBJMACROS
  1402. #define Field_QueryInterface(This,riid,ppvObject)
  1403.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1404. #define Field_AddRef(This)
  1405.     (This)->lpVtbl -> AddRef(This)
  1406. #define Field_Release(This)
  1407.     (This)->lpVtbl -> Release(This)
  1408. #define Field_GetTypeInfoCount(This,pctinfo)
  1409.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1410. #define Field_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1411.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1412. #define Field_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1413.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1414. #define Field_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1415.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1416. #define Field_get_Properties(This,ppvObject)
  1417.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  1418. #define Field_get_ActualSize(This,pl)
  1419.     (This)->lpVtbl -> get_ActualSize(This,pl)
  1420. #define Field_get_Attributes(This,pl)
  1421.     (This)->lpVtbl -> get_Attributes(This,pl)
  1422. #define Field_get_DefinedSize(This,pl)
  1423.     (This)->lpVtbl -> get_DefinedSize(This,pl)
  1424. #define Field_get_Name(This,pbstr)
  1425.     (This)->lpVtbl -> get_Name(This,pbstr)
  1426. #define Field_get_Type(This,pDataType)
  1427.     (This)->lpVtbl -> get_Type(This,pDataType)
  1428. #define Field_get_Value(This,pvar)
  1429.     (This)->lpVtbl -> get_Value(This,pvar)
  1430. #define Field_put_Value(This,Val)
  1431.     (This)->lpVtbl -> put_Value(This,Val)
  1432. #define Field_get_Precision(This,pbPrecision)
  1433.     (This)->lpVtbl -> get_Precision(This,pbPrecision)
  1434. #define Field_get_NumericScale(This,pbNumericScale)
  1435.     (This)->lpVtbl -> get_NumericScale(This,pbNumericScale)
  1436. #define Field_AppendChunk(This,Data)
  1437.     (This)->lpVtbl -> AppendChunk(This,Data)
  1438. #define Field_GetChunk(This,Length,pvar)
  1439.     (This)->lpVtbl -> GetChunk(This,Length,pvar)
  1440. #define Field_get_OriginalValue(This,pvar)
  1441.     (This)->lpVtbl -> get_OriginalValue(This,pvar)
  1442. #define Field_get_UnderlyingValue(This,pvar)
  1443.     (This)->lpVtbl -> get_UnderlyingValue(This,pvar)
  1444. #define Field_get_DataFormat(This,ppiDF)
  1445.     (This)->lpVtbl -> get_DataFormat(This,ppiDF)
  1446. #define Field_putref_DataFormat(This,piDF)
  1447.     (This)->lpVtbl -> putref_DataFormat(This,piDF)
  1448. #define Field_put_Precision(This,bPrecision)
  1449.     (This)->lpVtbl -> put_Precision(This,bPrecision)
  1450. #define Field_put_NumericScale(This,bScale)
  1451.     (This)->lpVtbl -> put_NumericScale(This,bScale)
  1452. #define Field_put_Type(This,DataType)
  1453.     (This)->lpVtbl -> put_Type(This,DataType)
  1454. #define Field_put_DefinedSize(This,lSize)
  1455.     (This)->lpVtbl -> put_DefinedSize(This,lSize)
  1456. #define Field_put_Attributes(This,lAttributes)
  1457.     (This)->lpVtbl -> put_Attributes(This,lAttributes)
  1458. #define Field_get_Status(This,pFStatus)
  1459.     (This)->lpVtbl -> get_Status(This,pFStatus)
  1460. #endif /* COBJMACROS */
  1461. #endif  /* C style interface */
  1462. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Field_get_Status_Proxy( 
  1463.     ADOField * This,
  1464.     /* [retval][out] */ long *pFStatus);
  1465. void __RPC_STUB Field_get_Status_Stub(
  1466.     IRpcStubBuffer *This,
  1467.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1468.     PRPC_MESSAGE _pRpcMessage,
  1469.     DWORD *_pdwStubPhase);
  1470. #endif  /* __Field_INTERFACE_DEFINED__ */
  1471. #ifndef __Fields15_INTERFACE_DEFINED__
  1472. #define __Fields15_INTERFACE_DEFINED__
  1473. /* interface Fields15 */
  1474. /* [object][helpcontext][uuid][hidden][nonextensible][dual] */ 
  1475. EXTERN_C const IID IID_Fields15;
  1476. #if defined(__cplusplus) && !defined(CINTERFACE)
  1477.     
  1478.     MIDL_INTERFACE("00000506-0000-0010-8000-00AA006D2EA4")
  1479.     Fields15 : public _ADOCollection
  1480.     {
  1481.     public:
  1482.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Item( 
  1483.             /* [in] */ VARIANT Index,
  1484.             /* [retval][out] */ ADOField **ppvObject) = 0;
  1485.         
  1486.     };
  1487.     
  1488. #else  /* C style interface */
  1489.     typedef struct Fields15Vtbl
  1490.     {
  1491.         BEGIN_INTERFACE
  1492.         
  1493.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1494.             Fields15 * This,
  1495.             /* [in] */ REFIID riid,
  1496.             /* [iid_is][out] */ void **ppvObject);
  1497.         
  1498.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1499.             Fields15 * This);
  1500.         
  1501.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1502.             Fields15 * This);
  1503.         
  1504.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1505.             Fields15 * This,
  1506.             /* [out] */ UINT *pctinfo);
  1507.         
  1508.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1509.             Fields15 * This,
  1510.             /* [in] */ UINT iTInfo,
  1511.             /* [in] */ LCID lcid,
  1512.             /* [out] */ ITypeInfo **ppTInfo);
  1513.         
  1514.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1515.             Fields15 * This,
  1516.             /* [in] */ REFIID riid,
  1517.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1518.             /* [in] */ UINT cNames,
  1519.             /* [in] */ LCID lcid,
  1520.             /* [size_is][out] */ DISPID *rgDispId);
  1521.         
  1522.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1523.             Fields15 * This,
  1524.             /* [in] */ DISPID dispIdMember,
  1525.             /* [in] */ REFIID riid,
  1526.             /* [in] */ LCID lcid,
  1527.             /* [in] */ WORD wFlags,
  1528.             /* [out][in] */ DISPPARAMS *pDispParams,
  1529.             /* [out] */ VARIANT *pVarResult,
  1530.             /* [out] */ EXCEPINFO *pExcepInfo,
  1531.             /* [out] */ UINT *puArgErr);
  1532.         
  1533.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
  1534.             Fields15 * This,
  1535.             /* [retval][out] */ long *c);
  1536.         
  1537.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE *_NewEnum )( 
  1538.             Fields15 * This,
  1539.             /* [retval][out] */ IUnknown **ppvObject);
  1540.         
  1541.         /* [id][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Refresh )( 
  1542.             Fields15 * This);
  1543.         
  1544.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Item )( 
  1545.             Fields15 * This,
  1546.             /* [in] */ VARIANT Index,
  1547.             /* [retval][out] */ ADOField **ppvObject);
  1548.         
  1549.         END_INTERFACE
  1550.     } Fields15Vtbl;
  1551.     interface Fields15
  1552.     {
  1553.         CONST_VTBL struct Fields15Vtbl *lpVtbl;
  1554.     };
  1555.     
  1556. #ifdef COBJMACROS
  1557. #define Fields15_QueryInterface(This,riid,ppvObject)
  1558.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1559. #define Fields15_AddRef(This)
  1560.     (This)->lpVtbl -> AddRef(This)
  1561. #define Fields15_Release(This)
  1562.     (This)->lpVtbl -> Release(This)
  1563. #define Fields15_GetTypeInfoCount(This,pctinfo)
  1564.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1565. #define Fields15_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1566.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1567. #define Fields15_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1568.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1569. #define Fields15_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1570.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1571. #define Fields15_get_Count(This,c)
  1572.     (This)->lpVtbl -> get_Count(This,c)
  1573. #define Fields15__NewEnum(This,ppvObject)
  1574.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  1575. #define Fields15_Refresh(This)
  1576.     (This)->lpVtbl -> Refresh(This)
  1577. #define Fields15_get_Item(This,Index,ppvObject)
  1578.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  1579. #endif /* COBJMACROS */
  1580. #endif  /* C style interface */
  1581. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Fields15_get_Item_Proxy( 
  1582.     Fields15 * This,
  1583.     /* [in] */ VARIANT Index,
  1584.     /* [retval][out] */ ADOField **ppvObject);
  1585. void __RPC_STUB Fields15_get_Item_Stub(
  1586.     IRpcStubBuffer *This,
  1587.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1588.     PRPC_MESSAGE _pRpcMessage,
  1589.     DWORD *_pdwStubPhase);
  1590. #endif  /* __Fields15_INTERFACE_DEFINED__ */
  1591. #ifndef __Fields20_INTERFACE_DEFINED__
  1592. #define __Fields20_INTERFACE_DEFINED__
  1593. /* interface Fields20 */
  1594. /* [object][helpcontext][uuid][hidden][nonextensible][dual] */ 
  1595. EXTERN_C const IID IID_Fields20;
  1596. #if defined(__cplusplus) && !defined(CINTERFACE)
  1597.     
  1598.     MIDL_INTERFACE("0000054D-0000-0010-8000-00AA006D2EA4")
  1599.     Fields20 : public Fields15
  1600.     {
  1601.     public:
  1602.         virtual /* [hidden] */ HRESULT STDMETHODCALLTYPE _Append( 
  1603.             /* [in] */ BSTR Name,
  1604.             /* [in] */ DataTypeEnum Type,
  1605.             /* [defaultvalue][in] */ ADO_LONGPTR DefinedSize = 0,
  1606.             /* [defaultvalue][in] */ FieldAttributeEnum Attrib = adFldUnspecified) = 0;
  1607.         
  1608.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Delete( 
  1609.             /* [in] */ VARIANT Index) = 0;
  1610.         
  1611.     };
  1612.     
  1613. #else  /* C style interface */
  1614.     typedef struct Fields20Vtbl
  1615.     {
  1616.         BEGIN_INTERFACE
  1617.         
  1618.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1619.             Fields20 * This,
  1620.             /* [in] */ REFIID riid,
  1621.             /* [iid_is][out] */ void **ppvObject);
  1622.         
  1623.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1624.             Fields20 * This);
  1625.         
  1626.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1627.             Fields20 * This);
  1628.         
  1629.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1630.             Fields20 * This,
  1631.             /* [out] */ UINT *pctinfo);
  1632.         
  1633.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1634.             Fields20 * This,
  1635.             /* [in] */ UINT iTInfo,
  1636.             /* [in] */ LCID lcid,
  1637.             /* [out] */ ITypeInfo **ppTInfo);
  1638.         
  1639.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1640.             Fields20 * This,
  1641.             /* [in] */ REFIID riid,
  1642.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1643.             /* [in] */ UINT cNames,
  1644.             /* [in] */ LCID lcid,
  1645.             /* [size_is][out] */ DISPID *rgDispId);
  1646.         
  1647.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1648.             Fields20 * This,
  1649.             /* [in] */ DISPID dispIdMember,
  1650.             /* [in] */ REFIID riid,
  1651.             /* [in] */ LCID lcid,
  1652.             /* [in] */ WORD wFlags,
  1653.             /* [out][in] */ DISPPARAMS *pDispParams,
  1654.             /* [out] */ VARIANT *pVarResult,
  1655.             /* [out] */ EXCEPINFO *pExcepInfo,
  1656.             /* [out] */ UINT *puArgErr);
  1657.         
  1658.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
  1659.             Fields20 * This,
  1660.             /* [retval][out] */ long *c);
  1661.         
  1662.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE *_NewEnum )( 
  1663.             Fields20 * This,
  1664.             /* [retval][out] */ IUnknown **ppvObject);
  1665.         
  1666.         /* [id][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Refresh )( 
  1667.             Fields20 * This);
  1668.         
  1669.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Item )( 
  1670.             Fields20 * This,
  1671.             /* [in] */ VARIANT Index,
  1672.             /* [retval][out] */ ADOField **ppvObject);
  1673.         
  1674.         /* [hidden] */ HRESULT ( STDMETHODCALLTYPE *_Append )( 
  1675.             Fields20 * This,
  1676.             /* [in] */ BSTR Name,
  1677.             /* [in] */ DataTypeEnum Type,
  1678.             /* [defaultvalue][in] */ ADO_LONGPTR DefinedSize,
  1679.             /* [defaultvalue][in] */ FieldAttributeEnum Attrib);
  1680.         
  1681.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
  1682.             Fields20 * This,
  1683.             /* [in] */ VARIANT Index);
  1684.         
  1685.         END_INTERFACE
  1686.     } Fields20Vtbl;
  1687.     interface Fields20
  1688.     {
  1689.         CONST_VTBL struct Fields20Vtbl *lpVtbl;
  1690.     };
  1691.     
  1692. #ifdef COBJMACROS
  1693. #define Fields20_QueryInterface(This,riid,ppvObject)
  1694.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1695. #define Fields20_AddRef(This)
  1696.     (This)->lpVtbl -> AddRef(This)
  1697. #define Fields20_Release(This)
  1698.     (This)->lpVtbl -> Release(This)
  1699. #define Fields20_GetTypeInfoCount(This,pctinfo)
  1700.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1701. #define Fields20_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1702.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1703. #define Fields20_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1704.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1705. #define Fields20_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1706.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1707. #define Fields20_get_Count(This,c)
  1708.     (This)->lpVtbl -> get_Count(This,c)
  1709. #define Fields20__NewEnum(This,ppvObject)
  1710.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  1711. #define Fields20_Refresh(This)
  1712.     (This)->lpVtbl -> Refresh(This)
  1713. #define Fields20_get_Item(This,Index,ppvObject)
  1714.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  1715. #define Fields20__Append(This,Name,Type,DefinedSize,Attrib)
  1716.     (This)->lpVtbl -> _Append(This,Name,Type,DefinedSize,Attrib)
  1717. #define Fields20_Delete(This,Index)
  1718.     (This)->lpVtbl -> Delete(This,Index)
  1719. #endif /* COBJMACROS */
  1720. #endif  /* C style interface */
  1721. /* [hidden] */ HRESULT STDMETHODCALLTYPE Fields20__Append_Proxy( 
  1722.     Fields20 * This,
  1723.     /* [in] */ BSTR Name,
  1724.     /* [in] */ DataTypeEnum Type,
  1725.     /* [defaultvalue][in] */ ADO_LONGPTR DefinedSize,
  1726.     /* [defaultvalue][in] */ FieldAttributeEnum Attrib);
  1727. void __RPC_STUB Fields20__Append_Stub(
  1728.     IRpcStubBuffer *This,
  1729.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1730.     PRPC_MESSAGE _pRpcMessage,
  1731.     DWORD *_pdwStubPhase);
  1732. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Fields20_Delete_Proxy( 
  1733.     Fields20 * This,
  1734.     /* [in] */ VARIANT Index);
  1735. void __RPC_STUB Fields20_Delete_Stub(
  1736.     IRpcStubBuffer *This,
  1737.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1738.     PRPC_MESSAGE _pRpcMessage,
  1739.     DWORD *_pdwStubPhase);
  1740. #endif  /* __Fields20_INTERFACE_DEFINED__ */
  1741. #ifndef __Fields_INTERFACE_DEFINED__
  1742. #define __Fields_INTERFACE_DEFINED__
  1743. /* interface ADOFields */
  1744. /* [object][helpcontext][uuid][nonextensible][dual] */ 
  1745. EXTERN_C const IID IID_Fields;
  1746. #if defined(__cplusplus) && !defined(CINTERFACE)
  1747.     
  1748.     MIDL_INTERFACE("00000564-0000-0010-8000-00AA006D2EA4")
  1749.     ADOFields : public Fields20
  1750.     {
  1751.     public:
  1752.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Append( 
  1753.             /* [in] */ BSTR Name,
  1754.             /* [in] */ DataTypeEnum Type,
  1755.             /* [defaultvalue][in] */ ADO_LONGPTR DefinedSize,
  1756.             /* [defaultvalue][in] */ FieldAttributeEnum Attrib,
  1757.             /* [optional][in] */ VARIANT FieldValue) = 0;
  1758.         
  1759.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Update( void) = 0;
  1760.         
  1761.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Resync( 
  1762.             /* [defaultvalue][in] */ ResyncEnum ResyncValues = adResyncAllValues) = 0;
  1763.         
  1764.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE CancelUpdate( void) = 0;
  1765.         
  1766.     };
  1767.     
  1768. #else  /* C style interface */
  1769.     typedef struct FieldsVtbl
  1770.     {
  1771.         BEGIN_INTERFACE
  1772.         
  1773.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1774.             ADOFields * This,
  1775.             /* [in] */ REFIID riid,
  1776.             /* [iid_is][out] */ void **ppvObject);
  1777.         
  1778.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1779.             ADOFields * This);
  1780.         
  1781.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1782.             ADOFields * This);
  1783.         
  1784.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1785.             ADOFields * This,
  1786.             /* [out] */ UINT *pctinfo);
  1787.         
  1788.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1789.             ADOFields * This,
  1790.             /* [in] */ UINT iTInfo,
  1791.             /* [in] */ LCID lcid,
  1792.             /* [out] */ ITypeInfo **ppTInfo);
  1793.         
  1794.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1795.             ADOFields * This,
  1796.             /* [in] */ REFIID riid,
  1797.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1798.             /* [in] */ UINT cNames,
  1799.             /* [in] */ LCID lcid,
  1800.             /* [size_is][out] */ DISPID *rgDispId);
  1801.         
  1802.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1803.             ADOFields * This,
  1804.             /* [in] */ DISPID dispIdMember,
  1805.             /* [in] */ REFIID riid,
  1806.             /* [in] */ LCID lcid,
  1807.             /* [in] */ WORD wFlags,
  1808.             /* [out][in] */ DISPPARAMS *pDispParams,
  1809.             /* [out] */ VARIANT *pVarResult,
  1810.             /* [out] */ EXCEPINFO *pExcepInfo,
  1811.             /* [out] */ UINT *puArgErr);
  1812.         
  1813.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
  1814.             ADOFields * This,
  1815.             /* [retval][out] */ long *c);
  1816.         
  1817.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE *_NewEnum )( 
  1818.             ADOFields * This,
  1819.             /* [retval][out] */ IUnknown **ppvObject);
  1820.         
  1821.         /* [id][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Refresh )( 
  1822.             ADOFields * This);
  1823.         
  1824.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Item )( 
  1825.             ADOFields * This,
  1826.             /* [in] */ VARIANT Index,
  1827.             /* [retval][out] */ ADOField **ppvObject);
  1828.         
  1829.         /* [hidden] */ HRESULT ( STDMETHODCALLTYPE *_Append )( 
  1830.             ADOFields * This,
  1831.             /* [in] */ BSTR Name,
  1832.             /* [in] */ DataTypeEnum Type,
  1833.             /* [defaultvalue][in] */ ADO_LONGPTR DefinedSize,
  1834.             /* [defaultvalue][in] */ FieldAttributeEnum Attrib);
  1835.         
  1836.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
  1837.             ADOFields * This,
  1838.             /* [in] */ VARIANT Index);
  1839.         
  1840.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Append )( 
  1841.             ADOFields * This,
  1842.             /* [in] */ BSTR Name,
  1843.             /* [in] */ DataTypeEnum Type,
  1844.             /* [defaultvalue][in] */ ADO_LONGPTR DefinedSize,
  1845.             /* [defaultvalue][in] */ FieldAttributeEnum Attrib,
  1846.             /* [optional][in] */ VARIANT FieldValue);
  1847.         
  1848.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
  1849.             ADOFields * This);
  1850.         
  1851.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *Resync )( 
  1852.             ADOFields * This,
  1853.             /* [defaultvalue][in] */ ResyncEnum ResyncValues);
  1854.         
  1855.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CancelUpdate )( 
  1856.             ADOFields * This);
  1857.         
  1858.         END_INTERFACE
  1859.     } FieldsVtbl;
  1860.     interface Fields
  1861.     {
  1862.         CONST_VTBL struct FieldsVtbl *lpVtbl;
  1863.     };
  1864.     
  1865. #ifdef COBJMACROS
  1866. #define Fields_QueryInterface(This,riid,ppvObject)
  1867.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1868. #define Fields_AddRef(This)
  1869.     (This)->lpVtbl -> AddRef(This)
  1870. #define Fields_Release(This)
  1871.     (This)->lpVtbl -> Release(This)
  1872. #define Fields_GetTypeInfoCount(This,pctinfo)
  1873.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1874. #define Fields_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1875.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1876. #define Fields_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1877.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1878. #define Fields_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1879.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1880. #define Fields_get_Count(This,c)
  1881.     (This)->lpVtbl -> get_Count(This,c)
  1882. #define Fields__NewEnum(This,ppvObject)
  1883.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  1884. #define Fields_Refresh(This)
  1885.     (This)->lpVtbl -> Refresh(This)
  1886. #define Fields_get_Item(This,Index,ppvObject)
  1887.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  1888. #define Fields__Append(This,Name,Type,DefinedSize,Attrib)
  1889.     (This)->lpVtbl -> _Append(This,Name,Type,DefinedSize,Attrib)
  1890. #define Fields_Delete(This,Index)
  1891.     (This)->lpVtbl -> Delete(This,Index)
  1892. #define Fields_Append(This,Name,Type,DefinedSize,Attrib,FieldValue)
  1893.     (This)->lpVtbl -> Append(This,Name,Type,DefinedSize,Attrib,FieldValue)
  1894. #define Fields_Update(This)
  1895.     (This)->lpVtbl -> Update(This)
  1896. #define Fields_Resync(This,ResyncValues)
  1897.     (This)->lpVtbl -> Resync(This,ResyncValues)
  1898. #define Fields_CancelUpdate(This)
  1899.     (This)->lpVtbl -> CancelUpdate(This)
  1900. #endif /* COBJMACROS */
  1901. #endif  /* C style interface */
  1902. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Fields_Append_Proxy( 
  1903.     ADOFields * This,
  1904.     /* [in] */ BSTR Name,
  1905.     /* [in] */ DataTypeEnum Type,
  1906.     /* [defaultvalue][in] */ ADO_LONGPTR DefinedSize,
  1907.     /* [defaultvalue][in] */ FieldAttributeEnum Attrib,
  1908.     /* [optional][in] */ VARIANT FieldValue);
  1909. void __RPC_STUB Fields_Append_Stub(
  1910.     IRpcStubBuffer *This,
  1911.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1912.     PRPC_MESSAGE _pRpcMessage,
  1913.     DWORD *_pdwStubPhase);
  1914. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Fields_Update_Proxy( 
  1915.     ADOFields * This);
  1916. void __RPC_STUB Fields_Update_Stub(
  1917.     IRpcStubBuffer *This,
  1918.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1919.     PRPC_MESSAGE _pRpcMessage,
  1920.     DWORD *_pdwStubPhase);
  1921. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Fields_Resync_Proxy( 
  1922.     ADOFields * This,
  1923.     /* [defaultvalue][in] */ ResyncEnum ResyncValues);
  1924. void __RPC_STUB Fields_Resync_Stub(
  1925.     IRpcStubBuffer *This,
  1926.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1927.     PRPC_MESSAGE _pRpcMessage,
  1928.     DWORD *_pdwStubPhase);
  1929. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE Fields_CancelUpdate_Proxy( 
  1930.     ADOFields * This);
  1931. void __RPC_STUB Fields_CancelUpdate_Stub(
  1932.     IRpcStubBuffer *This,
  1933.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1934.     PRPC_MESSAGE _pRpcMessage,
  1935.     DWORD *_pdwStubPhase);
  1936. #endif  /* __Fields_INTERFACE_DEFINED__ */
  1937. #ifndef ___Parameter_INTERFACE_DEFINED__
  1938. #define ___Parameter_INTERFACE_DEFINED__
  1939. /* interface _ADOParameter */
  1940. /* [object][helpcontext][uuid][nonextensible][dual] */ 
  1941. EXTERN_C const IID IID__Parameter;
  1942. #if defined(__cplusplus) && !defined(CINTERFACE)
  1943.     
  1944.     MIDL_INTERFACE("0000050C-0000-0010-8000-00AA006D2EA4")
  1945.     _ADOParameter : public _ADO
  1946.     {
  1947.     public:
  1948.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1949.             /* [retval][out] */ BSTR *pbstr) = 0;
  1950.         
  1951.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Name( 
  1952.             /* [in] */ BSTR bstr) = 0;
  1953.         
  1954.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Value( 
  1955.             /* [retval][out] */ VARIANT *pvar) = 0;
  1956.         
  1957.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Value( 
  1958.             /* [in] */ VARIANT val) = 0;
  1959.         
  1960.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Type( 
  1961.             /* [retval][out] */ DataTypeEnum *psDataType) = 0;
  1962.         
  1963.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Type( 
  1964.             /* [in] */ DataTypeEnum sDataType) = 0;
  1965.         
  1966.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Direction( 
  1967.             /* [in] */ ParameterDirectionEnum lParmDirection) = 0;
  1968.         
  1969.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Direction( 
  1970.             /* [retval][out] */ ParameterDirectionEnum *plParmDirection) = 0;
  1971.         
  1972.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Precision( 
  1973.             /* [in] */ BYTE bPrecision) = 0;
  1974.         
  1975.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Precision( 
  1976.             /* [retval][out] */ BYTE *pbPrecision) = 0;
  1977.         
  1978.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_NumericScale( 
  1979.             /* [in] */ BYTE bScale) = 0;
  1980.         
  1981.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_NumericScale( 
  1982.             /* [retval][out] */ BYTE *pbScale) = 0;
  1983.         
  1984.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Size( 
  1985.             /* [in] */ ADO_LONGPTR l) = 0;
  1986.         
  1987.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Size( 
  1988.             /* [retval][out] */ ADO_LONGPTR *pl) = 0;
  1989.         
  1990.         virtual /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE AppendChunk( 
  1991.             /* [in] */ VARIANT Val) = 0;
  1992.         
  1993.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  1994.             /* [retval][out] */ LONG *plParmAttribs) = 0;
  1995.         
  1996.         virtual /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE put_Attributes( 
  1997.             /* [in] */ LONG lParmAttribs) = 0;
  1998.         
  1999.     };
  2000.     
  2001. #else  /* C style interface */
  2002.     typedef struct _ParameterVtbl
  2003.     {
  2004.         BEGIN_INTERFACE
  2005.         
  2006.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2007.             _ADOParameter * This,
  2008.             /* [in] */ REFIID riid,
  2009.             /* [iid_is][out] */ void **ppvObject);
  2010.         
  2011.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2012.             _ADOParameter * This);
  2013.         
  2014.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2015.             _ADOParameter * This);
  2016.         
  2017.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2018.             _ADOParameter * This,
  2019.             /* [out] */ UINT *pctinfo);
  2020.         
  2021.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2022.             _ADOParameter * This,
  2023.             /* [in] */ UINT iTInfo,
  2024.             /* [in] */ LCID lcid,
  2025.             /* [out] */ ITypeInfo **ppTInfo);
  2026.         
  2027.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2028.             _ADOParameter * This,
  2029.             /* [in] */ REFIID riid,
  2030.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2031.             /* [in] */ UINT cNames,
  2032.             /* [in] */ LCID lcid,
  2033.             /* [size_is][out] */ DISPID *rgDispId);
  2034.         
  2035.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2036.             _ADOParameter * This,
  2037.             /* [in] */ DISPID dispIdMember,
  2038.             /* [in] */ REFIID riid,
  2039.             /* [in] */ LCID lcid,
  2040.             /* [in] */ WORD wFlags,
  2041.             /* [out][in] */ DISPPARAMS *pDispParams,
  2042.             /* [out] */ VARIANT *pVarResult,
  2043.             /* [out] */ EXCEPINFO *pExcepInfo,
  2044.             /* [out] */ UINT *puArgErr);
  2045.         
  2046.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Properties )( 
  2047.             _ADOParameter * This,
  2048.             /* [retval][out] */ ADOProperties **ppvObject);
  2049.         
  2050.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  2051.             _ADOParameter * This,
  2052.             /* [retval][out] */ BSTR *pbstr);
  2053.         
  2054.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
  2055.             _ADOParameter * This,
  2056.             /* [in] */ BSTR bstr);
  2057.         
  2058.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
  2059.             _ADOParameter * This,
  2060.             /* [retval][out] */ VARIANT *pvar);
  2061.         
  2062.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
  2063.             _ADOParameter * This,
  2064.             /* [in] */ VARIANT val);
  2065.         
  2066.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  2067.             _ADOParameter * This,
  2068.             /* [retval][out] */ DataTypeEnum *psDataType);
  2069.         
  2070.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
  2071.             _ADOParameter * This,
  2072.             /* [in] */ DataTypeEnum sDataType);
  2073.         
  2074.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Direction )( 
  2075.             _ADOParameter * This,
  2076.             /* [in] */ ParameterDirectionEnum lParmDirection);
  2077.         
  2078.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )( 
  2079.             _ADOParameter * This,
  2080.             /* [retval][out] */ ParameterDirectionEnum *plParmDirection);
  2081.         
  2082.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Precision )( 
  2083.             _ADOParameter * This,
  2084.             /* [in] */ BYTE bPrecision);
  2085.         
  2086.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Precision )( 
  2087.             _ADOParameter * This,
  2088.             /* [retval][out] */ BYTE *pbPrecision);
  2089.         
  2090.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumericScale )( 
  2091.             _ADOParameter * This,
  2092.             /* [in] */ BYTE bScale);
  2093.         
  2094.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumericScale )( 
  2095.             _ADOParameter * This,
  2096.             /* [retval][out] */ BYTE *pbScale);
  2097.         
  2098.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Size )( 
  2099.             _ADOParameter * This,
  2100.             /* [in] */ ADO_LONGPTR l);
  2101.         
  2102.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
  2103.             _ADOParameter * This,
  2104.             /* [retval][out] */ ADO_LONGPTR *pl);
  2105.         
  2106.         /* [helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *AppendChunk )( 
  2107.             _ADOParameter * This,
  2108.             /* [in] */ VARIANT Val);
  2109.         
  2110.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Attributes )( 
  2111.             _ADOParameter * This,
  2112.             /* [retval][out] */ LONG *plParmAttribs);
  2113.         
  2114.         /* [helpcontext][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Attributes )( 
  2115.             _ADOParameter * This,
  2116.             /* [in] */ LONG lParmAttribs);
  2117.         
  2118.         END_INTERFACE
  2119.     } _ParameterVtbl;
  2120.     interface _Parameter
  2121.     {
  2122.         CONST_VTBL struct _ParameterVtbl *lpVtbl;
  2123.     };
  2124.     
  2125. #ifdef COBJMACROS
  2126. #define _Parameter_QueryInterface(This,riid,ppvObject)
  2127.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2128. #define _Parameter_AddRef(This)
  2129.     (This)->lpVtbl -> AddRef(This)
  2130. #define _Parameter_Release(This)
  2131.     (This)->lpVtbl -> Release(This)
  2132. #define _Parameter_GetTypeInfoCount(This,pctinfo)
  2133.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2134. #define _Parameter_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2135.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2136. #define _Parameter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2137.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2138. #define _Parameter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2139.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2140. #define _Parameter_get_Properties(This,ppvObject)
  2141.     (This)->lpVtbl -> get_Properties(This,ppvObject)
  2142. #define _Parameter_get_Name(This,pbstr)
  2143.     (This)->lpVtbl -> get_Name(This,pbstr)
  2144. #define _Parameter_put_Name(This,bstr)
  2145.     (This)->lpVtbl -> put_Name(This,bstr)
  2146. #define _Parameter_get_Value(This,pvar)
  2147.     (This)->lpVtbl -> get_Value(This,pvar)
  2148. #define _Parameter_put_Value(This,val)
  2149.     (This)->lpVtbl -> put_Value(This,val)
  2150. #define _Parameter_get_Type(This,psDataType)
  2151.     (This)->lpVtbl -> get_Type(This,psDataType)
  2152. #define _Parameter_put_Type(This,sDataType)
  2153.     (This)->lpVtbl -> put_Type(This,sDataType)
  2154. #define _Parameter_put_Direction(This,lParmDirection)
  2155.     (This)->lpVtbl -> put_Direction(This,lParmDirection)
  2156. #define _Parameter_get_Direction(This,plParmDirection)
  2157.     (This)->lpVtbl -> get_Direction(This,plParmDirection)
  2158. #define _Parameter_put_Precision(This,bPrecision)
  2159.     (This)->lpVtbl -> put_Precision(This,bPrecision)
  2160. #define _Parameter_get_Precision(This,pbPrecision)
  2161.     (This)->lpVtbl -> get_Precision(This,pbPrecision)
  2162. #define _Parameter_put_NumericScale(This,bScale)
  2163.     (This)->lpVtbl -> put_NumericScale(This,bScale)
  2164. #define _Parameter_get_NumericScale(This,pbScale)
  2165.     (This)->lpVtbl -> get_NumericScale(This,pbScale)
  2166. #define _Parameter_put_Size(This,l)
  2167.     (This)->lpVtbl -> put_Size(This,l)
  2168. #define _Parameter_get_Size(This,pl)
  2169.     (This)->lpVtbl -> get_Size(This,pl)
  2170. #define _Parameter_AppendChunk(This,Val)
  2171.     (This)->lpVtbl -> AppendChunk(This,Val)
  2172. #define _Parameter_get_Attributes(This,plParmAttribs)
  2173.     (This)->lpVtbl -> get_Attributes(This,plParmAttribs)
  2174. #define _Parameter_put_Attributes(This,lParmAttribs)
  2175.     (This)->lpVtbl -> put_Attributes(This,lParmAttribs)
  2176. #endif /* COBJMACROS */
  2177. #endif  /* C style interface */
  2178. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Name_Proxy( 
  2179.     _ADOParameter * This,
  2180.     /* [retval][out] */ BSTR *pbstr);
  2181. void __RPC_STUB _Parameter_get_Name_Stub(
  2182.     IRpcStubBuffer *This,
  2183.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2184.     PRPC_MESSAGE _pRpcMessage,
  2185.     DWORD *_pdwStubPhase);
  2186. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Name_Proxy( 
  2187.     _ADOParameter * This,
  2188.     /* [in] */ BSTR bstr);
  2189. void __RPC_STUB _Parameter_put_Name_Stub(
  2190.     IRpcStubBuffer *This,
  2191.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2192.     PRPC_MESSAGE _pRpcMessage,
  2193.     DWORD *_pdwStubPhase);
  2194. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Value_Proxy( 
  2195.     _ADOParameter * This,
  2196.     /* [retval][out] */ VARIANT *pvar);
  2197. void __RPC_STUB _Parameter_get_Value_Stub(
  2198.     IRpcStubBuffer *This,
  2199.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2200.     PRPC_MESSAGE _pRpcMessage,
  2201.     DWORD *_pdwStubPhase);
  2202. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Value_Proxy( 
  2203.     _ADOParameter * This,
  2204.     /* [in] */ VARIANT val);
  2205. void __RPC_STUB _Parameter_put_Value_Stub(
  2206.     IRpcStubBuffer *This,
  2207.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2208.     PRPC_MESSAGE _pRpcMessage,
  2209.     DWORD *_pdwStubPhase);
  2210. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Type_Proxy( 
  2211.     _ADOParameter * This,
  2212.     /* [retval][out] */ DataTypeEnum *psDataType);
  2213. void __RPC_STUB _Parameter_get_Type_Stub(
  2214.     IRpcStubBuffer *This,
  2215.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2216.     PRPC_MESSAGE _pRpcMessage,
  2217.     DWORD *_pdwStubPhase);
  2218. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Type_Proxy( 
  2219.     _ADOParameter * This,
  2220.     /* [in] */ DataTypeEnum sDataType);
  2221. void __RPC_STUB _Parameter_put_Type_Stub(
  2222.     IRpcStubBuffer *This,
  2223.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2224.     PRPC_MESSAGE _pRpcMessage,
  2225.     DWORD *_pdwStubPhase);
  2226. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Direction_Proxy( 
  2227.     _ADOParameter * This,
  2228.     /* [in] */ ParameterDirectionEnum lParmDirection);
  2229. void __RPC_STUB _Parameter_put_Direction_Stub(
  2230.     IRpcStubBuffer *This,
  2231.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2232.     PRPC_MESSAGE _pRpcMessage,
  2233.     DWORD *_pdwStubPhase);
  2234. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Direction_Proxy( 
  2235.     _ADOParameter * This,
  2236.     /* [retval][out] */ ParameterDirectionEnum *plParmDirection);
  2237. void __RPC_STUB _Parameter_get_Direction_Stub(
  2238.     IRpcStubBuffer *This,
  2239.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2240.     PRPC_MESSAGE _pRpcMessage,
  2241.     DWORD *_pdwStubPhase);
  2242. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Precision_Proxy( 
  2243.     _ADOParameter * This,
  2244.     /* [in] */ BYTE bPrecision);
  2245. void __RPC_STUB _Parameter_put_Precision_Stub(
  2246.     IRpcStubBuffer *This,
  2247.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2248.     PRPC_MESSAGE _pRpcMessage,
  2249.     DWORD *_pdwStubPhase);
  2250. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Precision_Proxy( 
  2251.     _ADOParameter * This,
  2252.     /* [retval][out] */ BYTE *pbPrecision);
  2253. void __RPC_STUB _Parameter_get_Precision_Stub(
  2254.     IRpcStubBuffer *This,
  2255.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2256.     PRPC_MESSAGE _pRpcMessage,
  2257.     DWORD *_pdwStubPhase);
  2258. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE _Parameter_put_NumericScale_Proxy( 
  2259.     _ADOParameter * This,
  2260.     /* [in] */ BYTE bScale);
  2261. void __RPC_STUB _Parameter_put_NumericScale_Stub(
  2262.     IRpcStubBuffer *This,
  2263.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2264.     PRPC_MESSAGE _pRpcMessage,
  2265.     DWORD *_pdwStubPhase);
  2266. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Parameter_get_NumericScale_Proxy( 
  2267.     _ADOParameter * This,
  2268.     /* [retval][out] */ BYTE *pbScale);
  2269. void __RPC_STUB _Parameter_get_NumericScale_Stub(
  2270.     IRpcStubBuffer *This,
  2271.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2272.     PRPC_MESSAGE _pRpcMessage,
  2273.     DWORD *_pdwStubPhase);
  2274. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Size_Proxy( 
  2275.     _ADOParameter * This,
  2276.     /* [in] */ ADO_LONGPTR l);
  2277. void __RPC_STUB _Parameter_put_Size_Stub(
  2278.     IRpcStubBuffer *This,
  2279.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2280.     PRPC_MESSAGE _pRpcMessage,
  2281.     DWORD *_pdwStubPhase);
  2282. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Size_Proxy( 
  2283.     _ADOParameter * This,
  2284.     /* [retval][out] */ ADO_LONGPTR *pl);
  2285. void __RPC_STUB _Parameter_get_Size_Stub(
  2286.     IRpcStubBuffer *This,
  2287.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2288.     PRPC_MESSAGE _pRpcMessage,
  2289.     DWORD *_pdwStubPhase);
  2290. /* [helpcontext][id] */ HRESULT STDMETHODCALLTYPE _Parameter_AppendChunk_Proxy( 
  2291.     _ADOParameter * This,
  2292.     /* [in] */ VARIANT Val);
  2293. void __RPC_STUB _Parameter_AppendChunk_Stub(
  2294.     IRpcStubBuffer *This,
  2295.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2296.     PRPC_MESSAGE _pRpcMessage,
  2297.     DWORD *_pdwStubPhase);
  2298. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE _Parameter_get_Attributes_Proxy( 
  2299.     _ADOParameter * This,
  2300.     /* [retval][out] */ LONG *plParmAttribs);
  2301. void __RPC_STUB _Parameter_get_Attributes_Stub(
  2302.     IRpcStubBuffer *This,
  2303.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2304.     PRPC_MESSAGE _pRpcMessage,
  2305.     DWORD *_pdwStubPhase);
  2306. /* [helpcontext][propput][id] */ HRESULT STDMETHODCALLTYPE _Parameter_put_Attributes_Proxy( 
  2307.     _ADOParameter * This,
  2308.     /* [in] */ LONG lParmAttribs);
  2309. void __RPC_STUB _Parameter_put_Attributes_Stub(
  2310.     IRpcStubBuffer *This,
  2311.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2312.     PRPC_MESSAGE _pRpcMessage,
  2313.     DWORD *_pdwStubPhase);
  2314. #endif  /* ___Parameter_INTERFACE_DEFINED__ */
  2315. EXTERN_C const CLSID CLSID_Parameter;
  2316. #ifdef __cplusplus
  2317. Parameter;
  2318. #endif
  2319. #ifndef __Parameters_INTERFACE_DEFINED__
  2320. #define __Parameters_INTERFACE_DEFINED__
  2321. /* interface ADOParameters */
  2322. /* [object][helpcontext][uuid][nonextensible][dual] */ 
  2323. EXTERN_C const IID IID_Parameters;
  2324. #if defined(__cplusplus) && !defined(CINTERFACE)
  2325.     
  2326.     MIDL_INTERFACE("0000050D-0000-0010-8000-00AA006D2EA4")
  2327.     ADOParameters : public _ADODynaCollection
  2328.     {
  2329.     public:
  2330.         virtual /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE get_Item( 
  2331.             /* [in] */ VARIANT Index,
  2332.             /* [retval][out] */ _ADOParameter **ppvObject) = 0;
  2333.         
  2334.     };
  2335.     
  2336. #else  /* C style interface */
  2337.     typedef struct ParametersVtbl
  2338.     {
  2339.         BEGIN_INTERFACE
  2340.         
  2341.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2342.             ADOParameters * This,
  2343.             /* [in] */ REFIID riid,
  2344.             /* [iid_is][out] */ void **ppvObject);
  2345.         
  2346.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2347.             ADOParameters * This);
  2348.         
  2349.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2350.             ADOParameters * This);
  2351.         
  2352.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2353.             ADOParameters * This,
  2354.             /* [out] */ UINT *pctinfo);
  2355.         
  2356.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2357.             ADOParameters * This,
  2358.             /* [in] */ UINT iTInfo,
  2359.             /* [in] */ LCID lcid,
  2360.             /* [out] */ ITypeInfo **ppTInfo);
  2361.         
  2362.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2363.             ADOParameters * This,
  2364.             /* [in] */ REFIID riid,
  2365.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2366.             /* [in] */ UINT cNames,
  2367.             /* [in] */ LCID lcid,
  2368.             /* [size_is][out] */ DISPID *rgDispId);
  2369.         
  2370.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2371.             ADOParameters * This,
  2372.             /* [in] */ DISPID dispIdMember,
  2373.             /* [in] */ REFIID riid,
  2374.             /* [in] */ LCID lcid,
  2375.             /* [in] */ WORD wFlags,
  2376.             /* [out][in] */ DISPPARAMS *pDispParams,
  2377.             /* [out] */ VARIANT *pVarResult,
  2378.             /* [out] */ EXCEPINFO *pExcepInfo,
  2379.             /* [out] */ UINT *puArgErr);
  2380.         
  2381.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
  2382.             ADOParameters * This,
  2383.             /* [retval][out] */ long *c);
  2384.         
  2385.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE *_NewEnum )( 
  2386.             ADOParameters * This,
  2387.             /* [retval][out] */ IUnknown **ppvObject);
  2388.         
  2389.         /* [id][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Refresh )( 
  2390.             ADOParameters * This);
  2391.         
  2392.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Append )( 
  2393.             ADOParameters * This,
  2394.             /* [in] */ IDispatch *Object);
  2395.         
  2396.         /* [helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Delete )( 
  2397.             ADOParameters * This,
  2398.             /* [in] */ VARIANT Index);
  2399.         
  2400.         /* [helpcontext][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Item )( 
  2401.             ADOParameters * This,
  2402.             /* [in] */ VARIANT Index,
  2403.             /* [retval][out] */ _ADOParameter **ppvObject);
  2404.         
  2405.         END_INTERFACE
  2406.     } ParametersVtbl;
  2407.     interface Parameters
  2408.     {
  2409.         CONST_VTBL struct ParametersVtbl *lpVtbl;
  2410.     };
  2411.     
  2412. #ifdef COBJMACROS
  2413. #define Parameters_QueryInterface(This,riid,ppvObject)
  2414.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2415. #define Parameters_AddRef(This)
  2416.     (This)->lpVtbl -> AddRef(This)
  2417. #define Parameters_Release(This)
  2418.     (This)->lpVtbl -> Release(This)
  2419. #define Parameters_GetTypeInfoCount(This,pctinfo)
  2420.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2421. #define Parameters_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2422.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2423. #define Parameters_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2424.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2425. #define Parameters_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2426.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2427. #define Parameters_get_Count(This,c)
  2428.     (This)->lpVtbl -> get_Count(This,c)
  2429. #define Parameters__NewEnum(This,ppvObject)
  2430.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  2431. #define Parameters_Refresh(This)
  2432.     (This)->lpVtbl -> Refresh(This)
  2433. #define Parameters_Append(This,Object)
  2434.     (This)->lpVtbl -> Append(This,Object)
  2435. #define Parameters_Delete(This,Index)
  2436.     (This)->lpVtbl -> Delete(This,Index)
  2437. #define Parameters_get_Item(This,Index,ppvObject)
  2438.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  2439. #endif /* COBJMACROS */
  2440. #endif  /* C style interface */
  2441. /* [helpcontext][propget][id] */ HRESULT STDMETHODCALLTYPE Parameters_get_Item_Proxy( 
  2442.     ADOParameters * This,
  2443.     /* [in] */ VARIANT Index,
  2444.     /* [retval][out] */ _ADOParameter **ppvObject);
  2445. void __RPC_STUB Parameters_get_Item_Stub(
  2446.     IRpcStubBuffer *This,
  2447.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2448.     PRPC_MESSAGE _pRpcMessage,
  2449.     DWORD *_pdwStubPhase);
  2450. #endif  /* __Parameters_INTERFACE_DEFINED__ */
  2451. #ifndef __Property_INTERFACE_DEFINED__
  2452. #define __Property_INTERFACE_DEFINED__
  2453. /* interface ADOProperty */
  2454. /* [object][helpcontext][uuid][nonextensible][dual] */ 
  2455. EXTERN_C const IID IID_Property;
  2456. #if defined(__cplusplus) && !defined(CINTERFACE)
  2457.     
  2458.     MIDL_INTERFACE("00000503-0000-0010-8000-00AA006D2EA4")
  2459.     ADOProperty : public IDispatch
  2460.     {
  2461.     public:
  2462.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
  2463.             /* [retval][out] */ VARIANT *pval) = 0;
  2464.         
  2465.         virtual /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
  2466.             /* [in] */ VARIANT val) = 0;
  2467.         
  2468.         virtual /* [helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  2469.             /* [retval][out] */ BSTR *pbstr) = 0;
  2470.         
  2471.         virtual /* [helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  2472.             /* [retval][out] */ DataTypeEnum *ptype) = 0;
  2473.         
  2474.         virtual /* [helpcontext][propget] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
  2475.             /* [retval][out] */ long *plAttributes) = 0;
  2476.         
  2477.         virtual /* [helpcontext][propput] */ HRESULT STDMETHODCALLTYPE put_Attributes( 
  2478.             /* [in] */ long lAttributes) = 0;
  2479.         
  2480.     };
  2481.     
  2482. #else  /* C style interface */
  2483.     typedef struct PropertyVtbl
  2484.     {
  2485.         BEGIN_INTERFACE
  2486.         
  2487.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2488.             ADOProperty * This,
  2489.             /* [in] */ REFIID riid,
  2490.             /* [iid_is][out] */ void **ppvObject);
  2491.         
  2492.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2493.             ADOProperty * This);
  2494.         
  2495.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2496.             ADOProperty * This);
  2497.         
  2498.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2499.             ADOProperty * This,
  2500.             /* [out] */ UINT *pctinfo);
  2501.         
  2502.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2503.             ADOProperty * This,
  2504.             /* [in] */ UINT iTInfo,
  2505.             /* [in] */ LCID lcid,
  2506.             /* [out] */ ITypeInfo **ppTInfo);
  2507.         
  2508.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2509.             ADOProperty * This,
  2510.             /* [in] */ REFIID riid,
  2511.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2512.             /* [in] */ UINT cNames,
  2513.             /* [in] */ LCID lcid,
  2514.             /* [size_is][out] */ DISPID *rgDispId);
  2515.         
  2516.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2517.             ADOProperty * This,
  2518.             /* [in] */ DISPID dispIdMember,
  2519.             /* [in] */ REFIID riid,
  2520.             /* [in] */ LCID lcid,
  2521.             /* [in] */ WORD wFlags,
  2522.             /* [out][in] */ DISPPARAMS *pDispParams,
  2523.             /* [out] */ VARIANT *pVarResult,
  2524.             /* [out] */ EXCEPINFO *pExcepInfo,
  2525.             /* [out] */ UINT *puArgErr);
  2526.         
  2527.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
  2528.             ADOProperty * This,
  2529.             /* [retval][out] */ VARIANT *pval);
  2530.         
  2531.         /* [helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
  2532.             ADOProperty * This,
  2533.             /* [in] */ VARIANT val);
  2534.         
  2535.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  2536.             ADOProperty * This,
  2537.             /* [retval][out] */ BSTR *pbstr);
  2538.         
  2539.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  2540.             ADOProperty * This,
  2541.             /* [retval][out] */ DataTypeEnum *ptype);
  2542.         
  2543.         /* [helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Attributes )( 
  2544.             ADOProperty * This,
  2545.             /* [retval][out] */ long *plAttributes);
  2546.         
  2547.         /* [helpcontext][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Attributes )( 
  2548.             ADOProperty * This,
  2549.             /* [in] */ long lAttributes);
  2550.         
  2551.         END_INTERFACE
  2552.     } PropertyVtbl;
  2553.     interface Property
  2554.     {
  2555.         CONST_VTBL struct PropertyVtbl *lpVtbl;
  2556.     };
  2557.     
  2558. #ifdef COBJMACROS
  2559. #define Property_QueryInterface(This,riid,ppvObject)
  2560.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2561. #define Property_AddRef(This)
  2562.     (This)->lpVtbl -> AddRef(This)
  2563. #define Property_Release(This)
  2564.     (This)->lpVtbl -> Release(This)
  2565. #define Property_GetTypeInfoCount(This,pctinfo)
  2566.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2567. #define Property_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2568.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2569. #define Property_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2570.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2571. #define Property_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2572.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2573. #define Property_get_Value(This,pval)
  2574.     (This)->lpVtbl -> get_Value(This,pval)
  2575. #define Property_put_Value(This,val)
  2576.     (This)->lpVtbl -> put_Value(This,val)
  2577. #define Property_get_Name(This,pbstr)
  2578.     (This)->lpVtbl -> get_Name(This,pbstr)
  2579. #define Property_get_Type(This,ptype)
  2580.     (This)->lpVtbl -> get_Type(This,ptype)
  2581. #define Property_get_Attributes(This,plAttributes)
  2582.     (This)->lpVtbl -> get_Attributes(This,plAttributes)
  2583. #define Property_put_Attributes(This,lAttributes)
  2584.     (This)->lpVtbl -> put_Attributes(This,lAttributes)
  2585. #endif /* COBJMACROS */
  2586. #endif  /* C style interface */
  2587. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Value_Proxy( 
  2588.     ADOProperty * This,
  2589.     /* [retval][out] */ VARIANT *pval);
  2590. void __RPC_STUB Property_get_Value_Stub(
  2591.     IRpcStubBuffer *This,
  2592.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2593.     PRPC_MESSAGE _pRpcMessage,
  2594.     DWORD *_pdwStubPhase);
  2595. /* [helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE Property_put_Value_Proxy( 
  2596.     ADOProperty * This,
  2597.     /* [in] */ VARIANT val);
  2598. void __RPC_STUB Property_put_Value_Stub(
  2599.     IRpcStubBuffer *This,
  2600.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2601.     PRPC_MESSAGE _pRpcMessage,
  2602.     DWORD *_pdwStubPhase);
  2603. /* [helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Name_Proxy( 
  2604.     ADOProperty * This,
  2605.     /* [retval][out] */ BSTR *pbstr);
  2606. void __RPC_STUB Property_get_Name_Stub(
  2607.     IRpcStubBuffer *This,
  2608.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2609.     PRPC_MESSAGE _pRpcMessage,
  2610.     DWORD *_pdwStubPhase);
  2611. /* [helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Type_Proxy( 
  2612.     ADOProperty * This,
  2613.     /* [retval][out] */ DataTypeEnum *ptype);
  2614. void __RPC_STUB Property_get_Type_Stub(
  2615.     IRpcStubBuffer *This,
  2616.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2617.     PRPC_MESSAGE _pRpcMessage,
  2618.     DWORD *_pdwStubPhase);
  2619. /* [helpcontext][propget] */ HRESULT STDMETHODCALLTYPE Property_get_Attributes_Proxy( 
  2620.     ADOProperty * This,
  2621.     /* [retval][out] */ long *plAttributes);
  2622. void __RPC_STUB Property_get_Attributes_Stub(
  2623.     IRpcStubBuffer *This,
  2624.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2625.     PRPC_MESSAGE _pRpcMessage,
  2626.     DWORD *_pdwStubPhase);
  2627. /* [helpcontext][propput] */ HRESULT STDMETHODCALLTYPE Property_put_Attributes_Proxy( 
  2628.     ADOProperty * This,
  2629.     /* [in] */ long lAttributes);
  2630. void __RPC_STUB Property_put_Attributes_Stub(
  2631.     IRpcStubBuffer *This,
  2632.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2633.     PRPC_MESSAGE _pRpcMessage,
  2634.     DWORD *_pdwStubPhase);
  2635. #endif  /* __Property_INTERFACE_DEFINED__ */
  2636. #ifndef __Properties_INTERFACE_DEFINED__
  2637. #define __Properties_INTERFACE_DEFINED__
  2638. /* interface ADOProperties */
  2639. /* [object][helpcontext][uuid][nonextensible][dual] */ 
  2640. EXTERN_C const IID IID_Properties;
  2641. #if defined(__cplusplus) && !defined(CINTERFACE)
  2642.     
  2643.     MIDL_INTERFACE("00000504-0000-0010-8000-00AA006D2EA4")
  2644.     ADOProperties : public _ADOCollection
  2645.     {
  2646.     public:
  2647.         virtual /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  2648.             /* [in] */ VARIANT Index,
  2649.             /* [retval][out] */ ADOProperty **ppvObject) = 0;
  2650.         
  2651.     };
  2652.     
  2653. #else  /* C style interface */
  2654.     typedef struct PropertiesVtbl
  2655.     {
  2656.         BEGIN_INTERFACE
  2657.         
  2658.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2659.             ADOProperties * This,
  2660.             /* [in] */ REFIID riid,
  2661.             /* [iid_is][out] */ void **ppvObject);
  2662.         
  2663.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2664.             ADOProperties * This);
  2665.         
  2666.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2667.             ADOProperties * This);
  2668.         
  2669.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2670.             ADOProperties * This,
  2671.             /* [out] */ UINT *pctinfo);
  2672.         
  2673.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2674.             ADOProperties * This,
  2675.             /* [in] */ UINT iTInfo,
  2676.             /* [in] */ LCID lcid,
  2677.             /* [out] */ ITypeInfo **ppTInfo);
  2678.         
  2679.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2680.             ADOProperties * This,
  2681.             /* [in] */ REFIID riid,
  2682.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2683.             /* [in] */ UINT cNames,
  2684.             /* [in] */ LCID lcid,
  2685.             /* [size_is][out] */ DISPID *rgDispId);
  2686.         
  2687.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2688.             ADOProperties * This,
  2689.             /* [in] */ DISPID dispIdMember,
  2690.             /* [in] */ REFIID riid,
  2691.             /* [in] */ LCID lcid,
  2692.             /* [in] */ WORD wFlags,
  2693.             /* [out][in] */ DISPPARAMS *pDispParams,
  2694.             /* [out] */ VARIANT *pVarResult,
  2695.             /* [out] */ EXCEPINFO *pExcepInfo,
  2696.             /* [out] */ UINT *puArgErr);
  2697.         
  2698.         /* [id][helpcontext][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
  2699.             ADOProperties * This,
  2700.             /* [retval][out] */ long *c);
  2701.         
  2702.         /* [id][restricted] */ HRESULT ( STDMETHODCALLTYPE *_NewEnum )( 
  2703.             ADOProperties * This,
  2704.             /* [retval][out] */ IUnknown **ppvObject);
  2705.         
  2706.         /* [id][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Refresh )( 
  2707.             ADOProperties * This);
  2708.         
  2709.         /* [helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Item )( 
  2710.             ADOProperties * This,
  2711.             /* [in] */ VARIANT Index,
  2712.             /* [retval][out] */ ADOProperty **ppvObject);
  2713.         
  2714.         END_INTERFACE
  2715.     } PropertiesVtbl;
  2716.     interface Properties
  2717.     {
  2718.         CONST_VTBL struct PropertiesVtbl *lpVtbl;
  2719.     };
  2720.     
  2721. #ifdef COBJMACROS
  2722. #define Properties_QueryInterface(This,riid,ppvObject)
  2723.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2724. #define Properties_AddRef(This)
  2725.     (This)->lpVtbl -> AddRef(This)
  2726. #define Properties_Release(This)
  2727.     (This)->lpVtbl -> Release(This)
  2728. #define Properties_GetTypeInfoCount(This,pctinfo)
  2729.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2730. #define Properties_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2731.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2732. #define Properties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2733.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2734. #define Properties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2735.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2736. #define Properties_get_Count(This,c)
  2737.     (This)->lpVtbl -> get_Count(This,c)
  2738. #define Properties__NewEnum(This,ppvObject)
  2739.     (This)->lpVtbl -> _NewEnum(This,ppvObject)
  2740. #define Properties_Refresh(This)
  2741.     (This)->lpVtbl -> Refresh(This)
  2742. #define Properties_get_Item(This,Index,ppvObject)
  2743.     (This)->lpVtbl -> get_Item(This,Index,ppvObject)
  2744. #endif /* COBJMACROS */
  2745. #endif  /* C style interface */
  2746. /* [helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE Properties_get_Item_Proxy( 
  2747.     ADOProperties * This,
  2748.     /* [in] */ VARIANT Index,
  2749.     /* [retval][out] */ ADOProperty **ppvObject);
  2750. void __RPC_STUB Properties_get_Item_Stub(
  2751.     IRpcStubBuffer *This,
  2752.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2753.     PRPC_MESSAGE _pRpcMessage,
  2754.     DWORD *_pdwStubPhase);
  2755. #endif  /* __Properties_INTERFACE_DEFINED__ */
  2756. #endif /* __ADODB_LIBRARY_DEFINED__ */
  2757. /* interface __MIDL_itf_m_bobj_0145 */
  2758. /* [local] */ 
  2759. extern RPC_IF_HANDLE __MIDL_itf_m_bobj_0145_v0_0_c_ifspec;
  2760. extern RPC_IF_HANDLE __MIDL_itf_m_bobj_0145_v0_0_s_ifspec;
  2761. /* Additional Prototypes for ALL interfaces */
  2762. /* end of Additional Prototypes */
  2763. #ifdef __cplusplus
  2764. }
  2765. #endif
  2766. #endif
  2767. #define ADOCommand _ADOCommand
  2768. #define ADORecordset _ADORecordset
  2769. #define ADOTransaction _ADOTransaction
  2770. #define ADOParameter _ADOParameter
  2771. #define ADOConnection _ADOConnection
  2772. #define ADOCollection _ADOCollection
  2773. #define ADODynaCollection _ADODynaCollection
  2774. #define ADORecord _ADORecord
  2775. #define ADORecField _ADORecField
  2776. #define ADOStream _ADOStream
  2777. #endif // _ADOINT_H_