home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 25: Programming / pc_actual_25.iso / C_C++ / BorlandCompiler / freecommandLinetools.exe / Include / oledbdep.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-06-27  |  76.1 KB  |  2,427 lines

  1. #pragma option push -b -a8 -pc -A- /*P_O_Push*/
  2.  
  3. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  4.  
  5. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  6.  
  7.  
  8.  /* File created by MIDL compiler version 5.03.0266 */
  9. /* at Thu May 27 02:10:51 1999
  10.  */
  11. /* Compiler settings for oledbdep.idl:
  12.     Oicf (OptLev=i2), W1, Zp2, env=Win32 (32b run), ms_ext, c_ext
  13.     error checks: allocation ref bounds_check enum stub_data 
  14.     VC __declspec() decoration level: 
  15.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  16.          DECLSPEC_UUID(), MIDL_INTERFACE()
  17. */
  18. //@@MIDL_FILE_HEADING(  )
  19.  
  20.  
  21. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  22. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  23. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  24. #endif
  25.  
  26. #include "rpc.h"
  27. #include "rpcndr.h"
  28.  
  29. #ifndef __RPCNDR_H_VERSION__
  30. #error this stub requires an updated version of <rpcndr.h>
  31. #endif // __RPCNDR_H_VERSION__
  32.  
  33. #ifndef COM_NO_WINDOWS_H
  34. #include "windows.h"
  35. #include "ole2.h"
  36. #endif /*COM_NO_WINDOWS_H*/
  37.  
  38. #ifndef __oledbdep_h__
  39. #define __oledbdep_h__
  40.  
  41.  
  42. #ifndef GUID_DEFS_ONLY
  43.  
  44. /* Forward Declarations */ 
  45.  
  46. #ifndef __IRowsetNextRowset_FWD_DEFINED__
  47. #define __IRowsetNextRowset_FWD_DEFINED__
  48. typedef interface IRowsetNextRowset IRowsetNextRowset;
  49. #endif     /* __IRowsetNextRowset_FWD_DEFINED__ */
  50.  
  51.  
  52. #ifndef __IRowsetNewRowAfter_FWD_DEFINED__
  53. #define __IRowsetNewRowAfter_FWD_DEFINED__
  54. typedef interface IRowsetNewRowAfter IRowsetNewRowAfter;
  55. #endif     /* __IRowsetNewRowAfter_FWD_DEFINED__ */
  56.  
  57.  
  58. #ifndef __IRowsetWithParameters_FWD_DEFINED__
  59. #define __IRowsetWithParameters_FWD_DEFINED__
  60. typedef interface IRowsetWithParameters IRowsetWithParameters;
  61. #endif     /* __IRowsetWithParameters_FWD_DEFINED__ */
  62.  
  63.  
  64. #ifndef __IRowsetAsynch_FWD_DEFINED__
  65. #define __IRowsetAsynch_FWD_DEFINED__
  66. typedef interface IRowsetAsynch IRowsetAsynch;
  67. #endif     /* __IRowsetAsynch_FWD_DEFINED__ */
  68.  
  69.  
  70. #ifndef __IRowsetKeys_FWD_DEFINED__
  71. #define __IRowsetKeys_FWD_DEFINED__
  72. typedef interface IRowsetKeys IRowsetKeys;
  73. #endif     /* __IRowsetKeys_FWD_DEFINED__ */
  74.  
  75.  
  76. #ifndef __IRowsetWatchAll_FWD_DEFINED__
  77. #define __IRowsetWatchAll_FWD_DEFINED__
  78. typedef interface IRowsetWatchAll IRowsetWatchAll;
  79. #endif     /* __IRowsetWatchAll_FWD_DEFINED__ */
  80.  
  81.  
  82. #ifndef __IRowsetWatchNotify_FWD_DEFINED__
  83. #define __IRowsetWatchNotify_FWD_DEFINED__
  84. typedef interface IRowsetWatchNotify IRowsetWatchNotify;
  85. #endif     /* __IRowsetWatchNotify_FWD_DEFINED__ */
  86.  
  87.  
  88. #ifndef __IRowsetWatchRegion_FWD_DEFINED__
  89. #define __IRowsetWatchRegion_FWD_DEFINED__
  90. typedef interface IRowsetWatchRegion IRowsetWatchRegion;
  91. #endif     /* __IRowsetWatchRegion_FWD_DEFINED__ */
  92.  
  93.  
  94. #ifndef __IRowsetCopyRows_FWD_DEFINED__
  95. #define __IRowsetCopyRows_FWD_DEFINED__
  96. typedef interface IRowsetCopyRows IRowsetCopyRows;
  97. #endif     /* __IRowsetCopyRows_FWD_DEFINED__ */
  98.  
  99.  
  100. #ifndef __IReadData_FWD_DEFINED__
  101. #define __IReadData_FWD_DEFINED__
  102. typedef interface IReadData IReadData;
  103. #endif     /* __IReadData_FWD_DEFINED__ */
  104.  
  105.  
  106. #ifndef __ICommandCost_FWD_DEFINED__
  107. #define __ICommandCost_FWD_DEFINED__
  108. typedef interface ICommandCost ICommandCost;
  109. #endif     /* __ICommandCost_FWD_DEFINED__ */
  110.  
  111.  
  112. #ifndef __ICommandValidate_FWD_DEFINED__
  113. #define __ICommandValidate_FWD_DEFINED__
  114. typedef interface ICommandValidate ICommandValidate;
  115. #endif     /* __ICommandValidate_FWD_DEFINED__ */
  116.  
  117.  
  118. #ifndef __ITableRename_FWD_DEFINED__
  119. #define __ITableRename_FWD_DEFINED__
  120. typedef interface ITableRename ITableRename;
  121. #endif     /* __ITableRename_FWD_DEFINED__ */
  122.  
  123.  
  124. #ifndef __IDBSchemaCommand_FWD_DEFINED__
  125. #define __IDBSchemaCommand_FWD_DEFINED__
  126. typedef interface IDBSchemaCommand IDBSchemaCommand;
  127. #endif     /* __IDBSchemaCommand_FWD_DEFINED__ */
  128.  
  129.  
  130. #ifndef __IProvideMoniker_FWD_DEFINED__
  131. #define __IProvideMoniker_FWD_DEFINED__
  132. typedef interface IProvideMoniker IProvideMoniker;
  133. #endif     /* __IProvideMoniker_FWD_DEFINED__ */
  134.  
  135.  
  136. /* header files for imported files */
  137. #include "oledb.h"
  138.  
  139. #ifdef __cplusplus
  140. extern "C"{
  141. #endif 
  142.  
  143. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  144. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  145.  
  146. /* interface __MIDL_itf_oledbdep_0000 */
  147. /* [local] */ 
  148.  
  149. //+---------------------------------------------------------------------------
  150. //
  151. //  Microsoft OLE DB
  152. //  Copyright (C) Microsoft Corporation, 1994 - 1999.
  153. //
  154. //----------------------------------------------------------------------------
  155.  
  156. #ifdef _WIN64
  157. #include <pshpack8.h>    // 8-byte structure packing
  158. #else
  159. #include <pshpack2.h>    // 2-byte structure packing
  160. #endif
  161.  
  162. #endif // GUID_DEFS_ONLY
  163.  
  164.  
  165.  
  166. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0000_v0_0_c_ifspec;
  167. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0000_v0_0_s_ifspec;
  168.  
  169. #ifndef __DBStructureDefinitionsDep_INTERFACE_DEFINED__
  170. #define __DBStructureDefinitionsDep_INTERFACE_DEFINED__
  171.  
  172. /* interface DBStructureDefinitionsDep */
  173. /* [auto_handle][unique][uuid] */ 
  174.  
  175. #ifndef UNALIGNED
  176. #if defined(_MIPS_) || defined(_ALPHA_) || defined(_PPC_)
  177. #define UNALIGNED __unaligned
  178. #else
  179. #define UNALIGNED
  180. #endif
  181. #endif //UNALIGNED
  182. #undef OLEDBDECLSPEC
  183. #if _MSC_VER >= 1100
  184. #define OLEDBDECLSPEC __declspec(selectany)
  185. #else
  186. #define OLEDBDECLSPEC 
  187. #endif //_MSC_VER
  188. #ifdef DBINITCONSTANTS
  189. extern const OLEDBDECLSPEC GUID DB_PROPERTY_CHECK_OPTION               = {0xc8b5220b,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  190. extern const OLEDBDECLSPEC GUID DB_PROPERTY_CONSTRAINT_CHECK_DEFERRED  = {0xc8b521f0,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  191. extern const OLEDBDECLSPEC GUID DB_PROPERTY_DROP_CASCADE               = {0xc8b521f3,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  192. extern const OLEDBDECLSPEC GUID DB_PROPERTY_UNIQUE                     = {0xc8b521f5,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  193. extern const OLEDBDECLSPEC GUID DB_PROPERTY_ON_COMMIT_PRESERVE_ROWS    = {0xc8b52230,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  194. extern const OLEDBDECLSPEC GUID DB_PROPERTY_PRIMARY                    = {0xc8b521fc,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  195. extern const OLEDBDECLSPEC GUID DB_PROPERTY_CLUSTERED                  = {0xc8b521ff,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  196. extern const OLEDBDECLSPEC GUID DB_PROPERTY_NONCLUSTERED               = {0xc8b52200,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  197. extern const OLEDBDECLSPEC GUID DB_PROPERTY_BTREE                      = {0xc8b52201,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  198. extern const OLEDBDECLSPEC GUID DB_PROPERTY_HASH                       = {0xc8b52202,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  199. extern const OLEDBDECLSPEC GUID DB_PROPERTY_FILLFACTOR                 = {0xc8b52203,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  200. extern const OLEDBDECLSPEC GUID DB_PROPERTY_INITIALSIZE                = {0xc8b52204,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  201. extern const OLEDBDECLSPEC GUID DB_PROPERTY_DISALLOWNULL               = {0xc8b52205,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  202. extern const OLEDBDECLSPEC GUID DB_PROPERTY_IGNORENULL                 = {0xc8b52206,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  203. extern const OLEDBDECLSPEC GUID DB_PROPERTY_IGNOREANYNULL              = {0xc8b52207,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  204. extern const OLEDBDECLSPEC GUID DB_PROPERTY_SORTBOOKMARKS              = {0xc8b52208,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  205. extern const OLEDBDECLSPEC GUID DB_PROPERTY_AUTOMATICUPDATE            = {0xc8b52209,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  206. extern const OLEDBDECLSPEC GUID DB_PROPERTY_EXPLICITUPDATE             = {0xc8b5220a,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  207. #else // !DBINITCONSTANTS
  208. extern const GUID DB_PROPERTY_CHECK_OPTION;
  209. extern const GUID DB_PROPERTY_CONSTRAINT_CHECK_DEFERRED;
  210. extern const GUID DB_PROPERTY_DROP_CASCADE;
  211. extern const GUID DB_PROPERTY_ON_COMMIT_PRESERVE_ROWS;
  212. extern const GUID DB_PROPERTY_UNIQUE;
  213. extern const GUID DB_PROPERTY_PRIMARY;
  214. extern const GUID DB_PROPERTY_CLUSTERED;
  215. extern const GUID DB_PROPERTY_NONCLUSTERED;
  216. extern const GUID DB_PROPERTY_BTREE;
  217. extern const GUID DB_PROPERTY_HASH;
  218. extern const GUID DB_PROPERTY_FILLFACTOR;
  219. extern const GUID DB_PROPERTY_INITIALSIZE;
  220. extern const GUID DB_PROPERTY_DISALLOWNULL;
  221. extern const GUID DB_PROPERTY_IGNORENULL;
  222. extern const GUID DB_PROPERTY_IGNOREANYNULL;
  223. extern const GUID DB_PROPERTY_SORTBOOKMARKS;
  224. extern const GUID DB_PROPERTY_AUTOMATICUPDATE;
  225. extern const GUID DB_PROPERTY_EXPLICITUPDATE;
  226. #endif // DBINITCONSTANTS
  227.  
  228. #ifndef GUID_DEFS_ONLY
  229.  
  230. enum DBPROPENUM25_DEPRECATED
  231.     {    DBPROP_ICommandCost    = 0x8dL,
  232.     DBPROP_ICommandTree    = 0x8eL,
  233.     DBPROP_ICommandValidate    = 0x8fL,
  234.     DBPROP_IDBSchemaCommand    = 0x90L,
  235.     DBPROP_IProvideMoniker    = 0x7dL,
  236.     DBPROP_IQuery    = 0x92L,
  237.     DBPROP_IReadData    = 0x93L,
  238.     DBPROP_IRowsetAsynch    = 0x94L,
  239.     DBPROP_IRowsetCopyRows    = 0x95L,
  240.     DBPROP_IRowsetKeys    = 0x97L,
  241.     DBPROP_IRowsetNewRowAfter    = 0x98L,
  242.     DBPROP_IRowsetNextRowset    = 0x99L,
  243.     DBPROP_IRowsetWatchAll    = 0x9bL,
  244.     DBPROP_IRowsetWatchNotify    = 0x9cL,
  245.     DBPROP_IRowsetWatchRegion    = 0x9dL,
  246.     DBPROP_IRowsetWithParameters    = 0x9eL
  247.     };
  248.  
  249. enum DBREASONENUM25
  250.     {    DBREASON_ROWSET_ROWSADDED    = DBREASON_ROW_ASYNCHINSERT + 1,
  251.     DBREASON_ROWSET_POPULATIONCOMPLETE    = DBREASON_ROWSET_ROWSADDED + 1,
  252.     DBREASON_ROWSET_POPULATIONSTOPPED    = DBREASON_ROWSET_POPULATIONCOMPLETE + 1
  253.     };
  254. #endif // GUID_DEFS_ONLY
  255.  
  256.  
  257.  
  258. extern RPC_IF_HANDLE DBStructureDefinitionsDep_v0_0_c_ifspec;
  259. extern RPC_IF_HANDLE DBStructureDefinitionsDep_v0_0_s_ifspec;
  260. #endif /* __DBStructureDefinitionsDep_INTERFACE_DEFINED__ */
  261.  
  262. /* interface __MIDL_itf_oledbdep_0345 */
  263. /* [local] */ 
  264.  
  265. #ifndef GUID_DEFS_ONLY
  266.  
  267.  
  268.  
  269. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0345_v0_0_c_ifspec;
  270. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0345_v0_0_s_ifspec;
  271.  
  272. #ifndef __IRowsetNextRowset_INTERFACE_DEFINED__
  273. #define __IRowsetNextRowset_INTERFACE_DEFINED__
  274.  
  275. /* interface IRowsetNextRowset */
  276. /* [unique][uuid][object][local] */ 
  277.  
  278.  
  279. EXTERN_C const IID IID_IRowsetNextRowset;
  280.  
  281. #if defined(__cplusplus) && !defined(CINTERFACE)
  282.     
  283.     MIDL_INTERFACE("0c733a72-2a1c-11ce-ade5-00aa0044773d")
  284.     IRowsetNextRowset : public IUnknown
  285.     {
  286.     public:
  287.         virtual HRESULT STDMETHODCALLTYPE GetNextRowset( 
  288.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  289.             /* [in] */ REFIID riid,
  290.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppNextRowset) = 0;
  291.         
  292.     };
  293.     
  294. #else     /* C style interface */
  295.  
  296.     typedef struct IRowsetNextRowsetVtbl
  297.     {
  298.         BEGIN_INTERFACE
  299.         
  300.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  301.             IRowsetNextRowset __RPC_FAR * This,
  302.             /* [in] */ REFIID riid,
  303.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  304.         
  305.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  306.             IRowsetNextRowset __RPC_FAR * This);
  307.         
  308.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  309.             IRowsetNextRowset __RPC_FAR * This);
  310.         
  311.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRowset )( 
  312.             IRowsetNextRowset __RPC_FAR * This,
  313.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  314.             /* [in] */ REFIID riid,
  315.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppNextRowset);
  316.         
  317.         END_INTERFACE
  318.     } IRowsetNextRowsetVtbl;
  319.  
  320.     interface IRowsetNextRowset
  321.     {
  322.         CONST_VTBL struct IRowsetNextRowsetVtbl __RPC_FAR *lpVtbl;
  323.     };
  324.  
  325.     
  326.  
  327. #ifdef COBJMACROS
  328.  
  329.  
  330. #define IRowsetNextRowset_QueryInterface(This,riid,ppvObject)    \
  331.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  332.  
  333. #define IRowsetNextRowset_AddRef(This)    \
  334.     (This)->lpVtbl -> AddRef(This)
  335.  
  336. #define IRowsetNextRowset_Release(This)    \
  337.     (This)->lpVtbl -> Release(This)
  338.  
  339.  
  340. #define IRowsetNextRowset_GetNextRowset(This,pUnkOuter,riid,ppNextRowset)    \
  341.     (This)->lpVtbl -> GetNextRowset(This,pUnkOuter,riid,ppNextRowset)
  342.  
  343. #endif /* COBJMACROS */
  344.  
  345.  
  346. #endif     /* C style interface */
  347.  
  348.  
  349.  
  350. HRESULT STDMETHODCALLTYPE IRowsetNextRowset_GetNextRowset_Proxy( 
  351.     IRowsetNextRowset __RPC_FAR * This,
  352.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  353.     /* [in] */ REFIID riid,
  354.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppNextRowset);
  355.  
  356.  
  357. void __RPC_STUB IRowsetNextRowset_GetNextRowset_Stub(
  358.     IRpcStubBuffer *This,
  359.     IRpcChannelBuffer *_pRpcChannelBuffer,
  360.     PRPC_MESSAGE _pRpcMessage,
  361.     DWORD *_pdwStubPhase);
  362.  
  363.  
  364.  
  365. #endif     /* __IRowsetNextRowset_INTERFACE_DEFINED__ */
  366.  
  367.  
  368. #ifndef __IRowsetNewRowAfter_INTERFACE_DEFINED__
  369. #define __IRowsetNewRowAfter_INTERFACE_DEFINED__
  370.  
  371. /* interface IRowsetNewRowAfter */
  372. /* [unique][uuid][object][local] */ 
  373.  
  374.  
  375. EXTERN_C const IID IID_IRowsetNewRowAfter;
  376.  
  377. #if defined(__cplusplus) && !defined(CINTERFACE)
  378.     
  379.     MIDL_INTERFACE("0c733a71-2a1c-11ce-ade5-00aa0044773d")
  380.     IRowsetNewRowAfter : public IUnknown
  381.     {
  382.     public:
  383.         virtual HRESULT STDMETHODCALLTYPE SetNewDataAfter( 
  384.             /* [in] */ HCHAPTER hChapter,
  385.             /* [in] */ ULONG cbbmPrevious,
  386.             /* [size_is][in] */ const BYTE __RPC_FAR *pbmPrevious,
  387.             /* [in] */ HACCESSOR hAccessor,
  388.             /* [in] */ BYTE __RPC_FAR *pData,
  389.             /* [out] */ HROW __RPC_FAR *phRow) = 0;
  390.         
  391.     };
  392.     
  393. #else     /* C style interface */
  394.  
  395.     typedef struct IRowsetNewRowAfterVtbl
  396.     {
  397.         BEGIN_INTERFACE
  398.         
  399.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  400.             IRowsetNewRowAfter __RPC_FAR * This,
  401.             /* [in] */ REFIID riid,
  402.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  403.         
  404.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  405.             IRowsetNewRowAfter __RPC_FAR * This);
  406.         
  407.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  408.             IRowsetNewRowAfter __RPC_FAR * This);
  409.         
  410.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetNewDataAfter )( 
  411.             IRowsetNewRowAfter __RPC_FAR * This,
  412.             /* [in] */ HCHAPTER hChapter,
  413.             /* [in] */ ULONG cbbmPrevious,
  414.             /* [size_is][in] */ const BYTE __RPC_FAR *pbmPrevious,
  415.             /* [in] */ HACCESSOR hAccessor,
  416.             /* [in] */ BYTE __RPC_FAR *pData,
  417.             /* [out] */ HROW __RPC_FAR *phRow);
  418.         
  419.         END_INTERFACE
  420.     } IRowsetNewRowAfterVtbl;
  421.  
  422.     interface IRowsetNewRowAfter
  423.     {
  424.         CONST_VTBL struct IRowsetNewRowAfterVtbl __RPC_FAR *lpVtbl;
  425.     };
  426.  
  427.     
  428.  
  429. #ifdef COBJMACROS
  430.  
  431.  
  432. #define IRowsetNewRowAfter_QueryInterface(This,riid,ppvObject)    \
  433.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  434.  
  435. #define IRowsetNewRowAfter_AddRef(This)    \
  436.     (This)->lpVtbl -> AddRef(This)
  437.  
  438. #define IRowsetNewRowAfter_Release(This)    \
  439.     (This)->lpVtbl -> Release(This)
  440.  
  441.  
  442. #define IRowsetNewRowAfter_SetNewDataAfter(This,hChapter,cbbmPrevious,pbmPrevious,hAccessor,pData,phRow)    \
  443.     (This)->lpVtbl -> SetNewDataAfter(This,hChapter,cbbmPrevious,pbmPrevious,hAccessor,pData,phRow)
  444.  
  445. #endif /* COBJMACROS */
  446.  
  447.  
  448. #endif     /* C style interface */
  449.  
  450.  
  451.  
  452. HRESULT STDMETHODCALLTYPE IRowsetNewRowAfter_SetNewDataAfter_Proxy( 
  453.     IRowsetNewRowAfter __RPC_FAR * This,
  454.     /* [in] */ HCHAPTER hChapter,
  455.     /* [in] */ ULONG cbbmPrevious,
  456.     /* [size_is][in] */ const BYTE __RPC_FAR *pbmPrevious,
  457.     /* [in] */ HACCESSOR hAccessor,
  458.     /* [in] */ BYTE __RPC_FAR *pData,
  459.     /* [out] */ HROW __RPC_FAR *phRow);
  460.  
  461.  
  462. void __RPC_STUB IRowsetNewRowAfter_SetNewDataAfter_Stub(
  463.     IRpcStubBuffer *This,
  464.     IRpcChannelBuffer *_pRpcChannelBuffer,
  465.     PRPC_MESSAGE _pRpcMessage,
  466.     DWORD *_pdwStubPhase);
  467.  
  468.  
  469.  
  470. #endif     /* __IRowsetNewRowAfter_INTERFACE_DEFINED__ */
  471.  
  472.  
  473. #ifndef __IRowsetWithParameters_INTERFACE_DEFINED__
  474. #define __IRowsetWithParameters_INTERFACE_DEFINED__
  475.  
  476. /* interface IRowsetWithParameters */
  477. /* [unique][uuid][object][local] */ 
  478.  
  479.  
  480. EXTERN_C const IID IID_IRowsetWithParameters;
  481.  
  482. #if defined(__cplusplus) && !defined(CINTERFACE)
  483.     
  484.     MIDL_INTERFACE("0c733a6e-2a1c-11ce-ade5-00aa0044773d")
  485.     IRowsetWithParameters : public IUnknown
  486.     {
  487.     public:
  488.         virtual HRESULT STDMETHODCALLTYPE GetParameterInfo( 
  489.             /* [out][in] */ DB_UPARAMS __RPC_FAR *pcParams,
  490.             /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  491.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer) = 0;
  492.         
  493.         virtual HRESULT STDMETHODCALLTYPE Requery( 
  494.             /* [in] */ DBPARAMS __RPC_FAR *pParams,
  495.             /* [out] */ ULONG __RPC_FAR *pulErrorParam,
  496.             /* [out] */ HCHAPTER __RPC_FAR *phReserved) = 0;
  497.         
  498.     };
  499.     
  500. #else     /* C style interface */
  501.  
  502.     typedef struct IRowsetWithParametersVtbl
  503.     {
  504.         BEGIN_INTERFACE
  505.         
  506.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  507.             IRowsetWithParameters __RPC_FAR * This,
  508.             /* [in] */ REFIID riid,
  509.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  510.         
  511.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  512.             IRowsetWithParameters __RPC_FAR * This);
  513.         
  514.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  515.             IRowsetWithParameters __RPC_FAR * This);
  516.         
  517.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetParameterInfo )( 
  518.             IRowsetWithParameters __RPC_FAR * This,
  519.             /* [out][in] */ DB_UPARAMS __RPC_FAR *pcParams,
  520.             /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  521.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer);
  522.         
  523.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Requery )( 
  524.             IRowsetWithParameters __RPC_FAR * This,
  525.             /* [in] */ DBPARAMS __RPC_FAR *pParams,
  526.             /* [out] */ ULONG __RPC_FAR *pulErrorParam,
  527.             /* [out] */ HCHAPTER __RPC_FAR *phReserved);
  528.         
  529.         END_INTERFACE
  530.     } IRowsetWithParametersVtbl;
  531.  
  532.     interface IRowsetWithParameters
  533.     {
  534.         CONST_VTBL struct IRowsetWithParametersVtbl __RPC_FAR *lpVtbl;
  535.     };
  536.  
  537.     
  538.  
  539. #ifdef COBJMACROS
  540.  
  541.  
  542. #define IRowsetWithParameters_QueryInterface(This,riid,ppvObject)    \
  543.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  544.  
  545. #define IRowsetWithParameters_AddRef(This)    \
  546.     (This)->lpVtbl -> AddRef(This)
  547.  
  548. #define IRowsetWithParameters_Release(This)    \
  549.     (This)->lpVtbl -> Release(This)
  550.  
  551.  
  552. #define IRowsetWithParameters_GetParameterInfo(This,pcParams,prgParamInfo,ppNamesBuffer)    \
  553.     (This)->lpVtbl -> GetParameterInfo(This,pcParams,prgParamInfo,ppNamesBuffer)
  554.  
  555. #define IRowsetWithParameters_Requery(This,pParams,pulErrorParam,phReserved)    \
  556.     (This)->lpVtbl -> Requery(This,pParams,pulErrorParam,phReserved)
  557.  
  558. #endif /* COBJMACROS */
  559.  
  560.  
  561. #endif     /* C style interface */
  562.  
  563.  
  564.  
  565. HRESULT STDMETHODCALLTYPE IRowsetWithParameters_GetParameterInfo_Proxy( 
  566.     IRowsetWithParameters __RPC_FAR * This,
  567.     /* [out][in] */ DB_UPARAMS __RPC_FAR *pcParams,
  568.     /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  569.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer);
  570.  
  571.  
  572. void __RPC_STUB IRowsetWithParameters_GetParameterInfo_Stub(
  573.     IRpcStubBuffer *This,
  574.     IRpcChannelBuffer *_pRpcChannelBuffer,
  575.     PRPC_MESSAGE _pRpcMessage,
  576.     DWORD *_pdwStubPhase);
  577.  
  578.  
  579. HRESULT STDMETHODCALLTYPE IRowsetWithParameters_Requery_Proxy( 
  580.     IRowsetWithParameters __RPC_FAR * This,
  581.     /* [in] */ DBPARAMS __RPC_FAR *pParams,
  582.     /* [out] */ ULONG __RPC_FAR *pulErrorParam,
  583.     /* [out] */ HCHAPTER __RPC_FAR *phReserved);
  584.  
  585.  
  586. void __RPC_STUB IRowsetWithParameters_Requery_Stub(
  587.     IRpcStubBuffer *This,
  588.     IRpcChannelBuffer *_pRpcChannelBuffer,
  589.     PRPC_MESSAGE _pRpcMessage,
  590.     DWORD *_pdwStubPhase);
  591.  
  592.  
  593.  
  594. #endif     /* __IRowsetWithParameters_INTERFACE_DEFINED__ */
  595.  
  596.  
  597. #ifndef __IRowsetAsynch_INTERFACE_DEFINED__
  598. #define __IRowsetAsynch_INTERFACE_DEFINED__
  599.  
  600. /* interface IRowsetAsynch */
  601. /* [unique][uuid][object][local] */ 
  602.  
  603.  
  604. EXTERN_C const IID IID_IRowsetAsynch;
  605.  
  606. #if defined(__cplusplus) && !defined(CINTERFACE)
  607.     
  608.     MIDL_INTERFACE("0c733a0f-2a1c-11ce-ade5-00aa0044773d")
  609.     IRowsetAsynch : public IUnknown
  610.     {
  611.     public:
  612.         virtual HRESULT STDMETHODCALLTYPE RatioFinished( 
  613.             /* [out] */ DBCOUNTITEM __RPC_FAR *pulDenominator,
  614.             /* [out] */ DBCOUNTITEM __RPC_FAR *pulNumerator,
  615.             /* [out] */ DBCOUNTITEM __RPC_FAR *pcRows,
  616.             /* [out] */ BOOL __RPC_FAR *pfNewRows) = 0;
  617.         
  618.         virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0;
  619.         
  620.     };
  621.     
  622. #else     /* C style interface */
  623.  
  624.     typedef struct IRowsetAsynchVtbl
  625.     {
  626.         BEGIN_INTERFACE
  627.         
  628.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  629.             IRowsetAsynch __RPC_FAR * This,
  630.             /* [in] */ REFIID riid,
  631.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  632.         
  633.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  634.             IRowsetAsynch __RPC_FAR * This);
  635.         
  636.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  637.             IRowsetAsynch __RPC_FAR * This);
  638.         
  639.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RatioFinished )( 
  640.             IRowsetAsynch __RPC_FAR * This,
  641.             /* [out] */ DBCOUNTITEM __RPC_FAR *pulDenominator,
  642.             /* [out] */ DBCOUNTITEM __RPC_FAR *pulNumerator,
  643.             /* [out] */ DBCOUNTITEM __RPC_FAR *pcRows,
  644.             /* [out] */ BOOL __RPC_FAR *pfNewRows);
  645.         
  646.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Stop )( 
  647.             IRowsetAsynch __RPC_FAR * This);
  648.         
  649.         END_INTERFACE
  650.     } IRowsetAsynchVtbl;
  651.  
  652.     interface IRowsetAsynch
  653.     {
  654.         CONST_VTBL struct IRowsetAsynchVtbl __RPC_FAR *lpVtbl;
  655.     };
  656.  
  657.     
  658.  
  659. #ifdef COBJMACROS
  660.  
  661.  
  662. #define IRowsetAsynch_QueryInterface(This,riid,ppvObject)    \
  663.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  664.  
  665. #define IRowsetAsynch_AddRef(This)    \
  666.     (This)->lpVtbl -> AddRef(This)
  667.  
  668. #define IRowsetAsynch_Release(This)    \
  669.     (This)->lpVtbl -> Release(This)
  670.  
  671.  
  672. #define IRowsetAsynch_RatioFinished(This,pulDenominator,pulNumerator,pcRows,pfNewRows)    \
  673.     (This)->lpVtbl -> RatioFinished(This,pulDenominator,pulNumerator,pcRows,pfNewRows)
  674.  
  675. #define IRowsetAsynch_Stop(This)    \
  676.     (This)->lpVtbl -> Stop(This)
  677.  
  678. #endif /* COBJMACROS */
  679.  
  680.  
  681. #endif     /* C style interface */
  682.  
  683.  
  684.  
  685. HRESULT STDMETHODCALLTYPE IRowsetAsynch_RatioFinished_Proxy( 
  686.     IRowsetAsynch __RPC_FAR * This,
  687.     /* [out] */ DBCOUNTITEM __RPC_FAR *pulDenominator,
  688.     /* [out] */ DBCOUNTITEM __RPC_FAR *pulNumerator,
  689.     /* [out] */ DBCOUNTITEM __RPC_FAR *pcRows,
  690.     /* [out] */ BOOL __RPC_FAR *pfNewRows);
  691.  
  692.  
  693. void __RPC_STUB IRowsetAsynch_RatioFinished_Stub(
  694.     IRpcStubBuffer *This,
  695.     IRpcChannelBuffer *_pRpcChannelBuffer,
  696.     PRPC_MESSAGE _pRpcMessage,
  697.     DWORD *_pdwStubPhase);
  698.  
  699.  
  700. HRESULT STDMETHODCALLTYPE IRowsetAsynch_Stop_Proxy( 
  701.     IRowsetAsynch __RPC_FAR * This);
  702.  
  703.  
  704. void __RPC_STUB IRowsetAsynch_Stop_Stub(
  705.     IRpcStubBuffer *This,
  706.     IRpcChannelBuffer *_pRpcChannelBuffer,
  707.     PRPC_MESSAGE _pRpcMessage,
  708.     DWORD *_pdwStubPhase);
  709.  
  710.  
  711.  
  712. #endif     /* __IRowsetAsynch_INTERFACE_DEFINED__ */
  713.  
  714.  
  715. #ifndef __IRowsetKeys_INTERFACE_DEFINED__
  716. #define __IRowsetKeys_INTERFACE_DEFINED__
  717.  
  718. /* interface IRowsetKeys */
  719. /* [unique][uuid][object][local] */ 
  720.  
  721.  
  722. EXTERN_C const IID IID_IRowsetKeys;
  723.  
  724. #if defined(__cplusplus) && !defined(CINTERFACE)
  725.     
  726.     MIDL_INTERFACE("0c733a12-2a1c-11ce-ade5-00aa0044773d")
  727.     IRowsetKeys : public IUnknown
  728.     {
  729.     public:
  730.         virtual HRESULT STDMETHODCALLTYPE ListKeys( 
  731.             /* [out][in] */ DBORDINAL __RPC_FAR *pcColumns,
  732.             /* [size_is][size_is][out] */ DBORDINAL __RPC_FAR *__RPC_FAR *prgColumns) = 0;
  733.         
  734.     };
  735.     
  736. #else     /* C style interface */
  737.  
  738.     typedef struct IRowsetKeysVtbl
  739.     {
  740.         BEGIN_INTERFACE
  741.         
  742.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  743.             IRowsetKeys __RPC_FAR * This,
  744.             /* [in] */ REFIID riid,
  745.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  746.         
  747.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  748.             IRowsetKeys __RPC_FAR * This);
  749.         
  750.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  751.             IRowsetKeys __RPC_FAR * This);
  752.         
  753.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ListKeys )( 
  754.             IRowsetKeys __RPC_FAR * This,
  755.             /* [out][in] */ DBORDINAL __RPC_FAR *pcColumns,
  756.             /* [size_is][size_is][out] */ DBORDINAL __RPC_FAR *__RPC_FAR *prgColumns);
  757.         
  758.         END_INTERFACE
  759.     } IRowsetKeysVtbl;
  760.  
  761.     interface IRowsetKeys
  762.     {
  763.         CONST_VTBL struct IRowsetKeysVtbl __RPC_FAR *lpVtbl;
  764.     };
  765.  
  766.     
  767.  
  768. #ifdef COBJMACROS
  769.  
  770.  
  771. #define IRowsetKeys_QueryInterface(This,riid,ppvObject)    \
  772.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  773.  
  774. #define IRowsetKeys_AddRef(This)    \
  775.     (This)->lpVtbl -> AddRef(This)
  776.  
  777. #define IRowsetKeys_Release(This)    \
  778.     (This)->lpVtbl -> Release(This)
  779.  
  780.  
  781. #define IRowsetKeys_ListKeys(This,pcColumns,prgColumns)    \
  782.     (This)->lpVtbl -> ListKeys(This,pcColumns,prgColumns)
  783.  
  784. #endif /* COBJMACROS */
  785.  
  786.  
  787. #endif     /* C style interface */
  788.  
  789.  
  790.  
  791. HRESULT STDMETHODCALLTYPE IRowsetKeys_ListKeys_Proxy( 
  792.     IRowsetKeys __RPC_FAR * This,
  793.     /* [out][in] */ DBORDINAL __RPC_FAR *pcColumns,
  794.     /* [size_is][size_is][out] */ DBORDINAL __RPC_FAR *__RPC_FAR *prgColumns);
  795.  
  796.  
  797. void __RPC_STUB IRowsetKeys_ListKeys_Stub(
  798.     IRpcStubBuffer *This,
  799.     IRpcChannelBuffer *_pRpcChannelBuffer,
  800.     PRPC_MESSAGE _pRpcMessage,
  801.     DWORD *_pdwStubPhase);
  802.  
  803.  
  804.  
  805. #endif     /* __IRowsetKeys_INTERFACE_DEFINED__ */
  806.  
  807.  
  808. #ifndef __IRowsetWatchAll_INTERFACE_DEFINED__
  809. #define __IRowsetWatchAll_INTERFACE_DEFINED__
  810.  
  811. /* interface IRowsetWatchAll */
  812. /* [unique][uuid][object][local] */ 
  813.  
  814.  
  815. EXTERN_C const IID IID_IRowsetWatchAll;
  816.  
  817. #if defined(__cplusplus) && !defined(CINTERFACE)
  818.     
  819.     MIDL_INTERFACE("0c733a73-2a1c-11ce-ade5-00aa0044773d")
  820.     IRowsetWatchAll : public IUnknown
  821.     {
  822.     public:
  823.         virtual HRESULT STDMETHODCALLTYPE Acknowledge( void) = 0;
  824.         
  825.         virtual HRESULT STDMETHODCALLTYPE Start( void) = 0;
  826.         
  827.         virtual HRESULT STDMETHODCALLTYPE StopWatching( void) = 0;
  828.         
  829.     };
  830.     
  831. #else     /* C style interface */
  832.  
  833.     typedef struct IRowsetWatchAllVtbl
  834.     {
  835.         BEGIN_INTERFACE
  836.         
  837.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  838.             IRowsetWatchAll __RPC_FAR * This,
  839.             /* [in] */ REFIID riid,
  840.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  841.         
  842.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  843.             IRowsetWatchAll __RPC_FAR * This);
  844.         
  845.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  846.             IRowsetWatchAll __RPC_FAR * This);
  847.         
  848.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Acknowledge )( 
  849.             IRowsetWatchAll __RPC_FAR * This);
  850.         
  851.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Start )( 
  852.             IRowsetWatchAll __RPC_FAR * This);
  853.         
  854.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *StopWatching )( 
  855.             IRowsetWatchAll __RPC_FAR * This);
  856.         
  857.         END_INTERFACE
  858.     } IRowsetWatchAllVtbl;
  859.  
  860.     interface IRowsetWatchAll
  861.     {
  862.         CONST_VTBL struct IRowsetWatchAllVtbl __RPC_FAR *lpVtbl;
  863.     };
  864.  
  865.     
  866.  
  867. #ifdef COBJMACROS
  868.  
  869.  
  870. #define IRowsetWatchAll_QueryInterface(This,riid,ppvObject)    \
  871.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  872.  
  873. #define IRowsetWatchAll_AddRef(This)    \
  874.     (This)->lpVtbl -> AddRef(This)
  875.  
  876. #define IRowsetWatchAll_Release(This)    \
  877.     (This)->lpVtbl -> Release(This)
  878.  
  879.  
  880. #define IRowsetWatchAll_Acknowledge(This)    \
  881.     (This)->lpVtbl -> Acknowledge(This)
  882.  
  883. #define IRowsetWatchAll_Start(This)    \
  884.     (This)->lpVtbl -> Start(This)
  885.  
  886. #define IRowsetWatchAll_StopWatching(This)    \
  887.     (This)->lpVtbl -> StopWatching(This)
  888.  
  889. #endif /* COBJMACROS */
  890.  
  891.  
  892. #endif     /* C style interface */
  893.  
  894.  
  895.  
  896. HRESULT STDMETHODCALLTYPE IRowsetWatchAll_Acknowledge_Proxy( 
  897.     IRowsetWatchAll __RPC_FAR * This);
  898.  
  899.  
  900. void __RPC_STUB IRowsetWatchAll_Acknowledge_Stub(
  901.     IRpcStubBuffer *This,
  902.     IRpcChannelBuffer *_pRpcChannelBuffer,
  903.     PRPC_MESSAGE _pRpcMessage,
  904.     DWORD *_pdwStubPhase);
  905.  
  906.  
  907. HRESULT STDMETHODCALLTYPE IRowsetWatchAll_Start_Proxy( 
  908.     IRowsetWatchAll __RPC_FAR * This);
  909.  
  910.  
  911. void __RPC_STUB IRowsetWatchAll_Start_Stub(
  912.     IRpcStubBuffer *This,
  913.     IRpcChannelBuffer *_pRpcChannelBuffer,
  914.     PRPC_MESSAGE _pRpcMessage,
  915.     DWORD *_pdwStubPhase);
  916.  
  917.  
  918. HRESULT STDMETHODCALLTYPE IRowsetWatchAll_StopWatching_Proxy( 
  919.     IRowsetWatchAll __RPC_FAR * This);
  920.  
  921.  
  922. void __RPC_STUB IRowsetWatchAll_StopWatching_Stub(
  923.     IRpcStubBuffer *This,
  924.     IRpcChannelBuffer *_pRpcChannelBuffer,
  925.     PRPC_MESSAGE _pRpcMessage,
  926.     DWORD *_pdwStubPhase);
  927.  
  928.  
  929.  
  930. #endif     /* __IRowsetWatchAll_INTERFACE_DEFINED__ */
  931.  
  932.  
  933. #ifndef __IRowsetWatchNotify_INTERFACE_DEFINED__
  934. #define __IRowsetWatchNotify_INTERFACE_DEFINED__
  935.  
  936. /* interface IRowsetWatchNotify */
  937. /* [unique][uuid][object][local] */ 
  938.  
  939. typedef DWORD DBWATCHNOTIFY;
  940.  
  941.  
  942. enum DBWATCHNOTIFYENUM
  943.     {    DBWATCHNOTIFY_ROWSCHANGED    = 1,
  944.     DBWATCHNOTIFY_QUERYDONE    = 2,
  945.     DBWATCHNOTIFY_QUERYREEXECUTED    = 3
  946.     };
  947.  
  948. EXTERN_C const IID IID_IRowsetWatchNotify;
  949.  
  950. #if defined(__cplusplus) && !defined(CINTERFACE)
  951.     
  952.     MIDL_INTERFACE("0c733a44-2a1c-11ce-ade5-00aa0044773d")
  953.     IRowsetWatchNotify : public IUnknown
  954.     {
  955.     public:
  956.         virtual HRESULT STDMETHODCALLTYPE OnChange( 
  957.             /* [in] */ IRowset __RPC_FAR *pRowset,
  958.             /* [in] */ DBWATCHNOTIFY eChangeReason) = 0;
  959.         
  960.     };
  961.     
  962. #else     /* C style interface */
  963.  
  964.     typedef struct IRowsetWatchNotifyVtbl
  965.     {
  966.         BEGIN_INTERFACE
  967.         
  968.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  969.             IRowsetWatchNotify __RPC_FAR * This,
  970.             /* [in] */ REFIID riid,
  971.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  972.         
  973.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  974.             IRowsetWatchNotify __RPC_FAR * This);
  975.         
  976.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  977.             IRowsetWatchNotify __RPC_FAR * This);
  978.         
  979.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnChange )( 
  980.             IRowsetWatchNotify __RPC_FAR * This,
  981.             /* [in] */ IRowset __RPC_FAR *pRowset,
  982.             /* [in] */ DBWATCHNOTIFY eChangeReason);
  983.         
  984.         END_INTERFACE
  985.     } IRowsetWatchNotifyVtbl;
  986.  
  987.     interface IRowsetWatchNotify
  988.     {
  989.         CONST_VTBL struct IRowsetWatchNotifyVtbl __RPC_FAR *lpVtbl;
  990.     };
  991.  
  992.     
  993.  
  994. #ifdef COBJMACROS
  995.  
  996.  
  997. #define IRowsetWatchNotify_QueryInterface(This,riid,ppvObject)    \
  998.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  999.  
  1000. #define IRowsetWatchNotify_AddRef(This)    \
  1001.     (This)->lpVtbl -> AddRef(This)
  1002.  
  1003. #define IRowsetWatchNotify_Release(This)    \
  1004.     (This)->lpVtbl -> Release(This)
  1005.  
  1006.  
  1007. #define IRowsetWatchNotify_OnChange(This,pRowset,eChangeReason)    \
  1008.     (This)->lpVtbl -> OnChange(This,pRowset,eChangeReason)
  1009.  
  1010. #endif /* COBJMACROS */
  1011.  
  1012.  
  1013. #endif     /* C style interface */
  1014.  
  1015.  
  1016.  
  1017. HRESULT STDMETHODCALLTYPE IRowsetWatchNotify_OnChange_Proxy( 
  1018.     IRowsetWatchNotify __RPC_FAR * This,
  1019.     /* [in] */ IRowset __RPC_FAR *pRowset,
  1020.     /* [in] */ DBWATCHNOTIFY eChangeReason);
  1021.  
  1022.  
  1023. void __RPC_STUB IRowsetWatchNotify_OnChange_Stub(
  1024.     IRpcStubBuffer *This,
  1025.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1026.     PRPC_MESSAGE _pRpcMessage,
  1027.     DWORD *_pdwStubPhase);
  1028.  
  1029.  
  1030.  
  1031. #endif     /* __IRowsetWatchNotify_INTERFACE_DEFINED__ */
  1032.  
  1033.  
  1034. #ifndef __IRowsetWatchRegion_INTERFACE_DEFINED__
  1035. #define __IRowsetWatchRegion_INTERFACE_DEFINED__
  1036.  
  1037. /* interface IRowsetWatchRegion */
  1038. /* [unique][uuid][object][local] */ 
  1039.  
  1040. typedef DWORD DBWATCHMODE;
  1041.  
  1042.  
  1043. enum DBWATCHMODEENUM
  1044.     {    DBWATCHMODE_ALL    = 0x1,
  1045.     DBWATCHMODE_EXTEND    = 0x2,
  1046.     DBWATCHMODE_MOVE    = 0x4,
  1047.     DBWATCHMODE_COUNT    = 0x8
  1048.     };
  1049. typedef DWORD DBROWCHANGEKIND;
  1050.  
  1051.  
  1052. enum DBROWCHANGEKINDENUM
  1053.     {    DBROWCHANGEKIND_INSERT    = 0,
  1054.     DBROWCHANGEKIND_DELETE    = DBROWCHANGEKIND_INSERT + 1,
  1055.     DBROWCHANGEKIND_UPDATE    = DBROWCHANGEKIND_DELETE + 1,
  1056.     DBROWCHANGEKIND_COUNT    = DBROWCHANGEKIND_UPDATE + 1
  1057.     };
  1058. typedef struct tagDBROWWATCHRANGE
  1059.     {
  1060.     HWATCHREGION hRegion;
  1061.     DBROWCHANGEKIND eChangeKind;
  1062.     HROW hRow;
  1063.     DBCOUNTITEM iRow;
  1064.     }    DBROWWATCHCHANGE;
  1065.  
  1066.  
  1067. EXTERN_C const IID IID_IRowsetWatchRegion;
  1068.  
  1069. #if defined(__cplusplus) && !defined(CINTERFACE)
  1070.     
  1071.     MIDL_INTERFACE("0c733a45-2a1c-11ce-ade5-00aa0044773d")
  1072.     IRowsetWatchRegion : public IRowsetWatchAll
  1073.     {
  1074.     public:
  1075.         virtual HRESULT STDMETHODCALLTYPE CreateWatchRegion( 
  1076.             /* [in] */ DBWATCHMODE dwWatchMode,
  1077.             /* [out] */ HWATCHREGION __RPC_FAR *phRegion) = 0;
  1078.         
  1079.         virtual HRESULT STDMETHODCALLTYPE ChangeWatchMode( 
  1080.             /* [in] */ HWATCHREGION hRegion,
  1081.             /* [in] */ DBWATCHMODE dwWatchMode) = 0;
  1082.         
  1083.         virtual HRESULT STDMETHODCALLTYPE DeleteWatchRegion( 
  1084.             /* [in] */ HWATCHREGION hRegion) = 0;
  1085.         
  1086.         virtual HRESULT STDMETHODCALLTYPE GetWatchRegionInfo( 
  1087.             /* [in] */ HWATCHREGION hRegion,
  1088.             /* [out] */ DBWATCHMODE __RPC_FAR *pdwWatchMode,
  1089.             /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  1090.             /* [out][in] */ DBBKMARK __RPC_FAR *pcbBookmark,
  1091.             /* [size_is][size_is][out] */ BYTE __RPC_FAR *__RPC_FAR *ppBookmark,
  1092.             /* [out] */ DBROWCOUNT __RPC_FAR *pcRows) = 0;
  1093.         
  1094.         virtual HRESULT STDMETHODCALLTYPE Refresh( 
  1095.             /* [out][in] */ DBCOUNTITEM __RPC_FAR *pcChangesObtained,
  1096.             /* [size_is][size_is][out] */ DBROWWATCHCHANGE __RPC_FAR *__RPC_FAR *prgChanges) = 0;
  1097.         
  1098.         virtual HRESULT STDMETHODCALLTYPE ShrinkWatchRegion( 
  1099.             /* [in] */ HWATCHREGION hRegion,
  1100.             /* [in] */ HCHAPTER hChapter,
  1101.             /* [in] */ DBBKMARK cbBookmark,
  1102.             /* [size_is][in] */ BYTE __RPC_FAR *pBookmark,
  1103.             /* [in] */ DBROWCOUNT cRows) = 0;
  1104.         
  1105.     };
  1106.     
  1107. #else     /* C style interface */
  1108.  
  1109.     typedef struct IRowsetWatchRegionVtbl
  1110.     {
  1111.         BEGIN_INTERFACE
  1112.         
  1113.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1114.             IRowsetWatchRegion __RPC_FAR * This,
  1115.             /* [in] */ REFIID riid,
  1116.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1117.         
  1118.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1119.             IRowsetWatchRegion __RPC_FAR * This);
  1120.         
  1121.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1122.             IRowsetWatchRegion __RPC_FAR * This);
  1123.         
  1124.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Acknowledge )( 
  1125.             IRowsetWatchRegion __RPC_FAR * This);
  1126.         
  1127.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Start )( 
  1128.             IRowsetWatchRegion __RPC_FAR * This);
  1129.         
  1130.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *StopWatching )( 
  1131.             IRowsetWatchRegion __RPC_FAR * This);
  1132.         
  1133.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateWatchRegion )( 
  1134.             IRowsetWatchRegion __RPC_FAR * This,
  1135.             /* [in] */ DBWATCHMODE dwWatchMode,
  1136.             /* [out] */ HWATCHREGION __RPC_FAR *phRegion);
  1137.         
  1138.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ChangeWatchMode )( 
  1139.             IRowsetWatchRegion __RPC_FAR * This,
  1140.             /* [in] */ HWATCHREGION hRegion,
  1141.             /* [in] */ DBWATCHMODE dwWatchMode);
  1142.         
  1143.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteWatchRegion )( 
  1144.             IRowsetWatchRegion __RPC_FAR * This,
  1145.             /* [in] */ HWATCHREGION hRegion);
  1146.         
  1147.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetWatchRegionInfo )( 
  1148.             IRowsetWatchRegion __RPC_FAR * This,
  1149.             /* [in] */ HWATCHREGION hRegion,
  1150.             /* [out] */ DBWATCHMODE __RPC_FAR *pdwWatchMode,
  1151.             /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  1152.             /* [out][in] */ DBBKMARK __RPC_FAR *pcbBookmark,
  1153.             /* [size_is][size_is][out] */ BYTE __RPC_FAR *__RPC_FAR *ppBookmark,
  1154.             /* [out] */ DBROWCOUNT __RPC_FAR *pcRows);
  1155.         
  1156.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )( 
  1157.             IRowsetWatchRegion __RPC_FAR * This,
  1158.             /* [out][in] */ DBCOUNTITEM __RPC_FAR *pcChangesObtained,
  1159.             /* [size_is][size_is][out] */ DBROWWATCHCHANGE __RPC_FAR *__RPC_FAR *prgChanges);
  1160.         
  1161.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ShrinkWatchRegion )( 
  1162.             IRowsetWatchRegion __RPC_FAR * This,
  1163.             /* [in] */ HWATCHREGION hRegion,
  1164.             /* [in] */ HCHAPTER hChapter,
  1165.             /* [in] */ DBBKMARK cbBookmark,
  1166.             /* [size_is][in] */ BYTE __RPC_FAR *pBookmark,
  1167.             /* [in] */ DBROWCOUNT cRows);
  1168.         
  1169.         END_INTERFACE
  1170.     } IRowsetWatchRegionVtbl;
  1171.  
  1172.     interface IRowsetWatchRegion
  1173.     {
  1174.         CONST_VTBL struct IRowsetWatchRegionVtbl __RPC_FAR *lpVtbl;
  1175.     };
  1176.  
  1177.     
  1178.  
  1179. #ifdef COBJMACROS
  1180.  
  1181.  
  1182. #define IRowsetWatchRegion_QueryInterface(This,riid,ppvObject)    \
  1183.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1184.  
  1185. #define IRowsetWatchRegion_AddRef(This)    \
  1186.     (This)->lpVtbl -> AddRef(This)
  1187.  
  1188. #define IRowsetWatchRegion_Release(This)    \
  1189.     (This)->lpVtbl -> Release(This)
  1190.  
  1191.  
  1192. #define IRowsetWatchRegion_Acknowledge(This)    \
  1193.     (This)->lpVtbl -> Acknowledge(This)
  1194.  
  1195. #define IRowsetWatchRegion_Start(This)    \
  1196.     (This)->lpVtbl -> Start(This)
  1197.  
  1198. #define IRowsetWatchRegion_StopWatching(This)    \
  1199.     (This)->lpVtbl -> StopWatching(This)
  1200.  
  1201.  
  1202. #define IRowsetWatchRegion_CreateWatchRegion(This,dwWatchMode,phRegion)    \
  1203.     (This)->lpVtbl -> CreateWatchRegion(This,dwWatchMode,phRegion)
  1204.  
  1205. #define IRowsetWatchRegion_ChangeWatchMode(This,hRegion,dwWatchMode)    \
  1206.     (This)->lpVtbl -> ChangeWatchMode(This,hRegion,dwWatchMode)
  1207.  
  1208. #define IRowsetWatchRegion_DeleteWatchRegion(This,hRegion)    \
  1209.     (This)->lpVtbl -> DeleteWatchRegion(This,hRegion)
  1210.  
  1211. #define IRowsetWatchRegion_GetWatchRegionInfo(This,hRegion,pdwWatchMode,phChapter,pcbBookmark,ppBookmark,pcRows)    \
  1212.     (This)->lpVtbl -> GetWatchRegionInfo(This,hRegion,pdwWatchMode,phChapter,pcbBookmark,ppBookmark,pcRows)
  1213.  
  1214. #define IRowsetWatchRegion_Refresh(This,pcChangesObtained,prgChanges)    \
  1215.     (This)->lpVtbl -> Refresh(This,pcChangesObtained,prgChanges)
  1216.  
  1217. #define IRowsetWatchRegion_ShrinkWatchRegion(This,hRegion,hChapter,cbBookmark,pBookmark,cRows)    \
  1218.     (This)->lpVtbl -> ShrinkWatchRegion(This,hRegion,hChapter,cbBookmark,pBookmark,cRows)
  1219.  
  1220. #endif /* COBJMACROS */
  1221.  
  1222.  
  1223. #endif     /* C style interface */
  1224.  
  1225.  
  1226.  
  1227. HRESULT STDMETHODCALLTYPE IRowsetWatchRegion_CreateWatchRegion_Proxy( 
  1228.     IRowsetWatchRegion __RPC_FAR * This,
  1229.     /* [in] */ DBWATCHMODE dwWatchMode,
  1230.     /* [out] */ HWATCHREGION __RPC_FAR *phRegion);
  1231.  
  1232.  
  1233. void __RPC_STUB IRowsetWatchRegion_CreateWatchRegion_Stub(
  1234.     IRpcStubBuffer *This,
  1235.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1236.     PRPC_MESSAGE _pRpcMessage,
  1237.     DWORD *_pdwStubPhase);
  1238.  
  1239.  
  1240. HRESULT STDMETHODCALLTYPE IRowsetWatchRegion_ChangeWatchMode_Proxy( 
  1241.     IRowsetWatchRegion __RPC_FAR * This,
  1242.     /* [in] */ HWATCHREGION hRegion,
  1243.     /* [in] */ DBWATCHMODE dwWatchMode);
  1244.  
  1245.  
  1246. void __RPC_STUB IRowsetWatchRegion_ChangeWatchMode_Stub(
  1247.     IRpcStubBuffer *This,
  1248.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1249.     PRPC_MESSAGE _pRpcMessage,
  1250.     DWORD *_pdwStubPhase);
  1251.  
  1252.  
  1253. HRESULT STDMETHODCALLTYPE IRowsetWatchRegion_DeleteWatchRegion_Proxy( 
  1254.     IRowsetWatchRegion __RPC_FAR * This,
  1255.     /* [in] */ HWATCHREGION hRegion);
  1256.  
  1257.  
  1258. void __RPC_STUB IRowsetWatchRegion_DeleteWatchRegion_Stub(
  1259.     IRpcStubBuffer *This,
  1260.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1261.     PRPC_MESSAGE _pRpcMessage,
  1262.     DWORD *_pdwStubPhase);
  1263.  
  1264.  
  1265. HRESULT STDMETHODCALLTYPE IRowsetWatchRegion_GetWatchRegionInfo_Proxy( 
  1266.     IRowsetWatchRegion __RPC_FAR * This,
  1267.     /* [in] */ HWATCHREGION hRegion,
  1268.     /* [out] */ DBWATCHMODE __RPC_FAR *pdwWatchMode,
  1269.     /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  1270.     /* [out][in] */ DBBKMARK __RPC_FAR *pcbBookmark,
  1271.     /* [size_is][size_is][out] */ BYTE __RPC_FAR *__RPC_FAR *ppBookmark,
  1272.     /* [out] */ DBROWCOUNT __RPC_FAR *pcRows);
  1273.  
  1274.  
  1275. void __RPC_STUB IRowsetWatchRegion_GetWatchRegionInfo_Stub(
  1276.     IRpcStubBuffer *This,
  1277.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1278.     PRPC_MESSAGE _pRpcMessage,
  1279.     DWORD *_pdwStubPhase);
  1280.  
  1281.  
  1282. HRESULT STDMETHODCALLTYPE IRowsetWatchRegion_Refresh_Proxy( 
  1283.     IRowsetWatchRegion __RPC_FAR * This,
  1284.     /* [out][in] */ DBCOUNTITEM __RPC_FAR *pcChangesObtained,
  1285.     /* [size_is][size_is][out] */ DBROWWATCHCHANGE __RPC_FAR *__RPC_FAR *prgChanges);
  1286.  
  1287.  
  1288. void __RPC_STUB IRowsetWatchRegion_Refresh_Stub(
  1289.     IRpcStubBuffer *This,
  1290.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1291.     PRPC_MESSAGE _pRpcMessage,
  1292.     DWORD *_pdwStubPhase);
  1293.  
  1294.  
  1295. HRESULT STDMETHODCALLTYPE IRowsetWatchRegion_ShrinkWatchRegion_Proxy( 
  1296.     IRowsetWatchRegion __RPC_FAR * This,
  1297.     /* [in] */ HWATCHREGION hRegion,
  1298.     /* [in] */ HCHAPTER hChapter,
  1299.     /* [in] */ DBBKMARK cbBookmark,
  1300.     /* [size_is][in] */ BYTE __RPC_FAR *pBookmark,
  1301.     /* [in] */ DBROWCOUNT cRows);
  1302.  
  1303.  
  1304. void __RPC_STUB IRowsetWatchRegion_ShrinkWatchRegion_Stub(
  1305.     IRpcStubBuffer *This,
  1306.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1307.     PRPC_MESSAGE _pRpcMessage,
  1308.     DWORD *_pdwStubPhase);
  1309.  
  1310.  
  1311.  
  1312. #endif     /* __IRowsetWatchRegion_INTERFACE_DEFINED__ */
  1313.  
  1314.  
  1315. #ifndef __IRowsetCopyRows_INTERFACE_DEFINED__
  1316. #define __IRowsetCopyRows_INTERFACE_DEFINED__
  1317.  
  1318. /* interface IRowsetCopyRows */
  1319. /* [unique][uuid][object][local] */ 
  1320.  
  1321. typedef WORD HSOURCE;
  1322.  
  1323.  
  1324. EXTERN_C const IID IID_IRowsetCopyRows;
  1325.  
  1326. #if defined(__cplusplus) && !defined(CINTERFACE)
  1327.     
  1328.     MIDL_INTERFACE("0c733a6b-2a1c-11ce-ade5-00aa0044773d")
  1329.     IRowsetCopyRows : public IUnknown
  1330.     {
  1331.     public:
  1332.         virtual HRESULT STDMETHODCALLTYPE CloseSource( 
  1333.             /* [in] */ HSOURCE hSourceID) = 0;
  1334.         
  1335.         virtual HRESULT STDMETHODCALLTYPE CopyByHROWS( 
  1336.             /* [in] */ HSOURCE hSourceID,
  1337.             /* [in] */ HCHAPTER hReserved,
  1338.             /* [in] */ DBROWCOUNT cRows,
  1339.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  1340.             /* [in] */ ULONG bFlags) = 0;
  1341.         
  1342.         virtual HRESULT STDMETHODCALLTYPE CopyRows( 
  1343.             /* [in] */ HSOURCE hSourceID,
  1344.             /* [in] */ HCHAPTER hReserved,
  1345.             /* [in] */ DBROWCOUNT cRows,
  1346.             /* [in] */ ULONG bFlags,
  1347.             /* [out] */ DBCOUNTITEM __RPC_FAR *pcRowsCopied) = 0;
  1348.         
  1349.         virtual HRESULT STDMETHODCALLTYPE DefineSource( 
  1350.             /* [in] */ const IRowset __RPC_FAR *pRowsetSource,
  1351.             /* [in] */ const DBORDINAL cColIds,
  1352.             /* [size_is][in] */ const DB_LORDINAL __RPC_FAR rgSourceColumns[  ],
  1353.             /* [size_is][in] */ const DB_LORDINAL __RPC_FAR rgTargetColumns[  ],
  1354.             /* [out] */ HSOURCE __RPC_FAR *phSourceID) = 0;
  1355.         
  1356.     };
  1357.     
  1358. #else     /* C style interface */
  1359.  
  1360.     typedef struct IRowsetCopyRowsVtbl
  1361.     {
  1362.         BEGIN_INTERFACE
  1363.         
  1364.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1365.             IRowsetCopyRows __RPC_FAR * This,
  1366.             /* [in] */ REFIID riid,
  1367.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1368.         
  1369.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1370.             IRowsetCopyRows __RPC_FAR * This);
  1371.         
  1372.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1373.             IRowsetCopyRows __RPC_FAR * This);
  1374.         
  1375.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CloseSource )( 
  1376.             IRowsetCopyRows __RPC_FAR * This,
  1377.             /* [in] */ HSOURCE hSourceID);
  1378.         
  1379.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CopyByHROWS )( 
  1380.             IRowsetCopyRows __RPC_FAR * This,
  1381.             /* [in] */ HSOURCE hSourceID,
  1382.             /* [in] */ HCHAPTER hReserved,
  1383.             /* [in] */ DBROWCOUNT cRows,
  1384.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  1385.             /* [in] */ ULONG bFlags);
  1386.         
  1387.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CopyRows )( 
  1388.             IRowsetCopyRows __RPC_FAR * This,
  1389.             /* [in] */ HSOURCE hSourceID,
  1390.             /* [in] */ HCHAPTER hReserved,
  1391.             /* [in] */ DBROWCOUNT cRows,
  1392.             /* [in] */ ULONG bFlags,
  1393.             /* [out] */ DBCOUNTITEM __RPC_FAR *pcRowsCopied);
  1394.         
  1395.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DefineSource )( 
  1396.             IRowsetCopyRows __RPC_FAR * This,
  1397.             /* [in] */ const IRowset __RPC_FAR *pRowsetSource,
  1398.             /* [in] */ const DBORDINAL cColIds,
  1399.             /* [size_is][in] */ const DB_LORDINAL __RPC_FAR rgSourceColumns[  ],
  1400.             /* [size_is][in] */ const DB_LORDINAL __RPC_FAR rgTargetColumns[  ],
  1401.             /* [out] */ HSOURCE __RPC_FAR *phSourceID);
  1402.         
  1403.         END_INTERFACE
  1404.     } IRowsetCopyRowsVtbl;
  1405.  
  1406.     interface IRowsetCopyRows
  1407.     {
  1408.         CONST_VTBL struct IRowsetCopyRowsVtbl __RPC_FAR *lpVtbl;
  1409.     };
  1410.  
  1411.     
  1412.  
  1413. #ifdef COBJMACROS
  1414.  
  1415.  
  1416. #define IRowsetCopyRows_QueryInterface(This,riid,ppvObject)    \
  1417.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1418.  
  1419. #define IRowsetCopyRows_AddRef(This)    \
  1420.     (This)->lpVtbl -> AddRef(This)
  1421.  
  1422. #define IRowsetCopyRows_Release(This)    \
  1423.     (This)->lpVtbl -> Release(This)
  1424.  
  1425.  
  1426. #define IRowsetCopyRows_CloseSource(This,hSourceID)    \
  1427.     (This)->lpVtbl -> CloseSource(This,hSourceID)
  1428.  
  1429. #define IRowsetCopyRows_CopyByHROWS(This,hSourceID,hReserved,cRows,rghRows,bFlags)    \
  1430.     (This)->lpVtbl -> CopyByHROWS(This,hSourceID,hReserved,cRows,rghRows,bFlags)
  1431.  
  1432. #define IRowsetCopyRows_CopyRows(This,hSourceID,hReserved,cRows,bFlags,pcRowsCopied)    \
  1433.     (This)->lpVtbl -> CopyRows(This,hSourceID,hReserved,cRows,bFlags,pcRowsCopied)
  1434.  
  1435. #define IRowsetCopyRows_DefineSource(This,pRowsetSource,cColIds,rgSourceColumns,rgTargetColumns,phSourceID)    \
  1436.     (This)->lpVtbl -> DefineSource(This,pRowsetSource,cColIds,rgSourceColumns,rgTargetColumns,phSourceID)
  1437.  
  1438. #endif /* COBJMACROS */
  1439.  
  1440.  
  1441. #endif     /* C style interface */
  1442.  
  1443.  
  1444.  
  1445. HRESULT STDMETHODCALLTYPE IRowsetCopyRows_CloseSource_Proxy( 
  1446.     IRowsetCopyRows __RPC_FAR * This,
  1447.     /* [in] */ HSOURCE hSourceID);
  1448.  
  1449.  
  1450. void __RPC_STUB IRowsetCopyRows_CloseSource_Stub(
  1451.     IRpcStubBuffer *This,
  1452.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1453.     PRPC_MESSAGE _pRpcMessage,
  1454.     DWORD *_pdwStubPhase);
  1455.  
  1456.  
  1457. HRESULT STDMETHODCALLTYPE IRowsetCopyRows_CopyByHROWS_Proxy( 
  1458.     IRowsetCopyRows __RPC_FAR * This,
  1459.     /* [in] */ HSOURCE hSourceID,
  1460.     /* [in] */ HCHAPTER hReserved,
  1461.     /* [in] */ DBROWCOUNT cRows,
  1462.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  1463.     /* [in] */ ULONG bFlags);
  1464.  
  1465.  
  1466. void __RPC_STUB IRowsetCopyRows_CopyByHROWS_Stub(
  1467.     IRpcStubBuffer *This,
  1468.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1469.     PRPC_MESSAGE _pRpcMessage,
  1470.     DWORD *_pdwStubPhase);
  1471.  
  1472.  
  1473. HRESULT STDMETHODCALLTYPE IRowsetCopyRows_CopyRows_Proxy( 
  1474.     IRowsetCopyRows __RPC_FAR * This,
  1475.     /* [in] */ HSOURCE hSourceID,
  1476.     /* [in] */ HCHAPTER hReserved,
  1477.     /* [in] */ DBROWCOUNT cRows,
  1478.     /* [in] */ ULONG bFlags,
  1479.     /* [out] */ DBCOUNTITEM __RPC_FAR *pcRowsCopied);
  1480.  
  1481.  
  1482. void __RPC_STUB IRowsetCopyRows_CopyRows_Stub(
  1483.     IRpcStubBuffer *This,
  1484.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1485.     PRPC_MESSAGE _pRpcMessage,
  1486.     DWORD *_pdwStubPhase);
  1487.  
  1488.  
  1489. HRESULT STDMETHODCALLTYPE IRowsetCopyRows_DefineSource_Proxy( 
  1490.     IRowsetCopyRows __RPC_FAR * This,
  1491.     /* [in] */ const IRowset __RPC_FAR *pRowsetSource,
  1492.     /* [in] */ const DBORDINAL cColIds,
  1493.     /* [size_is][in] */ const DB_LORDINAL __RPC_FAR rgSourceColumns[  ],
  1494.     /* [size_is][in] */ const DB_LORDINAL __RPC_FAR rgTargetColumns[  ],
  1495.     /* [out] */ HSOURCE __RPC_FAR *phSourceID);
  1496.  
  1497.  
  1498. void __RPC_STUB IRowsetCopyRows_DefineSource_Stub(
  1499.     IRpcStubBuffer *This,
  1500.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1501.     PRPC_MESSAGE _pRpcMessage,
  1502.     DWORD *_pdwStubPhase);
  1503.  
  1504.  
  1505.  
  1506. #endif     /* __IRowsetCopyRows_INTERFACE_DEFINED__ */
  1507.  
  1508.  
  1509. #ifndef __IReadData_INTERFACE_DEFINED__
  1510. #define __IReadData_INTERFACE_DEFINED__
  1511.  
  1512. /* interface IReadData */
  1513. /* [unique][uuid][object][local] */ 
  1514.  
  1515.  
  1516. EXTERN_C const IID IID_IReadData;
  1517.  
  1518. #if defined(__cplusplus) && !defined(CINTERFACE)
  1519.     
  1520.     MIDL_INTERFACE("0c733a6a-2a1c-11ce-ade5-00aa0044773d")
  1521.     IReadData : public IUnknown
  1522.     {
  1523.     public:
  1524.         virtual HRESULT STDMETHODCALLTYPE ReadData( 
  1525.             /* [in] */ HCHAPTER hChapter,
  1526.             /* [in] */ DBBKMARK cbBookmark,
  1527.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  1528.             /* [in] */ DBROWOFFSET lRowsOffset,
  1529.             /* [in] */ HACCESSOR hAccessor,
  1530.             /* [in] */ DBROWCOUNT cRows,
  1531.             /* [out] */ DBCOUNTITEM __RPC_FAR *pcRowsObtained,
  1532.             /* [out][in] */ BYTE __RPC_FAR *__RPC_FAR *ppFixedData,
  1533.             /* [out][in] */ DBLENGTH __RPC_FAR *pcbVariableTotal,
  1534.             /* [out][in] */ BYTE __RPC_FAR *__RPC_FAR *ppVariableData) = 0;
  1535.         
  1536.         virtual HRESULT STDMETHODCALLTYPE ReleaseChapter( 
  1537.             /* [in] */ HCHAPTER hChapter) = 0;
  1538.         
  1539.     };
  1540.     
  1541. #else     /* C style interface */
  1542.  
  1543.     typedef struct IReadDataVtbl
  1544.     {
  1545.         BEGIN_INTERFACE
  1546.         
  1547.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1548.             IReadData __RPC_FAR * This,
  1549.             /* [in] */ REFIID riid,
  1550.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1551.         
  1552.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1553.             IReadData __RPC_FAR * This);
  1554.         
  1555.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1556.             IReadData __RPC_FAR * This);
  1557.         
  1558.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReadData )( 
  1559.             IReadData __RPC_FAR * This,
  1560.             /* [in] */ HCHAPTER hChapter,
  1561.             /* [in] */ DBBKMARK cbBookmark,
  1562.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  1563.             /* [in] */ DBROWOFFSET lRowsOffset,
  1564.             /* [in] */ HACCESSOR hAccessor,
  1565.             /* [in] */ DBROWCOUNT cRows,
  1566.             /* [out] */ DBCOUNTITEM __RPC_FAR *pcRowsObtained,
  1567.             /* [out][in] */ BYTE __RPC_FAR *__RPC_FAR *ppFixedData,
  1568.             /* [out][in] */ DBLENGTH __RPC_FAR *pcbVariableTotal,
  1569.             /* [out][in] */ BYTE __RPC_FAR *__RPC_FAR *ppVariableData);
  1570.         
  1571.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseChapter )( 
  1572.             IReadData __RPC_FAR * This,
  1573.             /* [in] */ HCHAPTER hChapter);
  1574.         
  1575.         END_INTERFACE
  1576.     } IReadDataVtbl;
  1577.  
  1578.     interface IReadData
  1579.     {
  1580.         CONST_VTBL struct IReadDataVtbl __RPC_FAR *lpVtbl;
  1581.     };
  1582.  
  1583.     
  1584.  
  1585. #ifdef COBJMACROS
  1586.  
  1587.  
  1588. #define IReadData_QueryInterface(This,riid,ppvObject)    \
  1589.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1590.  
  1591. #define IReadData_AddRef(This)    \
  1592.     (This)->lpVtbl -> AddRef(This)
  1593.  
  1594. #define IReadData_Release(This)    \
  1595.     (This)->lpVtbl -> Release(This)
  1596.  
  1597.  
  1598. #define IReadData_ReadData(This,hChapter,cbBookmark,pBookmark,lRowsOffset,hAccessor,cRows,pcRowsObtained,ppFixedData,pcbVariableTotal,ppVariableData)    \
  1599.     (This)->lpVtbl -> ReadData(This,hChapter,cbBookmark,pBookmark,lRowsOffset,hAccessor,cRows,pcRowsObtained,ppFixedData,pcbVariableTotal,ppVariableData)
  1600.  
  1601. #define IReadData_ReleaseChapter(This,hChapter)    \
  1602.     (This)->lpVtbl -> ReleaseChapter(This,hChapter)
  1603.  
  1604. #endif /* COBJMACROS */
  1605.  
  1606.  
  1607. #endif     /* C style interface */
  1608.  
  1609.  
  1610.  
  1611. HRESULT STDMETHODCALLTYPE IReadData_ReadData_Proxy( 
  1612.     IReadData __RPC_FAR * This,
  1613.     /* [in] */ HCHAPTER hChapter,
  1614.     /* [in] */ DBBKMARK cbBookmark,
  1615.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  1616.     /* [in] */ DBROWOFFSET lRowsOffset,
  1617.     /* [in] */ HACCESSOR hAccessor,
  1618.     /* [in] */ DBROWCOUNT cRows,
  1619.     /* [out] */ DBCOUNTITEM __RPC_FAR *pcRowsObtained,
  1620.     /* [out][in] */ BYTE __RPC_FAR *__RPC_FAR *ppFixedData,
  1621.     /* [out][in] */ DBLENGTH __RPC_FAR *pcbVariableTotal,
  1622.     /* [out][in] */ BYTE __RPC_FAR *__RPC_FAR *ppVariableData);
  1623.  
  1624.  
  1625. void __RPC_STUB IReadData_ReadData_Stub(
  1626.     IRpcStubBuffer *This,
  1627.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1628.     PRPC_MESSAGE _pRpcMessage,
  1629.     DWORD *_pdwStubPhase);
  1630.  
  1631.  
  1632. HRESULT STDMETHODCALLTYPE IReadData_ReleaseChapter_Proxy( 
  1633.     IReadData __RPC_FAR * This,
  1634.     /* [in] */ HCHAPTER hChapter);
  1635.  
  1636.  
  1637. void __RPC_STUB IReadData_ReleaseChapter_Stub(
  1638.     IRpcStubBuffer *This,
  1639.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1640.     PRPC_MESSAGE _pRpcMessage,
  1641.     DWORD *_pdwStubPhase);
  1642.  
  1643.  
  1644.  
  1645. #endif     /* __IReadData_INTERFACE_DEFINED__ */
  1646.  
  1647.  
  1648. #ifndef __ICommandCost_INTERFACE_DEFINED__
  1649. #define __ICommandCost_INTERFACE_DEFINED__
  1650.  
  1651. /* interface ICommandCost */
  1652. /* [unique][uuid][object][local] */ 
  1653.  
  1654. typedef DWORD DBRESOURCEKIND;
  1655.  
  1656.  
  1657. enum DBRESOURCEKINDENUM
  1658.     {    DBRESOURCE_INVALID    = 0,
  1659.     DBRESOURCE_TOTAL    = 1,
  1660.     DBRESOURCE_CPU    = 2,
  1661.     DBRESOURCE_MEMORY    = 3,
  1662.     DBRESOURCE_DISK    = 4,
  1663.     DBRESOURCE_NETWORK    = 5,
  1664.     DBRESOURCE_RESPONSE    = 6,
  1665.     DBRESOURCE_ROWS    = 7,
  1666.     DBRESOURCE_OTHER    = 8
  1667.     };
  1668. typedef DWORD DBCOSTUNIT;
  1669.  
  1670.  
  1671. enum DBCOSTUNITENUM
  1672.     {    DBUNIT_INVALID    = 0,
  1673.     DBUNIT_WEIGHT    = 0x1,
  1674.     DBUNIT_PERCENT    = 0x2,
  1675.     DBUNIT_MAXIMUM    = 0x4,
  1676.     DBUNIT_MINIMUM    = 0x8,
  1677.     DBUNIT_MICRO_SECOND    = 0x10,
  1678.     DBUNIT_MILLI_SECOND    = 0x20,
  1679.     DBUNIT_SECOND    = 0x40,
  1680.     DBUNIT_MINUTE    = 0x80,
  1681.     DBUNIT_HOUR    = 0x100,
  1682.     DBUNIT_BYTE    = 0x200,
  1683.     DBUNIT_KILO_BYTE    = 0x400,
  1684.     DBUNIT_MEGA_BYTE    = 0x800,
  1685.     DBUNIT_GIGA_BYTE    = 0x1000,
  1686.     DBUNIT_NUM_MSGS    = 0x2000,
  1687.     DBUNIT_NUM_LOCKS    = 0x4000,
  1688.     DBUNIT_NUM_ROWS    = 0x8000,
  1689.     DBUNIT_OTHER    = 0x10000
  1690.     };
  1691. typedef struct tagDBCOST
  1692.     {
  1693.     DBRESOURCEKIND eKind;
  1694.     DBCOSTUNIT dwUnits;
  1695.     LONG lValue;
  1696.     }    DBCOST;
  1697.  
  1698. typedef DWORD DBEXECLIMITS;
  1699.  
  1700.  
  1701. enum DBEXECLIMITSENUM
  1702.     {    DBEXECLIMITS_ABORT    = 1,
  1703.     DBEXECLIMITS_STOP    = 2,
  1704.     DBEXECLIMITS_SUSPEND    = 3
  1705.     };
  1706.  
  1707. EXTERN_C const IID IID_ICommandCost;
  1708.  
  1709. #if defined(__cplusplus) && !defined(CINTERFACE)
  1710.     
  1711.     MIDL_INTERFACE("0c733a4e-2a1c-11ce-ade5-00aa0044773d")
  1712.     ICommandCost : public IUnknown
  1713.     {
  1714.     public:
  1715.         virtual HRESULT STDMETHODCALLTYPE GetAccumulatedCost( 
  1716.             /* [in] */ LPCOLESTR pwszRowsetName,
  1717.             /* [out][in] */ ULONG __RPC_FAR *pcCostLimits,
  1718.             /* [size_is][size_is][out] */ DBCOST __RPC_FAR *__RPC_FAR *prgCostLimits) = 0;
  1719.         
  1720.         virtual HRESULT STDMETHODCALLTYPE GetCostEstimate( 
  1721.             /* [in] */ LPCOLESTR pwszRowsetName,
  1722.             /* [out] */ ULONG __RPC_FAR *pcCostEstimates,
  1723.             /* [out] */ DBCOST __RPC_FAR *prgCostEstimates) = 0;
  1724.         
  1725.         virtual HRESULT STDMETHODCALLTYPE GetCostGoals( 
  1726.             /* [in] */ LPCOLESTR pwszRowsetName,
  1727.             /* [out] */ ULONG __RPC_FAR *pcCostGoals,
  1728.             /* [out] */ DBCOST __RPC_FAR *prgCostGoals) = 0;
  1729.         
  1730.         virtual HRESULT STDMETHODCALLTYPE GetCostLimits( 
  1731.             /* [in] */ LPCOLESTR pwszRowsetName,
  1732.             /* [out] */ ULONG __RPC_FAR *pcCostLimits,
  1733.             /* [out] */ DBCOST __RPC_FAR *prgCostLimits) = 0;
  1734.         
  1735.         virtual HRESULT STDMETHODCALLTYPE SetCostGoals( 
  1736.             /* [in] */ LPCOLESTR pwszRowsetName,
  1737.             /* [in] */ ULONG cCostGoals,
  1738.             /* [size_is][in] */ const DBCOST __RPC_FAR rgCostGoals[  ]) = 0;
  1739.         
  1740.         virtual HRESULT STDMETHODCALLTYPE SetCostLimits( 
  1741.             /* [in] */ LPCOLESTR pwszRowsetName,
  1742.             /* [in] */ ULONG cCostLimits,
  1743.             /* [in] */ DBCOST __RPC_FAR *prgCostLimits,
  1744.             /* [in] */ DBEXECLIMITS dwExecutionFlags) = 0;
  1745.         
  1746.     };
  1747.     
  1748. #else     /* C style interface */
  1749.  
  1750.     typedef struct ICommandCostVtbl
  1751.     {
  1752.         BEGIN_INTERFACE
  1753.         
  1754.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1755.             ICommandCost __RPC_FAR * This,
  1756.             /* [in] */ REFIID riid,
  1757.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1758.         
  1759.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1760.             ICommandCost __RPC_FAR * This);
  1761.         
  1762.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1763.             ICommandCost __RPC_FAR * This);
  1764.         
  1765.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAccumulatedCost )( 
  1766.             ICommandCost __RPC_FAR * This,
  1767.             /* [in] */ LPCOLESTR pwszRowsetName,
  1768.             /* [out][in] */ ULONG __RPC_FAR *pcCostLimits,
  1769.             /* [size_is][size_is][out] */ DBCOST __RPC_FAR *__RPC_FAR *prgCostLimits);
  1770.         
  1771.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCostEstimate )( 
  1772.             ICommandCost __RPC_FAR * This,
  1773.             /* [in] */ LPCOLESTR pwszRowsetName,
  1774.             /* [out] */ ULONG __RPC_FAR *pcCostEstimates,
  1775.             /* [out] */ DBCOST __RPC_FAR *prgCostEstimates);
  1776.         
  1777.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCostGoals )( 
  1778.             ICommandCost __RPC_FAR * This,
  1779.             /* [in] */ LPCOLESTR pwszRowsetName,
  1780.             /* [out] */ ULONG __RPC_FAR *pcCostGoals,
  1781.             /* [out] */ DBCOST __RPC_FAR *prgCostGoals);
  1782.         
  1783.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCostLimits )( 
  1784.             ICommandCost __RPC_FAR * This,
  1785.             /* [in] */ LPCOLESTR pwszRowsetName,
  1786.             /* [out] */ ULONG __RPC_FAR *pcCostLimits,
  1787.             /* [out] */ DBCOST __RPC_FAR *prgCostLimits);
  1788.         
  1789.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCostGoals )( 
  1790.             ICommandCost __RPC_FAR * This,
  1791.             /* [in] */ LPCOLESTR pwszRowsetName,
  1792.             /* [in] */ ULONG cCostGoals,
  1793.             /* [size_is][in] */ const DBCOST __RPC_FAR rgCostGoals[  ]);
  1794.         
  1795.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCostLimits )( 
  1796.             ICommandCost __RPC_FAR * This,
  1797.             /* [in] */ LPCOLESTR pwszRowsetName,
  1798.             /* [in] */ ULONG cCostLimits,
  1799.             /* [in] */ DBCOST __RPC_FAR *prgCostLimits,
  1800.             /* [in] */ DBEXECLIMITS dwExecutionFlags);
  1801.         
  1802.         END_INTERFACE
  1803.     } ICommandCostVtbl;
  1804.  
  1805.     interface ICommandCost
  1806.     {
  1807.         CONST_VTBL struct ICommandCostVtbl __RPC_FAR *lpVtbl;
  1808.     };
  1809.  
  1810.     
  1811.  
  1812. #ifdef COBJMACROS
  1813.  
  1814.  
  1815. #define ICommandCost_QueryInterface(This,riid,ppvObject)    \
  1816.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1817.  
  1818. #define ICommandCost_AddRef(This)    \
  1819.     (This)->lpVtbl -> AddRef(This)
  1820.  
  1821. #define ICommandCost_Release(This)    \
  1822.     (This)->lpVtbl -> Release(This)
  1823.  
  1824.  
  1825. #define ICommandCost_GetAccumulatedCost(This,pwszRowsetName,pcCostLimits,prgCostLimits)    \
  1826.     (This)->lpVtbl -> GetAccumulatedCost(This,pwszRowsetName,pcCostLimits,prgCostLimits)
  1827.  
  1828. #define ICommandCost_GetCostEstimate(This,pwszRowsetName,pcCostEstimates,prgCostEstimates)    \
  1829.     (This)->lpVtbl -> GetCostEstimate(This,pwszRowsetName,pcCostEstimates,prgCostEstimates)
  1830.  
  1831. #define ICommandCost_GetCostGoals(This,pwszRowsetName,pcCostGoals,prgCostGoals)    \
  1832.     (This)->lpVtbl -> GetCostGoals(This,pwszRowsetName,pcCostGoals,prgCostGoals)
  1833.  
  1834. #define ICommandCost_GetCostLimits(This,pwszRowsetName,pcCostLimits,prgCostLimits)    \
  1835.     (This)->lpVtbl -> GetCostLimits(This,pwszRowsetName,pcCostLimits,prgCostLimits)
  1836.  
  1837. #define ICommandCost_SetCostGoals(This,pwszRowsetName,cCostGoals,rgCostGoals)    \
  1838.     (This)->lpVtbl -> SetCostGoals(This,pwszRowsetName,cCostGoals,rgCostGoals)
  1839.  
  1840. #define ICommandCost_SetCostLimits(This,pwszRowsetName,cCostLimits,prgCostLimits,dwExecutionFlags)    \
  1841.     (This)->lpVtbl -> SetCostLimits(This,pwszRowsetName,cCostLimits,prgCostLimits,dwExecutionFlags)
  1842.  
  1843. #endif /* COBJMACROS */
  1844.  
  1845.  
  1846. #endif     /* C style interface */
  1847.  
  1848.  
  1849.  
  1850. HRESULT STDMETHODCALLTYPE ICommandCost_GetAccumulatedCost_Proxy( 
  1851.     ICommandCost __RPC_FAR * This,
  1852.     /* [in] */ LPCOLESTR pwszRowsetName,
  1853.     /* [out][in] */ ULONG __RPC_FAR *pcCostLimits,
  1854.     /* [size_is][size_is][out] */ DBCOST __RPC_FAR *__RPC_FAR *prgCostLimits);
  1855.  
  1856.  
  1857. void __RPC_STUB ICommandCost_GetAccumulatedCost_Stub(
  1858.     IRpcStubBuffer *This,
  1859.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1860.     PRPC_MESSAGE _pRpcMessage,
  1861.     DWORD *_pdwStubPhase);
  1862.  
  1863.  
  1864. HRESULT STDMETHODCALLTYPE ICommandCost_GetCostEstimate_Proxy( 
  1865.     ICommandCost __RPC_FAR * This,
  1866.     /* [in] */ LPCOLESTR pwszRowsetName,
  1867.     /* [out] */ ULONG __RPC_FAR *pcCostEstimates,
  1868.     /* [out] */ DBCOST __RPC_FAR *prgCostEstimates);
  1869.  
  1870.  
  1871. void __RPC_STUB ICommandCost_GetCostEstimate_Stub(
  1872.     IRpcStubBuffer *This,
  1873.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1874.     PRPC_MESSAGE _pRpcMessage,
  1875.     DWORD *_pdwStubPhase);
  1876.  
  1877.  
  1878. HRESULT STDMETHODCALLTYPE ICommandCost_GetCostGoals_Proxy( 
  1879.     ICommandCost __RPC_FAR * This,
  1880.     /* [in] */ LPCOLESTR pwszRowsetName,
  1881.     /* [out] */ ULONG __RPC_FAR *pcCostGoals,
  1882.     /* [out] */ DBCOST __RPC_FAR *prgCostGoals);
  1883.  
  1884.  
  1885. void __RPC_STUB ICommandCost_GetCostGoals_Stub(
  1886.     IRpcStubBuffer *This,
  1887.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1888.     PRPC_MESSAGE _pRpcMessage,
  1889.     DWORD *_pdwStubPhase);
  1890.  
  1891.  
  1892. HRESULT STDMETHODCALLTYPE ICommandCost_GetCostLimits_Proxy( 
  1893.     ICommandCost __RPC_FAR * This,
  1894.     /* [in] */ LPCOLESTR pwszRowsetName,
  1895.     /* [out] */ ULONG __RPC_FAR *pcCostLimits,
  1896.     /* [out] */ DBCOST __RPC_FAR *prgCostLimits);
  1897.  
  1898.  
  1899. void __RPC_STUB ICommandCost_GetCostLimits_Stub(
  1900.     IRpcStubBuffer *This,
  1901.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1902.     PRPC_MESSAGE _pRpcMessage,
  1903.     DWORD *_pdwStubPhase);
  1904.  
  1905.  
  1906. HRESULT STDMETHODCALLTYPE ICommandCost_SetCostGoals_Proxy( 
  1907.     ICommandCost __RPC_FAR * This,
  1908.     /* [in] */ LPCOLESTR pwszRowsetName,
  1909.     /* [in] */ ULONG cCostGoals,
  1910.     /* [size_is][in] */ const DBCOST __RPC_FAR rgCostGoals[  ]);
  1911.  
  1912.  
  1913. void __RPC_STUB ICommandCost_SetCostGoals_Stub(
  1914.     IRpcStubBuffer *This,
  1915.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1916.     PRPC_MESSAGE _pRpcMessage,
  1917.     DWORD *_pdwStubPhase);
  1918.  
  1919.  
  1920. HRESULT STDMETHODCALLTYPE ICommandCost_SetCostLimits_Proxy( 
  1921.     ICommandCost __RPC_FAR * This,
  1922.     /* [in] */ LPCOLESTR pwszRowsetName,
  1923.     /* [in] */ ULONG cCostLimits,
  1924.     /* [in] */ DBCOST __RPC_FAR *prgCostLimits,
  1925.     /* [in] */ DBEXECLIMITS dwExecutionFlags);
  1926.  
  1927.  
  1928. void __RPC_STUB ICommandCost_SetCostLimits_Stub(
  1929.     IRpcStubBuffer *This,
  1930.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1931.     PRPC_MESSAGE _pRpcMessage,
  1932.     DWORD *_pdwStubPhase);
  1933.  
  1934.  
  1935.  
  1936. #endif     /* __ICommandCost_INTERFACE_DEFINED__ */
  1937.  
  1938.  
  1939. #ifndef __ICommandValidate_INTERFACE_DEFINED__
  1940. #define __ICommandValidate_INTERFACE_DEFINED__
  1941.  
  1942. /* interface ICommandValidate */
  1943. /* [unique][uuid][object][local] */ 
  1944.  
  1945.  
  1946. EXTERN_C const IID IID_ICommandValidate;
  1947.  
  1948. #if defined(__cplusplus) && !defined(CINTERFACE)
  1949.     
  1950.     MIDL_INTERFACE("0c733a18-2a1c-11ce-ade5-00aa0044773d")
  1951.     ICommandValidate : public IUnknown
  1952.     {
  1953.     public:
  1954.         virtual HRESULT STDMETHODCALLTYPE ValidateCompletely( void) = 0;
  1955.         
  1956.         virtual HRESULT STDMETHODCALLTYPE ValidateSyntax( void) = 0;
  1957.         
  1958.     };
  1959.     
  1960. #else     /* C style interface */
  1961.  
  1962.     typedef struct ICommandValidateVtbl
  1963.     {
  1964.         BEGIN_INTERFACE
  1965.         
  1966.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1967.             ICommandValidate __RPC_FAR * This,
  1968.             /* [in] */ REFIID riid,
  1969.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1970.         
  1971.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1972.             ICommandValidate __RPC_FAR * This);
  1973.         
  1974.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1975.             ICommandValidate __RPC_FAR * This);
  1976.         
  1977.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ValidateCompletely )( 
  1978.             ICommandValidate __RPC_FAR * This);
  1979.         
  1980.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ValidateSyntax )( 
  1981.             ICommandValidate __RPC_FAR * This);
  1982.         
  1983.         END_INTERFACE
  1984.     } ICommandValidateVtbl;
  1985.  
  1986.     interface ICommandValidate
  1987.     {
  1988.         CONST_VTBL struct ICommandValidateVtbl __RPC_FAR *lpVtbl;
  1989.     };
  1990.  
  1991.     
  1992.  
  1993. #ifdef COBJMACROS
  1994.  
  1995.  
  1996. #define ICommandValidate_QueryInterface(This,riid,ppvObject)    \
  1997.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1998.  
  1999. #define ICommandValidate_AddRef(This)    \
  2000.     (This)->lpVtbl -> AddRef(This)
  2001.  
  2002. #define ICommandValidate_Release(This)    \
  2003.     (This)->lpVtbl -> Release(This)
  2004.  
  2005.  
  2006. #define ICommandValidate_ValidateCompletely(This)    \
  2007.     (This)->lpVtbl -> ValidateCompletely(This)
  2008.  
  2009. #define ICommandValidate_ValidateSyntax(This)    \
  2010.     (This)->lpVtbl -> ValidateSyntax(This)
  2011.  
  2012. #endif /* COBJMACROS */
  2013.  
  2014.  
  2015. #endif     /* C style interface */
  2016.  
  2017.  
  2018.  
  2019. HRESULT STDMETHODCALLTYPE ICommandValidate_ValidateCompletely_Proxy( 
  2020.     ICommandValidate __RPC_FAR * This);
  2021.  
  2022.  
  2023. void __RPC_STUB ICommandValidate_ValidateCompletely_Stub(
  2024.     IRpcStubBuffer *This,
  2025.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2026.     PRPC_MESSAGE _pRpcMessage,
  2027.     DWORD *_pdwStubPhase);
  2028.  
  2029.  
  2030. HRESULT STDMETHODCALLTYPE ICommandValidate_ValidateSyntax_Proxy( 
  2031.     ICommandValidate __RPC_FAR * This);
  2032.  
  2033.  
  2034. void __RPC_STUB ICommandValidate_ValidateSyntax_Stub(
  2035.     IRpcStubBuffer *This,
  2036.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2037.     PRPC_MESSAGE _pRpcMessage,
  2038.     DWORD *_pdwStubPhase);
  2039.  
  2040.  
  2041.  
  2042. #endif     /* __ICommandValidate_INTERFACE_DEFINED__ */
  2043.  
  2044.  
  2045. #ifndef __ITableRename_INTERFACE_DEFINED__
  2046. #define __ITableRename_INTERFACE_DEFINED__
  2047.  
  2048. /* interface ITableRename */
  2049. /* [unique][uuid][object][local] */ 
  2050.  
  2051.  
  2052. EXTERN_C const IID IID_ITableRename;
  2053.  
  2054. #if defined(__cplusplus) && !defined(CINTERFACE)
  2055.     
  2056.     MIDL_INTERFACE("0c733a77-2a1c-11ce-ade5-00aa0044773d")
  2057.     ITableRename : public IUnknown
  2058.     {
  2059.     public:
  2060.         virtual HRESULT STDMETHODCALLTYPE RenameColumn( 
  2061.             /* [in] */ DBID __RPC_FAR *pTableId,
  2062.             /* [in] */ DBID __RPC_FAR *pOldColumnId,
  2063.             /* [in] */ DBID __RPC_FAR *pNewColumnId) = 0;
  2064.         
  2065.         virtual HRESULT STDMETHODCALLTYPE RenameTable( 
  2066.             /* [in] */ DBID __RPC_FAR *pOldTableId,
  2067.             /* [in] */ DBID __RPC_FAR *pOldIndexId,
  2068.             /* [in] */ DBID __RPC_FAR *pNewTableId,
  2069.             /* [in] */ DBID __RPC_FAR *pNewIndexId) = 0;
  2070.         
  2071.     };
  2072.     
  2073. #else     /* C style interface */
  2074.  
  2075.     typedef struct ITableRenameVtbl
  2076.     {
  2077.         BEGIN_INTERFACE
  2078.         
  2079.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2080.             ITableRename __RPC_FAR * This,
  2081.             /* [in] */ REFIID riid,
  2082.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2083.         
  2084.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2085.             ITableRename __RPC_FAR * This);
  2086.         
  2087.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2088.             ITableRename __RPC_FAR * This);
  2089.         
  2090.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RenameColumn )( 
  2091.             ITableRename __RPC_FAR * This,
  2092.             /* [in] */ DBID __RPC_FAR *pTableId,
  2093.             /* [in] */ DBID __RPC_FAR *pOldColumnId,
  2094.             /* [in] */ DBID __RPC_FAR *pNewColumnId);
  2095.         
  2096.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RenameTable )( 
  2097.             ITableRename __RPC_FAR * This,
  2098.             /* [in] */ DBID __RPC_FAR *pOldTableId,
  2099.             /* [in] */ DBID __RPC_FAR *pOldIndexId,
  2100.             /* [in] */ DBID __RPC_FAR *pNewTableId,
  2101.             /* [in] */ DBID __RPC_FAR *pNewIndexId);
  2102.         
  2103.         END_INTERFACE
  2104.     } ITableRenameVtbl;
  2105.  
  2106.     interface ITableRename
  2107.     {
  2108.         CONST_VTBL struct ITableRenameVtbl __RPC_FAR *lpVtbl;
  2109.     };
  2110.  
  2111.     
  2112.  
  2113. #ifdef COBJMACROS
  2114.  
  2115.  
  2116. #define ITableRename_QueryInterface(This,riid,ppvObject)    \
  2117.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2118.  
  2119. #define ITableRename_AddRef(This)    \
  2120.     (This)->lpVtbl -> AddRef(This)
  2121.  
  2122. #define ITableRename_Release(This)    \
  2123.     (This)->lpVtbl -> Release(This)
  2124.  
  2125.  
  2126. #define ITableRename_RenameColumn(This,pTableId,pOldColumnId,pNewColumnId)    \
  2127.     (This)->lpVtbl -> RenameColumn(This,pTableId,pOldColumnId,pNewColumnId)
  2128.  
  2129. #define ITableRename_RenameTable(This,pOldTableId,pOldIndexId,pNewTableId,pNewIndexId)    \
  2130.     (This)->lpVtbl -> RenameTable(This,pOldTableId,pOldIndexId,pNewTableId,pNewIndexId)
  2131.  
  2132. #endif /* COBJMACROS */
  2133.  
  2134.  
  2135. #endif     /* C style interface */
  2136.  
  2137.  
  2138.  
  2139. HRESULT STDMETHODCALLTYPE ITableRename_RenameColumn_Proxy( 
  2140.     ITableRename __RPC_FAR * This,
  2141.     /* [in] */ DBID __RPC_FAR *pTableId,
  2142.     /* [in] */ DBID __RPC_FAR *pOldColumnId,
  2143.     /* [in] */ DBID __RPC_FAR *pNewColumnId);
  2144.  
  2145.  
  2146. void __RPC_STUB ITableRename_RenameColumn_Stub(
  2147.     IRpcStubBuffer *This,
  2148.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2149.     PRPC_MESSAGE _pRpcMessage,
  2150.     DWORD *_pdwStubPhase);
  2151.  
  2152.  
  2153. HRESULT STDMETHODCALLTYPE ITableRename_RenameTable_Proxy( 
  2154.     ITableRename __RPC_FAR * This,
  2155.     /* [in] */ DBID __RPC_FAR *pOldTableId,
  2156.     /* [in] */ DBID __RPC_FAR *pOldIndexId,
  2157.     /* [in] */ DBID __RPC_FAR *pNewTableId,
  2158.     /* [in] */ DBID __RPC_FAR *pNewIndexId);
  2159.  
  2160.  
  2161. void __RPC_STUB ITableRename_RenameTable_Stub(
  2162.     IRpcStubBuffer *This,
  2163.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2164.     PRPC_MESSAGE _pRpcMessage,
  2165.     DWORD *_pdwStubPhase);
  2166.  
  2167.  
  2168.  
  2169. #endif     /* __ITableRename_INTERFACE_DEFINED__ */
  2170.  
  2171.  
  2172. #ifndef __IDBSchemaCommand_INTERFACE_DEFINED__
  2173. #define __IDBSchemaCommand_INTERFACE_DEFINED__
  2174.  
  2175. /* interface IDBSchemaCommand */
  2176. /* [unique][uuid][object][local] */ 
  2177.  
  2178.  
  2179. EXTERN_C const IID IID_IDBSchemaCommand;
  2180.  
  2181. #if defined(__cplusplus) && !defined(CINTERFACE)
  2182.     
  2183.     MIDL_INTERFACE("0c733a50-2a1c-11ce-ade5-00aa0044773d")
  2184.     IDBSchemaCommand : public IUnknown
  2185.     {
  2186.     public:
  2187.         virtual HRESULT STDMETHODCALLTYPE GetCommand( 
  2188.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  2189.             /* [in] */ REFGUID rguidSchema,
  2190.             /* [out] */ ICommand __RPC_FAR *__RPC_FAR *ppCommand) = 0;
  2191.         
  2192.         virtual HRESULT STDMETHODCALLTYPE GetSchemas( 
  2193.             /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  2194.             /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas) = 0;
  2195.         
  2196.     };
  2197.     
  2198. #else     /* C style interface */
  2199.  
  2200.     typedef struct IDBSchemaCommandVtbl
  2201.     {
  2202.         BEGIN_INTERFACE
  2203.         
  2204.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2205.             IDBSchemaCommand __RPC_FAR * This,
  2206.             /* [in] */ REFIID riid,
  2207.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2208.         
  2209.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2210.             IDBSchemaCommand __RPC_FAR * This);
  2211.         
  2212.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2213.             IDBSchemaCommand __RPC_FAR * This);
  2214.         
  2215.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCommand )( 
  2216.             IDBSchemaCommand __RPC_FAR * This,
  2217.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  2218.             /* [in] */ REFGUID rguidSchema,
  2219.             /* [out] */ ICommand __RPC_FAR *__RPC_FAR *ppCommand);
  2220.         
  2221.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSchemas )( 
  2222.             IDBSchemaCommand __RPC_FAR * This,
  2223.             /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  2224.             /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas);
  2225.         
  2226.         END_INTERFACE
  2227.     } IDBSchemaCommandVtbl;
  2228.  
  2229.     interface IDBSchemaCommand
  2230.     {
  2231.         CONST_VTBL struct IDBSchemaCommandVtbl __RPC_FAR *lpVtbl;
  2232.     };
  2233.  
  2234.     
  2235.  
  2236. #ifdef COBJMACROS
  2237.  
  2238.  
  2239. #define IDBSchemaCommand_QueryInterface(This,riid,ppvObject)    \
  2240.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2241.  
  2242. #define IDBSchemaCommand_AddRef(This)    \
  2243.     (This)->lpVtbl -> AddRef(This)
  2244.  
  2245. #define IDBSchemaCommand_Release(This)    \
  2246.     (This)->lpVtbl -> Release(This)
  2247.  
  2248.  
  2249. #define IDBSchemaCommand_GetCommand(This,pUnkOuter,rguidSchema,ppCommand)    \
  2250.     (This)->lpVtbl -> GetCommand(This,pUnkOuter,rguidSchema,ppCommand)
  2251.  
  2252. #define IDBSchemaCommand_GetSchemas(This,pcSchemas,prgSchemas)    \
  2253.     (This)->lpVtbl -> GetSchemas(This,pcSchemas,prgSchemas)
  2254.  
  2255. #endif /* COBJMACROS */
  2256.  
  2257.  
  2258. #endif     /* C style interface */
  2259.  
  2260.  
  2261.  
  2262. HRESULT STDMETHODCALLTYPE IDBSchemaCommand_GetCommand_Proxy( 
  2263.     IDBSchemaCommand __RPC_FAR * This,
  2264.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  2265.     /* [in] */ REFGUID rguidSchema,
  2266.     /* [out] */ ICommand __RPC_FAR *__RPC_FAR *ppCommand);
  2267.  
  2268.  
  2269. void __RPC_STUB IDBSchemaCommand_GetCommand_Stub(
  2270.     IRpcStubBuffer *This,
  2271.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2272.     PRPC_MESSAGE _pRpcMessage,
  2273.     DWORD *_pdwStubPhase);
  2274.  
  2275.  
  2276. HRESULT STDMETHODCALLTYPE IDBSchemaCommand_GetSchemas_Proxy( 
  2277.     IDBSchemaCommand __RPC_FAR * This,
  2278.     /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  2279.     /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas);
  2280.  
  2281.  
  2282. void __RPC_STUB IDBSchemaCommand_GetSchemas_Stub(
  2283.     IRpcStubBuffer *This,
  2284.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2285.     PRPC_MESSAGE _pRpcMessage,
  2286.     DWORD *_pdwStubPhase);
  2287.  
  2288.  
  2289.  
  2290. #endif     /* __IDBSchemaCommand_INTERFACE_DEFINED__ */
  2291.  
  2292.  
  2293. #ifndef __IProvideMoniker_INTERFACE_DEFINED__
  2294. #define __IProvideMoniker_INTERFACE_DEFINED__
  2295.  
  2296. /* interface IProvideMoniker */
  2297. /* [unique][uuid][object][local] */ 
  2298.  
  2299.  
  2300. EXTERN_C const IID IID_IProvideMoniker;
  2301.  
  2302. #if defined(__cplusplus) && !defined(CINTERFACE)
  2303.     
  2304.     MIDL_INTERFACE("0c733a4d-2a1c-11ce-ade5-00aa0044773d")
  2305.     IProvideMoniker : public IUnknown
  2306.     {
  2307.     public:
  2308.         virtual HRESULT STDMETHODCALLTYPE GetMoniker( 
  2309.             /* [out] */ IMoniker __RPC_FAR *__RPC_FAR *ppIMoniker) = 0;
  2310.         
  2311.     };
  2312.     
  2313. #else     /* C style interface */
  2314.  
  2315.     typedef struct IProvideMonikerVtbl
  2316.     {
  2317.         BEGIN_INTERFACE
  2318.         
  2319.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2320.             IProvideMoniker __RPC_FAR * This,
  2321.             /* [in] */ REFIID riid,
  2322.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2323.         
  2324.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2325.             IProvideMoniker __RPC_FAR * This);
  2326.         
  2327.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2328.             IProvideMoniker __RPC_FAR * This);
  2329.         
  2330.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMoniker )( 
  2331.             IProvideMoniker __RPC_FAR * This,
  2332.             /* [out] */ IMoniker __RPC_FAR *__RPC_FAR *ppIMoniker);
  2333.         
  2334.         END_INTERFACE
  2335.     } IProvideMonikerVtbl;
  2336.  
  2337.     interface IProvideMoniker
  2338.     {
  2339.         CONST_VTBL struct IProvideMonikerVtbl __RPC_FAR *lpVtbl;
  2340.     };
  2341.  
  2342.     
  2343.  
  2344. #ifdef COBJMACROS
  2345.  
  2346.  
  2347. #define IProvideMoniker_QueryInterface(This,riid,ppvObject)    \
  2348.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2349.  
  2350. #define IProvideMoniker_AddRef(This)    \
  2351.     (This)->lpVtbl -> AddRef(This)
  2352.  
  2353. #define IProvideMoniker_Release(This)    \
  2354.     (This)->lpVtbl -> Release(This)
  2355.  
  2356.  
  2357. #define IProvideMoniker_GetMoniker(This,ppIMoniker)    \
  2358.     (This)->lpVtbl -> GetMoniker(This,ppIMoniker)
  2359.  
  2360. #endif /* COBJMACROS */
  2361.  
  2362.  
  2363. #endif     /* C style interface */
  2364.  
  2365.  
  2366.  
  2367. HRESULT STDMETHODCALLTYPE IProvideMoniker_GetMoniker_Proxy( 
  2368.     IProvideMoniker __RPC_FAR * This,
  2369.     /* [out] */ IMoniker __RPC_FAR *__RPC_FAR *ppIMoniker);
  2370.  
  2371.  
  2372. void __RPC_STUB IProvideMoniker_GetMoniker_Stub(
  2373.     IRpcStubBuffer *This,
  2374.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2375.     PRPC_MESSAGE _pRpcMessage,
  2376.     DWORD *_pdwStubPhase);
  2377.  
  2378.  
  2379.  
  2380. #endif     /* __IProvideMoniker_INTERFACE_DEFINED__ */
  2381.  
  2382.  
  2383. /* interface __MIDL_itf_oledbdep_0360 */
  2384. /* [local] */ 
  2385.  
  2386. // IID_IRowsetExactScroll        = {0x0c733a7f,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2387. // IID_IRowsetNextRowset            = {0x0c733a72,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2388. // IID_IRowsetNewRowAfter        = {0x0c733a71,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2389. // IID_IRowsetWithParameters        = {0x0c733a6e,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2390. // IID_IRowsetAsynch                = {0x0c733a0f,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2391. // IID_IRowsetKeys                = {0x0c733a12,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2392. // IID_IRowsetWatchAll            = {0x0c733a73,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2393. // IID_IRowsetWatchNotify        = {0x0c733a44,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2394. // IID_IRowsetWatchRegion        = {0x0c733a45,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2395. // IID_IRowsetCopyRows            = {0x0c733a6b,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2396. // IID_IReadData                    = {0x0c733a6a,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2397. // IID_ICommandCost                = {0x0c733a4e,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2398. // IID_ICommandTree                = {0x0c733a87,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2399. // IID_ICommandValidate            = {0x0c733a18,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2400. // IID_IQuery                    = {0x0c733a51,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2401. // IID_ITableRename                = {0x0c733a77,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2402. // IID_IDBSchemaCommand            = {0x0c733a50,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2403. // IID_IProvideMoniker            = {0x0c733a4d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  2404. #include <poppack.h>    // restore original structure packing
  2405.  
  2406.  
  2407. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0360_v0_0_c_ifspec;
  2408. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0360_v0_0_s_ifspec;
  2409.  
  2410. #ifdef OLEDBPROXY
  2411. /* Additional Prototypes for ALL interfaces */
  2412.  
  2413. /* end of Additional Prototypes */
  2414. #endif // OLEDBPROXY
  2415.  
  2416. #ifdef __cplusplus
  2417. }
  2418. #endif
  2419.  
  2420. #endif
  2421.  
  2422.  
  2423. // GUID_DEFS_ONLY
  2424.  
  2425. #endif
  2426. #pragma option pop /*P_O_Pop*/
  2427.