home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 2000 September / VPR0009A.BIN / VS60SP4JPN / support / oledbdep.h < prev    next >
C/C++ Source or Header  |  1999-02-23  |  80KB  |  2,475 lines

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