oledbdep.h 46 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  7. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  8. #endif
  9. #include "rpc.h"
  10. #include "rpcndr.h"
  11. #ifndef __RPCNDR_H_VERSION__
  12. #error This stub requires an updated version of <rpcndr.h>
  13. #endif
  14. #ifndef COM_NO_WINDOWS_H
  15. #include "windows.h"
  16. #include "ole2.h"
  17. #endif
  18. #ifndef __oledbdep_h__
  19. #define __oledbdep_h__
  20. #ifndef __IRowsetNextRowset_FWD_DEFINED__
  21. #define __IRowsetNextRowset_FWD_DEFINED__
  22. typedef struct IRowsetNextRowset IRowsetNextRowset;
  23. #endif
  24. #ifndef __IRowsetNewRowAfter_FWD_DEFINED__
  25. #define __IRowsetNewRowAfter_FWD_DEFINED__
  26. typedef struct IRowsetNewRowAfter IRowsetNewRowAfter;
  27. #endif
  28. #ifndef __IRowsetWithParameters_FWD_DEFINED__
  29. #define __IRowsetWithParameters_FWD_DEFINED__
  30. typedef struct IRowsetWithParameters IRowsetWithParameters;
  31. #endif
  32. #ifndef __IRowsetAsynch_FWD_DEFINED__
  33. #define __IRowsetAsynch_FWD_DEFINED__
  34. typedef struct IRowsetAsynch IRowsetAsynch;
  35. #endif
  36. #ifndef __IRowsetKeys_FWD_DEFINED__
  37. #define __IRowsetKeys_FWD_DEFINED__
  38. typedef struct IRowsetKeys IRowsetKeys;
  39. #endif
  40. #ifndef __IRowsetWatchAll_FWD_DEFINED__
  41. #define __IRowsetWatchAll_FWD_DEFINED__
  42. typedef struct IRowsetWatchAll IRowsetWatchAll;
  43. #endif
  44. #ifndef __IRowsetWatchNotify_FWD_DEFINED__
  45. #define __IRowsetWatchNotify_FWD_DEFINED__
  46. typedef struct IRowsetWatchNotify IRowsetWatchNotify;
  47. #endif
  48. #ifndef __IRowsetWatchRegion_FWD_DEFINED__
  49. #define __IRowsetWatchRegion_FWD_DEFINED__
  50. typedef struct IRowsetWatchRegion IRowsetWatchRegion;
  51. #endif
  52. #ifndef __IRowsetCopyRows_FWD_DEFINED__
  53. #define __IRowsetCopyRows_FWD_DEFINED__
  54. typedef struct IRowsetCopyRows IRowsetCopyRows;
  55. #endif
  56. #ifndef __IReadData_FWD_DEFINED__
  57. #define __IReadData_FWD_DEFINED__
  58. typedef struct IReadData IReadData;
  59. #endif
  60. #ifndef __ICommandCost_FWD_DEFINED__
  61. #define __ICommandCost_FWD_DEFINED__
  62. typedef struct ICommandCost ICommandCost;
  63. #endif
  64. #ifndef __ICommandValidate_FWD_DEFINED__
  65. #define __ICommandValidate_FWD_DEFINED__
  66. typedef struct ICommandValidate ICommandValidate;
  67. #endif
  68. #ifndef __ITableRename_FWD_DEFINED__
  69. #define __ITableRename_FWD_DEFINED__
  70. typedef struct ITableRename ITableRename;
  71. #endif
  72. #ifndef __IDBSchemaCommand_FWD_DEFINED__
  73. #define __IDBSchemaCommand_FWD_DEFINED__
  74. typedef struct IDBSchemaCommand IDBSchemaCommand;
  75. #endif
  76. #ifndef __IProvideMoniker_FWD_DEFINED__
  77. #define __IProvideMoniker_FWD_DEFINED__
  78. typedef struct IProvideMoniker IProvideMoniker;
  79. #endif
  80. #include "oledb.h"
  81. #ifdef __cplusplus
  82. extern "C" {
  83. #endif
  84. #ifndef __MIDL_user_allocate_free_DEFINED__
  85. #define __MIDL_user_allocate_free_DEFINED__
  86. void *__RPC_API MIDL_user_allocate(size_t);
  87. void __RPC_API MIDL_user_free(void *);
  88. #endif
  89. #ifdef _WIN64
  90. #include <pshpack8.h>
  91. #else
  92. #include <pshpack2.h>
  93. #endif
  94. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0000_v0_0_c_ifspec;
  95. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0000_v0_0_s_ifspec;
  96. #ifndef __DBStructureDefinitionsDep_INTERFACE_DEFINED__
  97. #define __DBStructureDefinitionsDep_INTERFACE_DEFINED__
  98. #undef OLEDBDECLSPEC
  99. #define OLEDBDECLSPEC __declspec(selectany)
  100. #ifdef DBINITCONSTANTS
  101. extern const OLEDBDECLSPEC GUID DB_PROPERTY_CHECK_OPTION = {0xc8b5220b,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  102. extern const OLEDBDECLSPEC GUID DB_PROPERTY_CONSTRAINT_CHECK_DEFERRED = {0xc8b521f0,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  103. extern const OLEDBDECLSPEC GUID DB_PROPERTY_DROP_CASCADE = {0xc8b521f3,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  104. extern const OLEDBDECLSPEC GUID DB_PROPERTY_UNIQUE = {0xc8b521f5,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  105. extern const OLEDBDECLSPEC GUID DB_PROPERTY_ON_COMMIT_PRESERVE_ROWS = {0xc8b52230,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  106. extern const OLEDBDECLSPEC GUID DB_PROPERTY_PRIMARY = {0xc8b521fc,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  107. extern const OLEDBDECLSPEC GUID DB_PROPERTY_CLUSTERED = {0xc8b521ff,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  108. extern const OLEDBDECLSPEC GUID DB_PROPERTY_NONCLUSTERED = {0xc8b52200,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  109. extern const OLEDBDECLSPEC GUID DB_PROPERTY_BTREE = {0xc8b52201,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  110. extern const OLEDBDECLSPEC GUID DB_PROPERTY_HASH = {0xc8b52202,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  111. extern const OLEDBDECLSPEC GUID DB_PROPERTY_FILLFACTOR = {0xc8b52203,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  112. extern const OLEDBDECLSPEC GUID DB_PROPERTY_INITIALSIZE = {0xc8b52204,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  113. extern const OLEDBDECLSPEC GUID DB_PROPERTY_DISALLOWNULL = {0xc8b52205,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  114. extern const OLEDBDECLSPEC GUID DB_PROPERTY_IGNORENULL = {0xc8b52206,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  115. extern const OLEDBDECLSPEC GUID DB_PROPERTY_IGNOREANYNULL = {0xc8b52207,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  116. extern const OLEDBDECLSPEC GUID DB_PROPERTY_SORTBOOKMARKS = {0xc8b52208,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  117. extern const OLEDBDECLSPEC GUID DB_PROPERTY_AUTOMATICUPDATE = {0xc8b52209,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  118. extern const OLEDBDECLSPEC GUID DB_PROPERTY_EXPLICITUPDATE = {0xc8b5220a,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  119. #else
  120. extern const GUID DB_PROPERTY_CHECK_OPTION;
  121. extern const GUID DB_PROPERTY_CONSTRAINT_CHECK_DEFERRED;
  122. extern const GUID DB_PROPERTY_DROP_CASCADE;
  123. extern const GUID DB_PROPERTY_ON_COMMIT_PRESERVE_ROWS;
  124. extern const GUID DB_PROPERTY_UNIQUE;
  125. extern const GUID DB_PROPERTY_PRIMARY;
  126. extern const GUID DB_PROPERTY_CLUSTERED;
  127. extern const GUID DB_PROPERTY_NONCLUSTERED;
  128. extern const GUID DB_PROPERTY_BTREE;
  129. extern const GUID DB_PROPERTY_HASH;
  130. extern const GUID DB_PROPERTY_FILLFACTOR;
  131. extern const GUID DB_PROPERTY_INITIALSIZE;
  132. extern const GUID DB_PROPERTY_DISALLOWNULL;
  133. extern const GUID DB_PROPERTY_IGNORENULL;
  134. extern const GUID DB_PROPERTY_IGNOREANYNULL;
  135. extern const GUID DB_PROPERTY_SORTBOOKMARKS;
  136. extern const GUID DB_PROPERTY_AUTOMATICUPDATE;
  137. extern const GUID DB_PROPERTY_EXPLICITUPDATE;
  138. #endif
  139. enum DBPROPENUM25_DEPRECATED {
  140. DBPROP_ICommandCost = 0x8d,DBPROP_ICommandTree = 0x8e,DBPROP_ICommandValidate = 0x8f,DBPROP_IDBSchemaCommand = 0x90,
  141. DBPROP_IProvideMoniker = 0x7d,DBPROP_IQuery = 0x92,DBPROP_IReadData = 0x93,DBPROP_IRowsetAsynch = 0x94,DBPROP_IRowsetCopyRows = 0x95,
  142. DBPROP_IRowsetKeys = 0x97,DBPROP_IRowsetNewRowAfter = 0x98,DBPROP_IRowsetNextRowset = 0x99,DBPROP_IRowsetWatchAll = 0x9b,
  143. DBPROP_IRowsetWatchNotify = 0x9c,DBPROP_IRowsetWatchRegion = 0x9d,DBPROP_IRowsetWithParameters = 0x9e
  144. };
  145. enum DBREASONENUM25 {
  146. DBREASON_ROWSET_ROWSADDED = DBREASON_ROW_ASYNCHINSERT + 1,
  147. DBREASON_ROWSET_POPULATIONCOMPLETE,DBREASON_ROWSET_POPULATIONSTOPPED
  148. };
  149. extern RPC_IF_HANDLE DBStructureDefinitionsDep_v0_0_c_ifspec;
  150. extern RPC_IF_HANDLE DBStructureDefinitionsDep_v0_0_s_ifspec;
  151. #endif
  152. #ifndef __IRowsetNextRowset_INTERFACE_DEFINED__
  153. #define __IRowsetNextRowset_INTERFACE_DEFINED__
  154. EXTERN_C const IID IID_IRowsetNextRowset;
  155. #if defined(__cplusplus) && !defined(CINTERFACE)
  156. struct IRowsetNextRowset : public IUnknown {
  157. public:
  158. virtual HRESULT WINAPI GetNextRowset(IUnknown *pUnkOuter,REFIID riid,IUnknown **ppNextRowset) = 0;
  159. };
  160. #else
  161. typedef struct IRowsetNextRowsetVtbl {
  162. BEGIN_INTERFACE
  163. HRESULT (WINAPI *QueryInterface)(IRowsetNextRowset *This,REFIID riid,void **ppvObject);
  164. ULONG (WINAPI *AddRef)(IRowsetNextRowset *This);
  165. ULONG (WINAPI *Release)(IRowsetNextRowset *This);
  166. HRESULT (WINAPI *GetNextRowset)(IRowsetNextRowset *This,IUnknown *pUnkOuter,REFIID riid,IUnknown **ppNextRowset);
  167. END_INTERFACE
  168. } IRowsetNextRowsetVtbl;
  169. struct IRowsetNextRowset {
  170. CONST_VTBL struct IRowsetNextRowsetVtbl *lpVtbl;
  171. };
  172. #ifdef COBJMACROS
  173. #define IRowsetNextRowset_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  174. #define IRowsetNextRowset_AddRef(This) (This)->lpVtbl->AddRef(This)
  175. #define IRowsetNextRowset_Release(This) (This)->lpVtbl->Release(This)
  176. #define IRowsetNextRowset_GetNextRowset(This,pUnkOuter,riid,ppNextRowset) (This)->lpVtbl->GetNextRowset(This,pUnkOuter,riid,ppNextRowset)
  177. #endif
  178. #endif
  179. HRESULT WINAPI IRowsetNextRowset_GetNextRowset_Proxy(IRowsetNextRowset *This,IUnknown *pUnkOuter,REFIID riid,IUnknown **ppNextRowset);
  180. void __RPC_STUB IRowsetNextRowset_GetNextRowset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  181. #endif
  182. #ifndef __IRowsetNewRowAfter_INTERFACE_DEFINED__
  183. #define __IRowsetNewRowAfter_INTERFACE_DEFINED__
  184. EXTERN_C const IID IID_IRowsetNewRowAfter;
  185. #if defined(__cplusplus) && !defined(CINTERFACE)
  186. struct IRowsetNewRowAfter : public IUnknown {
  187. public:
  188. virtual HRESULT WINAPI SetNewDataAfter(HCHAPTER hChapter,ULONG cbbmPrevious,const BYTE *pbmPrevious,HACCESSOR hAccessor,BYTE *pData,HROW *phRow) = 0;
  189. };
  190. #else
  191. typedef struct IRowsetNewRowAfterVtbl {
  192. BEGIN_INTERFACE
  193. HRESULT (WINAPI *QueryInterface)(IRowsetNewRowAfter *This,REFIID riid,void **ppvObject);
  194. ULONG (WINAPI *AddRef)(IRowsetNewRowAfter *This);
  195. ULONG (WINAPI *Release)(IRowsetNewRowAfter *This);
  196. HRESULT (WINAPI *SetNewDataAfter)(IRowsetNewRowAfter *This,HCHAPTER hChapter,ULONG cbbmPrevious,const BYTE *pbmPrevious,HACCESSOR hAccessor,BYTE *pData,HROW *phRow);
  197. END_INTERFACE
  198. } IRowsetNewRowAfterVtbl;
  199. struct IRowsetNewRowAfter {
  200. CONST_VTBL struct IRowsetNewRowAfterVtbl *lpVtbl;
  201. };
  202. #ifdef COBJMACROS
  203. #define IRowsetNewRowAfter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  204. #define IRowsetNewRowAfter_AddRef(This) (This)->lpVtbl->AddRef(This)
  205. #define IRowsetNewRowAfter_Release(This) (This)->lpVtbl->Release(This)
  206. #define IRowsetNewRowAfter_SetNewDataAfter(This,hChapter,cbbmPrevious,pbmPrevious,hAccessor,pData,phRow) (This)->lpVtbl->SetNewDataAfter(This,hChapter,cbbmPrevious,pbmPrevious,hAccessor,pData,phRow)
  207. #endif
  208. #endif
  209. HRESULT WINAPI IRowsetNewRowAfter_SetNewDataAfter_Proxy(IRowsetNewRowAfter *This,HCHAPTER hChapter,ULONG cbbmPrevious,const BYTE *pbmPrevious,HACCESSOR hAccessor,BYTE *pData,HROW *phRow);
  210. void __RPC_STUB IRowsetNewRowAfter_SetNewDataAfter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  211. #endif
  212. #ifndef __IRowsetWithParameters_INTERFACE_DEFINED__
  213. #define __IRowsetWithParameters_INTERFACE_DEFINED__
  214. EXTERN_C const IID IID_IRowsetWithParameters;
  215. #if defined(__cplusplus) && !defined(CINTERFACE)
  216. struct IRowsetWithParameters : public IUnknown {
  217. public:
  218. virtual HRESULT WINAPI GetParameterInfo(DB_UPARAMS *pcParams,DBPARAMINFO **prgParamInfo,OLECHAR **ppNamesBuffer) = 0;
  219. virtual HRESULT WINAPI Requery(DBPARAMS *pParams,ULONG *pulErrorParam,HCHAPTER *phReserved) = 0;
  220. };
  221. #else
  222. typedef struct IRowsetWithParametersVtbl {
  223. BEGIN_INTERFACE
  224. HRESULT (WINAPI *QueryInterface)(IRowsetWithParameters *This,REFIID riid,void **ppvObject);
  225. ULONG (WINAPI *AddRef)(IRowsetWithParameters *This);
  226. ULONG (WINAPI *Release)(IRowsetWithParameters *This);
  227. HRESULT (WINAPI *GetParameterInfo)(IRowsetWithParameters *This,DB_UPARAMS *pcParams,DBPARAMINFO **prgParamInfo,OLECHAR **ppNamesBuffer);
  228. HRESULT (WINAPI *Requery)(IRowsetWithParameters *This,DBPARAMS *pParams,ULONG *pulErrorParam,HCHAPTER *phReserved);
  229. END_INTERFACE
  230. } IRowsetWithParametersVtbl;
  231. struct IRowsetWithParameters {
  232. CONST_VTBL struct IRowsetWithParametersVtbl *lpVtbl;
  233. };
  234. #ifdef COBJMACROS
  235. #define IRowsetWithParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  236. #define IRowsetWithParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
  237. #define IRowsetWithParameters_Release(This) (This)->lpVtbl->Release(This)
  238. #define IRowsetWithParameters_GetParameterInfo(This,pcParams,prgParamInfo,ppNamesBuffer) (This)->lpVtbl->GetParameterInfo(This,pcParams,prgParamInfo,ppNamesBuffer)
  239. #define IRowsetWithParameters_Requery(This,pParams,pulErrorParam,phReserved) (This)->lpVtbl->Requery(This,pParams,pulErrorParam,phReserved)
  240. #endif
  241. #endif
  242. HRESULT WINAPI IRowsetWithParameters_GetParameterInfo_Proxy(IRowsetWithParameters *This,DB_UPARAMS *pcParams,DBPARAMINFO **prgParamInfo,OLECHAR **ppNamesBuffer);
  243. void __RPC_STUB IRowsetWithParameters_GetParameterInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  244. HRESULT WINAPI IRowsetWithParameters_Requery_Proxy(IRowsetWithParameters *This,DBPARAMS *pParams,ULONG *pulErrorParam,HCHAPTER *phReserved);
  245. void __RPC_STUB IRowsetWithParameters_Requery_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  246. #endif
  247. #ifndef __IRowsetAsynch_INTERFACE_DEFINED__
  248. #define __IRowsetAsynch_INTERFACE_DEFINED__
  249. EXTERN_C const IID IID_IRowsetAsynch;
  250. #if defined(__cplusplus) && !defined(CINTERFACE)
  251. struct IRowsetAsynch : public IUnknown {
  252. public:
  253. virtual HRESULT WINAPI RatioFinished(DBCOUNTITEM *pulDenominator,DBCOUNTITEM *pulNumerator,DBCOUNTITEM *pcRows,WINBOOL *pfNewRows) = 0;
  254. virtual HRESULT WINAPI Stop(void) = 0;
  255. };
  256. #else
  257. typedef struct IRowsetAsynchVtbl {
  258. BEGIN_INTERFACE
  259. HRESULT (WINAPI *QueryInterface)(IRowsetAsynch *This,REFIID riid,void **ppvObject);
  260. ULONG (WINAPI *AddRef)(IRowsetAsynch *This);
  261. ULONG (WINAPI *Release)(IRowsetAsynch *This);
  262. HRESULT (WINAPI *RatioFinished)(IRowsetAsynch *This,DBCOUNTITEM *pulDenominator,DBCOUNTITEM *pulNumerator,DBCOUNTITEM *pcRows,WINBOOL *pfNewRows);
  263. HRESULT (WINAPI *Stop)(IRowsetAsynch *This);
  264. END_INTERFACE
  265. } IRowsetAsynchVtbl;
  266. struct IRowsetAsynch {
  267. CONST_VTBL struct IRowsetAsynchVtbl *lpVtbl;
  268. };
  269. #ifdef COBJMACROS
  270. #define IRowsetAsynch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  271. #define IRowsetAsynch_AddRef(This) (This)->lpVtbl->AddRef(This)
  272. #define IRowsetAsynch_Release(This) (This)->lpVtbl->Release(This)
  273. #define IRowsetAsynch_RatioFinished(This,pulDenominator,pulNumerator,pcRows,pfNewRows) (This)->lpVtbl->RatioFinished(This,pulDenominator,pulNumerator,pcRows,pfNewRows)
  274. #define IRowsetAsynch_Stop(This) (This)->lpVtbl->Stop(This)
  275. #endif
  276. #endif
  277. HRESULT WINAPI IRowsetAsynch_RatioFinished_Proxy(IRowsetAsynch *This,DBCOUNTITEM *pulDenominator,DBCOUNTITEM *pulNumerator,DBCOUNTITEM *pcRows,WINBOOL *pfNewRows);
  278. void __RPC_STUB IRowsetAsynch_RatioFinished_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  279. HRESULT WINAPI IRowsetAsynch_Stop_Proxy(IRowsetAsynch *This);
  280. void __RPC_STUB IRowsetAsynch_Stop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  281. #endif
  282. #ifndef __IRowsetKeys_INTERFACE_DEFINED__
  283. #define __IRowsetKeys_INTERFACE_DEFINED__
  284. EXTERN_C const IID IID_IRowsetKeys;
  285. #if defined(__cplusplus) && !defined(CINTERFACE)
  286. struct IRowsetKeys : public IUnknown {
  287. public:
  288. virtual HRESULT WINAPI ListKeys(DBORDINAL *pcColumns,DBORDINAL **prgColumns) = 0;
  289. };
  290. #else
  291. typedef struct IRowsetKeysVtbl {
  292. BEGIN_INTERFACE
  293. HRESULT (WINAPI *QueryInterface)(IRowsetKeys *This,REFIID riid,void **ppvObject);
  294. ULONG (WINAPI *AddRef)(IRowsetKeys *This);
  295. ULONG (WINAPI *Release)(IRowsetKeys *This);
  296. HRESULT (WINAPI *ListKeys)(IRowsetKeys *This,DBORDINAL *pcColumns,DBORDINAL **prgColumns);
  297. END_INTERFACE
  298. } IRowsetKeysVtbl;
  299. struct IRowsetKeys {
  300. CONST_VTBL struct IRowsetKeysVtbl *lpVtbl;
  301. };
  302. #ifdef COBJMACROS
  303. #define IRowsetKeys_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  304. #define IRowsetKeys_AddRef(This) (This)->lpVtbl->AddRef(This)
  305. #define IRowsetKeys_Release(This) (This)->lpVtbl->Release(This)
  306. #define IRowsetKeys_ListKeys(This,pcColumns,prgColumns) (This)->lpVtbl->ListKeys(This,pcColumns,prgColumns)
  307. #endif
  308. #endif
  309. HRESULT WINAPI IRowsetKeys_ListKeys_Proxy(IRowsetKeys *This,DBORDINAL *pcColumns,DBORDINAL **prgColumns);
  310. void __RPC_STUB IRowsetKeys_ListKeys_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  311. #endif
  312. #ifndef __IRowsetWatchAll_INTERFACE_DEFINED__
  313. #define __IRowsetWatchAll_INTERFACE_DEFINED__
  314. EXTERN_C const IID IID_IRowsetWatchAll;
  315. #if defined(__cplusplus) && !defined(CINTERFACE)
  316. struct IRowsetWatchAll : public IUnknown {
  317. public:
  318. virtual HRESULT WINAPI Acknowledge(void) = 0;
  319. virtual HRESULT WINAPI Start(void) = 0;
  320. virtual HRESULT WINAPI StopWatching(void) = 0;
  321. };
  322. #else
  323. typedef struct IRowsetWatchAllVtbl {
  324. BEGIN_INTERFACE
  325. HRESULT (WINAPI *QueryInterface)(IRowsetWatchAll *This,REFIID riid,void **ppvObject);
  326. ULONG (WINAPI *AddRef)(IRowsetWatchAll *This);
  327. ULONG (WINAPI *Release)(IRowsetWatchAll *This);
  328. HRESULT (WINAPI *Acknowledge)(IRowsetWatchAll *This);
  329. HRESULT (WINAPI *Start)(IRowsetWatchAll *This);
  330. HRESULT (WINAPI *StopWatching)(IRowsetWatchAll *This);
  331. END_INTERFACE
  332. } IRowsetWatchAllVtbl;
  333. struct IRowsetWatchAll {
  334. CONST_VTBL struct IRowsetWatchAllVtbl *lpVtbl;
  335. };
  336. #ifdef COBJMACROS
  337. #define IRowsetWatchAll_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  338. #define IRowsetWatchAll_AddRef(This) (This)->lpVtbl->AddRef(This)
  339. #define IRowsetWatchAll_Release(This) (This)->lpVtbl->Release(This)
  340. #define IRowsetWatchAll_Acknowledge(This) (This)->lpVtbl->Acknowledge(This)
  341. #define IRowsetWatchAll_Start(This) (This)->lpVtbl->Start(This)
  342. #define IRowsetWatchAll_StopWatching(This) (This)->lpVtbl->StopWatching(This)
  343. #endif
  344. #endif
  345. HRESULT WINAPI IRowsetWatchAll_Acknowledge_Proxy(IRowsetWatchAll *This);
  346. void __RPC_STUB IRowsetWatchAll_Acknowledge_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  347. HRESULT WINAPI IRowsetWatchAll_Start_Proxy(IRowsetWatchAll *This);
  348. void __RPC_STUB IRowsetWatchAll_Start_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  349. HRESULT WINAPI IRowsetWatchAll_StopWatching_Proxy(IRowsetWatchAll *This);
  350. void __RPC_STUB IRowsetWatchAll_StopWatching_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  351. #endif
  352. #ifndef __IRowsetWatchNotify_INTERFACE_DEFINED__
  353. #define __IRowsetWatchNotify_INTERFACE_DEFINED__
  354. typedef DWORD DBWATCHNOTIFY;
  355. enum DBWATCHNOTIFYENUM {
  356. DBWATCHNOTIFY_ROWSCHANGED = 1,DBWATCHNOTIFY_QUERYDONE = 2,DBWATCHNOTIFY_QUERYREEXECUTED = 3
  357. };
  358. EXTERN_C const IID IID_IRowsetWatchNotify;
  359. #if defined(__cplusplus) && !defined(CINTERFACE)
  360. struct IRowsetWatchNotify : public IUnknown {
  361. public:
  362. virtual HRESULT WINAPI OnChange(IRowset *pRowset,DBWATCHNOTIFY eChangeReason) = 0;
  363. };
  364. #else
  365. typedef struct IRowsetWatchNotifyVtbl {
  366. BEGIN_INTERFACE
  367. HRESULT (WINAPI *QueryInterface)(IRowsetWatchNotify *This,REFIID riid,void **ppvObject);
  368. ULONG (WINAPI *AddRef)(IRowsetWatchNotify *This);
  369. ULONG (WINAPI *Release)(IRowsetWatchNotify *This);
  370. HRESULT (WINAPI *OnChange)(IRowsetWatchNotify *This,IRowset *pRowset,DBWATCHNOTIFY eChangeReason);
  371. END_INTERFACE
  372. } IRowsetWatchNotifyVtbl;
  373. struct IRowsetWatchNotify {
  374. CONST_VTBL struct IRowsetWatchNotifyVtbl *lpVtbl;
  375. };
  376. #ifdef COBJMACROS
  377. #define IRowsetWatchNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  378. #define IRowsetWatchNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
  379. #define IRowsetWatchNotify_Release(This) (This)->lpVtbl->Release(This)
  380. #define IRowsetWatchNotify_OnChange(This,pRowset,eChangeReason) (This)->lpVtbl->OnChange(This,pRowset,eChangeReason)
  381. #endif
  382. #endif
  383. HRESULT WINAPI IRowsetWatchNotify_OnChange_Proxy(IRowsetWatchNotify *This,IRowset *pRowset,DBWATCHNOTIFY eChangeReason);
  384. void __RPC_STUB IRowsetWatchNotify_OnChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  385. #endif
  386. #ifndef __IRowsetWatchRegion_INTERFACE_DEFINED__
  387. #define __IRowsetWatchRegion_INTERFACE_DEFINED__
  388. typedef DWORD DBWATCHMODE;
  389. enum DBWATCHMODEENUM {
  390. DBWATCHMODE_ALL = 0x1,DBWATCHMODE_EXTEND = 0x2,DBWATCHMODE_MOVE = 0x4,DBWATCHMODE_COUNT = 0x8
  391. };
  392. typedef DWORD DBROWCHANGEKIND;
  393. enum DBROWCHANGEKINDENUM {
  394. DBROWCHANGEKIND_INSERT = 0,
  395. DBROWCHANGEKIND_DELETE,DBROWCHANGEKIND_UPDATE,DBROWCHANGEKIND_COUNT
  396. };
  397. typedef struct tagDBROWWATCHRANGE {
  398. HWATCHREGION hRegion;
  399. DBROWCHANGEKIND eChangeKind;
  400. HROW hRow;
  401. DBCOUNTITEM iRow;
  402. } DBROWWATCHCHANGE;
  403. EXTERN_C const IID IID_IRowsetWatchRegion;
  404. #if defined(__cplusplus) && !defined(CINTERFACE)
  405. struct IRowsetWatchRegion : public IRowsetWatchAll {
  406. public:
  407. virtual HRESULT WINAPI CreateWatchRegion(DBWATCHMODE dwWatchMode,HWATCHREGION *phRegion) = 0;
  408. virtual HRESULT WINAPI ChangeWatchMode(HWATCHREGION hRegion,DBWATCHMODE dwWatchMode) = 0;
  409. virtual HRESULT WINAPI DeleteWatchRegion(HWATCHREGION hRegion) = 0;
  410. virtual HRESULT WINAPI GetWatchRegionInfo(HWATCHREGION hRegion,DBWATCHMODE *pdwWatchMode,HCHAPTER *phChapter,DBBKMARK *pcbBookmark,BYTE **ppBookmark,DBROWCOUNT *pcRows) = 0;
  411. virtual HRESULT WINAPI Refresh(DBCOUNTITEM *pcChangesObtained,DBROWWATCHCHANGE **prgChanges) = 0;
  412. virtual HRESULT WINAPI ShrinkWatchRegion(HWATCHREGION hRegion,HCHAPTER hChapter,DBBKMARK cbBookmark,BYTE *pBookmark,DBROWCOUNT cRows) = 0;
  413. };
  414. #else
  415. typedef struct IRowsetWatchRegionVtbl {
  416. BEGIN_INTERFACE
  417. HRESULT (WINAPI *QueryInterface)(IRowsetWatchRegion *This,REFIID riid,void **ppvObject);
  418. ULONG (WINAPI *AddRef)(IRowsetWatchRegion *This);
  419. ULONG (WINAPI *Release)(IRowsetWatchRegion *This);
  420. HRESULT (WINAPI *Acknowledge)(IRowsetWatchRegion *This);
  421. HRESULT (WINAPI *Start)(IRowsetWatchRegion *This);
  422. HRESULT (WINAPI *StopWatching)(IRowsetWatchRegion *This);
  423. HRESULT (WINAPI *CreateWatchRegion)(IRowsetWatchRegion *This,DBWATCHMODE dwWatchMode,HWATCHREGION *phRegion);
  424. HRESULT (WINAPI *ChangeWatchMode)(IRowsetWatchRegion *This,HWATCHREGION hRegion,DBWATCHMODE dwWatchMode);
  425. HRESULT (WINAPI *DeleteWatchRegion)(IRowsetWatchRegion *This,HWATCHREGION hRegion);
  426. HRESULT (WINAPI *GetWatchRegionInfo)(IRowsetWatchRegion *This,HWATCHREGION hRegion,DBWATCHMODE *pdwWatchMode,HCHAPTER *phChapter,DBBKMARK *pcbBookmark,BYTE **ppBookmark,DBROWCOUNT *pcRows);
  427. HRESULT (WINAPI *Refresh)(IRowsetWatchRegion *This,DBCOUNTITEM *pcChangesObtained,DBROWWATCHCHANGE **prgChanges);
  428. HRESULT (WINAPI *ShrinkWatchRegion)(IRowsetWatchRegion *This,HWATCHREGION hRegion,HCHAPTER hChapter,DBBKMARK cbBookmark,BYTE *pBookmark,DBROWCOUNT cRows);
  429. END_INTERFACE
  430. } IRowsetWatchRegionVtbl;
  431. struct IRowsetWatchRegion {
  432. CONST_VTBL struct IRowsetWatchRegionVtbl *lpVtbl;
  433. };
  434. #ifdef COBJMACROS
  435. #define IRowsetWatchRegion_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  436. #define IRowsetWatchRegion_AddRef(This) (This)->lpVtbl->AddRef(This)
  437. #define IRowsetWatchRegion_Release(This) (This)->lpVtbl->Release(This)
  438. #define IRowsetWatchRegion_Acknowledge(This) (This)->lpVtbl->Acknowledge(This)
  439. #define IRowsetWatchRegion_Start(This) (This)->lpVtbl->Start(This)
  440. #define IRowsetWatchRegion_StopWatching(This) (This)->lpVtbl->StopWatching(This)
  441. #define IRowsetWatchRegion_CreateWatchRegion(This,dwWatchMode,phRegion) (This)->lpVtbl->CreateWatchRegion(This,dwWatchMode,phRegion)
  442. #define IRowsetWatchRegion_ChangeWatchMode(This,hRegion,dwWatchMode) (This)->lpVtbl->ChangeWatchMode(This,hRegion,dwWatchMode)
  443. #define IRowsetWatchRegion_DeleteWatchRegion(This,hRegion) (This)->lpVtbl->DeleteWatchRegion(This,hRegion)
  444. #define IRowsetWatchRegion_GetWatchRegionInfo(This,hRegion,pdwWatchMode,phChapter,pcbBookmark,ppBookmark,pcRows) (This)->lpVtbl->GetWatchRegionInfo(This,hRegion,pdwWatchMode,phChapter,pcbBookmark,ppBookmark,pcRows)
  445. #define IRowsetWatchRegion_Refresh(This,pcChangesObtained,prgChanges) (This)->lpVtbl->Refresh(This,pcChangesObtained,prgChanges)
  446. #define IRowsetWatchRegion_ShrinkWatchRegion(This,hRegion,hChapter,cbBookmark,pBookmark,cRows) (This)->lpVtbl->ShrinkWatchRegion(This,hRegion,hChapter,cbBookmark,pBookmark,cRows)
  447. #endif
  448. #endif
  449. HRESULT WINAPI IRowsetWatchRegion_CreateWatchRegion_Proxy(IRowsetWatchRegion *This,DBWATCHMODE dwWatchMode,HWATCHREGION *phRegion);
  450. void __RPC_STUB IRowsetWatchRegion_CreateWatchRegion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  451. HRESULT WINAPI IRowsetWatchRegion_ChangeWatchMode_Proxy(IRowsetWatchRegion *This,HWATCHREGION hRegion,DBWATCHMODE dwWatchMode);
  452. void __RPC_STUB IRowsetWatchRegion_ChangeWatchMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  453. HRESULT WINAPI IRowsetWatchRegion_DeleteWatchRegion_Proxy(IRowsetWatchRegion *This,HWATCHREGION hRegion);
  454. void __RPC_STUB IRowsetWatchRegion_DeleteWatchRegion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  455. HRESULT WINAPI IRowsetWatchRegion_GetWatchRegionInfo_Proxy(IRowsetWatchRegion *This,HWATCHREGION hRegion,DBWATCHMODE *pdwWatchMode,HCHAPTER *phChapter,DBBKMARK *pcbBookmark,BYTE **ppBookmark,DBROWCOUNT *pcRows);
  456. void __RPC_STUB IRowsetWatchRegion_GetWatchRegionInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  457. HRESULT WINAPI IRowsetWatchRegion_Refresh_Proxy(IRowsetWatchRegion *This,DBCOUNTITEM *pcChangesObtained,DBROWWATCHCHANGE **prgChanges);
  458. void __RPC_STUB IRowsetWatchRegion_Refresh_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  459. HRESULT WINAPI IRowsetWatchRegion_ShrinkWatchRegion_Proxy(IRowsetWatchRegion *This,HWATCHREGION hRegion,HCHAPTER hChapter,DBBKMARK cbBookmark,BYTE *pBookmark,DBROWCOUNT cRows);
  460. void __RPC_STUB IRowsetWatchRegion_ShrinkWatchRegion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  461. #endif
  462. #ifndef __IRowsetCopyRows_INTERFACE_DEFINED__
  463. #define __IRowsetCopyRows_INTERFACE_DEFINED__
  464. typedef WORD HSOURCE;
  465. EXTERN_C const IID IID_IRowsetCopyRows;
  466. #if defined(__cplusplus) && !defined(CINTERFACE)
  467. struct IRowsetCopyRows : public IUnknown {
  468. public:
  469. virtual HRESULT WINAPI CloseSource(HSOURCE hSourceID) = 0;
  470. virtual HRESULT WINAPI CopyByHROWS(HSOURCE hSourceID,HCHAPTER hReserved,DBROWCOUNT cRows,const HROW rghRows[],ULONG bFlags) = 0;
  471. virtual HRESULT WINAPI CopyRows(HSOURCE hSourceID,HCHAPTER hReserved,DBROWCOUNT cRows,ULONG bFlags,DBCOUNTITEM *pcRowsCopied) = 0;
  472. virtual HRESULT WINAPI DefineSource(const IRowset *pRowsetSource,const DBORDINAL cColIds,const DB_LORDINAL rgSourceColumns[],const DB_LORDINAL rgTargetColumns[],HSOURCE *phSourceID) = 0;
  473. };
  474. #else
  475. typedef struct IRowsetCopyRowsVtbl {
  476. BEGIN_INTERFACE
  477. HRESULT (WINAPI *QueryInterface)(IRowsetCopyRows *This,REFIID riid,void **ppvObject);
  478. ULONG (WINAPI *AddRef)(IRowsetCopyRows *This);
  479. ULONG (WINAPI *Release)(IRowsetCopyRows *This);
  480. HRESULT (WINAPI *CloseSource)(IRowsetCopyRows *This,HSOURCE hSourceID);
  481. HRESULT (WINAPI *CopyByHROWS)(IRowsetCopyRows *This,HSOURCE hSourceID,HCHAPTER hReserved,DBROWCOUNT cRows,const HROW rghRows[],ULONG bFlags);
  482. HRESULT (WINAPI *CopyRows)(IRowsetCopyRows *This,HSOURCE hSourceID,HCHAPTER hReserved,DBROWCOUNT cRows,ULONG bFlags,DBCOUNTITEM *pcRowsCopied);
  483. HRESULT (WINAPI *DefineSource)(IRowsetCopyRows *This,const IRowset *pRowsetSource,const DBORDINAL cColIds,const DB_LORDINAL rgSourceColumns[],const DB_LORDINAL rgTargetColumns[],HSOURCE *phSourceID);
  484. END_INTERFACE
  485. } IRowsetCopyRowsVtbl;
  486. struct IRowsetCopyRows {
  487. CONST_VTBL struct IRowsetCopyRowsVtbl *lpVtbl;
  488. };
  489. #ifdef COBJMACROS
  490. #define IRowsetCopyRows_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  491. #define IRowsetCopyRows_AddRef(This) (This)->lpVtbl->AddRef(This)
  492. #define IRowsetCopyRows_Release(This) (This)->lpVtbl->Release(This)
  493. #define IRowsetCopyRows_CloseSource(This,hSourceID) (This)->lpVtbl->CloseSource(This,hSourceID)
  494. #define IRowsetCopyRows_CopyByHROWS(This,hSourceID,hReserved,cRows,rghRows,bFlags) (This)->lpVtbl->CopyByHROWS(This,hSourceID,hReserved,cRows,rghRows,bFlags)
  495. #define IRowsetCopyRows_CopyRows(This,hSourceID,hReserved,cRows,bFlags,pcRowsCopied) (This)->lpVtbl->CopyRows(This,hSourceID,hReserved,cRows,bFlags,pcRowsCopied)
  496. #define IRowsetCopyRows_DefineSource(This,pRowsetSource,cColIds,rgSourceColumns,rgTargetColumns,phSourceID) (This)->lpVtbl->DefineSource(This,pRowsetSource,cColIds,rgSourceColumns,rgTargetColumns,phSourceID)
  497. #endif
  498. #endif
  499. HRESULT WINAPI IRowsetCopyRows_CloseSource_Proxy(IRowsetCopyRows *This,HSOURCE hSourceID);
  500. void __RPC_STUB IRowsetCopyRows_CloseSource_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  501. HRESULT WINAPI IRowsetCopyRows_CopyByHROWS_Proxy(IRowsetCopyRows *This,HSOURCE hSourceID,HCHAPTER hReserved,DBROWCOUNT cRows,const HROW rghRows[],ULONG bFlags);
  502. void __RPC_STUB IRowsetCopyRows_CopyByHROWS_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  503. HRESULT WINAPI IRowsetCopyRows_CopyRows_Proxy(IRowsetCopyRows *This,HSOURCE hSourceID,HCHAPTER hReserved,DBROWCOUNT cRows,ULONG bFlags,DBCOUNTITEM *pcRowsCopied);
  504. void __RPC_STUB IRowsetCopyRows_CopyRows_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  505. HRESULT WINAPI IRowsetCopyRows_DefineSource_Proxy(IRowsetCopyRows *This,const IRowset *pRowsetSource,const DBORDINAL cColIds,const DB_LORDINAL rgSourceColumns[],const DB_LORDINAL rgTargetColumns[],HSOURCE *phSourceID);
  506. void __RPC_STUB IRowsetCopyRows_DefineSource_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  507. #endif
  508. #ifndef __IReadData_INTERFACE_DEFINED__
  509. #define __IReadData_INTERFACE_DEFINED__
  510. EXTERN_C const IID IID_IReadData;
  511. #if defined(__cplusplus) && !defined(CINTERFACE)
  512. struct IReadData : public IUnknown {
  513. public:
  514. virtual HRESULT WINAPI ReadData(HCHAPTER hChapter,DBBKMARK cbBookmark,const BYTE *pBookmark,DBROWOFFSET lRowsOffset,HACCESSOR hAccessor,DBROWCOUNT cRows,DBCOUNTITEM *pcRowsObtained,BYTE **ppFixedData,DBLENGTH *pcbVariableTotal,BYTE **ppVariableData) = 0;
  515. virtual HRESULT WINAPI ReleaseChapter(HCHAPTER hChapter) = 0;
  516. };
  517. #else
  518. typedef struct IReadDataVtbl {
  519. BEGIN_INTERFACE
  520. HRESULT (WINAPI *QueryInterface)(IReadData *This,REFIID riid,void **ppvObject);
  521. ULONG (WINAPI *AddRef)(IReadData *This);
  522. ULONG (WINAPI *Release)(IReadData *This);
  523. HRESULT (WINAPI *ReadData)(IReadData *This,HCHAPTER hChapter,DBBKMARK cbBookmark,const BYTE *pBookmark,DBROWOFFSET lRowsOffset,HACCESSOR hAccessor,DBROWCOUNT cRows,DBCOUNTITEM *pcRowsObtained,BYTE **ppFixedData,DBLENGTH *pcbVariableTotal,BYTE **ppVariableData);
  524. HRESULT (WINAPI *ReleaseChapter)(IReadData *This,HCHAPTER hChapter);
  525. END_INTERFACE
  526. } IReadDataVtbl;
  527. struct IReadData {
  528. CONST_VTBL struct IReadDataVtbl *lpVtbl;
  529. };
  530. #ifdef COBJMACROS
  531. #define IReadData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  532. #define IReadData_AddRef(This) (This)->lpVtbl->AddRef(This)
  533. #define IReadData_Release(This) (This)->lpVtbl->Release(This)
  534. #define IReadData_ReadData(This,hChapter,cbBookmark,pBookmark,lRowsOffset,hAccessor,cRows,pcRowsObtained,ppFixedData,pcbVariableTotal,ppVariableData) (This)->lpVtbl->ReadData(This,hChapter,cbBookmark,pBookmark,lRowsOffset,hAccessor,cRows,pcRowsObtained,ppFixedData,pcbVariableTotal,ppVariableData)
  535. #define IReadData_ReleaseChapter(This,hChapter) (This)->lpVtbl->ReleaseChapter(This,hChapter)
  536. #endif
  537. #endif
  538. HRESULT WINAPI IReadData_ReadData_Proxy(IReadData *This,HCHAPTER hChapter,DBBKMARK cbBookmark,const BYTE *pBookmark,DBROWOFFSET lRowsOffset,HACCESSOR hAccessor,DBROWCOUNT cRows,DBCOUNTITEM *pcRowsObtained,BYTE **ppFixedData,DBLENGTH *pcbVariableTotal,BYTE **ppVariableData);
  539. void __RPC_STUB IReadData_ReadData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  540. HRESULT WINAPI IReadData_ReleaseChapter_Proxy(IReadData *This,HCHAPTER hChapter);
  541. void __RPC_STUB IReadData_ReleaseChapter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  542. #endif
  543. #ifndef __ICommandCost_INTERFACE_DEFINED__
  544. #define __ICommandCost_INTERFACE_DEFINED__
  545. typedef DWORD DBRESOURCEKIND;
  546. enum DBRESOURCEKINDENUM {
  547. DBRESOURCE_INVALID = 0,DBRESOURCE_TOTAL = 1,DBRESOURCE_CPU = 2,DBRESOURCE_MEMORY = 3,DBRESOURCE_DISK = 4,DBRESOURCE_NETWORK = 5,
  548. DBRESOURCE_RESPONSE = 6,DBRESOURCE_ROWS = 7,DBRESOURCE_OTHER = 8
  549. };
  550. typedef DWORD DBCOSTUNIT;
  551. enum DBCOSTUNITENUM {
  552. DBUNIT_INVALID = 0,DBUNIT_WEIGHT = 0x1,DBUNIT_PERCENT = 0x2,DBUNIT_MAXIMUM = 0x4,DBUNIT_MINIMUM = 0x8,DBUNIT_MICRO_SECOND = 0x10,
  553. DBUNIT_MILLI_SECOND = 0x20,DBUNIT_SECOND = 0x40,DBUNIT_MINUTE = 0x80,DBUNIT_HOUR = 0x100,DBUNIT_BYTE = 0x200,DBUNIT_KILO_BYTE = 0x400,
  554. DBUNIT_MEGA_BYTE = 0x800,DBUNIT_GIGA_BYTE = 0x1000,DBUNIT_NUM_MSGS = 0x2000,DBUNIT_NUM_LOCKS = 0x4000,DBUNIT_NUM_ROWS = 0x8000,
  555. DBUNIT_OTHER = 0x10000
  556. };
  557. typedef struct tagDBCOST {
  558. DBRESOURCEKIND eKind;
  559. DBCOSTUNIT dwUnits;
  560. LONG lValue;
  561. } DBCOST;
  562. typedef DWORD DBEXECLIMITS;
  563. enum DBEXECLIMITSENUM {
  564. DBEXECLIMITS_ABORT = 1,DBEXECLIMITS_STOP = 2,DBEXECLIMITS_SUSPEND = 3
  565. };
  566. EXTERN_C const IID IID_ICommandCost;
  567. #if defined(__cplusplus) && !defined(CINTERFACE)
  568. struct ICommandCost : public IUnknown {
  569. public:
  570. virtual HRESULT WINAPI GetAccumulatedCost(LPCOLESTR pwszRowsetName,ULONG *pcCostLimits,DBCOST **prgCostLimits) = 0;
  571. virtual HRESULT WINAPI GetCostEstimate(LPCOLESTR pwszRowsetName,ULONG *pcCostEstimates,DBCOST *prgCostEstimates) = 0;
  572. virtual HRESULT WINAPI GetCostGoals(LPCOLESTR pwszRowsetName,ULONG *pcCostGoals,DBCOST *prgCostGoals) = 0;
  573. virtual HRESULT WINAPI GetCostLimits(LPCOLESTR pwszRowsetName,ULONG *pcCostLimits,DBCOST *prgCostLimits) = 0;
  574. virtual HRESULT WINAPI SetCostGoals(LPCOLESTR pwszRowsetName,ULONG cCostGoals,const DBCOST rgCostGoals[]) = 0;
  575. virtual HRESULT WINAPI SetCostLimits(LPCOLESTR pwszRowsetName,ULONG cCostLimits,DBCOST *prgCostLimits,DBEXECLIMITS dwExecutionFlags) = 0;
  576. };
  577. #else
  578. typedef struct ICommandCostVtbl {
  579. BEGIN_INTERFACE
  580. HRESULT (WINAPI *QueryInterface)(ICommandCost *This,REFIID riid,void **ppvObject);
  581. ULONG (WINAPI *AddRef)(ICommandCost *This);
  582. ULONG (WINAPI *Release)(ICommandCost *This);
  583. HRESULT (WINAPI *GetAccumulatedCost)(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG *pcCostLimits,DBCOST **prgCostLimits);
  584. HRESULT (WINAPI *GetCostEstimate)(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG *pcCostEstimates,DBCOST *prgCostEstimates);
  585. HRESULT (WINAPI *GetCostGoals)(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG *pcCostGoals,DBCOST *prgCostGoals);
  586. HRESULT (WINAPI *GetCostLimits)(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG *pcCostLimits,DBCOST *prgCostLimits);
  587. HRESULT (WINAPI *SetCostGoals)(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG cCostGoals,const DBCOST rgCostGoals[]);
  588. HRESULT (WINAPI *SetCostLimits)(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG cCostLimits,DBCOST *prgCostLimits,DBEXECLIMITS dwExecutionFlags);
  589. END_INTERFACE
  590. } ICommandCostVtbl;
  591. struct ICommandCost {
  592. CONST_VTBL struct ICommandCostVtbl *lpVtbl;
  593. };
  594. #ifdef COBJMACROS
  595. #define ICommandCost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  596. #define ICommandCost_AddRef(This) (This)->lpVtbl->AddRef(This)
  597. #define ICommandCost_Release(This) (This)->lpVtbl->Release(This)
  598. #define ICommandCost_GetAccumulatedCost(This,pwszRowsetName,pcCostLimits,prgCostLimits) (This)->lpVtbl->GetAccumulatedCost(This,pwszRowsetName,pcCostLimits,prgCostLimits)
  599. #define ICommandCost_GetCostEstimate(This,pwszRowsetName,pcCostEstimates,prgCostEstimates) (This)->lpVtbl->GetCostEstimate(This,pwszRowsetName,pcCostEstimates,prgCostEstimates)
  600. #define ICommandCost_GetCostGoals(This,pwszRowsetName,pcCostGoals,prgCostGoals) (This)->lpVtbl->GetCostGoals(This,pwszRowsetName,pcCostGoals,prgCostGoals)
  601. #define ICommandCost_GetCostLimits(This,pwszRowsetName,pcCostLimits,prgCostLimits) (This)->lpVtbl->GetCostLimits(This,pwszRowsetName,pcCostLimits,prgCostLimits)
  602. #define ICommandCost_SetCostGoals(This,pwszRowsetName,cCostGoals,rgCostGoals) (This)->lpVtbl->SetCostGoals(This,pwszRowsetName,cCostGoals,rgCostGoals)
  603. #define ICommandCost_SetCostLimits(This,pwszRowsetName,cCostLimits,prgCostLimits,dwExecutionFlags) (This)->lpVtbl->SetCostLimits(This,pwszRowsetName,cCostLimits,prgCostLimits,dwExecutionFlags)
  604. #endif
  605. #endif
  606. HRESULT WINAPI ICommandCost_GetAccumulatedCost_Proxy(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG *pcCostLimits,DBCOST **prgCostLimits);
  607. void __RPC_STUB ICommandCost_GetAccumulatedCost_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  608. HRESULT WINAPI ICommandCost_GetCostEstimate_Proxy(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG *pcCostEstimates,DBCOST *prgCostEstimates);
  609. void __RPC_STUB ICommandCost_GetCostEstimate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  610. HRESULT WINAPI ICommandCost_GetCostGoals_Proxy(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG *pcCostGoals,DBCOST *prgCostGoals);
  611. void __RPC_STUB ICommandCost_GetCostGoals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  612. HRESULT WINAPI ICommandCost_GetCostLimits_Proxy(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG *pcCostLimits,DBCOST *prgCostLimits);
  613. void __RPC_STUB ICommandCost_GetCostLimits_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  614. HRESULT WINAPI ICommandCost_SetCostGoals_Proxy(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG cCostGoals,const DBCOST rgCostGoals[]);
  615. void __RPC_STUB ICommandCost_SetCostGoals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  616. HRESULT WINAPI ICommandCost_SetCostLimits_Proxy(ICommandCost *This,LPCOLESTR pwszRowsetName,ULONG cCostLimits,DBCOST *prgCostLimits,DBEXECLIMITS dwExecutionFlags);
  617. void __RPC_STUB ICommandCost_SetCostLimits_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  618. #endif
  619. #ifndef __ICommandValidate_INTERFACE_DEFINED__
  620. #define __ICommandValidate_INTERFACE_DEFINED__
  621. EXTERN_C const IID IID_ICommandValidate;
  622. #if defined(__cplusplus) && !defined(CINTERFACE)
  623. struct ICommandValidate : public IUnknown {
  624. public:
  625. virtual HRESULT WINAPI ValidateCompletely(void) = 0;
  626. virtual HRESULT WINAPI ValidateSyntax(void) = 0;
  627. };
  628. #else
  629. typedef struct ICommandValidateVtbl {
  630. BEGIN_INTERFACE
  631. HRESULT (WINAPI *QueryInterface)(ICommandValidate *This,REFIID riid,void **ppvObject);
  632. ULONG (WINAPI *AddRef)(ICommandValidate *This);
  633. ULONG (WINAPI *Release)(ICommandValidate *This);
  634. HRESULT (WINAPI *ValidateCompletely)(ICommandValidate *This);
  635. HRESULT (WINAPI *ValidateSyntax)(ICommandValidate *This);
  636. END_INTERFACE
  637. } ICommandValidateVtbl;
  638. struct ICommandValidate {
  639. CONST_VTBL struct ICommandValidateVtbl *lpVtbl;
  640. };
  641. #ifdef COBJMACROS
  642. #define ICommandValidate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  643. #define ICommandValidate_AddRef(This) (This)->lpVtbl->AddRef(This)
  644. #define ICommandValidate_Release(This) (This)->lpVtbl->Release(This)
  645. #define ICommandValidate_ValidateCompletely(This) (This)->lpVtbl->ValidateCompletely(This)
  646. #define ICommandValidate_ValidateSyntax(This) (This)->lpVtbl->ValidateSyntax(This)
  647. #endif
  648. #endif
  649. HRESULT WINAPI ICommandValidate_ValidateCompletely_Proxy(ICommandValidate *This);
  650. void __RPC_STUB ICommandValidate_ValidateCompletely_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  651. HRESULT WINAPI ICommandValidate_ValidateSyntax_Proxy(ICommandValidate *This);
  652. void __RPC_STUB ICommandValidate_ValidateSyntax_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  653. #endif
  654. #ifndef __ITableRename_INTERFACE_DEFINED__
  655. #define __ITableRename_INTERFACE_DEFINED__
  656. EXTERN_C const IID IID_ITableRename;
  657. #if defined(__cplusplus) && !defined(CINTERFACE)
  658. struct ITableRename : public IUnknown {
  659. public:
  660. virtual HRESULT WINAPI RenameColumn(DBID *pTableId,DBID *pOldColumnId,DBID *pNewColumnId) = 0;
  661. virtual HRESULT WINAPI RenameTable(DBID *pOldTableId,DBID *pOldIndexId,DBID *pNewTableId,DBID *pNewIndexId) = 0;
  662. };
  663. #else
  664. typedef struct ITableRenameVtbl {
  665. BEGIN_INTERFACE
  666. HRESULT (WINAPI *QueryInterface)(ITableRename *This,REFIID riid,void **ppvObject);
  667. ULONG (WINAPI *AddRef)(ITableRename *This);
  668. ULONG (WINAPI *Release)(ITableRename *This);
  669. HRESULT (WINAPI *RenameColumn)(ITableRename *This,DBID *pTableId,DBID *pOldColumnId,DBID *pNewColumnId);
  670. HRESULT (WINAPI *RenameTable)(ITableRename *This,DBID *pOldTableId,DBID *pOldIndexId,DBID *pNewTableId,DBID *pNewIndexId);
  671. END_INTERFACE
  672. } ITableRenameVtbl;
  673. struct ITableRename {
  674. CONST_VTBL struct ITableRenameVtbl *lpVtbl;
  675. };
  676. #ifdef COBJMACROS
  677. #define ITableRename_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  678. #define ITableRename_AddRef(This) (This)->lpVtbl->AddRef(This)
  679. #define ITableRename_Release(This) (This)->lpVtbl->Release(This)
  680. #define ITableRename_RenameColumn(This,pTableId,pOldColumnId,pNewColumnId) (This)->lpVtbl->RenameColumn(This,pTableId,pOldColumnId,pNewColumnId)
  681. #define ITableRename_RenameTable(This,pOldTableId,pOldIndexId,pNewTableId,pNewIndexId) (This)->lpVtbl->RenameTable(This,pOldTableId,pOldIndexId,pNewTableId,pNewIndexId)
  682. #endif
  683. #endif
  684. HRESULT WINAPI ITableRename_RenameColumn_Proxy(ITableRename *This,DBID *pTableId,DBID *pOldColumnId,DBID *pNewColumnId);
  685. void __RPC_STUB ITableRename_RenameColumn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  686. HRESULT WINAPI ITableRename_RenameTable_Proxy(ITableRename *This,DBID *pOldTableId,DBID *pOldIndexId,DBID *pNewTableId,DBID *pNewIndexId);
  687. void __RPC_STUB ITableRename_RenameTable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  688. #endif
  689. #ifndef __IDBSchemaCommand_INTERFACE_DEFINED__
  690. #define __IDBSchemaCommand_INTERFACE_DEFINED__
  691. EXTERN_C const IID IID_IDBSchemaCommand;
  692. #if defined(__cplusplus) && !defined(CINTERFACE)
  693. struct IDBSchemaCommand : public IUnknown {
  694. public:
  695. virtual HRESULT WINAPI GetCommand(IUnknown *pUnkOuter,REFGUID rguidSchema,ICommand **ppCommand) = 0;
  696. virtual HRESULT WINAPI GetSchemas(ULONG *pcSchemas,GUID **prgSchemas) = 0;
  697. };
  698. #else
  699. typedef struct IDBSchemaCommandVtbl {
  700. BEGIN_INTERFACE
  701. HRESULT (WINAPI *QueryInterface)(IDBSchemaCommand *This,REFIID riid,void **ppvObject);
  702. ULONG (WINAPI *AddRef)(IDBSchemaCommand *This);
  703. ULONG (WINAPI *Release)(IDBSchemaCommand *This);
  704. HRESULT (WINAPI *GetCommand)(IDBSchemaCommand *This,IUnknown *pUnkOuter,REFGUID rguidSchema,ICommand **ppCommand);
  705. HRESULT (WINAPI *GetSchemas)(IDBSchemaCommand *This,ULONG *pcSchemas,GUID **prgSchemas);
  706. END_INTERFACE
  707. } IDBSchemaCommandVtbl;
  708. struct IDBSchemaCommand {
  709. CONST_VTBL struct IDBSchemaCommandVtbl *lpVtbl;
  710. };
  711. #ifdef COBJMACROS
  712. #define IDBSchemaCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  713. #define IDBSchemaCommand_AddRef(This) (This)->lpVtbl->AddRef(This)
  714. #define IDBSchemaCommand_Release(This) (This)->lpVtbl->Release(This)
  715. #define IDBSchemaCommand_GetCommand(This,pUnkOuter,rguidSchema,ppCommand) (This)->lpVtbl->GetCommand(This,pUnkOuter,rguidSchema,ppCommand)
  716. #define IDBSchemaCommand_GetSchemas(This,pcSchemas,prgSchemas) (This)->lpVtbl->GetSchemas(This,pcSchemas,prgSchemas)
  717. #endif
  718. #endif
  719. HRESULT WINAPI IDBSchemaCommand_GetCommand_Proxy(IDBSchemaCommand *This,IUnknown *pUnkOuter,REFGUID rguidSchema,ICommand **ppCommand);
  720. void __RPC_STUB IDBSchemaCommand_GetCommand_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  721. HRESULT WINAPI IDBSchemaCommand_GetSchemas_Proxy(IDBSchemaCommand *This,ULONG *pcSchemas,GUID **prgSchemas);
  722. void __RPC_STUB IDBSchemaCommand_GetSchemas_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  723. #endif
  724. #ifndef __IProvideMoniker_INTERFACE_DEFINED__
  725. #define __IProvideMoniker_INTERFACE_DEFINED__
  726. EXTERN_C const IID IID_IProvideMoniker;
  727. #if defined(__cplusplus) && !defined(CINTERFACE)
  728. struct IProvideMoniker : public IUnknown {
  729. public:
  730. virtual HRESULT WINAPI GetMoniker(IMoniker **ppIMoniker) = 0;
  731. };
  732. #else
  733. typedef struct IProvideMonikerVtbl {
  734. BEGIN_INTERFACE
  735. HRESULT (WINAPI *QueryInterface)(IProvideMoniker *This,REFIID riid,void **ppvObject);
  736. ULONG (WINAPI *AddRef)(IProvideMoniker *This);
  737. ULONG (WINAPI *Release)(IProvideMoniker *This);
  738. HRESULT (WINAPI *GetMoniker)(IProvideMoniker *This,IMoniker **ppIMoniker);
  739. END_INTERFACE
  740. } IProvideMonikerVtbl;
  741. struct IProvideMoniker {
  742. CONST_VTBL struct IProvideMonikerVtbl *lpVtbl;
  743. };
  744. #ifdef COBJMACROS
  745. #define IProvideMoniker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  746. #define IProvideMoniker_AddRef(This) (This)->lpVtbl->AddRef(This)
  747. #define IProvideMoniker_Release(This) (This)->lpVtbl->Release(This)
  748. #define IProvideMoniker_GetMoniker(This,ppIMoniker) (This)->lpVtbl->GetMoniker(This,ppIMoniker)
  749. #endif
  750. #endif
  751. HRESULT WINAPI IProvideMoniker_GetMoniker_Proxy(IProvideMoniker *This,IMoniker **ppIMoniker);
  752. void __RPC_STUB IProvideMoniker_GetMoniker_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  753. #endif
  754. #include <poppack.h>
  755. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0372_v0_0_c_ifspec;
  756. extern RPC_IF_HANDLE __MIDL_itf_oledbdep_0372_v0_0_s_ifspec;
  757. #ifdef __cplusplus
  758. }
  759. #endif
  760. #endif