home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 2000 September / VPR0009A.BIN / VS60SP4JPN / support / oledb.h < prev    next >
C/C++ Source or Header  |  1999-01-29  |  593KB  |  16,527 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 Thu Nov 12 23:35:28 1998
  6.  */
  7. /* Compiler settings for oledb.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 __oledb_h__
  20. #define __oledb_h__
  21.  
  22. #ifdef __cplusplus
  23. extern "C"{
  24. #endif 
  25.  
  26. /* Forward Declarations */ 
  27.  
  28. #ifndef __IAccessor_FWD_DEFINED__
  29. #define __IAccessor_FWD_DEFINED__
  30. typedef interface IAccessor IAccessor;
  31. #endif     /* __IAccessor_FWD_DEFINED__ */
  32.  
  33.  
  34. #ifndef __IRowset_FWD_DEFINED__
  35. #define __IRowset_FWD_DEFINED__
  36. typedef interface IRowset IRowset;
  37. #endif     /* __IRowset_FWD_DEFINED__ */
  38.  
  39.  
  40. #ifndef __IRowsetInfo_FWD_DEFINED__
  41. #define __IRowsetInfo_FWD_DEFINED__
  42. typedef interface IRowsetInfo IRowsetInfo;
  43. #endif     /* __IRowsetInfo_FWD_DEFINED__ */
  44.  
  45.  
  46. #ifndef __IRowsetLocate_FWD_DEFINED__
  47. #define __IRowsetLocate_FWD_DEFINED__
  48. typedef interface IRowsetLocate IRowsetLocate;
  49. #endif     /* __IRowsetLocate_FWD_DEFINED__ */
  50.  
  51.  
  52. #ifndef __IRowsetResynch_FWD_DEFINED__
  53. #define __IRowsetResynch_FWD_DEFINED__
  54. typedef interface IRowsetResynch IRowsetResynch;
  55. #endif     /* __IRowsetResynch_FWD_DEFINED__ */
  56.  
  57.  
  58. #ifndef __IRowsetScroll_FWD_DEFINED__
  59. #define __IRowsetScroll_FWD_DEFINED__
  60. typedef interface IRowsetScroll IRowsetScroll;
  61. #endif     /* __IRowsetScroll_FWD_DEFINED__ */
  62.  
  63.  
  64. #ifndef __IChapteredRowset_FWD_DEFINED__
  65. #define __IChapteredRowset_FWD_DEFINED__
  66. typedef interface IChapteredRowset IChapteredRowset;
  67. #endif     /* __IChapteredRowset_FWD_DEFINED__ */
  68.  
  69.  
  70. #ifndef __IRowsetFind_FWD_DEFINED__
  71. #define __IRowsetFind_FWD_DEFINED__
  72. typedef interface IRowsetFind IRowsetFind;
  73. #endif     /* __IRowsetFind_FWD_DEFINED__ */
  74.  
  75.  
  76. #ifndef __IRowPosition_FWD_DEFINED__
  77. #define __IRowPosition_FWD_DEFINED__
  78. typedef interface IRowPosition IRowPosition;
  79. #endif     /* __IRowPosition_FWD_DEFINED__ */
  80.  
  81.  
  82. #ifndef __IRowPositionChange_FWD_DEFINED__
  83. #define __IRowPositionChange_FWD_DEFINED__
  84. typedef interface IRowPositionChange IRowPositionChange;
  85. #endif     /* __IRowPositionChange_FWD_DEFINED__ */
  86.  
  87.  
  88. #ifndef __IViewRowset_FWD_DEFINED__
  89. #define __IViewRowset_FWD_DEFINED__
  90. typedef interface IViewRowset IViewRowset;
  91. #endif     /* __IViewRowset_FWD_DEFINED__ */
  92.  
  93.  
  94. #ifndef __IViewChapter_FWD_DEFINED__
  95. #define __IViewChapter_FWD_DEFINED__
  96. typedef interface IViewChapter IViewChapter;
  97. #endif     /* __IViewChapter_FWD_DEFINED__ */
  98.  
  99.  
  100. #ifndef __IViewSort_FWD_DEFINED__
  101. #define __IViewSort_FWD_DEFINED__
  102. typedef interface IViewSort IViewSort;
  103. #endif     /* __IViewSort_FWD_DEFINED__ */
  104.  
  105.  
  106. #ifndef __IViewFilter_FWD_DEFINED__
  107. #define __IViewFilter_FWD_DEFINED__
  108. typedef interface IViewFilter IViewFilter;
  109. #endif     /* __IViewFilter_FWD_DEFINED__ */
  110.  
  111.  
  112. #ifndef __IRowsetView_FWD_DEFINED__
  113. #define __IRowsetView_FWD_DEFINED__
  114. typedef interface IRowsetView IRowsetView;
  115. #endif     /* __IRowsetView_FWD_DEFINED__ */
  116.  
  117.  
  118. #ifndef __IRowsetExactScroll_FWD_DEFINED__
  119. #define __IRowsetExactScroll_FWD_DEFINED__
  120. typedef interface IRowsetExactScroll IRowsetExactScroll;
  121. #endif     /* __IRowsetExactScroll_FWD_DEFINED__ */
  122.  
  123.  
  124. #ifndef __IRowsetChange_FWD_DEFINED__
  125. #define __IRowsetChange_FWD_DEFINED__
  126. typedef interface IRowsetChange IRowsetChange;
  127. #endif     /* __IRowsetChange_FWD_DEFINED__ */
  128.  
  129.  
  130. #ifndef __IRowsetUpdate_FWD_DEFINED__
  131. #define __IRowsetUpdate_FWD_DEFINED__
  132. typedef interface IRowsetUpdate IRowsetUpdate;
  133. #endif     /* __IRowsetUpdate_FWD_DEFINED__ */
  134.  
  135.  
  136. #ifndef __IRowsetIdentity_FWD_DEFINED__
  137. #define __IRowsetIdentity_FWD_DEFINED__
  138. typedef interface IRowsetIdentity IRowsetIdentity;
  139. #endif     /* __IRowsetIdentity_FWD_DEFINED__ */
  140.  
  141.  
  142. #ifndef __IRowsetNotify_FWD_DEFINED__
  143. #define __IRowsetNotify_FWD_DEFINED__
  144. typedef interface IRowsetNotify IRowsetNotify;
  145. #endif     /* __IRowsetNotify_FWD_DEFINED__ */
  146.  
  147.  
  148. #ifndef __IRowsetIndex_FWD_DEFINED__
  149. #define __IRowsetIndex_FWD_DEFINED__
  150. typedef interface IRowsetIndex IRowsetIndex;
  151. #endif     /* __IRowsetIndex_FWD_DEFINED__ */
  152.  
  153.  
  154. #ifndef __ICommand_FWD_DEFINED__
  155. #define __ICommand_FWD_DEFINED__
  156. typedef interface ICommand ICommand;
  157. #endif     /* __ICommand_FWD_DEFINED__ */
  158.  
  159.  
  160. #ifndef __IMultipleResults_FWD_DEFINED__
  161. #define __IMultipleResults_FWD_DEFINED__
  162. typedef interface IMultipleResults IMultipleResults;
  163. #endif     /* __IMultipleResults_FWD_DEFINED__ */
  164.  
  165.  
  166. #ifndef __IConvertType_FWD_DEFINED__
  167. #define __IConvertType_FWD_DEFINED__
  168. typedef interface IConvertType IConvertType;
  169. #endif     /* __IConvertType_FWD_DEFINED__ */
  170.  
  171.  
  172. #ifndef __ICommandPrepare_FWD_DEFINED__
  173. #define __ICommandPrepare_FWD_DEFINED__
  174. typedef interface ICommandPrepare ICommandPrepare;
  175. #endif     /* __ICommandPrepare_FWD_DEFINED__ */
  176.  
  177.  
  178. #ifndef __ICommandProperties_FWD_DEFINED__
  179. #define __ICommandProperties_FWD_DEFINED__
  180. typedef interface ICommandProperties ICommandProperties;
  181. #endif     /* __ICommandProperties_FWD_DEFINED__ */
  182.  
  183.  
  184. #ifndef __ICommandText_FWD_DEFINED__
  185. #define __ICommandText_FWD_DEFINED__
  186. typedef interface ICommandText ICommandText;
  187. #endif     /* __ICommandText_FWD_DEFINED__ */
  188.  
  189.  
  190. #ifndef __ICommandWithParameters_FWD_DEFINED__
  191. #define __ICommandWithParameters_FWD_DEFINED__
  192. typedef interface ICommandWithParameters ICommandWithParameters;
  193. #endif     /* __ICommandWithParameters_FWD_DEFINED__ */
  194.  
  195.  
  196. #ifndef __IColumnsRowset_FWD_DEFINED__
  197. #define __IColumnsRowset_FWD_DEFINED__
  198. typedef interface IColumnsRowset IColumnsRowset;
  199. #endif     /* __IColumnsRowset_FWD_DEFINED__ */
  200.  
  201.  
  202. #ifndef __IColumnsInfo_FWD_DEFINED__
  203. #define __IColumnsInfo_FWD_DEFINED__
  204. typedef interface IColumnsInfo IColumnsInfo;
  205. #endif     /* __IColumnsInfo_FWD_DEFINED__ */
  206.  
  207.  
  208. #ifndef __IDBCreateCommand_FWD_DEFINED__
  209. #define __IDBCreateCommand_FWD_DEFINED__
  210. typedef interface IDBCreateCommand IDBCreateCommand;
  211. #endif     /* __IDBCreateCommand_FWD_DEFINED__ */
  212.  
  213.  
  214. #ifndef __IDBCreateSession_FWD_DEFINED__
  215. #define __IDBCreateSession_FWD_DEFINED__
  216. typedef interface IDBCreateSession IDBCreateSession;
  217. #endif     /* __IDBCreateSession_FWD_DEFINED__ */
  218.  
  219.  
  220. #ifndef __ISourcesRowset_FWD_DEFINED__
  221. #define __ISourcesRowset_FWD_DEFINED__
  222. typedef interface ISourcesRowset ISourcesRowset;
  223. #endif     /* __ISourcesRowset_FWD_DEFINED__ */
  224.  
  225.  
  226. #ifndef __IDBProperties_FWD_DEFINED__
  227. #define __IDBProperties_FWD_DEFINED__
  228. typedef interface IDBProperties IDBProperties;
  229. #endif     /* __IDBProperties_FWD_DEFINED__ */
  230.  
  231.  
  232. #ifndef __IDBInitialize_FWD_DEFINED__
  233. #define __IDBInitialize_FWD_DEFINED__
  234. typedef interface IDBInitialize IDBInitialize;
  235. #endif     /* __IDBInitialize_FWD_DEFINED__ */
  236.  
  237.  
  238. #ifndef __IDBInfo_FWD_DEFINED__
  239. #define __IDBInfo_FWD_DEFINED__
  240. typedef interface IDBInfo IDBInfo;
  241. #endif     /* __IDBInfo_FWD_DEFINED__ */
  242.  
  243.  
  244. #ifndef __IDBDataSourceAdmin_FWD_DEFINED__
  245. #define __IDBDataSourceAdmin_FWD_DEFINED__
  246. typedef interface IDBDataSourceAdmin IDBDataSourceAdmin;
  247. #endif     /* __IDBDataSourceAdmin_FWD_DEFINED__ */
  248.  
  249.  
  250. #ifndef __IDBAsynchNotify_FWD_DEFINED__
  251. #define __IDBAsynchNotify_FWD_DEFINED__
  252. typedef interface IDBAsynchNotify IDBAsynchNotify;
  253. #endif     /* __IDBAsynchNotify_FWD_DEFINED__ */
  254.  
  255.  
  256. #ifndef __IDBAsynchStatus_FWD_DEFINED__
  257. #define __IDBAsynchStatus_FWD_DEFINED__
  258. typedef interface IDBAsynchStatus IDBAsynchStatus;
  259. #endif     /* __IDBAsynchStatus_FWD_DEFINED__ */
  260.  
  261.  
  262. #ifndef __ISessionProperties_FWD_DEFINED__
  263. #define __ISessionProperties_FWD_DEFINED__
  264. typedef interface ISessionProperties ISessionProperties;
  265. #endif     /* __ISessionProperties_FWD_DEFINED__ */
  266.  
  267.  
  268. #ifndef __IIndexDefinition_FWD_DEFINED__
  269. #define __IIndexDefinition_FWD_DEFINED__
  270. typedef interface IIndexDefinition IIndexDefinition;
  271. #endif     /* __IIndexDefinition_FWD_DEFINED__ */
  272.  
  273.  
  274. #ifndef __ITableDefinition_FWD_DEFINED__
  275. #define __ITableDefinition_FWD_DEFINED__
  276. typedef interface ITableDefinition ITableDefinition;
  277. #endif     /* __ITableDefinition_FWD_DEFINED__ */
  278.  
  279.  
  280. #ifndef __IOpenRowset_FWD_DEFINED__
  281. #define __IOpenRowset_FWD_DEFINED__
  282. typedef interface IOpenRowset IOpenRowset;
  283. #endif     /* __IOpenRowset_FWD_DEFINED__ */
  284.  
  285.  
  286. #ifndef __IDBSchemaRowset_FWD_DEFINED__
  287. #define __IDBSchemaRowset_FWD_DEFINED__
  288. typedef interface IDBSchemaRowset IDBSchemaRowset;
  289. #endif     /* __IDBSchemaRowset_FWD_DEFINED__ */
  290.  
  291.  
  292. #ifndef __IMDDataset_FWD_DEFINED__
  293. #define __IMDDataset_FWD_DEFINED__
  294. typedef interface IMDDataset IMDDataset;
  295. #endif     /* __IMDDataset_FWD_DEFINED__ */
  296.  
  297.  
  298. #ifndef __IMDFind_FWD_DEFINED__
  299. #define __IMDFind_FWD_DEFINED__
  300. typedef interface IMDFind IMDFind;
  301. #endif     /* __IMDFind_FWD_DEFINED__ */
  302.  
  303.  
  304. #ifndef __IMDRangeRowset_FWD_DEFINED__
  305. #define __IMDRangeRowset_FWD_DEFINED__
  306. typedef interface IMDRangeRowset IMDRangeRowset;
  307. #endif     /* __IMDRangeRowset_FWD_DEFINED__ */
  308.  
  309.  
  310. #ifndef __IAlterTable_FWD_DEFINED__
  311. #define __IAlterTable_FWD_DEFINED__
  312. typedef interface IAlterTable IAlterTable;
  313. #endif     /* __IAlterTable_FWD_DEFINED__ */
  314.  
  315.  
  316. #ifndef __IAlterIndex_FWD_DEFINED__
  317. #define __IAlterIndex_FWD_DEFINED__
  318. typedef interface IAlterIndex IAlterIndex;
  319. #endif     /* __IAlterIndex_FWD_DEFINED__ */
  320.  
  321.  
  322. #ifndef __IRowsetChapterMember_FWD_DEFINED__
  323. #define __IRowsetChapterMember_FWD_DEFINED__
  324. typedef interface IRowsetChapterMember IRowsetChapterMember;
  325. #endif     /* __IRowsetChapterMember_FWD_DEFINED__ */
  326.  
  327.  
  328. #ifndef __ICommandPersist_FWD_DEFINED__
  329. #define __ICommandPersist_FWD_DEFINED__
  330. typedef interface ICommandPersist ICommandPersist;
  331. #endif     /* __ICommandPersist_FWD_DEFINED__ */
  332.  
  333.  
  334. #ifndef __IRowsetRefresh_FWD_DEFINED__
  335. #define __IRowsetRefresh_FWD_DEFINED__
  336. typedef interface IRowsetRefresh IRowsetRefresh;
  337. #endif     /* __IRowsetRefresh_FWD_DEFINED__ */
  338.  
  339.  
  340. #ifndef __IParentRowset_FWD_DEFINED__
  341. #define __IParentRowset_FWD_DEFINED__
  342. typedef interface IParentRowset IParentRowset;
  343. #endif     /* __IParentRowset_FWD_DEFINED__ */
  344.  
  345.  
  346. #ifndef __IErrorRecords_FWD_DEFINED__
  347. #define __IErrorRecords_FWD_DEFINED__
  348. typedef interface IErrorRecords IErrorRecords;
  349. #endif     /* __IErrorRecords_FWD_DEFINED__ */
  350.  
  351.  
  352. #ifndef __IErrorLookup_FWD_DEFINED__
  353. #define __IErrorLookup_FWD_DEFINED__
  354. typedef interface IErrorLookup IErrorLookup;
  355. #endif     /* __IErrorLookup_FWD_DEFINED__ */
  356.  
  357.  
  358. #ifndef __ISQLErrorInfo_FWD_DEFINED__
  359. #define __ISQLErrorInfo_FWD_DEFINED__
  360. typedef interface ISQLErrorInfo ISQLErrorInfo;
  361. #endif     /* __ISQLErrorInfo_FWD_DEFINED__ */
  362.  
  363.  
  364. #ifndef __IGetDataSource_FWD_DEFINED__
  365. #define __IGetDataSource_FWD_DEFINED__
  366. typedef interface IGetDataSource IGetDataSource;
  367. #endif     /* __IGetDataSource_FWD_DEFINED__ */
  368.  
  369.  
  370. #ifndef __ITransactionLocal_FWD_DEFINED__
  371. #define __ITransactionLocal_FWD_DEFINED__
  372. typedef interface ITransactionLocal ITransactionLocal;
  373. #endif     /* __ITransactionLocal_FWD_DEFINED__ */
  374.  
  375.  
  376. #ifndef __ITransactionJoin_FWD_DEFINED__
  377. #define __ITransactionJoin_FWD_DEFINED__
  378. typedef interface ITransactionJoin ITransactionJoin;
  379. #endif     /* __ITransactionJoin_FWD_DEFINED__ */
  380.  
  381.  
  382. #ifndef __ITransactionObject_FWD_DEFINED__
  383. #define __ITransactionObject_FWD_DEFINED__
  384. typedef interface ITransactionObject ITransactionObject;
  385. #endif     /* __ITransactionObject_FWD_DEFINED__ */
  386.  
  387.  
  388. #ifndef __ITrusteeAdmin_FWD_DEFINED__
  389. #define __ITrusteeAdmin_FWD_DEFINED__
  390. typedef interface ITrusteeAdmin ITrusteeAdmin;
  391. #endif     /* __ITrusteeAdmin_FWD_DEFINED__ */
  392.  
  393.  
  394. #ifndef __ITrusteeGroupAdmin_FWD_DEFINED__
  395. #define __ITrusteeGroupAdmin_FWD_DEFINED__
  396. typedef interface ITrusteeGroupAdmin ITrusteeGroupAdmin;
  397. #endif     /* __ITrusteeGroupAdmin_FWD_DEFINED__ */
  398.  
  399.  
  400. #ifndef __IObjectAccessControl_FWD_DEFINED__
  401. #define __IObjectAccessControl_FWD_DEFINED__
  402. typedef interface IObjectAccessControl IObjectAccessControl;
  403. #endif     /* __IObjectAccessControl_FWD_DEFINED__ */
  404.  
  405.  
  406. #ifndef __ISecurityInfo_FWD_DEFINED__
  407. #define __ISecurityInfo_FWD_DEFINED__
  408. typedef interface ISecurityInfo ISecurityInfo;
  409. #endif     /* __ISecurityInfo_FWD_DEFINED__ */
  410.  
  411.  
  412. #ifndef __ITableCreation_FWD_DEFINED__
  413. #define __ITableCreation_FWD_DEFINED__
  414. typedef interface ITableCreation ITableCreation;
  415. #endif     /* __ITableCreation_FWD_DEFINED__ */
  416.  
  417.  
  418. #ifndef __ITableDefinitionWithConstraints_FWD_DEFINED__
  419. #define __ITableDefinitionWithConstraints_FWD_DEFINED__
  420. typedef interface ITableDefinitionWithConstraints ITableDefinitionWithConstraints;
  421. #endif     /* __ITableDefinitionWithConstraints_FWD_DEFINED__ */
  422.  
  423.  
  424. #ifndef __IRow_FWD_DEFINED__
  425. #define __IRow_FWD_DEFINED__
  426. typedef interface IRow IRow;
  427. #endif     /* __IRow_FWD_DEFINED__ */
  428.  
  429.  
  430. #ifndef __IRowChange_FWD_DEFINED__
  431. #define __IRowChange_FWD_DEFINED__
  432. typedef interface IRowChange IRowChange;
  433. #endif     /* __IRowChange_FWD_DEFINED__ */
  434.  
  435.  
  436. #ifndef __IRowSchemaChange_FWD_DEFINED__
  437. #define __IRowSchemaChange_FWD_DEFINED__
  438. typedef interface IRowSchemaChange IRowSchemaChange;
  439. #endif     /* __IRowSchemaChange_FWD_DEFINED__ */
  440.  
  441.  
  442. #ifndef __IGetRow_FWD_DEFINED__
  443. #define __IGetRow_FWD_DEFINED__
  444. typedef interface IGetRow IGetRow;
  445. #endif     /* __IGetRow_FWD_DEFINED__ */
  446.  
  447.  
  448. #ifndef __IBindResource_FWD_DEFINED__
  449. #define __IBindResource_FWD_DEFINED__
  450. typedef interface IBindResource IBindResource;
  451. #endif     /* __IBindResource_FWD_DEFINED__ */
  452.  
  453.  
  454. #ifndef __IScopedOperations_FWD_DEFINED__
  455. #define __IScopedOperations_FWD_DEFINED__
  456. typedef interface IScopedOperations IScopedOperations;
  457. #endif     /* __IScopedOperations_FWD_DEFINED__ */
  458.  
  459.  
  460. #ifndef __ICreateRow_FWD_DEFINED__
  461. #define __ICreateRow_FWD_DEFINED__
  462. typedef interface ICreateRow ICreateRow;
  463. #endif     /* __ICreateRow_FWD_DEFINED__ */
  464.  
  465.  
  466. #ifndef __IDBBinderProperties_FWD_DEFINED__
  467. #define __IDBBinderProperties_FWD_DEFINED__
  468. typedef interface IDBBinderProperties IDBBinderProperties;
  469. #endif     /* __IDBBinderProperties_FWD_DEFINED__ */
  470.  
  471.  
  472. #ifndef __IColumnsInfo2_FWD_DEFINED__
  473. #define __IColumnsInfo2_FWD_DEFINED__
  474. typedef interface IColumnsInfo2 IColumnsInfo2;
  475. #endif     /* __IColumnsInfo2_FWD_DEFINED__ */
  476.  
  477.  
  478. #ifndef __IRegisterProvider_FWD_DEFINED__
  479. #define __IRegisterProvider_FWD_DEFINED__
  480. typedef interface IRegisterProvider IRegisterProvider;
  481. #endif     /* __IRegisterProvider_FWD_DEFINED__ */
  482.  
  483.  
  484. #ifndef __IGetSession_FWD_DEFINED__
  485. #define __IGetSession_FWD_DEFINED__
  486. typedef interface IGetSession IGetSession;
  487. #endif     /* __IGetSession_FWD_DEFINED__ */
  488.  
  489.  
  490. #ifndef __IGetSourceRow_FWD_DEFINED__
  491. #define __IGetSourceRow_FWD_DEFINED__
  492. typedef interface IGetSourceRow IGetSourceRow;
  493. #endif     /* __IGetSourceRow_FWD_DEFINED__ */
  494.  
  495.  
  496. #ifndef __IRowsetCurrentIndex_FWD_DEFINED__
  497. #define __IRowsetCurrentIndex_FWD_DEFINED__
  498. typedef interface IRowsetCurrentIndex IRowsetCurrentIndex;
  499. #endif     /* __IRowsetCurrentIndex_FWD_DEFINED__ */
  500.  
  501.  
  502. /* header files for imported files */
  503. #include "wtypes.h"
  504. #include "oaidl.h"
  505. #include "ocidl.h"
  506. #include "urlmon.h"
  507. #include "transact.h"
  508.  
  509. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  510. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  511.  
  512. /****************************************
  513.  * Generated header for interface: __MIDL_itf_oledb_0000
  514.  * at Thu Nov 12 23:35:28 1998
  515.  * using MIDL 3.01.75
  516.  ****************************************/
  517. /* [local] */ 
  518.  
  519.  
  520. //+---------------------------------------------------------------------------
  521. //
  522. //  Microsoft OLE DB
  523. //  Copyright (C) Microsoft Corporation, 1994 - 1998.
  524. //
  525. //----------------------------------------------------------------------------
  526.  
  527. #include <pshpack2.h>    // 2-byte structure packing
  528.  
  529. //
  530. // OLEDBVER
  531. //    OLE DB version number is 2.1 (0x0210); to force a particular version,
  532. //    #define OLEDBVER as required before including this file.
  533. //
  534.  
  535. // If OLEDBVER is not defined, assume version 2.1
  536. #ifndef OLEDBVER
  537. #define OLEDBVER 0x0210
  538. #endif
  539.  
  540.  
  541. extern RPC_IF_HANDLE __MIDL_itf_oledb_0000_v0_0_c_ifspec;
  542. extern RPC_IF_HANDLE __MIDL_itf_oledb_0000_v0_0_s_ifspec;
  543.  
  544. #ifndef __DBStructureDefinitions_INTERFACE_DEFINED__
  545. #define __DBStructureDefinitions_INTERFACE_DEFINED__
  546.  
  547. /****************************************
  548.  * Generated header for interface: DBStructureDefinitions
  549.  * at Thu Nov 12 23:35:28 1998
  550.  * using MIDL 3.01.75
  551.  ****************************************/
  552. /* [auto_handle][unique][uuid] */ 
  553.  
  554.  
  555. #ifndef UNALIGNED
  556. #if defined(_MIPS_) || defined(_ALPHA_) || defined(_PPC_)
  557. #define UNALIGNED __unaligned
  558. #else
  559. #define UNALIGNED
  560. #endif
  561. #endif //UNALIGNED
  562. #undef OLEDBDECLSPEC
  563. #if _MSC_VER >= 1100
  564. #define OLEDBDECLSPEC __declspec(selectany)
  565. #else
  566. #define OLEDBDECLSPEC 
  567. #endif //_MSC_VER
  568. typedef DWORD DBKIND;
  569.  
  570.  
  571. enum DBKINDENUM
  572.     {    DBKIND_GUID_NAME    = 0,
  573.     DBKIND_GUID_PROPID    = DBKIND_GUID_NAME + 1,
  574.     DBKIND_NAME    = DBKIND_GUID_PROPID + 1,
  575.     DBKIND_PGUID_NAME    = DBKIND_NAME + 1,
  576.     DBKIND_PGUID_PROPID    = DBKIND_PGUID_NAME + 1,
  577.     DBKIND_PROPID    = DBKIND_PGUID_PROPID + 1,
  578.     DBKIND_GUID    = DBKIND_PROPID + 1
  579.     };
  580. typedef struct  tagDBID
  581.     {
  582.     /* [switch_is][switch_type] */ union 
  583.         {
  584.         /* [case()] */ GUID guid;
  585.         /* [case()] */ GUID __RPC_FAR *pguid;
  586.         /* [default] */  /* Empty union arm */ 
  587.         }    uGuid;
  588.     DBKIND eKind;
  589.     /* [switch_is][switch_type] */ union 
  590.         {
  591.         /* [case()] */ LPOLESTR pwszName;
  592.         /* [case()] */ ULONG ulPropid;
  593.         /* [default] */  /* Empty union arm */ 
  594.         }    uName;
  595.     }    DBID;
  596.  
  597. typedef struct  tagDB_NUMERIC
  598.     {
  599.     BYTE precision;
  600.     BYTE scale;
  601.     BYTE sign;
  602.     BYTE val[ 16 ];
  603.     }    DB_NUMERIC;
  604.  
  605. #ifndef _ULONGLONG_
  606. typedef hyper LONGLONG;
  607.  
  608. typedef MIDL_uhyper ULONGLONG;
  609.  
  610. typedef LONGLONG __RPC_FAR *PLONGLONG;
  611.  
  612. typedef ULONGLONG __RPC_FAR *PULONGLONG;
  613.  
  614. #endif // _ULONGLONG_
  615. #ifndef DECIMAL_NEG
  616. #ifndef DECIMAL_SETZERO
  617. typedef struct tagDEC {
  618.     USHORT wReserved;
  619.     union {
  620.         struct {
  621.             BYTE scale;
  622.             BYTE sign;
  623.         };
  624.         USHORT signscale;
  625.     };
  626.     ULONG Hi32;
  627.     union {
  628.         struct {
  629. #ifdef _MAC
  630.             ULONG Mid32;
  631.             ULONG Lo32;
  632. #else
  633.             ULONG Lo32;
  634.             ULONG Mid32;
  635. #endif
  636.         };
  637.         ULONGLONG Lo64;
  638.     };
  639. } DECIMAL;
  640. #define DECIMAL_NEG ((BYTE)0x80)
  641. #define DECIMAL_SETZERO(dec) {(dec).Lo64 = 0; (dec).Hi32 = 0; (dec).signscale = 0;}
  642. #endif // DECIMAL_SETZERO
  643. #endif // DECIMAL_NEG
  644. typedef struct  tagDBVECTOR
  645.     {
  646.     ULONG size;
  647.     /* [size_is] */ void __RPC_FAR *ptr;
  648.     }    DBVECTOR;
  649.  
  650. typedef struct  tagDBDATE
  651.     {
  652.     SHORT year;
  653.     USHORT month;
  654.     USHORT day;
  655.     }    DBDATE;
  656.  
  657. typedef struct  tagDBTIME
  658.     {
  659.     USHORT hour;
  660.     USHORT minute;
  661.     USHORT second;
  662.     }    DBTIME;
  663.  
  664. typedef struct  tagDBTIMESTAMP
  665.     {
  666.     SHORT year;
  667.     USHORT month;
  668.     USHORT day;
  669.     USHORT hour;
  670.     USHORT minute;
  671.     USHORT second;
  672.     ULONG fraction;
  673.     }    DBTIMESTAMP;
  674.  
  675. //@@@+ V2.0
  676. #if( OLEDBVER >= 0x0200 )
  677. #if !defined(_WINBASE_) && !defined(_FILETIME_)
  678. #define _FILETIME_
  679. typedef struct _FILETIME {
  680.         DWORD dwLowDateTime;
  681.         DWORD dwHighDateTime;
  682.      }    FILETIME;
  683. #endif // !_FILETIME
  684. typedef signed char SBYTE;
  685.  
  686. typedef struct  tagDB_VARNUMERIC
  687.     {
  688.     BYTE precision;
  689.     SBYTE scale;
  690.     BYTE sign;
  691.     BYTE val[ 1 ];
  692.     }    DB_VARNUMERIC;
  693.  
  694. #endif // OLEDBVER >= 0x0200
  695. //@@@- V2.0
  696. //@@@+ V2.1
  697. #if( OLEDBVER >= 0x0210 )
  698. typedef struct  _SEC_OBJECT_ELEMENT
  699.     {
  700.     GUID guidObjectType;
  701.     DBID ObjectID;
  702.     }    SEC_OBJECT_ELEMENT;
  703.  
  704. typedef struct  _SEC_OBJECT
  705.     {
  706.     DWORD cObjects;
  707.     /* [size_is] */ SEC_OBJECT_ELEMENT __RPC_FAR *prgObjects;
  708.     }    SEC_OBJECT;
  709.  
  710. typedef struct  tagDBIMPLICITSESSION
  711.     {
  712.     IUnknown __RPC_FAR *pUnkOuter;
  713.     IID __RPC_FAR *piid;
  714.     IUnknown __RPC_FAR *pSession;
  715.     }    DBIMPLICITSESSION;
  716.  
  717. #endif // OLEDBVER >= 0x0210
  718. //@@@- V2.1
  719. typedef WORD DBTYPE;
  720.  
  721.  
  722. enum DBTYPEENUM
  723.     {    DBTYPE_EMPTY    = 0,
  724.     DBTYPE_NULL    = 1,
  725.     DBTYPE_I2    = 2,
  726.     DBTYPE_I4    = 3,
  727.     DBTYPE_R4    = 4,
  728.     DBTYPE_R8    = 5,
  729.     DBTYPE_CY    = 6,
  730.     DBTYPE_DATE    = 7,
  731.     DBTYPE_BSTR    = 8,
  732.     DBTYPE_IDISPATCH    = 9,
  733.     DBTYPE_ERROR    = 10,
  734.     DBTYPE_BOOL    = 11,
  735.     DBTYPE_VARIANT    = 12,
  736.     DBTYPE_IUNKNOWN    = 13,
  737.     DBTYPE_DECIMAL    = 14,
  738.     DBTYPE_UI1    = 17,
  739.     DBTYPE_ARRAY    = 0x2000,
  740.     DBTYPE_BYREF    = 0x4000,
  741.     DBTYPE_I1    = 16,
  742.     DBTYPE_UI2    = 18,
  743.     DBTYPE_UI4    = 19,
  744.     DBTYPE_I8    = 20,
  745.     DBTYPE_UI8    = 21,
  746.     DBTYPE_GUID    = 72,
  747.     DBTYPE_VECTOR    = 0x1000,
  748.     DBTYPE_RESERVED    = 0x8000,
  749.     DBTYPE_BYTES    = 128,
  750.     DBTYPE_STR    = 129,
  751.     DBTYPE_WSTR    = 130,
  752.     DBTYPE_NUMERIC    = 131,
  753.     DBTYPE_UDT    = 132,
  754.     DBTYPE_DBDATE    = 133,
  755.     DBTYPE_DBTIME    = 134,
  756.     DBTYPE_DBTIMESTAMP    = 135
  757.     };
  758. //@@@+ V1.5
  759. #if( OLEDBVER >= 0x0150 )
  760.  
  761. enum DBTYPEENUM15
  762.     {    DBTYPE_HCHAPTER    = 136
  763.     };
  764. #endif // OLEDBVER >= 0x0150
  765. //@@@- V1.5
  766. //@@@+ V2.0
  767. #if( OLEDBVER >= 0x0200 )
  768.  
  769. enum DBTYPEENUM20
  770.     {    DBTYPE_FILETIME    = 64,
  771.     DBTYPE_PROPVARIANT    = 138,
  772.     DBTYPE_VARNUMERIC    = 139
  773.     };
  774. #endif // OLEDBVER >= 0x0200
  775. //@@@- V2.0
  776. typedef DWORD DBPART;
  777.  
  778.  
  779. enum DBPARTENUM
  780.     {    DBPART_INVALID    = 0,
  781.     DBPART_VALUE    = 0x1,
  782.     DBPART_LENGTH    = 0x2,
  783.     DBPART_STATUS    = 0x4
  784.     };
  785. typedef DWORD DBPARAMIO;
  786.  
  787.  
  788. enum DBPARAMIOENUM
  789.     {    DBPARAMIO_NOTPARAM    = 0,
  790.     DBPARAMIO_INPUT    = 0x1,
  791.     DBPARAMIO_OUTPUT    = 0x2
  792.     };
  793. //@@@+ V1.5
  794. #if( OLEDBVER >= 0x0150 )
  795. typedef DWORD DBBINDFLAG;
  796.  
  797.  
  798. enum DBBINDFLAGENUM
  799.     {    DBBINDFLAG_HTML    = 0x1
  800.     };
  801. #endif // OLEDBVER >= 0x0150
  802. //@@@- V1.5
  803. typedef DWORD DBMEMOWNER;
  804.  
  805.  
  806. enum DBMEMOWNERENUM
  807.     {    DBMEMOWNER_CLIENTOWNED    = 0,
  808.     DBMEMOWNER_PROVIDEROWNED    = 0x1
  809.     };
  810. typedef struct  tagDBOBJECT
  811.     {
  812.     DWORD dwFlags;
  813.     IID iid;
  814.     }    DBOBJECT;
  815.  
  816. typedef DWORD DBSTATUS;
  817.  
  818.  
  819. enum DBSTATUSENUM
  820.     {    DBSTATUS_S_OK    = 0,
  821.     DBSTATUS_E_BADACCESSOR    = 1,
  822.     DBSTATUS_E_CANTCONVERTVALUE    = 2,
  823.     DBSTATUS_S_ISNULL    = 3,
  824.     DBSTATUS_S_TRUNCATED    = 4,
  825.     DBSTATUS_E_SIGNMISMATCH    = 5,
  826.     DBSTATUS_E_DATAOVERFLOW    = 6,
  827.     DBSTATUS_E_CANTCREATE    = 7,
  828.     DBSTATUS_E_UNAVAILABLE    = 8,
  829.     DBSTATUS_E_PERMISSIONDENIED    = 9,
  830.     DBSTATUS_E_INTEGRITYVIOLATION    = 10,
  831.     DBSTATUS_E_SCHEMAVIOLATION    = 11,
  832.     DBSTATUS_E_BADSTATUS    = 12,
  833.     DBSTATUS_S_DEFAULT    = 13
  834.     };
  835. //@@@+ V2.0
  836. #if( OLEDBVER >= 0x0200 )
  837.  
  838. enum DBSTATUSENUM20
  839.     {    MDSTATUS_S_CELLEMPTY    = 14,
  840.     DBSTATUS_S_IGNORE    = 15
  841.     };
  842. #endif // OLEDBVER >= 0x0200
  843. //@@@- V2.0
  844. //@@@+ V2.1
  845. #if( OLEDBVER >= 0x0210 )
  846.  
  847. enum DBSTATUSENUM21
  848.     {    DBSTATUS_E_DOESNOTEXIST    = 16,
  849.     DBSTATUS_E_INVALIDURL    = 17,
  850.     DBSTATUS_E_RESOURCELOCKED    = 18,
  851.     DBSTATUS_E_RESOURCEEXISTS    = 19,
  852.     DBSTATUS_E_CANNOTCOMPLETE    = 20,
  853.     DBSTATUS_E_VOLUMENOTFOUND    = 21,
  854.     DBSTATUS_E_OUTOFSPACE    = 22,
  855.     DBSTATUS_S_CANNOTDELETESOURCE    = 23,
  856.     DBSTATUS_E_READONLY    = 24,
  857.     DBSTATUS_E_RESOURCEOUTOFSCOPE    = 25,
  858.     DBSTATUS_S_ALREADYEXISTS    = 26
  859.     };
  860. typedef DWORD DBBINDURLFLAG;
  861.  
  862.  
  863. enum DBBINDURLFLAGENUM
  864.     {    DBBINDURLFLAG_READ    = 0x1L,
  865.     DBBINDURLFLAG_WRITE    = 0x2L,
  866.     DBBINDURLFLAG_READWRITE    = 0x3L,
  867.     DBBINDURLFLAG_SHARE_DENY_READ    = 0x4L,
  868.     DBBINDURLFLAG_SHARE_DENY_WRITE    = 0x8L,
  869.     DBBINDURLFLAG_SHARE_EXCLUSIVE    = 0xcL,
  870.     DBBINDURLFLAG_SHARE_DENY_NONE    = 0x10L,
  871.     DBBINDURLFLAG_ASYNCHRONOUS    = 0x1000L,
  872.     DBBINDURLFLAG_COLLECTION    = 0x2000L,
  873.     DBBINDURLFLAG_DELAYFETCHSTREAM    = 0x4000L,
  874.     DBBINDURLFLAG_DELAYFETCHCOLUMNS    = 0x8000L,
  875.     DBBINDURLFLAG_RECURSIVE    = 0x400000L,
  876.     DBBINDURLFLAG_OUTPUT    = 0x800000L,
  877.     DBBINDURLFLAG_WAITFORINIT    = 0x1000000L,
  878.     DBBINDURLFLAG_OPENIFEXISTS    = 0x2000000L,
  879.     DBBINDURLFLAG_OVERWRITE    = 0x4000000L,
  880.     DBBINDURLFLAG_ISSTRUCTUREDDOCUMENT    = 0x8000000L
  881.     };
  882. typedef DWORD DBBINDURLSTATUS;
  883.  
  884.  
  885. enum DBBINDURLSTATUSENUM
  886.     {    DBBINDURLSTATUS_S_DENYNOTSUPPORTED    = 0x1L,
  887.     DBBINDURLSTATUS_S_DENYTYPENOTSUPPORTED    = 0x4L,
  888.     DBBINDURLSTATUS_S_REDIRECTED    = 0x8L
  889.     };
  890. #endif // OLEDBVER >= 0x0210
  891. //@@@- V2.1
  892. typedef struct  tagDBBINDEXT
  893.     {
  894.     /* [size_is] */ BYTE __RPC_FAR *pExtension;
  895.     ULONG ulExtension;
  896.     }    DBBINDEXT;
  897.  
  898. typedef struct  tagDBBINDING
  899.     {
  900.     ULONG iOrdinal;
  901.     ULONG obValue;
  902.     ULONG obLength;
  903.     ULONG obStatus;
  904.     ITypeInfo __RPC_FAR *pTypeInfo;
  905.     DBOBJECT __RPC_FAR *pObject;
  906.     DBBINDEXT __RPC_FAR *pBindExt;
  907.     DBPART dwPart;
  908.     DBMEMOWNER dwMemOwner;
  909.     DBPARAMIO eParamIO;
  910.     ULONG cbMaxLen;
  911.     DWORD dwFlags;
  912.     DBTYPE wType;
  913.     BYTE bPrecision;
  914.     BYTE bScale;
  915.     }    DBBINDING;
  916.  
  917. typedef DWORD DBROWSTATUS;
  918.  
  919.  
  920. enum DBROWSTATUSENUM
  921.     {    DBROWSTATUS_S_OK    = 0,
  922.     DBROWSTATUS_S_MULTIPLECHANGES    = 2,
  923.     DBROWSTATUS_S_PENDINGCHANGES    = 3,
  924.     DBROWSTATUS_E_CANCELED    = 4,
  925.     DBROWSTATUS_E_CANTRELEASE    = 6,
  926.     DBROWSTATUS_E_CONCURRENCYVIOLATION    = 7,
  927.     DBROWSTATUS_E_DELETED    = 8,
  928.     DBROWSTATUS_E_PENDINGINSERT    = 9,
  929.     DBROWSTATUS_E_NEWLYINSERTED    = 10,
  930.     DBROWSTATUS_E_INTEGRITYVIOLATION    = 11,
  931.     DBROWSTATUS_E_INVALID    = 12,
  932.     DBROWSTATUS_E_MAXPENDCHANGESEXCEEDED    = 13,
  933.     DBROWSTATUS_E_OBJECTOPEN    = 14,
  934.     DBROWSTATUS_E_OUTOFMEMORY    = 15,
  935.     DBROWSTATUS_E_PERMISSIONDENIED    = 16,
  936.     DBROWSTATUS_E_LIMITREACHED    = 17,
  937.     DBROWSTATUS_E_SCHEMAVIOLATION    = 18,
  938.     DBROWSTATUS_E_FAIL    = 19
  939.     };
  940. //@@@+ V2.0
  941. #if( OLEDBVER >= 0x0200 )
  942.  
  943. enum DBROWSTATUSENUM20
  944.     {    DBROWSTATUS_S_NOCHANGE    = 20
  945.     };
  946. #endif // OLEDBVER >= 0x0200
  947. //@@@- V2.0
  948. typedef ULONG HACCESSOR;
  949.  
  950. #define DB_NULL_HACCESSOR 0x00 // deprecated; use DB_INVALID_HACCESSOR instead
  951. #define DB_INVALID_HACCESSOR 0x00
  952. typedef ULONG HROW;
  953.  
  954. #define DB_NULL_HROW 0x00
  955. typedef ULONG HWATCHREGION;
  956.  
  957. #define DBWATCHREGION_NULL NULL
  958. typedef ULONG HCHAPTER;
  959.  
  960. #define DB_NULL_HCHAPTER 0x00
  961. #define DB_INVALID_HCHAPTER 0x00    // deprecated; use DB_NULL_HCHAPTER instead
  962. typedef struct  tagDBFAILUREINFO
  963.     {
  964.     HROW hRow;
  965.     ULONG iColumn;
  966.     HRESULT failure;
  967.     }    DBFAILUREINFO;
  968.  
  969. typedef DWORD DBCOLUMNFLAGS;
  970.  
  971.  
  972. enum DBCOLUMNFLAGSENUM
  973.     {    DBCOLUMNFLAGS_ISBOOKMARK    = 0x1,
  974.     DBCOLUMNFLAGS_MAYDEFER    = 0x2,
  975.     DBCOLUMNFLAGS_WRITE    = 0x4,
  976.     DBCOLUMNFLAGS_WRITEUNKNOWN    = 0x8,
  977.     DBCOLUMNFLAGS_ISFIXEDLENGTH    = 0x10,
  978.     DBCOLUMNFLAGS_ISNULLABLE    = 0x20,
  979.     DBCOLUMNFLAGS_MAYBENULL    = 0x40,
  980.     DBCOLUMNFLAGS_ISLONG    = 0x80,
  981.     DBCOLUMNFLAGS_ISROWID    = 0x100,
  982.     DBCOLUMNFLAGS_ISROWVER    = 0x200,
  983.     DBCOLUMNFLAGS_CACHEDEFERRED    = 0x1000
  984.     };
  985. //@@@+ V2.0
  986. #if( OLEDBVER >= 0x0200 )
  987.  
  988. enum DBCOLUMNFLAGSENUM20
  989.     {    DBCOLUMNFLAGS_SCALEISNEGATIVE    = 0x4000,
  990.     DBCOLUMNFLAGS_KEYCOLUMN    = 0x8000
  991.     };
  992. #endif // OLEDBVER >= 0x0200
  993. //@@@- V2.0
  994. //@@@+ V1.5
  995. #if( OLEDBVER >= 0x0150 )
  996.  
  997. enum DBCOLUMNFLAGS15ENUM
  998.     {    DBCOLUMNFLAGS_ISCHAPTER    = 0x2000
  999.     };
  1000. #endif // OLEDBVER >= 0x0150
  1001. //@@@- V1.5
  1002. //@@@+ V2.1
  1003. #if( OLEDBVER >= 0x0210 )
  1004.  
  1005. enum DBCOLUMNFLAGSENUM21
  1006.     {    DBCOLUMNFLAGS_ISROWURL    = 0x10000,
  1007.     DBCOLUMNFLAGS_ISDEFAULTSTREAM    = 0x20000,
  1008.     DBCOLUMNFLAGS_ISCOLLECTION    = 0x40000
  1009.     };
  1010. #endif // OLEDBVER >= 0x0210
  1011. //@@@- V2.1
  1012. typedef struct  tagDBCOLUMNINFO
  1013.     {
  1014.     LPOLESTR pwszName;
  1015.     ITypeInfo __RPC_FAR *pTypeInfo;
  1016.     ULONG iOrdinal;
  1017.     DBCOLUMNFLAGS dwFlags;
  1018.     ULONG ulColumnSize;
  1019.     DBTYPE wType;
  1020.     BYTE bPrecision;
  1021.     BYTE bScale;
  1022.     DBID columnid;
  1023.     }    DBCOLUMNINFO;
  1024.  
  1025. typedef 
  1026. enum tagDBBOOKMARK
  1027.     {    DBBMK_INVALID    = 0,
  1028.     DBBMK_FIRST    = DBBMK_INVALID + 1,
  1029.     DBBMK_LAST    = DBBMK_FIRST + 1
  1030.     }    DBBOOKMARK;
  1031.  
  1032. #define STD_BOOKMARKLENGTH 1
  1033. #ifdef __cplusplus
  1034. inline BOOL IsEqualGUIDBase(const GUID &rguid1, const GUID &rguid2)
  1035. { return !memcmp(&(rguid1.Data2), &(rguid2.Data2), sizeof(GUID) - sizeof(rguid1.Data1)); }
  1036. #else // !__cplusplus
  1037. #define IsEqualGuidBase(rguid1, rguid2) (!memcmp(&((rguid1).Data2), &((rguid2).Data2), sizeof(GUID) - sizeof((rguid1).Data1)))
  1038. #endif // __cplusplus
  1039. #define DB_INVALIDCOLUMN ULONG_MAX
  1040. #define DBCIDGUID   {0x0C733A81L,0x2A1C,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}}
  1041. #define DB_NULLGUID {0x00000000L,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}
  1042. #ifdef DBINITCONSTANTS
  1043. extern const OLEDBDECLSPEC DBID DB_NULLID                      = {DB_NULLGUID, 0, (LPOLESTR)0};
  1044. extern const OLEDBDECLSPEC DBID DBCOLUMN_IDNAME                = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)2};
  1045. extern const OLEDBDECLSPEC DBID DBCOLUMN_NAME                  = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)3};
  1046. extern const OLEDBDECLSPEC DBID DBCOLUMN_NUMBER                = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)4};
  1047. extern const OLEDBDECLSPEC DBID DBCOLUMN_TYPE                  = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)5};
  1048. extern const OLEDBDECLSPEC DBID DBCOLUMN_PRECISION             = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)7};
  1049. extern const OLEDBDECLSPEC DBID DBCOLUMN_SCALE                 = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)8};
  1050. extern const OLEDBDECLSPEC DBID DBCOLUMN_FLAGS                 = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)9};
  1051. extern const OLEDBDECLSPEC DBID DBCOLUMN_BASECOLUMNNAME        = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)10};
  1052. extern const OLEDBDECLSPEC DBID DBCOLUMN_BASETABLENAME         = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)11};
  1053. extern const OLEDBDECLSPEC DBID DBCOLUMN_COLLATINGSEQUENCE     = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)12};
  1054. extern const OLEDBDECLSPEC DBID DBCOLUMN_COMPUTEMODE           = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)13};
  1055. extern const OLEDBDECLSPEC DBID DBCOLUMN_DEFAULTVALUE          = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)14};
  1056. extern const OLEDBDECLSPEC DBID DBCOLUMN_DOMAINNAME            = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)15};
  1057. extern const OLEDBDECLSPEC DBID DBCOLUMN_HASDEFAULT            = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)16};
  1058. extern const OLEDBDECLSPEC DBID DBCOLUMN_ISAUTOINCREMENT       = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)17};
  1059. extern const OLEDBDECLSPEC DBID DBCOLUMN_ISCASESENSITIVE       = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)18};
  1060. extern const OLEDBDECLSPEC DBID DBCOLUMN_ISSEARCHABLE          = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)20};
  1061. extern const OLEDBDECLSPEC DBID DBCOLUMN_ISUNIQUE              = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)21};
  1062. extern const OLEDBDECLSPEC DBID DBCOLUMN_BASECATALOGNAME       = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)23};
  1063. extern const OLEDBDECLSPEC DBID DBCOLUMN_BASESCHEMANAME        = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)24};
  1064. extern const OLEDBDECLSPEC DBID DBCOLUMN_GUID                  = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)29};
  1065. extern const OLEDBDECLSPEC DBID DBCOLUMN_PROPID                = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)30};
  1066. extern const OLEDBDECLSPEC DBID DBCOLUMN_TYPEINFO              = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)31};
  1067. extern const OLEDBDECLSPEC DBID DBCOLUMN_DOMAINCATALOG         = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)32};
  1068. extern const OLEDBDECLSPEC DBID DBCOLUMN_DOMAINSCHEMA          = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)33};
  1069. extern const OLEDBDECLSPEC DBID DBCOLUMN_DATETIMEPRECISION     = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)34};
  1070. extern const OLEDBDECLSPEC DBID DBCOLUMN_NUMERICPRECISIONRADIX = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)35};
  1071. extern const OLEDBDECLSPEC DBID DBCOLUMN_OCTETLENGTH           = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)36};
  1072. extern const OLEDBDECLSPEC DBID DBCOLUMN_COLUMNSIZE            = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)37};
  1073. extern const OLEDBDECLSPEC DBID DBCOLUMN_CLSID                 = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)38};
  1074. //@@@+ V1.5
  1075. #if( OLEDBVER >= 0x0150 )
  1076. extern const OLEDBDECLSPEC DBID DBCOLUMN_MAYSORT               = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)39};
  1077. #endif // OLEDBVER >= 0x0150
  1078. //@@@- V1.5
  1079. #else // !DBINITCONSTANTS
  1080. extern const DBID DB_NULLID;
  1081. extern const DBID DBCOLUMN_IDNAME;
  1082. extern const DBID DBCOLUMN_NAME;
  1083. extern const DBID DBCOLUMN_NUMBER;
  1084. extern const DBID DBCOLUMN_TYPE;
  1085. extern const DBID DBCOLUMN_PRECISION;
  1086. extern const DBID DBCOLUMN_SCALE;
  1087. extern const DBID DBCOLUMN_FLAGS;
  1088. extern const DBID DBCOLUMN_BASECOLUMNNAME;
  1089. extern const DBID DBCOLUMN_BASETABLENAME;
  1090. extern const DBID DBCOLUMN_COLLATINGSEQUENCE;
  1091. extern const DBID DBCOLUMN_COMPUTEMODE;
  1092. extern const DBID DBCOLUMN_DEFAULTVALUE;
  1093. extern const DBID DBCOLUMN_DOMAINNAME;
  1094. extern const DBID DBCOLUMN_HASDEFAULT;
  1095. extern const DBID DBCOLUMN_ISAUTOINCREMENT;
  1096. extern const DBID DBCOLUMN_ISCASESENSITIVE;
  1097. extern const DBID DBCOLUMN_ISSEARCHABLE;
  1098. extern const DBID DBCOLUMN_ISUNIQUE;
  1099. extern const DBID DBCOLUMN_BASECATALOGNAME;
  1100. extern const DBID DBCOLUMN_BASESCHEMANAME;
  1101. extern const DBID DBCOLUMN_GUID;
  1102. extern const DBID DBCOLUMN_PROPID;
  1103. extern const DBID DBCOLUMN_TYPEINFO;
  1104. extern const DBID DBCOLUMN_DOMAINCATALOG;
  1105. extern const DBID DBCOLUMN_DOMAINSCHEMA;
  1106. extern const DBID DBCOLUMN_DATETIMEPRECISION;
  1107. extern const DBID DBCOLUMN_NUMERICPRECISIONRADIX;
  1108. extern const DBID DBCOLUMN_OCTETLENGTH;
  1109. extern const DBID DBCOLUMN_COLUMNSIZE;
  1110. extern const DBID DBCOLUMN_CLSID;
  1111. //@@@+ V1.5
  1112. #if( OLEDBVER >= 0x0150 )
  1113. extern const DBID DBCOLUMN_MAYSORT;
  1114. #endif // OLEDBVER >= 0x0150
  1115. //@@@- V1.5
  1116. #endif // DBINITCONSTANTS
  1117. #ifdef DBINITCONSTANTS
  1118. //@@@+ V2.0
  1119. #if( OLEDBVER >= 0x0200 )
  1120. extern const OLEDBDECLSPEC GUID DBSCHEMA_TABLES_INFO                   = {0xc8b522e0,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1121. extern const OLEDBDECLSPEC GUID MDGUID_MDX                             = {0xa07cccd0,0x8148,0x11d0,{0x87,0xbb,0x00,0xc0,0x4f,0xc3,0x39,0x42}};
  1122. extern const OLEDBDECLSPEC GUID DBGUID_MDX                             = {0xa07cccd0,0x8148,0x11d0,{0x87,0xbb,0x00,0xc0,0x4f,0xc3,0x39,0x42}};
  1123. extern const OLEDBDECLSPEC GUID MDSCHEMA_CUBES                         = {0xc8b522d8,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1124. extern const OLEDBDECLSPEC GUID MDSCHEMA_DIMENSIONS                    = {0xc8b522d9,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1125. extern const OLEDBDECLSPEC GUID MDSCHEMA_HIERARCHIES                   = {0xc8b522da,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1126. extern const OLEDBDECLSPEC GUID MDSCHEMA_LEVELS                        = {0xc8b522db,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1127. extern const OLEDBDECLSPEC GUID MDSCHEMA_MEASURES                      = {0xc8b522dc,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1128. extern const OLEDBDECLSPEC GUID MDSCHEMA_PROPERTIES                    = {0xc8b522dd,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1129. extern const OLEDBDECLSPEC GUID MDSCHEMA_MEMBERS                       = {0xc8b522de,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1130. extern const OLEDBDECLSPEC DBID DBCOLUMN_BASETABLEVERSION                = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)40};
  1131. extern const OLEDBDECLSPEC DBID DBCOLUMN_KEYCOLUMN                        = {DBCIDGUID, DBKIND_GUID_PROPID, (LPOLESTR)41};
  1132. #endif // OLEDBVER >= 0x0200
  1133. //@@@- V2.0
  1134. //@@@+ V2.1
  1135. #if( OLEDBVER >= 0x0210 )
  1136. #define DBGUID_ROWURL   {0x0C733AB6L,0x2A1C,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}}
  1137. #define DBGUID_ROWDEFAULTSTREAM   {0x0C733AB7L,0x2A1C,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}}
  1138. extern const OLEDBDECLSPEC GUID DBPROPSET_TRUSTEE                    = {0xc8b522e1,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1139. extern const OLEDBDECLSPEC GUID DBOBJECT_TABLE                         = {0xc8b522e2,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1140. extern const OLEDBDECLSPEC GUID DBOBJECT_COLUMN                         = {0xc8b522e4,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1141. extern const OLEDBDECLSPEC GUID DBOBJECT_DATABASE                    = {0xc8b522e5,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1142. extern const OLEDBDECLSPEC GUID DBOBJECT_PROCEDURE                     = {0xc8b522e6,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1143. extern const OLEDBDECLSPEC GUID DBOBJECT_VIEW                         = {0xc8b522e7,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1144. extern const OLEDBDECLSPEC GUID DBOBJECT_SCHEMA                        = {0xc8b522e8,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1145. extern const OLEDBDECLSPEC GUID DBOBJECT_DOMAIN                         = {0xc8b522e9,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1146. extern const OLEDBDECLSPEC GUID DBOBJECT_COLLATION                     = {0xc8b522ea,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1147. extern const OLEDBDECLSPEC GUID DBOBJECT_TRUSTEE                         = {0xc8b522eb,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1148. extern const OLEDBDECLSPEC GUID DBOBJECT_SCHEMAROWSET                = {0xc8b522ec,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1149. extern const OLEDBDECLSPEC GUID DBOBJECT_CHARACTERSET                 = {0xc8b522ed,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1150. extern const OLEDBDECLSPEC GUID DBOBJECT_TRANSLATION                 = {0xc8b522ee,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1151. extern const OLEDBDECLSPEC GUID DBSCHEMA_TRUSTEE                     = {0xc8b522ef,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1152. extern const OLEDBDECLSPEC GUID DBPROPSET_COLUMNALL                     = {0xc8b522f0,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1153. extern const OLEDBDECLSPEC GUID DBPROPSET_INDEXALL                     = {0xc8b522f1,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1154. extern const OLEDBDECLSPEC GUID DBPROPSET_TABLEALL                     = {0xc8b522f2,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1155. extern const OLEDBDECLSPEC GUID DBPROPSET_TRUSTEEALL                    = {0xc8b522f3,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1156. extern const OLEDBDECLSPEC GUID DBPROPSET_CONSTRAINTALL                = {0xc8b522fa,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1157. extern const OLEDBDECLSPEC GUID DBGUID_DSO                            = {0xc8b522f4,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1158. extern const OLEDBDECLSPEC GUID DBGUID_SESSION                        = {0xc8b522f5,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1159. extern const OLEDBDECLSPEC GUID DBGUID_ROWSET                        = {0xc8b522f6,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1160. extern const OLEDBDECLSPEC GUID DBGUID_ROW                            = {0xc8b522f7,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1161. extern const OLEDBDECLSPEC GUID DBGUID_COMMAND                        = {0xc8b522f8,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1162. extern const OLEDBDECLSPEC GUID DBGUID_STREAM                        = {0xc8b522f9,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1163. extern const OLEDBDECLSPEC DBID DBROWCOL_ROWURL                 = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)0};
  1164. extern const OLEDBDECLSPEC DBID DBROWCOL_PARSENAME            = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)2};
  1165. extern const OLEDBDECLSPEC DBID DBROWCOL_PARENTNAME           = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)3};
  1166. extern const OLEDBDECLSPEC DBID DBROWCOL_ABSOLUTEPARSENAME    = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)4};
  1167. extern const OLEDBDECLSPEC DBID DBROWCOL_ISHIDDEN             = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)5};
  1168. extern const OLEDBDECLSPEC DBID DBROWCOL_ISREADONLY           = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)6};
  1169. extern const OLEDBDECLSPEC DBID DBROWCOL_CONTENTTYPE          = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)7};
  1170. extern const OLEDBDECLSPEC DBID DBROWCOL_CONTENTCLASS         = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)8};
  1171. extern const OLEDBDECLSPEC DBID DBROWCOL_CONTENTLANGUAGE      = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)9};
  1172. extern const OLEDBDECLSPEC DBID DBROWCOL_CREATIONTIME         = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)10};
  1173. extern const OLEDBDECLSPEC DBID DBROWCOL_LASTACCESSTIME       = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)11};
  1174. extern const OLEDBDECLSPEC DBID DBROWCOL_LASTWRITETIME        = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)12};
  1175. extern const OLEDBDECLSPEC DBID DBROWCOL_STREAMSIZE           = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)13};
  1176. extern const OLEDBDECLSPEC DBID DBROWCOL_ISCOLLECTION         = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)14};
  1177. extern const OLEDBDECLSPEC DBID DBROWCOL_ISSTRUCTUREDDOCUMENT = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)15};
  1178. extern const OLEDBDECLSPEC DBID DBROWCOL_DEFAULTDOCUMENT      = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)16};
  1179. extern const OLEDBDECLSPEC DBID DBROWCOL_DISPLAYNAME          = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)17};
  1180. extern const OLEDBDECLSPEC DBID DBROWCOL_ISROOT               = {DBGUID_ROWURL, DBKIND_GUID_PROPID, (LPOLESTR)18};
  1181. extern const OLEDBDECLSPEC DBID DBROWCOL_DEFAULTSTREAM        = {DBGUID_ROWDEFAULTSTREAM, DBKIND_GUID_PROPID, (LPOLESTR)0};
  1182. extern const OLEDBDECLSPEC GUID DBGUID_CONTAINEROBJECT        = {0xc8b522fb,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1183. #endif // OLEDBVER >= 0x0210
  1184. //@@@- V2.1
  1185. extern const OLEDBDECLSPEC GUID DBSCHEMA_ASSERTIONS                    = {0xc8b52210,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1186. extern const OLEDBDECLSPEC GUID DBSCHEMA_CATALOGS                      = {0xc8b52211,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1187. extern const OLEDBDECLSPEC GUID DBSCHEMA_CHARACTER_SETS                = {0xc8b52212,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1188. extern const OLEDBDECLSPEC GUID DBSCHEMA_COLLATIONS                    = {0xc8b52213,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1189. extern const OLEDBDECLSPEC GUID DBSCHEMA_COLUMNS                       = {0xc8b52214,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1190. extern const OLEDBDECLSPEC GUID DBSCHEMA_CHECK_CONSTRAINTS             = {0xc8b52215,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1191. extern const OLEDBDECLSPEC GUID DBSCHEMA_CONSTRAINT_COLUMN_USAGE       = {0xc8b52216,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1192. extern const OLEDBDECLSPEC GUID DBSCHEMA_CONSTRAINT_TABLE_USAGE        = {0xc8b52217,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1193. extern const OLEDBDECLSPEC GUID DBSCHEMA_KEY_COLUMN_USAGE              = {0xc8b52218,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1194. extern const OLEDBDECLSPEC GUID DBSCHEMA_REFERENTIAL_CONSTRAINTS       = {0xc8b52219,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1195. extern const OLEDBDECLSPEC GUID DBSCHEMA_TABLE_CONSTRAINTS             = {0xc8b5221a,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1196. extern const OLEDBDECLSPEC GUID DBSCHEMA_COLUMN_DOMAIN_USAGE           = {0xc8b5221b,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1197. extern const OLEDBDECLSPEC GUID DBSCHEMA_INDEXES                       = {0xc8b5221e,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1198. extern const OLEDBDECLSPEC GUID DBSCHEMA_COLUMN_PRIVILEGES             = {0xc8b52221,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1199. extern const OLEDBDECLSPEC GUID DBSCHEMA_TABLE_PRIVILEGES              = {0xc8b52222,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1200. extern const OLEDBDECLSPEC GUID DBSCHEMA_USAGE_PRIVILEGES              = {0xc8b52223,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1201. extern const OLEDBDECLSPEC GUID DBSCHEMA_PROCEDURES                    = {0xc8b52224,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1202. extern const OLEDBDECLSPEC GUID DBSCHEMA_SCHEMATA                      = {0xc8b52225,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1203. extern const OLEDBDECLSPEC GUID DBSCHEMA_SQL_LANGUAGES                 = {0xc8b52226,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1204. extern const OLEDBDECLSPEC GUID DBSCHEMA_STATISTICS                    = {0xc8b52227,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1205. extern const OLEDBDECLSPEC GUID DBSCHEMA_TABLES                        = {0xc8b52229,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1206. extern const OLEDBDECLSPEC GUID DBSCHEMA_TRANSLATIONS                  = {0xc8b5222a,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1207. extern const OLEDBDECLSPEC GUID DBSCHEMA_PROVIDER_TYPES                = {0xc8b5222c,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1208. extern const OLEDBDECLSPEC GUID DBSCHEMA_VIEWS                         = {0xc8b5222d,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1209. extern const OLEDBDECLSPEC GUID DBSCHEMA_VIEW_COLUMN_USAGE             = {0xc8b5222e,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1210. extern const OLEDBDECLSPEC GUID DBSCHEMA_VIEW_TABLE_USAGE              = {0xc8b5222f,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1211. extern const OLEDBDECLSPEC GUID DBSCHEMA_PROCEDURE_PARAMETERS          = {0xc8b522b8,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1212. extern const OLEDBDECLSPEC GUID DBSCHEMA_FOREIGN_KEYS                  = {0xc8b522c4,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1213. extern const OLEDBDECLSPEC GUID DBSCHEMA_PRIMARY_KEYS                  = {0xc8b522c5,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1214. extern const OLEDBDECLSPEC GUID DBSCHEMA_PROCEDURE_COLUMNS             = {0xc8b522c9,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1215. extern const OLEDBDECLSPEC GUID DBCOL_SELFCOLUMNS                      = {0xc8b52231,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1216. extern const OLEDBDECLSPEC GUID DBCOL_SPECIALCOL                       = {0xc8b52232,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1217. extern const OLEDBDECLSPEC GUID PSGUID_QUERY                           = {0x49691c90,0x7e17,0x101a,{0xa9,0x1c,0x08,0x00,0x2b,0x2e,0xcd,0xa9}};
  1218. extern const OLEDBDECLSPEC GUID DBPROPSET_COLUMN                       = {0xc8b522b9,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1219. extern const OLEDBDECLSPEC GUID DBPROPSET_DATASOURCE                   = {0xc8b522ba,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1220. extern const OLEDBDECLSPEC GUID DBPROPSET_DATASOURCEINFO               = {0xc8b522bb,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1221. extern const OLEDBDECLSPEC GUID DBPROPSET_DBINIT                       = {0xc8b522bc,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1222. extern const OLEDBDECLSPEC GUID DBPROPSET_INDEX                        = {0xc8b522bd,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1223. extern const OLEDBDECLSPEC GUID DBPROPSET_ROWSET                       = {0xc8b522be,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1224. extern const OLEDBDECLSPEC GUID DBPROPSET_TABLE                        = {0xc8b522bf,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1225. extern const OLEDBDECLSPEC GUID DBPROPSET_DATASOURCEALL                = {0xc8b522c0,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1226. extern const OLEDBDECLSPEC GUID DBPROPSET_DATASOURCEINFOALL            = {0xc8b522c1,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1227. extern const OLEDBDECLSPEC GUID DBPROPSET_ROWSETALL                    = {0xc8b522c2,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1228. extern const OLEDBDECLSPEC GUID DBPROPSET_SESSION                      = {0xc8b522c6,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1229. extern const OLEDBDECLSPEC GUID DBPROPSET_SESSIONALL                   = {0xc8b522c7,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1230. extern const OLEDBDECLSPEC GUID DBPROPSET_DBINITALL                    = {0xc8b522ca,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1231. extern const OLEDBDECLSPEC GUID DBPROPSET_PROPERTIESINERROR            = {0xc8b522d4,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1232. //@@@+ V1.5
  1233. #if( OLEDBVER >= 0x0150 )
  1234. extern const OLEDBDECLSPEC GUID DBPROPSET_VIEW                         = {0xc8b522df,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1235. #endif // OLEDBVER >= 0x0150
  1236. //@@@- V1.5
  1237. // DBGUID_DBSQL is deprecated; use DBGUID_DEFAULT instead
  1238. extern const OLEDBDECLSPEC  GUID DBGUID_DBSQL                           = {0xc8b521fb,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1239. extern const OLEDBDECLSPEC GUID DBGUID_DEFAULT                         = {0xc8b521fb,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1240. extern const OLEDBDECLSPEC GUID DBGUID_SQL                             = {0xc8b522d7,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
  1241. #else // !DBINITCONSTANTS
  1242. //@@@+ V2.0
  1243. #if( OLEDBVER >= 0x0200 )
  1244. extern const GUID DBSCHEMA_TABLES_INFO;
  1245. extern const GUID MDGUID_MDX;
  1246. extern const GUID DBGUID_MDX;
  1247. extern const GUID MDSCHEMA_CUBES;
  1248. extern const GUID MDSCHEMA_DIMENSIONS;
  1249. extern const GUID MDSCHEMA_HIERARCHIES;
  1250. extern const GUID MDSCHEMA_LEVELS;
  1251. extern const GUID MDSCHEMA_MEASURES;
  1252. extern const GUID MDSCHEMA_PROPERTIES;
  1253. extern const GUID MDSCHEMA_MEMBERS;
  1254. extern const DBID DBCOLUMN_BASETABLEVERSION;
  1255. extern const DBID DBCOLUMN_KEYCOLUMN;
  1256. #endif // OLEDBVER >= 0x0200
  1257. //@@@- V2.0
  1258. //@@@+ V2.1
  1259. #if( OLEDBVER >= 0x0210 )
  1260. extern const GUID DBPROPSET_TRUSTEE;
  1261. extern const GUID DBOBJECT_TABLE;
  1262. extern const GUID DBOBJECT_COLUMN;
  1263. extern const GUID DBOBJECT_DATABASE;
  1264. extern const GUID DBOBJECT_PROCEDURE;
  1265. extern const GUID DBOBJECT_VIEW;
  1266. extern const GUID DBOBJECT_SCHEMA;
  1267. extern const GUID DBOBJECT_DOMAIN;
  1268. extern const GUID DBOBJECT_COLLATION;
  1269. extern const GUID DBOBJECT_TRUSTEE;
  1270. extern const GUID DBOBJECT_SCHEMAROWSET;
  1271. extern const GUID DBOBJECT_CHARACTERSET;
  1272. extern const GUID DBOBJECT_TRANSLATION;
  1273. extern const GUID DBSCHEMA_TRUSTEE;
  1274. extern const GUID DBPROPSET_COLUMNALL;
  1275. extern const GUID DBPROPSET_INDEXALL;
  1276. extern const GUID DBPROPSET_TABLEALL;
  1277. extern const GUID DBPROPSET_TRUSTEEALL;
  1278. extern const GUID DBPROPSET_CONSTRAINTALL;
  1279. extern const GUID DBGUID_DSO;    
  1280. extern const GUID DBGUID_SESSION;
  1281. extern const GUID DBGUID_ROWSET; 
  1282. extern const GUID DBGUID_ROW;    
  1283. extern const GUID DBGUID_COMMAND;
  1284. extern const GUID DBGUID_STREAM; 
  1285. extern const DBID DBROWCOL_ROWURL;                
  1286. extern const DBID DBROWCOL_PARSENAME;            
  1287. extern const DBID DBROWCOL_PARENTNAME;           
  1288. extern const DBID DBROWCOL_ABSOLUTEPARSENAME;    
  1289. extern const DBID DBROWCOL_ISHIDDEN;             
  1290. extern const DBID DBROWCOL_ISREADONLY;           
  1291. extern const DBID DBROWCOL_CONTENTTYPE;          
  1292. extern const DBID DBROWCOL_CONTENTCLASS;         
  1293. extern const DBID DBROWCOL_CONTENTLANGUAGE;      
  1294. extern const DBID DBROWCOL_CREATIONTIME;         
  1295. extern const DBID DBROWCOL_LASTACCESSTIME;       
  1296. extern const DBID DBROWCOL_LASTWRITETIME;        
  1297. extern const DBID DBROWCOL_STREAMSIZE;           
  1298. extern const DBID DBROWCOL_ISCOLLECTION;         
  1299. extern const DBID DBROWCOL_ISSTRUCTUREDDOCUMENT; 
  1300. extern const DBID DBROWCOL_DEFAULTDOCUMENT;      
  1301. extern const DBID DBROWCOL_DISPLAYNAME;          
  1302. extern const DBID DBROWCOL_ISROOT;               
  1303. extern const DBID DBROWCOL_DEFAULTSTREAM;        
  1304. extern const GUID DBGUID_CONTAINEROBJECT;
  1305. #endif // OLEDBVER >= 0x0210
  1306. //@@@- V2.1
  1307. extern const GUID DBSCHEMA_ASSERTIONS;
  1308. extern const GUID DBSCHEMA_CATALOGS;
  1309. extern const GUID DBSCHEMA_CHARACTER_SETS;
  1310. extern const GUID DBSCHEMA_COLLATIONS;
  1311. extern const GUID DBSCHEMA_COLUMNS;
  1312. extern const GUID DBSCHEMA_CHECK_CONSTRAINTS;
  1313. extern const GUID DBSCHEMA_CONSTRAINT_COLUMN_USAGE;
  1314. extern const GUID DBSCHEMA_CONSTRAINT_TABLE_USAGE;
  1315. extern const GUID DBSCHEMA_KEY_COLUMN_USAGE;
  1316. extern const GUID DBSCHEMA_REFERENTIAL_CONSTRAINTS;
  1317. extern const GUID DBSCHEMA_TABLE_CONSTRAINTS;
  1318. extern const GUID DBSCHEMA_COLUMN_DOMAIN_USAGE;
  1319. extern const GUID DBSCHEMA_INDEXES;
  1320. extern const GUID DBSCHEMA_COLUMN_PRIVILEGES;
  1321. extern const GUID DBSCHEMA_TABLE_PRIVILEGES;
  1322. extern const GUID DBSCHEMA_USAGE_PRIVILEGES;
  1323. extern const GUID DBSCHEMA_PROCEDURES;
  1324. extern const GUID DBSCHEMA_SCHEMATA;
  1325. extern const GUID DBSCHEMA_SQL_LANGUAGES;
  1326. extern const GUID DBSCHEMA_STATISTICS;
  1327. extern const GUID DBSCHEMA_TABLES;
  1328. extern const GUID DBSCHEMA_TRANSLATIONS;
  1329. extern const GUID DBSCHEMA_PROVIDER_TYPES;
  1330. extern const GUID DBSCHEMA_VIEWS;
  1331. extern const GUID DBSCHEMA_VIEW_COLUMN_USAGE;
  1332. extern const GUID DBSCHEMA_VIEW_TABLE_USAGE;
  1333. extern const GUID DBSCHEMA_PROCEDURE_PARAMETERS;
  1334. extern const GUID DBSCHEMA_FOREIGN_KEYS;
  1335. extern const GUID DBSCHEMA_PRIMARY_KEYS;
  1336. extern const GUID DBSCHEMA_PROCEDURE_COLUMNS;
  1337. extern const GUID DBCOL_SELFCOLUMNS;
  1338. extern const GUID DBCOL_SPECIALCOL;
  1339. extern const GUID PSGUID_QUERY;
  1340. extern const GUID DBPROPSET_COLUMN;
  1341. extern const GUID DBPROPSET_DATASOURCE;
  1342. extern const GUID DBPROPSET_DATASOURCEINFO;
  1343. extern const GUID DBPROPSET_DBINIT;
  1344. extern const GUID DBPROPSET_INDEX;
  1345. extern const GUID DBPROPSET_ROWSET;
  1346. extern const GUID DBPROPSET_TABLE;
  1347. extern const GUID DBPROPSET_DATASOURCEALL;
  1348. extern const GUID DBPROPSET_DATASOURCEINFOALL;
  1349. extern const GUID DBPROPSET_ROWSETALL;
  1350. extern const GUID DBPROPSET_SESSION;
  1351. extern const GUID DBPROPSET_SESSIONALL;
  1352. extern const GUID DBPROPSET_DBINITALL;
  1353. extern const GUID DBPROPSET_PROPERTIESINERROR;
  1354. //@@@+ V1.5
  1355. #if( OLEDBVER >= 0x0150 )
  1356. extern const GUID DBPROPSET_VIEW;
  1357. #endif // OLEDBVER >= 0x0150
  1358. //@@@- V1.5
  1359. // DBGUID_DBSQL is deprecated; use DBGUID_DEFAULT instead
  1360. extern const GUID DBGUID_DBSQL;
  1361. extern const GUID DBGUID_DEFAULT;
  1362. extern const GUID DBGUID_SQL;
  1363. #endif // DBINITCONSTANTS
  1364.  
  1365. enum DBPROPENUM
  1366.     {    DBPROP_ABORTPRESERVE    = 0x2L,
  1367.     DBPROP_ACTIVESESSIONS    = 0x3L,
  1368.     DBPROP_APPENDONLY    = 0xbbL,
  1369.     DBPROP_ASYNCTXNABORT    = 0xa8L,
  1370.     DBPROP_ASYNCTXNCOMMIT    = 0x4L,
  1371.     DBPROP_AUTH_CACHE_AUTHINFO    = 0x5L,
  1372.     DBPROP_AUTH_ENCRYPT_PASSWORD    = 0x6L,
  1373.     DBPROP_AUTH_INTEGRATED    = 0x7L,
  1374.     DBPROP_AUTH_MASK_PASSWORD    = 0x8L,
  1375.     DBPROP_AUTH_PASSWORD    = 0x9L,
  1376.     DBPROP_AUTH_PERSIST_ENCRYPTED    = 0xaL,
  1377.     DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO    = 0xbL,
  1378.     DBPROP_AUTH_USERID    = 0xcL,
  1379.     DBPROP_BLOCKINGSTORAGEOBJECTS    = 0xdL,
  1380.     DBPROP_BOOKMARKS    = 0xeL,
  1381.     DBPROP_BOOKMARKSKIPPED    = 0xfL,
  1382.     DBPROP_BOOKMARKTYPE    = 0x10L,
  1383.     DBPROP_BYREFACCESSORS    = 0x78L,
  1384.     DBPROP_CACHEDEFERRED    = 0x11L,
  1385.     DBPROP_CANFETCHBACKWARDS    = 0x12L,
  1386.     DBPROP_CANHOLDROWS    = 0x13L,
  1387.     DBPROP_CANSCROLLBACKWARDS    = 0x15L,
  1388.     DBPROP_CATALOGLOCATION    = 0x16L,
  1389.     DBPROP_CATALOGTERM    = 0x17L,
  1390.     DBPROP_CATALOGUSAGE    = 0x18L,
  1391.     DBPROP_CHANGEINSERTEDROWS    = 0xbcL,
  1392.     DBPROP_COL_AUTOINCREMENT    = 0x1aL,
  1393.     DBPROP_COL_DEFAULT    = 0x1bL,
  1394.     DBPROP_COL_DESCRIPTION    = 0x1cL,
  1395.     DBPROP_COL_FIXEDLENGTH    = 0xa7L,
  1396.     DBPROP_COL_NULLABLE    = 0x1dL,
  1397.     DBPROP_COL_PRIMARYKEY    = 0x1eL,
  1398.     DBPROP_COL_UNIQUE    = 0x1fL,
  1399.     DBPROP_COLUMNDEFINITION    = 0x20L,
  1400.     DBPROP_COLUMNRESTRICT    = 0x21L,
  1401.     DBPROP_COMMANDTIMEOUT    = 0x22L,
  1402.     DBPROP_COMMITPRESERVE    = 0x23L,
  1403.     DBPROP_CONCATNULLBEHAVIOR    = 0x24L,
  1404.     DBPROP_CURRENTCATALOG    = 0x25L,
  1405.     DBPROP_DATASOURCENAME    = 0x26L,
  1406.     DBPROP_DATASOURCEREADONLY    = 0x27L,
  1407.     DBPROP_DBMSNAME    = 0x28L,
  1408.     DBPROP_DBMSVER    = 0x29L,
  1409.     DBPROP_DEFERRED    = 0x2aL,
  1410.     DBPROP_DELAYSTORAGEOBJECTS    = 0x2bL,
  1411.     DBPROP_DSOTHREADMODEL    = 0xa9L,
  1412.     DBPROP_GROUPBY    = 0x2cL,
  1413.     DBPROP_HETEROGENEOUSTABLES    = 0x2dL,
  1414.     DBPROP_IAccessor    = 0x79L,
  1415.     DBPROP_IColumnsInfo    = 0x7aL,
  1416.     DBPROP_IColumnsRowset    = 0x7bL,
  1417.     DBPROP_IConnectionPointContainer    = 0x7cL,
  1418.     DBPROP_IConvertType    = 0xc2L,
  1419.     DBPROP_IRowset    = 0x7eL,
  1420.     DBPROP_IRowsetChange    = 0x7fL,
  1421.     DBPROP_IRowsetIdentity    = 0x80L,
  1422.     DBPROP_IRowsetIndex    = 0x9fL,
  1423.     DBPROP_IRowsetInfo    = 0x81L,
  1424.     DBPROP_IRowsetLocate    = 0x82L,
  1425.     DBPROP_IRowsetResynch    = 0x84L,
  1426.     DBPROP_IRowsetScroll    = 0x85L,
  1427.     DBPROP_IRowsetUpdate    = 0x86L,
  1428.     DBPROP_ISupportErrorInfo    = 0x87L,
  1429.     DBPROP_ILockBytes    = 0x88L,
  1430.     DBPROP_ISequentialStream    = 0x89L,
  1431.     DBPROP_IStorage    = 0x8aL,
  1432.     DBPROP_IStream    = 0x8bL,
  1433.     DBPROP_IDENTIFIERCASE    = 0x2eL,
  1434.     DBPROP_IMMOBILEROWS    = 0x2fL,
  1435.     DBPROP_INDEX_AUTOUPDATE    = 0x30L,
  1436.     DBPROP_INDEX_CLUSTERED    = 0x31L,
  1437.     DBPROP_INDEX_FILLFACTOR    = 0x32L,
  1438.     DBPROP_INDEX_INITIALSIZE    = 0x33L,
  1439.     DBPROP_INDEX_NULLCOLLATION    = 0x34L,
  1440.     DBPROP_INDEX_NULLS    = 0x35L,
  1441.     DBPROP_INDEX_PRIMARYKEY    = 0x36L,
  1442.     DBPROP_INDEX_SORTBOOKMARKS    = 0x37L,
  1443.     DBPROP_INDEX_TEMPINDEX    = 0xa3L,
  1444.     DBPROP_INDEX_TYPE    = 0x38L,
  1445.     DBPROP_INDEX_UNIQUE    = 0x39L,
  1446.     DBPROP_INIT_DATASOURCE    = 0x3bL,
  1447.     DBPROP_INIT_HWND    = 0x3cL,
  1448.     DBPROP_INIT_IMPERSONATION_LEVEL    = 0x3dL,
  1449.     DBPROP_INIT_LCID    = 0xbaL,
  1450.     DBPROP_INIT_LOCATION    = 0x3eL,
  1451.     DBPROP_INIT_MODE    = 0x3fL,
  1452.     DBPROP_INIT_PROMPT    = 0x40L,
  1453.     DBPROP_INIT_PROTECTION_LEVEL    = 0x41L,
  1454.     DBPROP_INIT_PROVIDERSTRING    = 0xa0L,
  1455.     DBPROP_INIT_TIMEOUT    = 0x42L,
  1456.     DBPROP_LITERALBOOKMARKS    = 0x43L,
  1457.     DBPROP_LITERALIDENTITY    = 0x44L,
  1458.     DBPROP_MARSHALLABLE    = 0xc5L,
  1459.     DBPROP_MAXINDEXSIZE    = 0x46L,
  1460.     DBPROP_MAXOPENROWS    = 0x47L,
  1461.     DBPROP_MAXPENDINGROWS    = 0x48L,
  1462.     DBPROP_MAXROWS    = 0x49L,
  1463.     DBPROP_MAXROWSIZE    = 0x4aL,
  1464.     DBPROP_MAXROWSIZEINCLUDESBLOB    = 0x4bL,
  1465.     DBPROP_MAXTABLESINSELECT    = 0x4cL,
  1466.     DBPROP_MAYWRITECOLUMN    = 0x4dL,
  1467.     DBPROP_MEMORYUSAGE    = 0x4eL,
  1468.     DBPROP_MULTIPLEPARAMSETS    = 0xbfL,
  1469.     DBPROP_MULTIPLERESULTS    = 0xc4L,
  1470.     DBPROP_MULTIPLESTORAGEOBJECTS    = 0x50L,
  1471.     DBPROP_MULTITABLEUPDATE    = 0x51L,
  1472.     DBPROP_NOTIFICATIONGRANULARITY    = 0xc6L,
  1473.     DBPROP_NOTIFICATIONPHASES    = 0x52L,
  1474.     DBPROP_NOTIFYCOLUMNSET    = 0xabL,
  1475.     DBPROP_NOTIFYROWDELETE    = 0xadL,
  1476.     DBPROP_NOTIFYROWFIRSTCHANGE    = 0xaeL,
  1477.     DBPROP_NOTIFYROWINSERT    = 0xafL,
  1478.     DBPROP_NOTIFYROWRESYNCH    = 0xb1L,
  1479.     DBPROP_NOTIFYROWSETCHANGED    = 0xd3L,
  1480.     DBPROP_NOTIFYROWSETRELEASE    = 0xb2L,
  1481.     DBPROP_NOTIFYROWSETFETCHPOSITIONCHANGE    = 0xb3L,
  1482.     DBPROP_NOTIFYROWUNDOCHANGE    = 0xb4L,
  1483.     DBPROP_NOTIFYROWUNDODELETE    = 0xb5L,
  1484.     DBPROP_NOTIFYROWUNDOINSERT    = 0xb6L,
  1485.     DBPROP_NOTIFYROWUPDATE    = 0xb7L,
  1486.     DBPROP_NULLCOLLATION    = 0x53L,
  1487.     DBPROP_OLEOBJECTS    = 0x54L,
  1488.     DBPROP_ORDERBYCOLUMNSINSELECT    = 0x55L,
  1489.     DBPROP_ORDEREDBOOKMARKS    = 0x56L,
  1490.     DBPROP_OTHERINSERT    = 0x57L,
  1491.     DBPROP_OTHERUPDATEDELETE    = 0x58L,
  1492.     DBPROP_OUTPUTPARAMETERAVAILABILITY    = 0xb8L,
  1493.     DBPROP_OWNINSERT    = 0x59L,
  1494.     DBPROP_OWNUPDATEDELETE    = 0x5aL,
  1495.     DBPROP_PERSISTENTIDTYPE    = 0xb9L,
  1496.     DBPROP_PREPAREABORTBEHAVIOR    = 0x5bL,
  1497.     DBPROP_PREPARECOMMITBEHAVIOR    = 0x5cL,
  1498.     DBPROP_PROCEDURETERM    = 0x5dL,
  1499.     DBPROP_PROVIDERNAME    = 0x60L,
  1500.     DBPROP_PROVIDEROLEDBVER    = 0x61L,
  1501.     DBPROP_PROVIDERVER    = 0x62L,
  1502.     DBPROP_QUICKRESTART    = 0x63L,
  1503.     DBPROP_QUOTEDIDENTIFIERCASE    = 0x64L,
  1504.     DBPROP_REENTRANTEVENTS    = 0x65L,
  1505.     DBPROP_REMOVEDELETED    = 0x66L,
  1506.     DBPROP_REPORTMULTIPLECHANGES    = 0x67L,
  1507.     DBPROP_RETURNPENDINGINSERTS    = 0xbdL,
  1508.     DBPROP_ROWRESTRICT    = 0x68L,
  1509.     DBPROP_ROWSETCONVERSIONSONCOMMAND    = 0xc0L,
  1510.     DBPROP_ROWTHREADMODEL    = 0x69L,
  1511.     DBPROP_SCHEMATERM    = 0x6aL,
  1512.     DBPROP_SCHEMAUSAGE    = 0x6bL,
  1513.     DBPROP_SERVERCURSOR    = 0x6cL,
  1514.     DBPROP_SESS_AUTOCOMMITISOLEVELS    = 0xbeL,
  1515.     DBPROP_SQLSUPPORT    = 0x6dL,
  1516.     DBPROP_STRONGIDENTITY    = 0x77L,
  1517.     DBPROP_STRUCTUREDSTORAGE    = 0x6fL,
  1518.     DBPROP_SUBQUERIES    = 0x70L,
  1519.     DBPROP_SUPPORTEDTXNDDL    = 0xa1L,
  1520.     DBPROP_SUPPORTEDTXNISOLEVELS    = 0x71L,
  1521.     DBPROP_SUPPORTEDTXNISORETAIN    = 0x72L,
  1522.     DBPROP_TABLETERM    = 0x73L,
  1523.     DBPROP_TBL_TEMPTABLE    = 0x8cL,
  1524.     DBPROP_TRANSACTEDOBJECT    = 0x74L,
  1525.     DBPROP_UPDATABILITY    = 0x75L,
  1526.     DBPROP_USERNAME    = 0x76L
  1527.     };
  1528. //@@@+ V1.5
  1529. #if( OLEDBVER >= 0x0150 )
  1530.  
  1531. enum DBPROPENUM15
  1532.     {    DBPROP_FILTEROPS    = 0xd0L,
  1533.     DBPROP_FILTERCOMPAREOPS    = 0xd1L,
  1534.     DBPROP_FINDCOMPAREOPS    = 0xd2L,
  1535.     DBPROP_IChapteredRowset    = 0xcaL,
  1536.     DBPROP_IDBAsynchStatus    = 0xcbL,
  1537.     DBPROP_IRowsetFind    = 0xccL,
  1538.     DBPROP_IRowsetView    = 0xd4L,
  1539.     DBPROP_IViewChapter    = 0xd5L,
  1540.     DBPROP_IViewFilter    = 0xd6L,
  1541.     DBPROP_IViewRowset    = 0xd7L,
  1542.     DBPROP_IViewSort    = 0xd8L,
  1543.     DBPROP_INIT_ASYNCH    = 0xc8L,
  1544.     DBPROP_MAXOPENCHAPTERS    = 0xc7L,
  1545.     DBPROP_MAXORSINFILTER    = 0xcdL,
  1546.     DBPROP_MAXSORTCOLUMNS    = 0xceL,
  1547.     DBPROP_ROWSET_ASYNCH    = 0xc9L,
  1548.     DBPROP_SORTONINDEX    = 0xcfL
  1549.     };
  1550. #endif // OLEDBVER >= 0x0150
  1551. //@@@- V1.5
  1552. //@@@+ V2.0
  1553. #if( OLEDBVER >= 0x0200 )
  1554. #define DBPROP_PROVIDERFILENAME DBPROP_PROVIDERNAME
  1555. #define DBPROP_SERVER_NAME DBPROP_SERVERNAME
  1556.  
  1557. enum DBPROPENUM20
  1558.     {    DBPROP_IMultipleResults    = 0xd9L,
  1559.     DBPROP_DATASOURCE_TYPE    = 0xfbL,
  1560.     MDPROP_AXES    = 0xfcL,
  1561.     MDPROP_FLATTENING_SUPPORT    = 0xfdL,
  1562.     MDPROP_MDX_JOINCUBES    = 0xfeL,
  1563.     MDPROP_NAMED_LEVELS    = 0xffL,
  1564.     MDPROP_RANGEROWSET    = 0x100L,
  1565.     MDPROP_MDX_SLICER    = 0xdaL,
  1566.     MDPROP_MDX_CUBEQUALIFICATION    = 0xdbL,
  1567.     MDPROP_MDX_OUTERREFERENCE    = 0xdcL,
  1568.     MDPROP_MDX_QUERYBYPROPERTY    = 0xddL,
  1569.     MDPROP_MDX_CASESUPPORT    = 0xdeL,
  1570.     MDPROP_MDX_STRING_COMPOP    = 0xe0L,
  1571.     MDPROP_MDX_DESCFLAGS    = 0xe1L,
  1572.     MDPROP_MDX_SET_FUNCTIONS    = 0xe2L,
  1573.     MDPROP_MDX_MEMBER_FUNCTIONS    = 0xe3L,
  1574.     MDPROP_MDX_NUMERIC_FUNCTIONS    = 0xe4L,
  1575.     MDPROP_MDX_FORMULAS    = 0xe5L,
  1576.     MDPROP_MDX_AGGREGATECELL_UPDATE    = 0xe6L,
  1577.     MDPROP_MDX_OBJQUALIFICATION    = 0x105L,
  1578.     MDPROP_MDX_NONMEASURE_EXPRESSONS    = 0x106L,
  1579.     DBPROP_ACCESSORDER    = 0xe7L,
  1580.     DBPROP_BOOKMARKINFO    = 0xe8L,
  1581.     DBPROP_INIT_CATALOG    = 0xe9L,
  1582.     DBPROP_ROW_BULKOPS    = 0xeaL,
  1583.     DBPROP_PROVIDERFRIENDLYNAME    = 0xebL,
  1584.     DBPROP_LOCKMODE    = 0xecL,
  1585.     DBPROP_MULTIPLECONNECTIONS    = 0xedL,
  1586.     DBPROP_UNIQUEROWS    = 0xeeL,
  1587.     DBPROP_SERVERDATAONINSERT    = 0xefL,
  1588.     DBPROP_STORAGEFLAGS    = 0xf0L,
  1589.     DBPROP_CONNECTIONSTATUS    = 0xf4L,
  1590.     DBPROP_ALTERCOLUMN    = 0xf5L,
  1591.     DBPROP_COLUMNLCID    = 0xf6L,
  1592.     DBPROP_RESETDATASOURCE    = 0xf7L,
  1593.     DBPROP_INIT_OLEDBSERVICES    = 0xf8L,
  1594.     DBPROP_IRowsetRefresh    = 0xf9L,
  1595.     DBPROP_SERVERNAME    = 0xfaL,
  1596.     DBPROP_IParentRowset    = 0x101L,
  1597.     DBPROP_HIDDENCOLUMNS    = 0x102L,
  1598.     DBPROP_PROVIDERMEMORY    = 0x103L,
  1599.     DBPROP_CLIENTCURSOR    = 0x104L
  1600.     };
  1601. #endif // OLEDBVER >= 0x0200
  1602. //@@@- V2.0
  1603. //@@@+ V2.1
  1604. #if( OLEDBVER >= 0x0210 )
  1605.  
  1606. enum DBPROPENUM21
  1607.     {    DBPROP_TRUSTEE_USERNAME    = 0xf1L,
  1608.     DBPROP_TRUSTEE_AUTHENTICATION    = 0xf2L,
  1609.     DBPROP_TRUSTEE_NEWAUTHENTICATION    = 0xf3L,
  1610.     DBPROP_IRow    = 0x107L,
  1611.     DBPROP_IRowChange    = 0x108L,
  1612.     DBPROP_IRowSchemaChange    = 0x109L,
  1613.     DBPROP_IGetRow    = 0x10aL,
  1614.     DBPROP_IScopedOperations    = 0x10bL,
  1615.     DBPROP_IBindResource    = 0x10cL,
  1616.     DBPROP_ICreateRow    = 0x10dL,
  1617.     DBPROP_INIT_BINDFLAGS    = 0x10eL,
  1618.     DBPROP_INIT_LOCKOWNER    = 0x10fL,
  1619.     DBPROP_GENERATEURL    = 0x111L,
  1620.     DBPROP_IDBBinderProperties    = 0x112L,
  1621.     DBPROP_IColumnsInfo2    = 0x113L,
  1622.     DBPROP_IRegisterProvider    = 0x114L,
  1623.     DBPROP_IGetSession    = 0x115L,
  1624.     DBPROP_IGetSourceRow    = 0x116L,
  1625.     DBPROP_IRowsetCurrentIndex    = 0x117L,
  1626.     DBPROP_OPENROWSETSUPPORT    = 0x118L,
  1627.     DBPROP_COL_ISLONG    = 0x119L
  1628.     };
  1629. #endif // OLEDBVER >= 0x0210
  1630. //@@@- V2.1
  1631. //@@@+ deprecated
  1632. #ifdef deprecated
  1633.  
  1634. enum DBPROPENUMDEPRECATED
  1635.     {    DBPROP_IRowsetExactScroll    = 0x9aL
  1636.     };
  1637. #endif // deprecated
  1638. //@@@- deprecated
  1639. #define DBPROPVAL_BMK_NUMERIC                             0x00000001L
  1640. #define DBPROPVAL_BMK_KEY                                 0x00000002L
  1641. #define DBPROPVAL_CL_START                                0x00000001L
  1642. #define DBPROPVAL_CL_END                                  0x00000002L
  1643. #define DBPROPVAL_CU_DML_STATEMENTS                         0x00000001L
  1644. #define DBPROPVAL_CU_TABLE_DEFINITION                     0x00000002L
  1645. #define DBPROPVAL_CU_INDEX_DEFINITION                     0x00000004L
  1646. #define DBPROPVAL_CU_PRIVILEGE_DEFINITION                 0x00000008L
  1647. #define DBPROPVAL_CD_NOTNULL                                 0x00000001L
  1648. #define DBPROPVAL_CB_NULL                                 0x00000001L
  1649. #define DBPROPVAL_CB_NON_NULL                             0x00000002L
  1650. #define DBPROPVAL_FU_NOT_SUPPORTED                         0x00000001L
  1651. #define DBPROPVAL_FU_COLUMN                                 0x00000002L
  1652. #define DBPROPVAL_FU_TABLE                                 0x00000004L
  1653. #define DBPROPVAL_FU_CATALOG                                 0x00000008L
  1654. #define DBPROPVAL_GB_NOT_SUPPORTED                         0x00000001L
  1655. #define DBPROPVAL_GB_EQUALS_SELECT                         0x00000002L
  1656. #define DBPROPVAL_GB_CONTAINS_SELECT                         0x00000004L
  1657. #define DBPROPVAL_GB_NO_RELATION                             0x00000008L
  1658. #define DBPROPVAL_HT_DIFFERENT_CATALOGS                     0x00000001L
  1659. #define DBPROPVAL_HT_DIFFERENT_PROVIDERS                     0x00000002L
  1660. #define DBPROPVAL_IC_UPPER                                 0x00000001L
  1661. #define DBPROPVAL_IC_LOWER                                 0x00000002L
  1662. #define DBPROPVAL_IC_SENSITIVE                             0x00000004L
  1663. #define DBPROPVAL_IC_MIXED                                 0x00000008L
  1664. //@@@+ deprecated
  1665. #ifdef deprecated
  1666. #define DBPROPVAL_LM_NONE                                 0x00000001L
  1667. #define DBPROPVAL_LM_READ                                 0x00000002L
  1668. #define DBPROPVAL_LM_INTENT                                 0x00000004L
  1669. #define DBPROPVAL_LM_RITE                                 0x00000008L
  1670. #endif // deprecated
  1671. //@@@- deprecated
  1672. #define DBPROPVAL_NP_OKTODO                                 0x00000001L
  1673. #define DBPROPVAL_NP_ABOUTTODO                             0x00000002L
  1674. #define DBPROPVAL_NP_SYNCHAFTER                             0x00000004L
  1675. #define DBPROPVAL_NP_FAILEDTODO                             0x00000008L
  1676. #define DBPROPVAL_NP_DIDEVENT                             0x00000010L
  1677. #define DBPROPVAL_NC_END                                     0x00000001L
  1678. #define DBPROPVAL_NC_HIGH                                 0x00000002L
  1679. #define DBPROPVAL_NC_LOW                                     0x00000004L
  1680. #define DBPROPVAL_NC_START                                 0x00000008L
  1681. #define DBPROPVAL_OO_BLOB                                 0x00000001L
  1682. #define DBPROPVAL_OO_IPERSIST                             0x00000002L
  1683. #define DBPROPVAL_CB_DELETE                                 0x00000001L
  1684. #define DBPROPVAL_CB_PRESERVE                             0x00000002L
  1685. #define DBPROPVAL_SU_DML_STATEMENTS                         0x00000001L
  1686. #define DBPROPVAL_SU_TABLE_DEFINITION                     0x00000002L
  1687. #define DBPROPVAL_SU_INDEX_DEFINITION                     0x00000004L
  1688. #define DBPROPVAL_SU_PRIVILEGE_DEFINITION                 0x00000008L
  1689. #define DBPROPVAL_SQ_CORRELATEDSUBQUERIES                 0x00000001L
  1690. #define DBPROPVAL_SQ_COMPARISON                             0x00000002L
  1691. #define DBPROPVAL_SQ_EXISTS                                 0x00000004L
  1692. #define DBPROPVAL_SQ_IN                                     0x00000008L
  1693. #define DBPROPVAL_SQ_QUANTIFIED                             0x00000010L
  1694. #define DBPROPVAL_SQ_TABLE                                 0x00000020L
  1695. #define DBPROPVAL_SS_ISEQUENTIALSTREAM                     0x00000001L
  1696. #define DBPROPVAL_SS_ISTREAM                                 0x00000002L
  1697. #define DBPROPVAL_SS_ISTORAGE                             0x00000004L
  1698. #define DBPROPVAL_SS_ILOCKBYTES                             0x00000008L
  1699. #define DBPROPVAL_TI_CHAOS                                 0x00000010L
  1700. #define DBPROPVAL_TI_READUNCOMMITTED                         0x00000100L
  1701. #define DBPROPVAL_TI_BROWSE                                 0x00000100L
  1702. #define DBPROPVAL_TI_CURSORSTABILITY                         0x00001000L
  1703. #define DBPROPVAL_TI_READCOMMITTED                         0x00001000L
  1704. #define DBPROPVAL_TI_REPEATABLEREAD                         0x00010000L
  1705. #define DBPROPVAL_TI_SERIALIZABLE                         0x00100000L
  1706. #define DBPROPVAL_TI_ISOLATED                             0x00100000L
  1707. #define DBPROPVAL_TR_COMMIT_DC                             0x00000001L
  1708. #define DBPROPVAL_TR_COMMIT                                 0x00000002L
  1709. #define DBPROPVAL_TR_COMMIT_NO                             0x00000004L
  1710. #define DBPROPVAL_TR_ABORT_DC                             0x00000008L
  1711. #define DBPROPVAL_TR_ABORT                                 0x00000010L
  1712. #define DBPROPVAL_TR_ABORT_NO                             0x00000020L
  1713. #define DBPROPVAL_TR_DONTCARE                             0x00000040L
  1714. #define DBPROPVAL_TR_BOTH                                 0x00000080L
  1715. #define DBPROPVAL_TR_NONE                                 0x00000100L
  1716. #define DBPROPVAL_TR_OPTIMISTIC                             0x00000200L
  1717. #define DBPROPVAL_RT_FREETHREAD                             0x00000001L
  1718. #define DBPROPVAL_RT_APTMTTHREAD                             0x00000002L
  1719. #define DBPROPVAL_RT_SINGLETHREAD                         0x00000004L
  1720. #define DBPROPVAL_UP_CHANGE                                 0x00000001L
  1721. #define DBPROPVAL_UP_DELETE                                 0x00000002L
  1722. #define DBPROPVAL_UP_INSERT                                 0x00000004L
  1723. #define DBPROPVAL_SQL_NONE                                 0x00000000L
  1724. #define DBPROPVAL_SQL_ODBC_MINIMUM                         0x00000001L
  1725. #define DBPROPVAL_SQL_ODBC_CORE                             0x00000002L
  1726. #define DBPROPVAL_SQL_ODBC_EXTENDED                         0x00000004L
  1727. #define DBPROPVAL_SQL_ANSI89_IEF                             0x00000008L
  1728. #define DBPROPVAL_SQL_ANSI92_ENTRY                         0x00000010L
  1729. #define DBPROPVAL_SQL_FIPS_TRANSITIONAL                     0x00000020L
  1730. #define DBPROPVAL_SQL_ANSI92_INTERMEDIATE                 0x00000040L
  1731. #define DBPROPVAL_SQL_ANSI92_FULL                         0x00000080L
  1732. #define DBPROPVAL_SQL_ESCAPECLAUSES                         0x00000100L
  1733. #define DBPROPVAL_IT_BTREE                                0x00000001L
  1734. #define DBPROPVAL_IT_HASH                                 0x00000002L
  1735. #define DBPROPVAL_IT_CONTENT                              0x00000003L
  1736. #define DBPROPVAL_IT_OTHER                                0x00000004L
  1737. #define DBPROPVAL_IN_DISALLOWNULL                         0x00000001L
  1738. #define DBPROPVAL_IN_IGNORENULL                           0x00000002L
  1739. #define DBPROPVAL_IN_IGNOREANYNULL                        0x00000004L
  1740. #define DBPROPVAL_TC_NONE                                 0x00000000L
  1741. #define DBPROPVAL_TC_DML                                  0x00000001L
  1742. #define DBPROPVAL_TC_DDL_COMMIT                           0x00000002L
  1743. #define DBPROPVAL_TC_DDL_IGNORE                           0x00000004L
  1744. #define DBPROPVAL_TC_ALL                                  0x00000008L
  1745. #define DBPROPVAL_NP_OKTODO                               0x00000001L
  1746. #define DBPROPVAL_NP_ABOUTTODO                            0x00000002L
  1747. #define DBPROPVAL_NP_SYNCHAFTER                           0x00000004L
  1748. #define DBPROPVAL_OA_NOTSUPPORTED                         0x00000001L
  1749. #define DBPROPVAL_OA_ATEXECUTE                            0x00000002L
  1750. #define DBPROPVAL_OA_ATROWRELEASE                         0x00000004L
  1751. #define DBPROPVAL_MR_NOTSUPPORTED                         0x00000000L
  1752. #define DBPROPVAL_MR_SUPPORTED                            0x00000001L
  1753. #define DBPROPVAL_MR_CONCURRENT                           0x00000002L
  1754. #define DBPROPVAL_PT_GUID_NAME                            0x00000001L
  1755. #define DBPROPVAL_PT_GUID_PROPID                          0x00000002L
  1756. #define DBPROPVAL_PT_NAME                                 0x00000004L
  1757. #define DBPROPVAL_PT_GUID                                 0x00000008L
  1758. #define DBPROPVAL_PT_PROPID                                 0x00000010L
  1759. #define DBPROPVAL_PT_PGUID_NAME                           0x00000020L
  1760. #define DBPROPVAL_PT_PGUID_PROPID                         0x00000040L
  1761. #define DBPROPVAL_NT_SINGLEROW                            0x00000001L
  1762. #define DBPROPVAL_NT_MULTIPLEROWS                         0x00000002L
  1763. //@@@+ V1.5
  1764. #if( OLEDBVER >= 0x0150 )
  1765. #define DBPROPVAL_ASYNCH_INITIALIZE                       0x00000001L
  1766. #define DBPROPVAL_ASYNCH_SEQUENTIALPOPULATION             0x00000002L
  1767. #define DBPROPVAL_ASYNCH_RANDOMPOPULATION                 0x00000004L
  1768. #define DBPROPVAL_OP_EQUAL                                0x00000001L
  1769. #define DBPROPVAL_OP_RELATIVE                             0x00000002L
  1770. #define DBPROPVAL_OP_STRING                               0x00000004L
  1771. #define DBPROPVAL_CO_EQUALITY                             0x00000001L
  1772. #define DBPROPVAL_CO_STRING                               0x00000002L
  1773. #define DBPROPVAL_CO_CASESENSITIVE                        0x00000004L
  1774. #define DBPROPVAL_CO_CASEINSENSITIVE                      0x00000008L
  1775. #endif // OLEDBVER >= 0x0150
  1776. //@@@- V1.5
  1777. //@@@+ V2.0
  1778. #if( OLEDBVER >= 0x0200 )
  1779. #define DBPROPVAL_CO_CONTAINS                             0x00000010L
  1780. #define DBPROPVAL_CO_BEGINSWITH                             0x00000020L
  1781. #define DBPROPVAL_ASYNCH_BACKGROUNDPOPULATION            0x00000008L
  1782. #define DBPROPVAL_ASYNCH_PREPOPULATE                        0x00000010L
  1783. #define DBPROPVAL_ASYNCH_POPULATEONDEMAND                0x00000020L
  1784. #define DBPROPVAL_LM_NONE                                 0x00000001L
  1785. #define DBPROPVAL_LM_SINGLEROW                             0x00000002L
  1786. #define DBPROPVAL_SQL_SUBMINIMUM                          0x00000200L
  1787. #define DBPROPVAL_DST_TDP                                 0x00000001L
  1788. #define DBPROPVAL_DST_MDP                                 0x00000002L
  1789. #define DBPROPVAL_DST_TDPANDMDP                           0x00000003L
  1790. #define MDPROPVAL_AU_UNSUPPORTED                          0x00000000L
  1791. #define MDPROPVAL_AU_UNCHANGED                            0x00000001L
  1792. #define MDPROPVAL_AU_UNKNOWN                              0x00000002L
  1793. #define MDPROPVAL_MF_WITH_CALCMEMBERS                     0x00000001L
  1794. #define MDPROPVAL_MF_WITH_NAMEDSETS                       0x00000002L
  1795. #define MDPROPVAL_MF_CREATE_CALCMEMBERS                   0x00000004L
  1796. #define MDPROPVAL_MF_CREATE_NAMEDSETS                     0x00000008L
  1797. #define MDPROPVAL_MF_SCOPE_SESSION                         0x00000010L
  1798. #define MDPROPVAL_MF_SCOPE_GLOBAL                         0x00000020L
  1799. #define MDPROPVAL_MMF_COUSIN                              0x00000001L
  1800. #define MDPROPVAL_MMF_PARALLELPERIOD                      0x00000002L
  1801. #define MDPROPVAL_MMF_OPENINGPERIOD                       0x00000004L
  1802. #define MDPROPVAL_MMF_CLOSINGPERIOD                       0x00000008L
  1803. #define MDPROPVAL_MNF_MEDIAN                                0x00000001L
  1804. #define MDPROPVAL_MNF_VAR                                0x00000002L
  1805. #define MDPROPVAL_MNF_STDDEV                                0x00000004L
  1806. #define MDPROPVAL_MNF_RANK                                0x00000008L
  1807. #define MDPROPVAL_MNF_AGGREGATE                            0x00000010L
  1808. #define MDPROPVAL_MNF_COVARIANCE                            0x00000020L
  1809. #define MDPROPVAL_MNF_CORRELATION                        0x00000040L
  1810. #define MDPROPVAL_MNF_LINREGSLOPE                        0x00000080L
  1811. #define MDPROPVAL_MNF_LINREGVARIANCE                        0x00000100L
  1812. #define MDPROPVAL_MNF_LINREG2                            0x00000200L
  1813. #define MDPROPVAL_MNF_LINREGPOINT                        0x00000400L
  1814. #define MDPROPVAL_MNF_DRILLDOWNLEVEL                        0x00000800L
  1815. #define MDPROPVAL_MNF_DRILLDOWNMEMBERTOP                    0x00001000L
  1816. #define MDPROPVAL_MNF_DRILLDOWNMEMBERBOTTOM                0x00002000L
  1817. #define MDPROPVAL_MNF_DRILLDOWNLEVELTOP                    0x00004000L
  1818. #define MDPROPVAL_MNF_DRILLDOWNLEVELBOTTOM                0x00008000L
  1819. #define MDPROPVAL_MNF_DRILLUPMEMBER                        0x00010000L
  1820. #define MDPROPVAL_MNF_DRILLUPLEVEL                        0x00020000L
  1821. #define MDPROPVAL_MMF_COUSIN                                0x00000001L
  1822. #define MDPROPVAL_MMF_PARALLELPERIOD                        0x00000002L
  1823. #define MDPROPVAL_MMF_OPENINGPERIOD                        0x00000004L
  1824. #define MDPROPVAL_MMF_CLOSINGPERIOD                        0x00000008L
  1825. #define MDPROPVAL_MSF_TOPPERCENT                            0x00000001L
  1826. #define MDPROPVAL_MSF_BOTTOMPERCENT                        0x00000002L
  1827. #define MDPROPVAL_MSF_TOPSUM                                0x00000004L
  1828. #define MDPROPVAL_MSF_BOTTOMSUM                            0x00000008L
  1829. #define MDPROPVAL_MSF_PERIODSTODATE                        0x00000010L
  1830. #define MDPROPVAL_MSF_LASTPERIODS                        0x00000020L
  1831. #define MDPROPVAL_MSF_YTD                                0x00000040L
  1832. #define MDPROPVAL_MSF_QTD                                0x00000080L
  1833. #define MDPROPVAL_MSF_MTD                                0x00000100L
  1834. #define MDPROPVAL_MSF_WTD                                0x00000200L
  1835. #define MDPROPVAL_MSF_DRILLDOWNMEMBBER                    0x00000400L
  1836. #define MDPROPVAL_MSF_DRILLDOWNLEVEL                        0x00000800L
  1837. #define MDPROPVAL_MSF_DRILLDOWNMEMBERTOP                    0x00001000L
  1838. #define MDPROPVAL_MSF_DRILLDOWNMEMBERBOTTOM                0x00002000L
  1839. #define MDPROPVAL_MSF_DRILLDOWNLEVELTOP                    0x00004000L
  1840. #define MDPROPVAL_MSF_DRILLDOWNLEVELBOTTOM                0x00008000L
  1841. #define MDPROPVAL_MSF_DRILLUPMEMBER                        0x00010000L
  1842. #define MDPROPVAL_MSF_DRILLUPLEVEL                        0x00020000L
  1843. #define MDPROPVAL_MSF_TOGGLEDRILLSTATE                    0x00040000L
  1844. // values for MDPROP_MDX_DESCFLAGS
  1845. #define MDPROPVAL_MD_SELF                                0x00000001L
  1846. #define MDPROPVAL_MD_BEFORE                                0x00000002L
  1847. #define MDPROPVAL_MD_AFTER                                0x00000004L
  1848. // values for MDPROP_MDX_STRING_COMPOP
  1849. #define MDPROPVAL_MSC_LESSTHAN                            0x00000001L
  1850. #define MDPROPVAL_MSC_GREATERTHAN                        0x00000002L
  1851. #define MDPROPVAL_MSC_LESSTHANEQUAL                        0x00000004L
  1852. #define MDPROPVAL_MSC_GREATERTHANEQUAL                    0x00000008L
  1853. #define MDPROPVAL_MC_SINGLECASE                            0x00000001L
  1854. #define MDPROPVAL_MC_SEARCHEDCASE                        0x00000002L
  1855. #define MDPROPVAL_MOQ_OUTERREFERENCE                        0x00000001L
  1856. #define MDPROPVAL_MOQ_DATASOURCE_CUBE                    0x00000001L
  1857. #define MDPROPVAL_MOQ_CATALOG_CUBE                        0x00000002L
  1858. #define MDPROPVAL_MOQ_SCHEMA_CUBE                        0x00000004L
  1859. #define MDPROPVAL_MOQ_CUBE_DIM                            0x00000008L
  1860. #define MDPROPVAL_MOQ_DIM_HIER                            0x00000010L
  1861. #define MDPROPVAL_MOQ_DIMHIER_LEVEL                        0x00000020L
  1862. #define MDPROPVAL_MOQ_LEVEL_MEMBER                        0x00000040L
  1863. #define MDPROPVAL_MOQ_MEMBER_MEMBER                        0x00000080L
  1864. #define MDPROPVAL_FS_FULL_SUPPORT                        0x00000001L
  1865. #define MDPROPVAL_FS_GENERATED_COLUMN                    0x00000002L
  1866. #define MDPROPVAL_FS_GENERATED_DIMENSION                    0x00000003L
  1867. #define MDPROPVAL_FS_NO_SUPPORT                            0x00000004L
  1868. #define MDPROPVAL_NL_NAMEDLEVELS                            0x00000001L
  1869. #define MDPROPVAL_NL_NUMBEREDLEVELS                        0x00000002L
  1870. #define MDPROPVAL_MJC_SINGLECUBE                            0x00000001L
  1871. #define MDPROPVAL_MJC_MULTICUBES                            0x00000002L
  1872. #define MDPROPVAL_MJC_IMPLICITCUBE                        0x00000004L
  1873. #define MDPROPVAL_RR_NORANGEROWSET                        0x00000001L
  1874. #define MDPROPVAL_RR_READONLY                            0x00000002L
  1875. #define MDPROPVAL_RR_UPDATE                                0x00000004L
  1876. #define MDPROPVAL_MS_MULTIPLETUPLES                        0x00000001L
  1877. #define MDPROPVAL_MS_SINGLETUPLE                        0x00000002L
  1878. #define DBPROPVAL_AO_SEQUENTIAL                            0x00000000L
  1879. #define DBPROPVAL_AO_SEQUENTIALSTORAGEOBJECTS            0x00000001L
  1880. #define DBPROPVAL_AO_RANDOM                                0x00000002L
  1881. #define DBPROPVAL_BD_ROWSET                                0x00000000L
  1882. #define DBPROPVAL_BD_INTRANSACTION                        0x00000001L
  1883. #define DBPROPVAL_BD_XTRANSACTION                        0x00000002L
  1884. #define DBPROPVAL_BD_REORGANIZATION                        0x00000003L
  1885. #define BMK_DURABILITY_ROWSET                            DBPROPVAL_BD_ROWSET
  1886. #define BMK_DURABILITY_INTRANSACTION                        DBPROPVAL_BD_INTRANSACTION
  1887. #define BMK_DURABILITY_XTRANSACTION                        DBPROPVAL_BD_XTRANSACTION
  1888. #define BMK_DURABILITY_REORGANIZATION                    DBPROPVAL_BD_REORGANIZATION
  1889. #define DBPROPVAL_BO_NOLOG                                0x00000000L
  1890. #define DBPROPVAL_BO_NOINDEXUPDATE                        0x00000001L
  1891. #define DBPROPVAL_BO_REFINTEGRITY                        0x00000002L
  1892. #if !defined(_WINBASE_)
  1893. #define OF_READ             0x00000000
  1894. #define OF_WRITE            0x00000001
  1895. #define OF_READWRITE        0x00000002
  1896. #define OF_SHARE_COMPAT     0x00000000
  1897. #define OF_SHARE_EXCLUSIVE  0x00000010
  1898. #define OF_SHARE_DENY_WRITE 0x00000020
  1899. #define OF_SHARE_DENY_READ  0x00000030
  1900. #define OF_SHARE_DENY_NONE  0x00000040
  1901. #define OF_PARSE            0x00000100
  1902. #define OF_DELETE           0x00000200
  1903. #define OF_VERIFY           0x00000400
  1904. #define OF_CANCEL           0x00000800
  1905. #define OF_CREATE           0x00001000
  1906. #define OF_PROMPT           0x00002000
  1907. #define OF_EXIST            0x00004000
  1908. #define OF_REOPEN           0x00008000
  1909. #endif // !_WINBASE_
  1910. #define DBPROPVAL_STGM_READ                    OF_READ
  1911. #define DBPROPVAL_STGM_WRITE                    OF_WRITE
  1912. #define DBPROPVAL_STGM_READWRITE                OF_READWRITE
  1913. #define DBPROPVAL_STGM_SHARE_DENY_NONE        OF_SHARE_DENY_NONE
  1914. #define DBPROPVAL_STGM_SHARE_DENY_READ        OF_SHARE_DENY_READ
  1915. #define DBPROPVAL_STGM_SHARE_DENY_WRITE        OF_SHARE_DENY_WRITE
  1916. #define DBPROPVAL_STGM_SHARE_EXCLUSIVE        OF_SHARE_EXCLUSIVE
  1917. #define DBPROPVAL_STGM_DIRECT                0x00010000
  1918. #define DBPROPVAL_STGM_TRANSACTED            0x00020000
  1919. #define DBPROPVAL_STGM_CREATE                OF_CREATE
  1920. #define DBPROPVAL_STGM_CONVERT                0x00040000
  1921. #define DBPROPVAL_STGM_FAILIFTHERE            0x00080000
  1922. #define DBPROPVAL_STGM_PRIORITY                0x00100000
  1923. #define DBPROPVAL_STGM_DELETEONRELEASE        0x00200000
  1924. #define DBPROPVAL_GB_COLLATE                 0x00000010L
  1925. #define DBPROPVAL_CS_UNINITIALIZED            0x00000000L
  1926. #define DBPROPVAL_CS_INITIALIZED                0x00000001L
  1927. #define DBPROPVAL_CS_COMMUNICATIONFAILURE    0x00000002L
  1928. #define DBPROPVAL_RD_RESETALL        0xffffffffL
  1929. #define DBPROPVAL_OS_RESOURCEPOOLING    0x00000001L
  1930. #define DBPROPVAL_OS_TXNENLISTMENT    0x00000002L
  1931. #define DBPROPVAL_OS_CLIENTCURSOR    0x00000004L
  1932. #define DBPROPVAL_OS_ENABLEALL        0xffffffffL
  1933. #define DBPROPVAL_BI_CROSSROWSET        0x00000001L
  1934. #endif // OLEDBVER >= 0x0200
  1935. //@@@- V2.0
  1936. //@@@+ V2.1
  1937. #if( OLEDBVER >= 0x0210 )
  1938. #define MDPROPVAL_NL_SCHEMAONLY                          0x00000004L
  1939. #define DBPROPVAL_OS_DISABLEALL    0x00000000L
  1940. #define DBPROPVAL_OO_ROWOBJECT                            0x00000004L
  1941. #define DBPROPVAL_OO_SCOPED                                0x00000008L
  1942. #define DBPROPVAL_OO_DIRECTBIND                            0x00000010L
  1943. #define DBPROPVAL_DST_DOCSOURCE                          0x00000004L
  1944. #define DBPROPVAL_GU_NOTSUPPORTED                         0x00000001L
  1945. #define DBPROPVAL_GU_SUFFIX                                 0x00000002L
  1946. #define DB_BINDFLAGS_DELAYFETCHCOLUMNS                    0x00000001L
  1947. #define DB_BINDFLAGS_DELAYFETCHSTREAM                     0x00000002L
  1948. #define DB_BINDFLAGS_RECURSIVE                             0x00000004L
  1949. #define DB_BINDFLAGS_OUTPUT                                 0x00000008L
  1950. #define DB_BINDFLAGS_COLLECTION                             0x00000010L
  1951. #define DB_BINDFLAGS_OPENIFEXISTS                         0x00000020L
  1952. #define DB_BINDFLAGS_OVERWRITE                             0x00000040L
  1953. #define DB_BINDFLAGS_ISSTRUCTUREDDOCUMENT                 0x00000080L
  1954. #define DBPROPVAL_ORS_TABLE                                 0x00000000L
  1955. #define DBPROPVAL_ORS_INDEX                               0x00000001L
  1956. #define DBPROPVAL_ORS_INTEGRATEDINDEX                     0x00000002L
  1957. #define DBPROPVAL_TC_DDL_LOCK                             0x00000010L
  1958. #define DBPROPVAL_ORS_STOREDPROC                             0x00000004L
  1959. #define DBPROPVAL_IN_ALLOWNULL                             0x00000000L
  1960. #endif // OLEDBVER >= 0x0210
  1961. //@@@- V2.1
  1962. #define DB_IMP_LEVEL_ANONYMOUS       0x00
  1963. #define DB_IMP_LEVEL_IDENTIFY        0x01
  1964. #define DB_IMP_LEVEL_IMPERSONATE     0x02
  1965. #define DB_IMP_LEVEL_DELEGATE        0x03
  1966. #define DBPROMPT_PROMPT              0x01
  1967. #define DBPROMPT_COMPLETE            0x02
  1968. #define DBPROMPT_COMPLETEREQUIRED    0x03
  1969. #define DBPROMPT_NOPROMPT            0x04
  1970. #define DB_PROT_LEVEL_NONE           0x00
  1971. #define DB_PROT_LEVEL_CONNECT        0x01
  1972. #define DB_PROT_LEVEL_CALL           0x02
  1973. #define DB_PROT_LEVEL_PKT            0x03
  1974. #define DB_PROT_LEVEL_PKT_INTEGRITY  0x04
  1975. #define DB_PROT_LEVEL_PKT_PRIVACY    0x05
  1976. #define DB_MODE_READ                 0x01
  1977. #define DB_MODE_WRITE                0x02
  1978. #define DB_MODE_READWRITE            0x03
  1979. #define DB_MODE_SHARE_DENY_READ      0x04
  1980. #define DB_MODE_SHARE_DENY_WRITE     0x08
  1981. #define DB_MODE_SHARE_EXCLUSIVE        0x0c
  1982. #define DB_MODE_SHARE_DENY_NONE        0x10
  1983. #define DBCOMPUTEMODE_COMPUTED       0x01
  1984. #define DBCOMPUTEMODE_DYNAMIC        0x02
  1985. #define DBCOMPUTEMODE_NOTCOMPUTED    0x03
  1986. #define DBPROPVAL_DF_INITIALLY_DEFERRED      0x01
  1987. #define DBPROPVAL_DF_INITIALLY_IMMEDIATE     0x02
  1988. #define DBPROPVAL_DF_NOT_DEFERRABLE            0x03
  1989. typedef struct  tagDBPARAMS
  1990.     {
  1991.     void __RPC_FAR *pData;
  1992.     ULONG cParamSets;
  1993.     HACCESSOR hAccessor;
  1994.     }    DBPARAMS;
  1995.  
  1996. typedef DWORD DBPARAMFLAGS;
  1997.  
  1998.  
  1999. enum DBPARAMFLAGSENUM
  2000.     {    DBPARAMFLAGS_ISINPUT    = 0x1,
  2001.     DBPARAMFLAGS_ISOUTPUT    = 0x2,
  2002.     DBPARAMFLAGS_ISSIGNED    = 0x10,
  2003.     DBPARAMFLAGS_ISNULLABLE    = 0x40,
  2004.     DBPARAMFLAGS_ISLONG    = 0x80
  2005.     };
  2006. //@@@+ V2.0
  2007. #if( OLEDBVER >= 0x0200 )
  2008.  
  2009. enum DBPARAMFLAGSENUM20
  2010.     {    DBPARAMFLAGS_SCALEISNEGATIVE    = 0x100
  2011.     };
  2012. #endif // OLEDBVER >= 0x0200
  2013. //@@@- V2.0
  2014. typedef struct  tagDBPARAMINFO
  2015.     {
  2016.     DBPARAMFLAGS dwFlags;
  2017.     ULONG iOrdinal;
  2018.     LPOLESTR pwszName;
  2019.     ITypeInfo __RPC_FAR *pTypeInfo;
  2020.     ULONG ulParamSize;
  2021.     DBTYPE wType;
  2022.     BYTE bPrecision;
  2023.     BYTE bScale;
  2024.     }    DBPARAMINFO;
  2025.  
  2026. typedef DWORD DBPROPID;
  2027.  
  2028. typedef struct  tagDBPROPIDSET
  2029.     {
  2030.     /* [size_is] */ DBPROPID __RPC_FAR *rgPropertyIDs;
  2031.     ULONG cPropertyIDs;
  2032.     GUID guidPropertySet;
  2033.     }    DBPROPIDSET;
  2034.  
  2035. typedef DWORD DBPROPFLAGS;
  2036.  
  2037.  
  2038. enum DBPROPFLAGSENUM
  2039.     {    DBPROPFLAGS_NOTSUPPORTED    = 0,
  2040.     DBPROPFLAGS_COLUMN    = 0x1,
  2041.     DBPROPFLAGS_DATASOURCE    = 0x2,
  2042.     DBPROPFLAGS_DATASOURCECREATE    = 0x4,
  2043.     DBPROPFLAGS_DATASOURCEINFO    = 0x8,
  2044.     DBPROPFLAGS_DBINIT    = 0x10,
  2045.     DBPROPFLAGS_INDEX    = 0x20,
  2046.     DBPROPFLAGS_ROWSET    = 0x40,
  2047.     DBPROPFLAGS_TABLE    = 0x80,
  2048.     DBPROPFLAGS_COLUMNOK    = 0x100,
  2049.     DBPROPFLAGS_READ    = 0x200,
  2050.     DBPROPFLAGS_WRITE    = 0x400,
  2051.     DBPROPFLAGS_REQUIRED    = 0x800,
  2052.     DBPROPFLAGS_SESSION    = 0x1000
  2053.     };
  2054. //@@@+ V2.1
  2055. #if( OLEDBVER >= 0x0210 )
  2056.  
  2057. enum DBPROPFLAGSENUM21
  2058.     {    DBPROPFLAGS_TRUSTEE    = 0x2000
  2059.     };
  2060. #endif // OLEDBVER >= 0x0210
  2061. //@@@- V2.1
  2062. typedef struct  tagDBPROPINFO
  2063.     {
  2064.     LPOLESTR pwszDescription;
  2065.     DBPROPID dwPropertyID;
  2066.     DBPROPFLAGS dwFlags;
  2067.     VARTYPE vtType;
  2068.     VARIANT vValues;
  2069.     }    DBPROPINFO;
  2070.  
  2071. #if 0 
  2072. //DBPROPINFO is an unaligned structure. MIDL workaround. 42212352
  2073. typedef DBPROPINFO __RPC_FAR *PDBPROPINFO;
  2074.  
  2075. #else
  2076. typedef DBPROPINFO UNALIGNED __RPC_FAR * PDBPROPINFO;
  2077. #endif
  2078. typedef struct  tagDBPROPINFOSET
  2079.     {
  2080.     /* [size_is] */ PDBPROPINFO rgPropertyInfos;
  2081.     ULONG cPropertyInfos;
  2082.     GUID guidPropertySet;
  2083.     }    DBPROPINFOSET;
  2084.  
  2085. typedef DWORD DBPROPOPTIONS;
  2086.  
  2087. // DBPROPOPTIONS_SETIFCHEAP is deprecated; use DBPROPOPTIONS_OPTIONAL instead.
  2088.  
  2089. enum DBPROPOPTIONSENUM
  2090.     {    DBPROPOPTIONS_REQUIRED    = 0,
  2091.     DBPROPOPTIONS_SETIFCHEAP    = 0x1,
  2092.     DBPROPOPTIONS_OPTIONAL    = 0x1
  2093.     };
  2094. typedef DWORD DBPROPSTATUS;
  2095.  
  2096.  
  2097. enum DBPROPSTATUSENUM
  2098.     {    DBPROPSTATUS_OK    = 0,
  2099.     DBPROPSTATUS_NOTSUPPORTED    = 1,
  2100.     DBPROPSTATUS_BADVALUE    = 2,
  2101.     DBPROPSTATUS_BADOPTION    = 3,
  2102.     DBPROPSTATUS_BADCOLUMN    = 4,
  2103.     DBPROPSTATUS_NOTALLSETTABLE    = 5,
  2104.     DBPROPSTATUS_NOTSETTABLE    = 6,
  2105.     DBPROPSTATUS_NOTSET    = 7,
  2106.     DBPROPSTATUS_CONFLICTING    = 8
  2107.     };
  2108. //@@@+ V2.1
  2109. #if( OLEDBVER >= 0x0210 )
  2110.  
  2111. enum DBPROPSTATUSENUM21
  2112.     {    DBPROPSTATUS_NOTAVAILABLE    = 9
  2113.     };
  2114. #endif // OLEDBVER >= 0x0210
  2115. //@@@- V2.1
  2116. typedef struct  tagDBPROP
  2117.     {
  2118.     DBPROPID dwPropertyID;
  2119.     DBPROPOPTIONS dwOptions;
  2120.     DBPROPSTATUS dwStatus;
  2121.     DBID colid;
  2122.     VARIANT vValue;
  2123.     }    DBPROP;
  2124.  
  2125. typedef struct  tagDBPROPSET
  2126.     {
  2127.     /* [size_is] */ DBPROP __RPC_FAR *rgProperties;
  2128.     ULONG cProperties;
  2129.     GUID guidPropertySet;
  2130.     }    DBPROPSET;
  2131.  
  2132. #define DBPARAMTYPE_INPUT            0x01
  2133. #define DBPARAMTYPE_INPUTOUTPUT        0x02
  2134. #define DBPARAMTYPE_OUTPUT            0x03
  2135. #define DBPARAMTYPE_RETURNVALUE        0x04
  2136. #define DB_PT_UNKNOWN                0x01
  2137. #define DB_PT_PROCEDURE                0x02
  2138. #define DB_PT_FUNCTION                0x03
  2139. #define DB_REMOTE                    0x01
  2140. #define DB_LOCAL_SHARED                0x02
  2141. #define DB_LOCAL_EXCLUSIVE            0x03
  2142. #define DB_COLLATION_ASC                0x01
  2143. #define DB_COLLATION_DESC            0x02
  2144. #define DB_UNSEARCHABLE                0x01
  2145. #define DB_LIKE_ONLY                    0x02
  2146. #define DB_ALL_EXCEPT_LIKE            0x03
  2147. #define DB_SEARCHABLE                0x04
  2148. //@@@+ V2.0
  2149. #if( OLEDBVER >= 0x0200 )
  2150. #define MDTREEOP_CHILDREN            0x01
  2151. #define MDTREEOP_SIBLINGS            0x02
  2152. #define MDTREEOP_PARENT              0x04
  2153. #define MDTREEOP_SELF                0x08
  2154. #define MDTREEOP_DESCENDANTS         0x10
  2155. #define MDTREEOP_ANCESTORS            0x20
  2156. #define MD_DIMTYPE_UNKNOWN           0x00
  2157. #define MD_DIMTYPE_TIME              0x01
  2158. #define MD_DIMTYPE_MEASURE           0x02
  2159. #define MD_DIMTYPE_OTHER             0x03
  2160. #define MDLEVEL_TYPE_UNKNOWN         0x0000
  2161. #define MDLEVEL_TYPE_REGULAR         0x0000
  2162. #define MDLEVEL_TYPE_ALL             0x0001
  2163. #define MDLEVEL_TYPE_CALCULATED      0x0002
  2164. #define MDLEVEL_TYPE_TIME            0x0004
  2165. #define MDLEVEL_TYPE_RESERVED1       0x0008
  2166. #define MDLEVEL_TYPE_TIME_YEARS      0x0014
  2167. #define MDLEVEL_TYPE_TIME_HALF_YEAR  0x0024
  2168. #define MDLEVEL_TYPE_TIME_QUARTERS   0x0044
  2169. #define MDLEVEL_TYPE_TIME_MONTHS     0x0084
  2170. #define MDLEVEL_TYPE_TIME_WEEKS      0x0104
  2171. #define MDLEVEL_TYPE_TIME_DAYS       0x0204
  2172. #define MDLEVEL_TYPE_TIME_HOURS      0x0304
  2173. #define MDLEVEL_TYPE_TIME_MINUTES    0x0404
  2174. #define MDLEVEL_TYPE_TIME_SECONDS    0x0804
  2175. #define MDLEVEL_TYPE_TIME_UNDEFINED  0x1004
  2176. #define MDMEASURE_AGGR_UNKNOWN       0x00
  2177. #define MDMEASURE_AGGR_SUM           0x01
  2178. #define MDMEASURE_AGGR_COUNT         0x02
  2179. #define MDMEASURE_AGGR_MIN           0x03
  2180. #define MDMEASURE_AGGR_MAX           0x04
  2181. #define MDMEASURE_AGGR_AVG           0x05
  2182. #define MDMEASURE_AGGR_VAR           0x06
  2183. #define MDMEASURE_AGGR_STD           0x07
  2184. #define MDMEASURE_AGGR_CALCULATED    0x7f
  2185. #define MDPROP_MEMBER                0x01
  2186. #define MDPROP_CELL                  0x02
  2187. #define MDMEMBER_TYPE_UNKNOWN        0x00
  2188. #define MDMEMBER_TYPE_REGULAR        0x01
  2189. #define MDMEMBER_TYPE_ALL            0x02
  2190. #define MDMEMBER_TYPE_MEASURE        0x03
  2191. #define MDMEMBER_TYPE_FORMULA        0x04
  2192. #define MDMEMBER_TYPE_RESERVE1       0x05
  2193. #define MDMEMBER_TYPE_RESERVE2       0x06
  2194. #define MDMEMBER_TYPE_RESERVE3       0x07
  2195. #define MDMEMBER_TYPE_RESERVE4       0x08
  2196. #define MDDISPINFO_DRILLED_DOWN                0x00010000
  2197. #define MDDISPINFO_PARENT_SAME_AS_PREV        0x00020000
  2198. #endif // OLEDBVER >= 0x0200
  2199. //@@@- V2.0
  2200. typedef DWORD DBINDEX_COL_ORDER;
  2201.  
  2202.  
  2203. enum DBINDEX_COL_ORDERENUM
  2204.     {    DBINDEX_COL_ORDER_ASC    = 0,
  2205.     DBINDEX_COL_ORDER_DESC    = DBINDEX_COL_ORDER_ASC + 1
  2206.     };
  2207. typedef struct  tagDBINDEXCOLUMNDESC
  2208.     {
  2209.     DBID __RPC_FAR *pColumnID;
  2210.     DBINDEX_COL_ORDER eIndexColOrder;
  2211.     }    DBINDEXCOLUMNDESC;
  2212.  
  2213. typedef struct  tagDBCOLUMNDESC
  2214.     {
  2215.     LPOLESTR pwszTypeName;
  2216.     ITypeInfo __RPC_FAR *pTypeInfo;
  2217.     /* [size_is] */ DBPROPSET __RPC_FAR *rgPropertySets;
  2218.     CLSID __RPC_FAR *pclsid;
  2219.     ULONG cPropertySets;
  2220.     ULONG ulColumnSize;
  2221.     DBID dbcid;
  2222.     DBTYPE wType;
  2223.     BYTE bPrecision;
  2224.     BYTE bScale;
  2225.     }    DBCOLUMNDESC;
  2226.  
  2227. //@@@+ V2.1
  2228. #if( OLEDBVER >= 0x0210 )
  2229. typedef struct  tagDBCOLUMNACCESS
  2230.     {
  2231.     void __RPC_FAR *pData;
  2232.     DBID columnid;
  2233.     ULONG cbDataLen;
  2234.     DBSTATUS dwStatus;
  2235.     ULONG cbMaxLen;
  2236.     DWORD dwReserved;
  2237.     DBTYPE wType;
  2238.     BYTE bPrecision;
  2239.     BYTE bScale;
  2240.     }    DBCOLUMNACCESS;
  2241.  
  2242. #endif // OLEDBVER >= 0x0210
  2243. //@@@- V2.1
  2244. //@@@+ V2.0
  2245. #if( OLEDBVER >= 0x0200 )
  2246. typedef DWORD DBCOLUMNDESCFLAGS;
  2247.  
  2248.  
  2249. enum DBCOLUMNDESCFLAGSENUM
  2250.     {    DBCOLUMNDESCFLAGS_TYPENAME    = 0x1,
  2251.     DBCOLUMNDESCFLAGS_ITYPEINFO    = 0x2,
  2252.     DBCOLUMNDESCFLAGS_PROPERTIES    = 0x4,
  2253.     DBCOLUMNDESCFLAGS_CLSID    = 0x8,
  2254.     DBCOLUMNDESCFLAGS_COLSIZE    = 0x10,
  2255.     DBCOLUMNDESCFLAGS_DBCID    = 0x20,
  2256.     DBCOLUMNDESCFLAGS_WTYPE    = 0x40,
  2257.     DBCOLUMNDESCFLAGS_PRECISION    = 0x80,
  2258.     DBCOLUMNDESCFLAGS_SCALE    = 0x100
  2259.     };
  2260. #endif // OLEDBVER >= 0x0200
  2261. //@@@- V2.0
  2262. typedef DWORD DBEVENTPHASE;
  2263.  
  2264.  
  2265. enum DBEVENTPHASEENUM
  2266.     {    DBEVENTPHASE_OKTODO    = 0,
  2267.     DBEVENTPHASE_ABOUTTODO    = DBEVENTPHASE_OKTODO + 1,
  2268.     DBEVENTPHASE_SYNCHAFTER    = DBEVENTPHASE_ABOUTTODO + 1,
  2269.     DBEVENTPHASE_FAILEDTODO    = DBEVENTPHASE_SYNCHAFTER + 1,
  2270.     DBEVENTPHASE_DIDEVENT    = DBEVENTPHASE_FAILEDTODO + 1
  2271.     };
  2272. typedef DWORD DBREASON;
  2273.  
  2274.  
  2275. enum DBREASONENUM
  2276.     {    DBREASON_ROWSET_FETCHPOSITIONCHANGE    = 0,
  2277.     DBREASON_ROWSET_RELEASE    = DBREASON_ROWSET_FETCHPOSITIONCHANGE + 1,
  2278.     DBREASON_COLUMN_SET    = DBREASON_ROWSET_RELEASE + 1,
  2279.     DBREASON_COLUMN_RECALCULATED    = DBREASON_COLUMN_SET + 1,
  2280.     DBREASON_ROW_ACTIVATE    = DBREASON_COLUMN_RECALCULATED + 1,
  2281.     DBREASON_ROW_RELEASE    = DBREASON_ROW_ACTIVATE + 1,
  2282.     DBREASON_ROW_DELETE    = DBREASON_ROW_RELEASE + 1,
  2283.     DBREASON_ROW_FIRSTCHANGE    = DBREASON_ROW_DELETE + 1,
  2284.     DBREASON_ROW_INSERT    = DBREASON_ROW_FIRSTCHANGE + 1,
  2285.     DBREASON_ROW_RESYNCH    = DBREASON_ROW_INSERT + 1,
  2286.     DBREASON_ROW_UNDOCHANGE    = DBREASON_ROW_RESYNCH + 1,
  2287.     DBREASON_ROW_UNDOINSERT    = DBREASON_ROW_UNDOCHANGE + 1,
  2288.     DBREASON_ROW_UNDODELETE    = DBREASON_ROW_UNDOINSERT + 1,
  2289.     DBREASON_ROW_UPDATE    = DBREASON_ROW_UNDODELETE + 1,
  2290.     DBREASON_ROWSET_CHANGED    = DBREASON_ROW_UPDATE + 1
  2291.     };
  2292. //@@@+ V1.5
  2293. #if( OLEDBVER >= 0x0150 )
  2294.  
  2295. enum DBREASONENUM15
  2296.     {    DBREASON_ROWPOSITION_CHANGED    = DBREASON_ROWSET_CHANGED + 1,
  2297.     DBREASON_ROWPOSITION_CHAPTERCHANGED    = DBREASON_ROWPOSITION_CHANGED + 1,
  2298.     DBREASON_ROWPOSITION_CLEARED    = DBREASON_ROWPOSITION_CHAPTERCHANGED + 1,
  2299.     DBREASON_ROW_ASYNCHINSERT    = DBREASON_ROWPOSITION_CLEARED + 1
  2300.     };
  2301. #endif // OLEDBVER >= 0x0150
  2302. //@@@- V1.5
  2303. //@@@+ V1.5
  2304. #if( OLEDBVER >= 0x0150 )
  2305. typedef DWORD DBCOMPAREOP;
  2306.  
  2307.  
  2308. enum DBCOMPAREOPSENUM
  2309.     {    DBCOMPAREOPS_LT    = 0,
  2310.     DBCOMPAREOPS_LE    = 1,
  2311.     DBCOMPAREOPS_EQ    = 2,
  2312.     DBCOMPAREOPS_GE    = 3,
  2313.     DBCOMPAREOPS_GT    = 4,
  2314.     DBCOMPAREOPS_BEGINSWITH    = 5,
  2315.     DBCOMPAREOPS_CONTAINS    = 6,
  2316.     DBCOMPAREOPS_NE    = 7,
  2317.     DBCOMPAREOPS_IGNORE    = 8,
  2318.     DBCOMPAREOPS_CASESENSITIVE    = 0x1000,
  2319.     DBCOMPAREOPS_CASEINSENSITIVE    = 0x2000
  2320.     };
  2321. //@@@+ V2.0
  2322. #if( OLEDBVER >= 0x0200 )
  2323.  
  2324. enum DBCOMPAREOPSENUM20
  2325.     {    DBCOMPAREOPS_NOTBEGINSWITH    = 9,
  2326.     DBCOMPAREOPS_NOTCONTAINS    = 10
  2327.     };
  2328. #endif // OLEDBVER >= 0x0200
  2329. //@@@- V2.0
  2330. typedef DWORD DBASYNCHOP;
  2331.  
  2332.  
  2333. enum DBASYNCHOPENUM
  2334.     {    DBASYNCHOP_OPEN    = 0
  2335.     };
  2336. typedef DWORD DBASYNCHPHASE;
  2337.  
  2338.  
  2339. enum DBASYNCHPHASEENUM
  2340.     {    DBASYNCHPHASE_INITIALIZATION    = 0,
  2341.     DBASYNCHPHASE_POPULATION    = DBASYNCHPHASE_INITIALIZATION + 1,
  2342.     DBASYNCHPHASE_COMPLETE    = DBASYNCHPHASE_POPULATION + 1,
  2343.     DBASYNCHPHASE_CANCELED    = DBASYNCHPHASE_COMPLETE + 1
  2344.     };
  2345. #define DB_COUNTUNAVAILABLE -1
  2346. #endif // OLEDBVER >= 0x0150
  2347. //@@@- V1.5
  2348. typedef DWORD DBSORT;
  2349.  
  2350.  
  2351. enum DBSORTENUM
  2352.     {    DBSORT_ASCENDING    = 0,
  2353.     DBSORT_DESCENDING    = DBSORT_ASCENDING + 1
  2354.     };
  2355. #if( OLEDBVER >= 0x0200 )
  2356. typedef DWORD DBCOMMANDPERSISTFLAG;
  2357.  
  2358.  
  2359. enum DBCOMMANDPERSISTFLAGENUM
  2360.     {    DBCOMMANDPERSISTFLAG_NOSAVE    = 0x1
  2361.     };
  2362. #endif // OLEDBVER >= 0x0200
  2363. //@@@- V2.0
  2364. #if( OLEDBVER >= 0x0210 )
  2365.  
  2366. enum DBCOMMANDPERSISTFLAGENUM21
  2367.     {    DBCOMMANDPERSISTFLAG_DEFAULT    = 0,
  2368.     DBCOMMANDPERSISTFLAG_PERSISTVIEW    = 0x2,
  2369.     DBCOMMANDPERSISTFLAG_PERSISTPROCEDURE    = 0x4
  2370.     };
  2371. typedef DWORD DBCONSTRAINTTYPE;
  2372.  
  2373.  
  2374. enum DBCONSTRAINTTYPEENUM
  2375.     {    DBCONSTRAINTTYPE_UNIQUE    = 0,
  2376.     DBCONSTRAINTTYPE_FOREIGNKEY    = 0x1,
  2377.     DBCONSTRAINTTYPE_PRIMARYKEY    = 0x2,
  2378.     DBCONSTRAINTTYPE_CHECK    = 0x3
  2379.     };
  2380. typedef DWORD DBUPDELRULE;
  2381.  
  2382.  
  2383. enum DBUPDELRULEENUM
  2384.     {    DBUPDELRULE_NOACTION    = 0,
  2385.     DBUPDELRULE_CASCADE    = 0x1,
  2386.     DBUPDELRULE_SETNULL    = 0x2,
  2387.     DBUPDELRULE_SETDEFAULT    = 0x3
  2388.     };
  2389. typedef DWORD DBMATCHTYPE;
  2390.  
  2391.  
  2392. enum DBMATCHTYPEENUM
  2393.     {    DBMATCHTYPE_FULL    = 0,
  2394.     DBMATCHTYPE_NONE    = 0x1,
  2395.     DBMATCHTYPE_PARTIAL    = 0x2
  2396.     };
  2397. typedef DWORD DBDEFERRABILITY;
  2398.  
  2399.  
  2400. enum DBDEFERRABILITYENUM
  2401.     {    DBDEFERRABILITY_DEFERRED    = 0x1,
  2402.     DBDEFERRABILITY_DEFERRABLE    = 0x2
  2403.     };
  2404. typedef struct  tagDBCONSTRAINTDESC
  2405.     {
  2406.     DBID __RPC_FAR *pConstraintID;
  2407.     DBCONSTRAINTTYPE ConstraintType;
  2408.     ULONG cColumns;
  2409.     /* [size_is] */ DBID __RPC_FAR *rgColumnList;
  2410.     DBID __RPC_FAR *pReferencedTableID;
  2411.     ULONG cForeignKeyColumns;
  2412.     /* [size_is] */ DBID __RPC_FAR *rgForeignKeyColumnList;
  2413.     OLECHAR __RPC_FAR *pwszConstraintText;
  2414.     DBUPDELRULE UpdateRule;
  2415.     DBUPDELRULE DeleteRule;
  2416.     DBMATCHTYPE MatchType;
  2417.     DBDEFERRABILITY Deferrability;
  2418.     ULONG cReserved;
  2419.     /* [size_is] */ DBPROPSET __RPC_FAR *rgReserved;
  2420.     }    DBCONSTRAINTDESC;
  2421.  
  2422. #endif // OLEDBVER >= 0x0210
  2423. //@@@- V2.1
  2424. //@@@+ V2.0
  2425. #if( OLEDBVER >= 0x0200 )
  2426. #define MDFF_BOLD                    0x01
  2427. #define MDFF_ITALIC                  0x02
  2428. #define MDFF_UNDERLINE               0x04
  2429. #define MDFF_STRIKEOUT               0x08
  2430. typedef struct  tagMDAXISINFO
  2431.     {
  2432.     ULONG cbSize;
  2433.     ULONG iAxis;
  2434.     ULONG cDimensions;
  2435.     ULONG cCoordinates;
  2436.     ULONG __RPC_FAR *rgcColumns;
  2437.     LPOLESTR __RPC_FAR *rgpwszDimensionNames;
  2438.     }    MDAXISINFO;
  2439.  
  2440. #define PMDAXISINFO_GETAT(rgAxisInfo, iAxis) ((MDAXISINFO *)(((BYTE *)(rgAxisInfo)) +((iAxis) * (rgAxisInfo)[0].cbSize)))
  2441. #define MDAXISINFO_GETAT(rgAxisInfo, iAxis) (*PMDAXISINFO_GETAT((rgAxisInfo), (iAxis)))
  2442. #define MDAXIS_COLUMNS               0x00000000
  2443. #define MDAXIS_ROWS                  0x00000001
  2444. #define MDAXIS_PAGES                 0x00000002
  2445. #define MDAXIS_SECTIONS              0x00000003
  2446. #define MDAXIS_CHAPTERS              0x00000004
  2447. #define MDAXIS_SLICERS               0xffffffff
  2448. #endif // OLEDBVER >= 0x0200
  2449. //@@@- V2.0
  2450.  
  2451.  
  2452. extern RPC_IF_HANDLE DBStructureDefinitions_v0_0_c_ifspec;
  2453. extern RPC_IF_HANDLE DBStructureDefinitions_v0_0_s_ifspec;
  2454. #endif /* __DBStructureDefinitions_INTERFACE_DEFINED__ */
  2455.  
  2456. #ifndef __IAccessor_INTERFACE_DEFINED__
  2457. #define __IAccessor_INTERFACE_DEFINED__
  2458.  
  2459. /****************************************
  2460.  * Generated header for interface: IAccessor
  2461.  * at Thu Nov 12 23:35:28 1998
  2462.  * using MIDL 3.01.75
  2463.  ****************************************/
  2464. /* [unique][uuid][object] */ 
  2465.  
  2466.  
  2467. typedef DWORD DBACCESSORFLAGS;
  2468.  
  2469.  
  2470. enum DBACCESSORFLAGSENUM
  2471.     {    DBACCESSOR_INVALID    = 0,
  2472.     DBACCESSOR_PASSBYREF    = 0x1,
  2473.     DBACCESSOR_ROWDATA    = 0x2,
  2474.     DBACCESSOR_PARAMETERDATA    = 0x4,
  2475.     DBACCESSOR_OPTIMIZED    = 0x8,
  2476.     DBACCESSOR_INHERITED    = 0x10
  2477.     };
  2478. typedef DWORD DBBINDSTATUS;
  2479.  
  2480.  
  2481. enum DBBINDSTATUSENUM
  2482.     {    DBBINDSTATUS_OK    = 0,
  2483.     DBBINDSTATUS_BADORDINAL    = 1,
  2484.     DBBINDSTATUS_UNSUPPORTEDCONVERSION    = 2,
  2485.     DBBINDSTATUS_BADBINDINFO    = 3,
  2486.     DBBINDSTATUS_BADSTORAGEFLAGS    = 4,
  2487.     DBBINDSTATUS_NOINTERFACE    = 5,
  2488.     DBBINDSTATUS_MULTIPLESTORAGE    = 6
  2489.     };
  2490.  
  2491. EXTERN_C const IID IID_IAccessor;
  2492.  
  2493. #if defined(__cplusplus) && !defined(CINTERFACE)
  2494.     
  2495.     interface DECLSPEC_UUID("0c733a8c-2a1c-11ce-ade5-00aa0044773d")
  2496.     IAccessor : public IUnknown
  2497.     {
  2498.     public:
  2499.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddRefAccessor( 
  2500.             /* [in] */ HACCESSOR hAccessor,
  2501.             /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount) = 0;
  2502.         
  2503.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateAccessor( 
  2504.             /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  2505.             /* [in] */ ULONG cBindings,
  2506.             /* [size_is][in] */ const DBBINDING __RPC_FAR rgBindings[  ],
  2507.             /* [in] */ ULONG cbRowSize,
  2508.             /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  2509.             /* [size_is][out] */ DBBINDSTATUS __RPC_FAR rgStatus[  ]) = 0;
  2510.         
  2511.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetBindings( 
  2512.             /* [in] */ HACCESSOR hAccessor,
  2513.             /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  2514.             /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  2515.             /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings) = 0;
  2516.         
  2517.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ReleaseAccessor( 
  2518.             /* [in] */ HACCESSOR hAccessor,
  2519.             /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount) = 0;
  2520.         
  2521.     };
  2522.     
  2523. #else     /* C style interface */
  2524.  
  2525.     typedef struct IAccessorVtbl
  2526.     {
  2527.         BEGIN_INTERFACE
  2528.         
  2529.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2530.             IAccessor __RPC_FAR * This,
  2531.             /* [in] */ REFIID riid,
  2532.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2533.         
  2534.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2535.             IAccessor __RPC_FAR * This);
  2536.         
  2537.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2538.             IAccessor __RPC_FAR * This);
  2539.         
  2540.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefAccessor )( 
  2541.             IAccessor __RPC_FAR * This,
  2542.             /* [in] */ HACCESSOR hAccessor,
  2543.             /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount);
  2544.         
  2545.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateAccessor )( 
  2546.             IAccessor __RPC_FAR * This,
  2547.             /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  2548.             /* [in] */ ULONG cBindings,
  2549.             /* [size_is][in] */ const DBBINDING __RPC_FAR rgBindings[  ],
  2550.             /* [in] */ ULONG cbRowSize,
  2551.             /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  2552.             /* [size_is][out] */ DBBINDSTATUS __RPC_FAR rgStatus[  ]);
  2553.         
  2554.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBindings )( 
  2555.             IAccessor __RPC_FAR * This,
  2556.             /* [in] */ HACCESSOR hAccessor,
  2557.             /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  2558.             /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  2559.             /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings);
  2560.         
  2561.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseAccessor )( 
  2562.             IAccessor __RPC_FAR * This,
  2563.             /* [in] */ HACCESSOR hAccessor,
  2564.             /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount);
  2565.         
  2566.         END_INTERFACE
  2567.     } IAccessorVtbl;
  2568.  
  2569.     interface IAccessor
  2570.     {
  2571.         CONST_VTBL struct IAccessorVtbl __RPC_FAR *lpVtbl;
  2572.     };
  2573.  
  2574.     
  2575.  
  2576. #ifdef COBJMACROS
  2577.  
  2578.  
  2579. #define IAccessor_QueryInterface(This,riid,ppvObject)    \
  2580.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2581.  
  2582. #define IAccessor_AddRef(This)    \
  2583.     (This)->lpVtbl -> AddRef(This)
  2584.  
  2585. #define IAccessor_Release(This)    \
  2586.     (This)->lpVtbl -> Release(This)
  2587.  
  2588.  
  2589. #define IAccessor_AddRefAccessor(This,hAccessor,pcRefCount)    \
  2590.     (This)->lpVtbl -> AddRefAccessor(This,hAccessor,pcRefCount)
  2591.  
  2592. #define IAccessor_CreateAccessor(This,dwAccessorFlags,cBindings,rgBindings,cbRowSize,phAccessor,rgStatus)    \
  2593.     (This)->lpVtbl -> CreateAccessor(This,dwAccessorFlags,cBindings,rgBindings,cbRowSize,phAccessor,rgStatus)
  2594.  
  2595. #define IAccessor_GetBindings(This,hAccessor,pdwAccessorFlags,pcBindings,prgBindings)    \
  2596.     (This)->lpVtbl -> GetBindings(This,hAccessor,pdwAccessorFlags,pcBindings,prgBindings)
  2597.  
  2598. #define IAccessor_ReleaseAccessor(This,hAccessor,pcRefCount)    \
  2599.     (This)->lpVtbl -> ReleaseAccessor(This,hAccessor,pcRefCount)
  2600.  
  2601. #endif /* COBJMACROS */
  2602.  
  2603.  
  2604. #endif     /* C style interface */
  2605.  
  2606.  
  2607.  
  2608. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_RemoteAddRefAccessor_Proxy( 
  2609.     IAccessor __RPC_FAR * This,
  2610.     /* [in] */ HACCESSOR hAccessor,
  2611.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount,
  2612.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  2613.  
  2614.  
  2615. void __RPC_STUB IAccessor_RemoteAddRefAccessor_Stub(
  2616.     IRpcStubBuffer *This,
  2617.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2618.     PRPC_MESSAGE _pRpcMessage,
  2619.     DWORD *_pdwStubPhase);
  2620.  
  2621.  
  2622. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_RemoteCreateAccessor_Proxy( 
  2623.     IAccessor __RPC_FAR * This,
  2624.     /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  2625.     /* [in] */ ULONG cBindings,
  2626.     /* [size_is][unique][in] */ DBBINDING __RPC_FAR *rgBindings,
  2627.     /* [in] */ ULONG cbRowSize,
  2628.     /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  2629.     /* [size_is][unique][out][in] */ DBBINDSTATUS __RPC_FAR *rgStatus,
  2630.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  2631.  
  2632.  
  2633. void __RPC_STUB IAccessor_RemoteCreateAccessor_Stub(
  2634.     IRpcStubBuffer *This,
  2635.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2636.     PRPC_MESSAGE _pRpcMessage,
  2637.     DWORD *_pdwStubPhase);
  2638.  
  2639.  
  2640. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_RemoteGetBindings_Proxy( 
  2641.     IAccessor __RPC_FAR * This,
  2642.     /* [in] */ HACCESSOR hAccessor,
  2643.     /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  2644.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  2645.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings,
  2646.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  2647.  
  2648.  
  2649. void __RPC_STUB IAccessor_RemoteGetBindings_Stub(
  2650.     IRpcStubBuffer *This,
  2651.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2652.     PRPC_MESSAGE _pRpcMessage,
  2653.     DWORD *_pdwStubPhase);
  2654.  
  2655.  
  2656. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_RemoteReleaseAccessor_Proxy( 
  2657.     IAccessor __RPC_FAR * This,
  2658.     /* [in] */ HACCESSOR hAccessor,
  2659.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount,
  2660.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  2661.  
  2662.  
  2663. void __RPC_STUB IAccessor_RemoteReleaseAccessor_Stub(
  2664.     IRpcStubBuffer *This,
  2665.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2666.     PRPC_MESSAGE _pRpcMessage,
  2667.     DWORD *_pdwStubPhase);
  2668.  
  2669.  
  2670.  
  2671. #endif     /* __IAccessor_INTERFACE_DEFINED__ */
  2672.  
  2673.  
  2674. #ifndef __IRowset_INTERFACE_DEFINED__
  2675. #define __IRowset_INTERFACE_DEFINED__
  2676.  
  2677. /****************************************
  2678.  * Generated header for interface: IRowset
  2679.  * at Thu Nov 12 23:35:28 1998
  2680.  * using MIDL 3.01.75
  2681.  ****************************************/
  2682. /* [unique][uuid][object][local] */ 
  2683.  
  2684.  
  2685. typedef DWORD DBROWOPTIONS;
  2686.  
  2687.  
  2688. EXTERN_C const IID IID_IRowset;
  2689.  
  2690. #if defined(__cplusplus) && !defined(CINTERFACE)
  2691.     
  2692.     interface DECLSPEC_UUID("0c733a7c-2a1c-11ce-ade5-00aa0044773d")
  2693.     IRowset : public IUnknown
  2694.     {
  2695.     public:
  2696.         virtual HRESULT STDMETHODCALLTYPE AddRefRows( 
  2697.             /* [in] */ ULONG cRows,
  2698.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2699.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2700.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]) = 0;
  2701.         
  2702.         virtual HRESULT STDMETHODCALLTYPE GetData( 
  2703.             /* [in] */ HROW hRow,
  2704.             /* [in] */ HACCESSOR hAccessor,
  2705.             /* [out] */ void __RPC_FAR *pData) = 0;
  2706.         
  2707.         virtual HRESULT STDMETHODCALLTYPE GetNextRows( 
  2708.             /* [in] */ HCHAPTER hReserved,
  2709.             /* [in] */ LONG lRowsOffset,
  2710.             /* [in] */ LONG cRows,
  2711.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  2712.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows) = 0;
  2713.         
  2714.         virtual HRESULT STDMETHODCALLTYPE ReleaseRows( 
  2715.             /* [in] */ ULONG cRows,
  2716.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2717.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  2718.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2719.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]) = 0;
  2720.         
  2721.         virtual HRESULT STDMETHODCALLTYPE RestartPosition( 
  2722.             /* [in] */ HCHAPTER hReserved) = 0;
  2723.         
  2724.     };
  2725.     
  2726. #else     /* C style interface */
  2727.  
  2728.     typedef struct IRowsetVtbl
  2729.     {
  2730.         BEGIN_INTERFACE
  2731.         
  2732.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2733.             IRowset __RPC_FAR * This,
  2734.             /* [in] */ REFIID riid,
  2735.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2736.         
  2737.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2738.             IRowset __RPC_FAR * This);
  2739.         
  2740.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2741.             IRowset __RPC_FAR * This);
  2742.         
  2743.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefRows )( 
  2744.             IRowset __RPC_FAR * This,
  2745.             /* [in] */ ULONG cRows,
  2746.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2747.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2748.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  2749.         
  2750.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetData )( 
  2751.             IRowset __RPC_FAR * This,
  2752.             /* [in] */ HROW hRow,
  2753.             /* [in] */ HACCESSOR hAccessor,
  2754.             /* [out] */ void __RPC_FAR *pData);
  2755.         
  2756.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRows )( 
  2757.             IRowset __RPC_FAR * This,
  2758.             /* [in] */ HCHAPTER hReserved,
  2759.             /* [in] */ LONG lRowsOffset,
  2760.             /* [in] */ LONG cRows,
  2761.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  2762.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  2763.         
  2764.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseRows )( 
  2765.             IRowset __RPC_FAR * This,
  2766.             /* [in] */ ULONG cRows,
  2767.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2768.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  2769.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2770.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  2771.         
  2772.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RestartPosition )( 
  2773.             IRowset __RPC_FAR * This,
  2774.             /* [in] */ HCHAPTER hReserved);
  2775.         
  2776.         END_INTERFACE
  2777.     } IRowsetVtbl;
  2778.  
  2779.     interface IRowset
  2780.     {
  2781.         CONST_VTBL struct IRowsetVtbl __RPC_FAR *lpVtbl;
  2782.     };
  2783.  
  2784.     
  2785.  
  2786. #ifdef COBJMACROS
  2787.  
  2788.  
  2789. #define IRowset_QueryInterface(This,riid,ppvObject)    \
  2790.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2791.  
  2792. #define IRowset_AddRef(This)    \
  2793.     (This)->lpVtbl -> AddRef(This)
  2794.  
  2795. #define IRowset_Release(This)    \
  2796.     (This)->lpVtbl -> Release(This)
  2797.  
  2798.  
  2799. #define IRowset_AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)    \
  2800.     (This)->lpVtbl -> AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)
  2801.  
  2802. #define IRowset_GetData(This,hRow,hAccessor,pData)    \
  2803.     (This)->lpVtbl -> GetData(This,hRow,hAccessor,pData)
  2804.  
  2805. #define IRowset_GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  2806.     (This)->lpVtbl -> GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)
  2807.  
  2808. #define IRowset_ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)    \
  2809.     (This)->lpVtbl -> ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)
  2810.  
  2811. #define IRowset_RestartPosition(This,hReserved)    \
  2812.     (This)->lpVtbl -> RestartPosition(This,hReserved)
  2813.  
  2814. #endif /* COBJMACROS */
  2815.  
  2816.  
  2817. #endif     /* C style interface */
  2818.  
  2819.  
  2820.  
  2821. HRESULT STDMETHODCALLTYPE IRowset_AddRefRows_Proxy( 
  2822.     IRowset __RPC_FAR * This,
  2823.     /* [in] */ ULONG cRows,
  2824.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2825.     /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2826.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  2827.  
  2828.  
  2829. void __RPC_STUB IRowset_AddRefRows_Stub(
  2830.     IRpcStubBuffer *This,
  2831.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2832.     PRPC_MESSAGE _pRpcMessage,
  2833.     DWORD *_pdwStubPhase);
  2834.  
  2835.  
  2836. HRESULT STDMETHODCALLTYPE IRowset_GetData_Proxy( 
  2837.     IRowset __RPC_FAR * This,
  2838.     /* [in] */ HROW hRow,
  2839.     /* [in] */ HACCESSOR hAccessor,
  2840.     /* [out] */ void __RPC_FAR *pData);
  2841.  
  2842.  
  2843. void __RPC_STUB IRowset_GetData_Stub(
  2844.     IRpcStubBuffer *This,
  2845.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2846.     PRPC_MESSAGE _pRpcMessage,
  2847.     DWORD *_pdwStubPhase);
  2848.  
  2849.  
  2850. HRESULT STDMETHODCALLTYPE IRowset_GetNextRows_Proxy( 
  2851.     IRowset __RPC_FAR * This,
  2852.     /* [in] */ HCHAPTER hReserved,
  2853.     /* [in] */ LONG lRowsOffset,
  2854.     /* [in] */ LONG cRows,
  2855.     /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  2856.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  2857.  
  2858.  
  2859. void __RPC_STUB IRowset_GetNextRows_Stub(
  2860.     IRpcStubBuffer *This,
  2861.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2862.     PRPC_MESSAGE _pRpcMessage,
  2863.     DWORD *_pdwStubPhase);
  2864.  
  2865.  
  2866. HRESULT STDMETHODCALLTYPE IRowset_ReleaseRows_Proxy( 
  2867.     IRowset __RPC_FAR * This,
  2868.     /* [in] */ ULONG cRows,
  2869.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2870.     /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  2871.     /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2872.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  2873.  
  2874.  
  2875. void __RPC_STUB IRowset_ReleaseRows_Stub(
  2876.     IRpcStubBuffer *This,
  2877.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2878.     PRPC_MESSAGE _pRpcMessage,
  2879.     DWORD *_pdwStubPhase);
  2880.  
  2881.  
  2882. HRESULT STDMETHODCALLTYPE IRowset_RestartPosition_Proxy( 
  2883.     IRowset __RPC_FAR * This,
  2884.     /* [in] */ HCHAPTER hReserved);
  2885.  
  2886.  
  2887. void __RPC_STUB IRowset_RestartPosition_Stub(
  2888.     IRpcStubBuffer *This,
  2889.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2890.     PRPC_MESSAGE _pRpcMessage,
  2891.     DWORD *_pdwStubPhase);
  2892.  
  2893.  
  2894.  
  2895. #endif     /* __IRowset_INTERFACE_DEFINED__ */
  2896.  
  2897.  
  2898. #ifndef __IRowsetInfo_INTERFACE_DEFINED__
  2899. #define __IRowsetInfo_INTERFACE_DEFINED__
  2900.  
  2901. /****************************************
  2902.  * Generated header for interface: IRowsetInfo
  2903.  * at Thu Nov 12 23:35:28 1998
  2904.  * using MIDL 3.01.75
  2905.  ****************************************/
  2906. /* [unique][uuid][object] */ 
  2907.  
  2908.  
  2909.  
  2910. EXTERN_C const IID IID_IRowsetInfo;
  2911.  
  2912. #if defined(__cplusplus) && !defined(CINTERFACE)
  2913.     
  2914.     interface DECLSPEC_UUID("0c733a55-2a1c-11ce-ade5-00aa0044773d")
  2915.     IRowsetInfo : public IUnknown
  2916.     {
  2917.     public:
  2918.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetProperties( 
  2919.             /* [in] */ const ULONG cPropertyIDSets,
  2920.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  2921.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  2922.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  2923.         
  2924.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetReferencedRowset( 
  2925.             /* [in] */ ULONG iOrdinal,
  2926.             /* [in] */ REFIID riid,
  2927.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset) = 0;
  2928.         
  2929.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSpecification( 
  2930.             /* [in] */ REFIID riid,
  2931.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification) = 0;
  2932.         
  2933.     };
  2934.     
  2935. #else     /* C style interface */
  2936.  
  2937.     typedef struct IRowsetInfoVtbl
  2938.     {
  2939.         BEGIN_INTERFACE
  2940.         
  2941.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2942.             IRowsetInfo __RPC_FAR * This,
  2943.             /* [in] */ REFIID riid,
  2944.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2945.         
  2946.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2947.             IRowsetInfo __RPC_FAR * This);
  2948.         
  2949.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2950.             IRowsetInfo __RPC_FAR * This);
  2951.         
  2952.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  2953.             IRowsetInfo __RPC_FAR * This,
  2954.             /* [in] */ const ULONG cPropertyIDSets,
  2955.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  2956.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  2957.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  2958.         
  2959.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetReferencedRowset )( 
  2960.             IRowsetInfo __RPC_FAR * This,
  2961.             /* [in] */ ULONG iOrdinal,
  2962.             /* [in] */ REFIID riid,
  2963.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset);
  2964.         
  2965.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecification )( 
  2966.             IRowsetInfo __RPC_FAR * This,
  2967.             /* [in] */ REFIID riid,
  2968.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification);
  2969.         
  2970.         END_INTERFACE
  2971.     } IRowsetInfoVtbl;
  2972.  
  2973.     interface IRowsetInfo
  2974.     {
  2975.         CONST_VTBL struct IRowsetInfoVtbl __RPC_FAR *lpVtbl;
  2976.     };
  2977.  
  2978.     
  2979.  
  2980. #ifdef COBJMACROS
  2981.  
  2982.  
  2983. #define IRowsetInfo_QueryInterface(This,riid,ppvObject)    \
  2984.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2985.  
  2986. #define IRowsetInfo_AddRef(This)    \
  2987.     (This)->lpVtbl -> AddRef(This)
  2988.  
  2989. #define IRowsetInfo_Release(This)    \
  2990.     (This)->lpVtbl -> Release(This)
  2991.  
  2992.  
  2993. #define IRowsetInfo_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  2994.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  2995.  
  2996. #define IRowsetInfo_GetReferencedRowset(This,iOrdinal,riid,ppReferencedRowset)    \
  2997.     (This)->lpVtbl -> GetReferencedRowset(This,iOrdinal,riid,ppReferencedRowset)
  2998.  
  2999. #define IRowsetInfo_GetSpecification(This,riid,ppSpecification)    \
  3000.     (This)->lpVtbl -> GetSpecification(This,riid,ppSpecification)
  3001.  
  3002. #endif /* COBJMACROS */
  3003.  
  3004.  
  3005. #endif     /* C style interface */
  3006.  
  3007.  
  3008.  
  3009. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_RemoteGetProperties_Proxy( 
  3010.     IRowsetInfo __RPC_FAR * This,
  3011.     /* [in] */ ULONG cPropertyIDSets,
  3012.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  3013.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  3014.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  3015.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3016.  
  3017.  
  3018. void __RPC_STUB IRowsetInfo_RemoteGetProperties_Stub(
  3019.     IRpcStubBuffer *This,
  3020.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3021.     PRPC_MESSAGE _pRpcMessage,
  3022.     DWORD *_pdwStubPhase);
  3023.  
  3024.  
  3025. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_RemoteGetReferencedRowset_Proxy( 
  3026.     IRowsetInfo __RPC_FAR * This,
  3027.     /* [in] */ ULONG iOrdinal,
  3028.     /* [in] */ REFIID riid,
  3029.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset,
  3030.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3031.  
  3032.  
  3033. void __RPC_STUB IRowsetInfo_RemoteGetReferencedRowset_Stub(
  3034.     IRpcStubBuffer *This,
  3035.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3036.     PRPC_MESSAGE _pRpcMessage,
  3037.     DWORD *_pdwStubPhase);
  3038.  
  3039.  
  3040. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_RemoteGetSpecification_Proxy( 
  3041.     IRowsetInfo __RPC_FAR * This,
  3042.     /* [in] */ REFIID riid,
  3043.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification,
  3044.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3045.  
  3046.  
  3047. void __RPC_STUB IRowsetInfo_RemoteGetSpecification_Stub(
  3048.     IRpcStubBuffer *This,
  3049.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3050.     PRPC_MESSAGE _pRpcMessage,
  3051.     DWORD *_pdwStubPhase);
  3052.  
  3053.  
  3054.  
  3055. #endif     /* __IRowsetInfo_INTERFACE_DEFINED__ */
  3056.  
  3057.  
  3058. #ifndef __IRowsetLocate_INTERFACE_DEFINED__
  3059. #define __IRowsetLocate_INTERFACE_DEFINED__
  3060.  
  3061. /****************************************
  3062.  * Generated header for interface: IRowsetLocate
  3063.  * at Thu Nov 12 23:35:28 1998
  3064.  * using MIDL 3.01.75
  3065.  ****************************************/
  3066. /* [unique][uuid][object][local] */ 
  3067.  
  3068.  
  3069. typedef DWORD DBCOMPARE;
  3070.  
  3071.  
  3072. enum DBCOMPAREENUM
  3073.     {    DBCOMPARE_LT    = 0,
  3074.     DBCOMPARE_EQ    = DBCOMPARE_LT + 1,
  3075.     DBCOMPARE_GT    = DBCOMPARE_EQ + 1,
  3076.     DBCOMPARE_NE    = DBCOMPARE_GT + 1,
  3077.     DBCOMPARE_NOTCOMPARABLE    = DBCOMPARE_NE + 1
  3078.     };
  3079.  
  3080. EXTERN_C const IID IID_IRowsetLocate;
  3081.  
  3082. #if defined(__cplusplus) && !defined(CINTERFACE)
  3083.     
  3084.     interface DECLSPEC_UUID("0c733a7d-2a1c-11ce-ade5-00aa0044773d")
  3085.     IRowsetLocate : public IRowset
  3086.     {
  3087.     public:
  3088.         virtual HRESULT STDMETHODCALLTYPE Compare( 
  3089.             /* [in] */ HCHAPTER hReserved,
  3090.             /* [in] */ ULONG cbBookmark1,
  3091.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  3092.             /* [in] */ ULONG cbBookmark2,
  3093.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  3094.             /* [out] */ DBCOMPARE __RPC_FAR *pComparison) = 0;
  3095.         
  3096.         virtual HRESULT STDMETHODCALLTYPE GetRowsAt( 
  3097.             /* [in] */ HWATCHREGION hReserved1,
  3098.             /* [in] */ HCHAPTER hReserved2,
  3099.             /* [in] */ ULONG cbBookmark,
  3100.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3101.             /* [in] */ LONG lRowsOffset,
  3102.             /* [in] */ LONG cRows,
  3103.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3104.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows) = 0;
  3105.         
  3106.         virtual HRESULT STDMETHODCALLTYPE GetRowsByBookmark( 
  3107.             /* [in] */ HCHAPTER hReserved,
  3108.             /* [in] */ ULONG cRows,
  3109.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3110.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3111.             /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  3112.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]) = 0;
  3113.         
  3114.         virtual HRESULT STDMETHODCALLTYPE Hash( 
  3115.             /* [in] */ HCHAPTER hReserved,
  3116.             /* [in] */ ULONG cBookmarks,
  3117.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3118.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3119.             /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  3120.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]) = 0;
  3121.         
  3122.     };
  3123.     
  3124. #else     /* C style interface */
  3125.  
  3126.     typedef struct IRowsetLocateVtbl
  3127.     {
  3128.         BEGIN_INTERFACE
  3129.         
  3130.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3131.             IRowsetLocate __RPC_FAR * This,
  3132.             /* [in] */ REFIID riid,
  3133.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3134.         
  3135.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3136.             IRowsetLocate __RPC_FAR * This);
  3137.         
  3138.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3139.             IRowsetLocate __RPC_FAR * This);
  3140.         
  3141.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefRows )( 
  3142.             IRowsetLocate __RPC_FAR * This,
  3143.             /* [in] */ ULONG cRows,
  3144.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3145.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  3146.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3147.         
  3148.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetData )( 
  3149.             IRowsetLocate __RPC_FAR * This,
  3150.             /* [in] */ HROW hRow,
  3151.             /* [in] */ HACCESSOR hAccessor,
  3152.             /* [out] */ void __RPC_FAR *pData);
  3153.         
  3154.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRows )( 
  3155.             IRowsetLocate __RPC_FAR * This,
  3156.             /* [in] */ HCHAPTER hReserved,
  3157.             /* [in] */ LONG lRowsOffset,
  3158.             /* [in] */ LONG cRows,
  3159.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3160.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3161.         
  3162.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseRows )( 
  3163.             IRowsetLocate __RPC_FAR * This,
  3164.             /* [in] */ ULONG cRows,
  3165.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3166.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  3167.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  3168.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3169.         
  3170.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RestartPosition )( 
  3171.             IRowsetLocate __RPC_FAR * This,
  3172.             /* [in] */ HCHAPTER hReserved);
  3173.         
  3174.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Compare )( 
  3175.             IRowsetLocate __RPC_FAR * This,
  3176.             /* [in] */ HCHAPTER hReserved,
  3177.             /* [in] */ ULONG cbBookmark1,
  3178.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  3179.             /* [in] */ ULONG cbBookmark2,
  3180.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  3181.             /* [out] */ DBCOMPARE __RPC_FAR *pComparison);
  3182.         
  3183.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAt )( 
  3184.             IRowsetLocate __RPC_FAR * This,
  3185.             /* [in] */ HWATCHREGION hReserved1,
  3186.             /* [in] */ HCHAPTER hReserved2,
  3187.             /* [in] */ ULONG cbBookmark,
  3188.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3189.             /* [in] */ LONG lRowsOffset,
  3190.             /* [in] */ LONG cRows,
  3191.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3192.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3193.         
  3194.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsByBookmark )( 
  3195.             IRowsetLocate __RPC_FAR * This,
  3196.             /* [in] */ HCHAPTER hReserved,
  3197.             /* [in] */ ULONG cRows,
  3198.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3199.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3200.             /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  3201.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3202.         
  3203.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Hash )( 
  3204.             IRowsetLocate __RPC_FAR * This,
  3205.             /* [in] */ HCHAPTER hReserved,
  3206.             /* [in] */ ULONG cBookmarks,
  3207.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3208.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3209.             /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  3210.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]);
  3211.         
  3212.         END_INTERFACE
  3213.     } IRowsetLocateVtbl;
  3214.  
  3215.     interface IRowsetLocate
  3216.     {
  3217.         CONST_VTBL struct IRowsetLocateVtbl __RPC_FAR *lpVtbl;
  3218.     };
  3219.  
  3220.     
  3221.  
  3222. #ifdef COBJMACROS
  3223.  
  3224.  
  3225. #define IRowsetLocate_QueryInterface(This,riid,ppvObject)    \
  3226.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3227.  
  3228. #define IRowsetLocate_AddRef(This)    \
  3229.     (This)->lpVtbl -> AddRef(This)
  3230.  
  3231. #define IRowsetLocate_Release(This)    \
  3232.     (This)->lpVtbl -> Release(This)
  3233.  
  3234.  
  3235. #define IRowsetLocate_AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)    \
  3236.     (This)->lpVtbl -> AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)
  3237.  
  3238. #define IRowsetLocate_GetData(This,hRow,hAccessor,pData)    \
  3239.     (This)->lpVtbl -> GetData(This,hRow,hAccessor,pData)
  3240.  
  3241. #define IRowsetLocate_GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3242.     (This)->lpVtbl -> GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3243.  
  3244. #define IRowsetLocate_ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)    \
  3245.     (This)->lpVtbl -> ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)
  3246.  
  3247. #define IRowsetLocate_RestartPosition(This,hReserved)    \
  3248.     (This)->lpVtbl -> RestartPosition(This,hReserved)
  3249.  
  3250.  
  3251. #define IRowsetLocate_Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)    \
  3252.     (This)->lpVtbl -> Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)
  3253.  
  3254. #define IRowsetLocate_GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3255.     (This)->lpVtbl -> GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3256.  
  3257. #define IRowsetLocate_GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)    \
  3258.     (This)->lpVtbl -> GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)
  3259.  
  3260. #define IRowsetLocate_Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)    \
  3261.     (This)->lpVtbl -> Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)
  3262.  
  3263. #endif /* COBJMACROS */
  3264.  
  3265.  
  3266. #endif     /* C style interface */
  3267.  
  3268.  
  3269.  
  3270. HRESULT STDMETHODCALLTYPE IRowsetLocate_Compare_Proxy( 
  3271.     IRowsetLocate __RPC_FAR * This,
  3272.     /* [in] */ HCHAPTER hReserved,
  3273.     /* [in] */ ULONG cbBookmark1,
  3274.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  3275.     /* [in] */ ULONG cbBookmark2,
  3276.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  3277.     /* [out] */ DBCOMPARE __RPC_FAR *pComparison);
  3278.  
  3279.  
  3280. void __RPC_STUB IRowsetLocate_Compare_Stub(
  3281.     IRpcStubBuffer *This,
  3282.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3283.     PRPC_MESSAGE _pRpcMessage,
  3284.     DWORD *_pdwStubPhase);
  3285.  
  3286.  
  3287. HRESULT STDMETHODCALLTYPE IRowsetLocate_GetRowsAt_Proxy( 
  3288.     IRowsetLocate __RPC_FAR * This,
  3289.     /* [in] */ HWATCHREGION hReserved1,
  3290.     /* [in] */ HCHAPTER hReserved2,
  3291.     /* [in] */ ULONG cbBookmark,
  3292.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3293.     /* [in] */ LONG lRowsOffset,
  3294.     /* [in] */ LONG cRows,
  3295.     /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3296.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3297.  
  3298.  
  3299. void __RPC_STUB IRowsetLocate_GetRowsAt_Stub(
  3300.     IRpcStubBuffer *This,
  3301.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3302.     PRPC_MESSAGE _pRpcMessage,
  3303.     DWORD *_pdwStubPhase);
  3304.  
  3305.  
  3306. HRESULT STDMETHODCALLTYPE IRowsetLocate_GetRowsByBookmark_Proxy( 
  3307.     IRowsetLocate __RPC_FAR * This,
  3308.     /* [in] */ HCHAPTER hReserved,
  3309.     /* [in] */ ULONG cRows,
  3310.     /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3311.     /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3312.     /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  3313.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3314.  
  3315.  
  3316. void __RPC_STUB IRowsetLocate_GetRowsByBookmark_Stub(
  3317.     IRpcStubBuffer *This,
  3318.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3319.     PRPC_MESSAGE _pRpcMessage,
  3320.     DWORD *_pdwStubPhase);
  3321.  
  3322.  
  3323. HRESULT STDMETHODCALLTYPE IRowsetLocate_Hash_Proxy( 
  3324.     IRowsetLocate __RPC_FAR * This,
  3325.     /* [in] */ HCHAPTER hReserved,
  3326.     /* [in] */ ULONG cBookmarks,
  3327.     /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3328.     /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3329.     /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  3330.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]);
  3331.  
  3332.  
  3333. void __RPC_STUB IRowsetLocate_Hash_Stub(
  3334.     IRpcStubBuffer *This,
  3335.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3336.     PRPC_MESSAGE _pRpcMessage,
  3337.     DWORD *_pdwStubPhase);
  3338.  
  3339.  
  3340.  
  3341. #endif     /* __IRowsetLocate_INTERFACE_DEFINED__ */
  3342.  
  3343.  
  3344. #ifndef __IRowsetResynch_INTERFACE_DEFINED__
  3345. #define __IRowsetResynch_INTERFACE_DEFINED__
  3346.  
  3347. /****************************************
  3348.  * Generated header for interface: IRowsetResynch
  3349.  * at Thu Nov 12 23:35:28 1998
  3350.  * using MIDL 3.01.75
  3351.  ****************************************/
  3352. /* [unique][uuid][object][local] */ 
  3353.  
  3354.  
  3355.  
  3356. EXTERN_C const IID IID_IRowsetResynch;
  3357.  
  3358. #if defined(__cplusplus) && !defined(CINTERFACE)
  3359.     
  3360.     interface DECLSPEC_UUID("0c733a84-2a1c-11ce-ade5-00aa0044773d")
  3361.     IRowsetResynch : public IUnknown
  3362.     {
  3363.     public:
  3364.         virtual HRESULT STDMETHODCALLTYPE GetVisibleData( 
  3365.             /* [in] */ HROW hRow,
  3366.             /* [in] */ HACCESSOR hAccessor,
  3367.             /* [out] */ void __RPC_FAR *pData) = 0;
  3368.         
  3369.         virtual HRESULT STDMETHODCALLTYPE ResynchRows( 
  3370.             /* [in] */ ULONG cRows,
  3371.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3372.             /* [out] */ ULONG __RPC_FAR *pcRowsResynched,
  3373.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsResynched,
  3374.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus) = 0;
  3375.         
  3376.     };
  3377.     
  3378. #else     /* C style interface */
  3379.  
  3380.     typedef struct IRowsetResynchVtbl
  3381.     {
  3382.         BEGIN_INTERFACE
  3383.         
  3384.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3385.             IRowsetResynch __RPC_FAR * This,
  3386.             /* [in] */ REFIID riid,
  3387.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3388.         
  3389.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3390.             IRowsetResynch __RPC_FAR * This);
  3391.         
  3392.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3393.             IRowsetResynch __RPC_FAR * This);
  3394.         
  3395.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVisibleData )( 
  3396.             IRowsetResynch __RPC_FAR * This,
  3397.             /* [in] */ HROW hRow,
  3398.             /* [in] */ HACCESSOR hAccessor,
  3399.             /* [out] */ void __RPC_FAR *pData);
  3400.         
  3401.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ResynchRows )( 
  3402.             IRowsetResynch __RPC_FAR * This,
  3403.             /* [in] */ ULONG cRows,
  3404.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3405.             /* [out] */ ULONG __RPC_FAR *pcRowsResynched,
  3406.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsResynched,
  3407.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  3408.         
  3409.         END_INTERFACE
  3410.     } IRowsetResynchVtbl;
  3411.  
  3412.     interface IRowsetResynch
  3413.     {
  3414.         CONST_VTBL struct IRowsetResynchVtbl __RPC_FAR *lpVtbl;
  3415.     };
  3416.  
  3417.     
  3418.  
  3419. #ifdef COBJMACROS
  3420.  
  3421.  
  3422. #define IRowsetResynch_QueryInterface(This,riid,ppvObject)    \
  3423.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3424.  
  3425. #define IRowsetResynch_AddRef(This)    \
  3426.     (This)->lpVtbl -> AddRef(This)
  3427.  
  3428. #define IRowsetResynch_Release(This)    \
  3429.     (This)->lpVtbl -> Release(This)
  3430.  
  3431.  
  3432. #define IRowsetResynch_GetVisibleData(This,hRow,hAccessor,pData)    \
  3433.     (This)->lpVtbl -> GetVisibleData(This,hRow,hAccessor,pData)
  3434.  
  3435. #define IRowsetResynch_ResynchRows(This,cRows,rghRows,pcRowsResynched,prghRowsResynched,prgRowStatus)    \
  3436.     (This)->lpVtbl -> ResynchRows(This,cRows,rghRows,pcRowsResynched,prghRowsResynched,prgRowStatus)
  3437.  
  3438. #endif /* COBJMACROS */
  3439.  
  3440.  
  3441. #endif     /* C style interface */
  3442.  
  3443.  
  3444.  
  3445. HRESULT STDMETHODCALLTYPE IRowsetResynch_GetVisibleData_Proxy( 
  3446.     IRowsetResynch __RPC_FAR * This,
  3447.     /* [in] */ HROW hRow,
  3448.     /* [in] */ HACCESSOR hAccessor,
  3449.     /* [out] */ void __RPC_FAR *pData);
  3450.  
  3451.  
  3452. void __RPC_STUB IRowsetResynch_GetVisibleData_Stub(
  3453.     IRpcStubBuffer *This,
  3454.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3455.     PRPC_MESSAGE _pRpcMessage,
  3456.     DWORD *_pdwStubPhase);
  3457.  
  3458.  
  3459. HRESULT STDMETHODCALLTYPE IRowsetResynch_ResynchRows_Proxy( 
  3460.     IRowsetResynch __RPC_FAR * This,
  3461.     /* [in] */ ULONG cRows,
  3462.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3463.     /* [out] */ ULONG __RPC_FAR *pcRowsResynched,
  3464.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsResynched,
  3465.     /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  3466.  
  3467.  
  3468. void __RPC_STUB IRowsetResynch_ResynchRows_Stub(
  3469.     IRpcStubBuffer *This,
  3470.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3471.     PRPC_MESSAGE _pRpcMessage,
  3472.     DWORD *_pdwStubPhase);
  3473.  
  3474.  
  3475.  
  3476. #endif     /* __IRowsetResynch_INTERFACE_DEFINED__ */
  3477.  
  3478.  
  3479. #ifndef __IRowsetScroll_INTERFACE_DEFINED__
  3480. #define __IRowsetScroll_INTERFACE_DEFINED__
  3481.  
  3482. /****************************************
  3483.  * Generated header for interface: IRowsetScroll
  3484.  * at Thu Nov 12 23:35:28 1998
  3485.  * using MIDL 3.01.75
  3486.  ****************************************/
  3487. /* [unique][uuid][object][local] */ 
  3488.  
  3489.  
  3490.  
  3491. EXTERN_C const IID IID_IRowsetScroll;
  3492.  
  3493. #if defined(__cplusplus) && !defined(CINTERFACE)
  3494.     
  3495.     interface DECLSPEC_UUID("0c733a7e-2a1c-11ce-ade5-00aa0044773d")
  3496.     IRowsetScroll : public IRowsetLocate
  3497.     {
  3498.     public:
  3499.         virtual HRESULT STDMETHODCALLTYPE GetApproximatePosition( 
  3500.             /* [in] */ HCHAPTER hReserved,
  3501.             /* [in] */ ULONG cbBookmark,
  3502.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3503.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  3504.             /* [out] */ ULONG __RPC_FAR *pcRows) = 0;
  3505.         
  3506.         virtual HRESULT STDMETHODCALLTYPE GetRowsAtRatio( 
  3507.             /* [in] */ HWATCHREGION hReserved1,
  3508.             /* [in] */ HCHAPTER hReserved2,
  3509.             /* [in] */ ULONG ulNumerator,
  3510.             /* [in] */ ULONG ulDenominator,
  3511.             /* [in] */ LONG cRows,
  3512.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3513.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows) = 0;
  3514.         
  3515.     };
  3516.     
  3517. #else     /* C style interface */
  3518.  
  3519.     typedef struct IRowsetScrollVtbl
  3520.     {
  3521.         BEGIN_INTERFACE
  3522.         
  3523.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3524.             IRowsetScroll __RPC_FAR * This,
  3525.             /* [in] */ REFIID riid,
  3526.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3527.         
  3528.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3529.             IRowsetScroll __RPC_FAR * This);
  3530.         
  3531.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3532.             IRowsetScroll __RPC_FAR * This);
  3533.         
  3534.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefRows )( 
  3535.             IRowsetScroll __RPC_FAR * This,
  3536.             /* [in] */ ULONG cRows,
  3537.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3538.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  3539.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3540.         
  3541.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetData )( 
  3542.             IRowsetScroll __RPC_FAR * This,
  3543.             /* [in] */ HROW hRow,
  3544.             /* [in] */ HACCESSOR hAccessor,
  3545.             /* [out] */ void __RPC_FAR *pData);
  3546.         
  3547.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRows )( 
  3548.             IRowsetScroll __RPC_FAR * This,
  3549.             /* [in] */ HCHAPTER hReserved,
  3550.             /* [in] */ LONG lRowsOffset,
  3551.             /* [in] */ LONG cRows,
  3552.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3553.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3554.         
  3555.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseRows )( 
  3556.             IRowsetScroll __RPC_FAR * This,
  3557.             /* [in] */ ULONG cRows,
  3558.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3559.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  3560.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  3561.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3562.         
  3563.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RestartPosition )( 
  3564.             IRowsetScroll __RPC_FAR * This,
  3565.             /* [in] */ HCHAPTER hReserved);
  3566.         
  3567.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Compare )( 
  3568.             IRowsetScroll __RPC_FAR * This,
  3569.             /* [in] */ HCHAPTER hReserved,
  3570.             /* [in] */ ULONG cbBookmark1,
  3571.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  3572.             /* [in] */ ULONG cbBookmark2,
  3573.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  3574.             /* [out] */ DBCOMPARE __RPC_FAR *pComparison);
  3575.         
  3576.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAt )( 
  3577.             IRowsetScroll __RPC_FAR * This,
  3578.             /* [in] */ HWATCHREGION hReserved1,
  3579.             /* [in] */ HCHAPTER hReserved2,
  3580.             /* [in] */ ULONG cbBookmark,
  3581.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3582.             /* [in] */ LONG lRowsOffset,
  3583.             /* [in] */ LONG cRows,
  3584.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3585.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3586.         
  3587.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsByBookmark )( 
  3588.             IRowsetScroll __RPC_FAR * This,
  3589.             /* [in] */ HCHAPTER hReserved,
  3590.             /* [in] */ ULONG cRows,
  3591.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3592.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3593.             /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  3594.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3595.         
  3596.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Hash )( 
  3597.             IRowsetScroll __RPC_FAR * This,
  3598.             /* [in] */ HCHAPTER hReserved,
  3599.             /* [in] */ ULONG cBookmarks,
  3600.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3601.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3602.             /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  3603.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]);
  3604.         
  3605.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetApproximatePosition )( 
  3606.             IRowsetScroll __RPC_FAR * This,
  3607.             /* [in] */ HCHAPTER hReserved,
  3608.             /* [in] */ ULONG cbBookmark,
  3609.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3610.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  3611.             /* [out] */ ULONG __RPC_FAR *pcRows);
  3612.         
  3613.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAtRatio )( 
  3614.             IRowsetScroll __RPC_FAR * This,
  3615.             /* [in] */ HWATCHREGION hReserved1,
  3616.             /* [in] */ HCHAPTER hReserved2,
  3617.             /* [in] */ ULONG ulNumerator,
  3618.             /* [in] */ ULONG ulDenominator,
  3619.             /* [in] */ LONG cRows,
  3620.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3621.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3622.         
  3623.         END_INTERFACE
  3624.     } IRowsetScrollVtbl;
  3625.  
  3626.     interface IRowsetScroll
  3627.     {
  3628.         CONST_VTBL struct IRowsetScrollVtbl __RPC_FAR *lpVtbl;
  3629.     };
  3630.  
  3631.     
  3632.  
  3633. #ifdef COBJMACROS
  3634.  
  3635.  
  3636. #define IRowsetScroll_QueryInterface(This,riid,ppvObject)    \
  3637.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3638.  
  3639. #define IRowsetScroll_AddRef(This)    \
  3640.     (This)->lpVtbl -> AddRef(This)
  3641.  
  3642. #define IRowsetScroll_Release(This)    \
  3643.     (This)->lpVtbl -> Release(This)
  3644.  
  3645.  
  3646. #define IRowsetScroll_AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)    \
  3647.     (This)->lpVtbl -> AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)
  3648.  
  3649. #define IRowsetScroll_GetData(This,hRow,hAccessor,pData)    \
  3650.     (This)->lpVtbl -> GetData(This,hRow,hAccessor,pData)
  3651.  
  3652. #define IRowsetScroll_GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3653.     (This)->lpVtbl -> GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3654.  
  3655. #define IRowsetScroll_ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)    \
  3656.     (This)->lpVtbl -> ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)
  3657.  
  3658. #define IRowsetScroll_RestartPosition(This,hReserved)    \
  3659.     (This)->lpVtbl -> RestartPosition(This,hReserved)
  3660.  
  3661.  
  3662. #define IRowsetScroll_Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)    \
  3663.     (This)->lpVtbl -> Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)
  3664.  
  3665. #define IRowsetScroll_GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3666.     (This)->lpVtbl -> GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3667.  
  3668. #define IRowsetScroll_GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)    \
  3669.     (This)->lpVtbl -> GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)
  3670.  
  3671. #define IRowsetScroll_Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)    \
  3672.     (This)->lpVtbl -> Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)
  3673.  
  3674.  
  3675. #define IRowsetScroll_GetApproximatePosition(This,hReserved,cbBookmark,pBookmark,pulPosition,pcRows)    \
  3676.     (This)->lpVtbl -> GetApproximatePosition(This,hReserved,cbBookmark,pBookmark,pulPosition,pcRows)
  3677.  
  3678. #define IRowsetScroll_GetRowsAtRatio(This,hReserved1,hReserved2,ulNumerator,ulDenominator,cRows,pcRowsObtained,prghRows)    \
  3679.     (This)->lpVtbl -> GetRowsAtRatio(This,hReserved1,hReserved2,ulNumerator,ulDenominator,cRows,pcRowsObtained,prghRows)
  3680.  
  3681. #endif /* COBJMACROS */
  3682.  
  3683.  
  3684. #endif     /* C style interface */
  3685.  
  3686.  
  3687.  
  3688. HRESULT STDMETHODCALLTYPE IRowsetScroll_GetApproximatePosition_Proxy( 
  3689.     IRowsetScroll __RPC_FAR * This,
  3690.     /* [in] */ HCHAPTER hReserved,
  3691.     /* [in] */ ULONG cbBookmark,
  3692.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3693.     /* [out] */ ULONG __RPC_FAR *pulPosition,
  3694.     /* [out] */ ULONG __RPC_FAR *pcRows);
  3695.  
  3696.  
  3697. void __RPC_STUB IRowsetScroll_GetApproximatePosition_Stub(
  3698.     IRpcStubBuffer *This,
  3699.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3700.     PRPC_MESSAGE _pRpcMessage,
  3701.     DWORD *_pdwStubPhase);
  3702.  
  3703.  
  3704. HRESULT STDMETHODCALLTYPE IRowsetScroll_GetRowsAtRatio_Proxy( 
  3705.     IRowsetScroll __RPC_FAR * This,
  3706.     /* [in] */ HWATCHREGION hReserved1,
  3707.     /* [in] */ HCHAPTER hReserved2,
  3708.     /* [in] */ ULONG ulNumerator,
  3709.     /* [in] */ ULONG ulDenominator,
  3710.     /* [in] */ LONG cRows,
  3711.     /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3712.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3713.  
  3714.  
  3715. void __RPC_STUB IRowsetScroll_GetRowsAtRatio_Stub(
  3716.     IRpcStubBuffer *This,
  3717.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3718.     PRPC_MESSAGE _pRpcMessage,
  3719.     DWORD *_pdwStubPhase);
  3720.  
  3721.  
  3722.  
  3723. #endif     /* __IRowsetScroll_INTERFACE_DEFINED__ */
  3724.  
  3725.  
  3726. /****************************************
  3727.  * Generated header for interface: __MIDL_itf_oledb_0161
  3728.  * at Thu Nov 12 23:35:28 1998
  3729.  * using MIDL 3.01.75
  3730.  ****************************************/
  3731. /* [local] */ 
  3732.  
  3733.  
  3734. //@@@+ V1.5
  3735. #if( OLEDBVER >= 0x0150 )
  3736.  
  3737.  
  3738. extern RPC_IF_HANDLE __MIDL_itf_oledb_0161_v0_0_c_ifspec;
  3739. extern RPC_IF_HANDLE __MIDL_itf_oledb_0161_v0_0_s_ifspec;
  3740.  
  3741. #ifndef __IChapteredRowset_INTERFACE_DEFINED__
  3742. #define __IChapteredRowset_INTERFACE_DEFINED__
  3743.  
  3744. /****************************************
  3745.  * Generated header for interface: IChapteredRowset
  3746.  * at Thu Nov 12 23:35:28 1998
  3747.  * using MIDL 3.01.75
  3748.  ****************************************/
  3749. /* [unique][uuid][object] */ 
  3750.  
  3751.  
  3752.  
  3753. EXTERN_C const IID IID_IChapteredRowset;
  3754.  
  3755. #if defined(__cplusplus) && !defined(CINTERFACE)
  3756.     
  3757.     interface DECLSPEC_UUID("0c733a93-2a1c-11ce-ade5-00aa0044773d")
  3758.     IChapteredRowset : public IUnknown
  3759.     {
  3760.     public:
  3761.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddRefChapter( 
  3762.             /* [in] */ HCHAPTER hChapter,
  3763.             /* [out] */ ULONG __RPC_FAR *pcRefCount) = 0;
  3764.         
  3765.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ReleaseChapter( 
  3766.             /* [in] */ HCHAPTER hChapter,
  3767.             /* [out] */ ULONG __RPC_FAR *pcRefCount) = 0;
  3768.         
  3769.     };
  3770.     
  3771. #else     /* C style interface */
  3772.  
  3773.     typedef struct IChapteredRowsetVtbl
  3774.     {
  3775.         BEGIN_INTERFACE
  3776.         
  3777.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3778.             IChapteredRowset __RPC_FAR * This,
  3779.             /* [in] */ REFIID riid,
  3780.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3781.         
  3782.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3783.             IChapteredRowset __RPC_FAR * This);
  3784.         
  3785.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3786.             IChapteredRowset __RPC_FAR * This);
  3787.         
  3788.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefChapter )( 
  3789.             IChapteredRowset __RPC_FAR * This,
  3790.             /* [in] */ HCHAPTER hChapter,
  3791.             /* [out] */ ULONG __RPC_FAR *pcRefCount);
  3792.         
  3793.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseChapter )( 
  3794.             IChapteredRowset __RPC_FAR * This,
  3795.             /* [in] */ HCHAPTER hChapter,
  3796.             /* [out] */ ULONG __RPC_FAR *pcRefCount);
  3797.         
  3798.         END_INTERFACE
  3799.     } IChapteredRowsetVtbl;
  3800.  
  3801.     interface IChapteredRowset
  3802.     {
  3803.         CONST_VTBL struct IChapteredRowsetVtbl __RPC_FAR *lpVtbl;
  3804.     };
  3805.  
  3806.     
  3807.  
  3808. #ifdef COBJMACROS
  3809.  
  3810.  
  3811. #define IChapteredRowset_QueryInterface(This,riid,ppvObject)    \
  3812.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3813.  
  3814. #define IChapteredRowset_AddRef(This)    \
  3815.     (This)->lpVtbl -> AddRef(This)
  3816.  
  3817. #define IChapteredRowset_Release(This)    \
  3818.     (This)->lpVtbl -> Release(This)
  3819.  
  3820.  
  3821. #define IChapteredRowset_AddRefChapter(This,hChapter,pcRefCount)    \
  3822.     (This)->lpVtbl -> AddRefChapter(This,hChapter,pcRefCount)
  3823.  
  3824. #define IChapteredRowset_ReleaseChapter(This,hChapter,pcRefCount)    \
  3825.     (This)->lpVtbl -> ReleaseChapter(This,hChapter,pcRefCount)
  3826.  
  3827. #endif /* COBJMACROS */
  3828.  
  3829.  
  3830. #endif     /* C style interface */
  3831.  
  3832.  
  3833.  
  3834. /* [call_as] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_RemoteAddRefChapter_Proxy( 
  3835.     IChapteredRowset __RPC_FAR * This,
  3836.     /* [in] */ HCHAPTER hChapter,
  3837.     /* [out] */ ULONG __RPC_FAR *pcRefCount,
  3838.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3839.  
  3840.  
  3841. void __RPC_STUB IChapteredRowset_RemoteAddRefChapter_Stub(
  3842.     IRpcStubBuffer *This,
  3843.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3844.     PRPC_MESSAGE _pRpcMessage,
  3845.     DWORD *_pdwStubPhase);
  3846.  
  3847.  
  3848. /* [call_as] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_RemoteReleaseChapter_Proxy( 
  3849.     IChapteredRowset __RPC_FAR * This,
  3850.     /* [in] */ HCHAPTER hChapter,
  3851.     /* [out] */ ULONG __RPC_FAR *pcRefCount,
  3852.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3853.  
  3854.  
  3855. void __RPC_STUB IChapteredRowset_RemoteReleaseChapter_Stub(
  3856.     IRpcStubBuffer *This,
  3857.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3858.     PRPC_MESSAGE _pRpcMessage,
  3859.     DWORD *_pdwStubPhase);
  3860.  
  3861.  
  3862.  
  3863. #endif     /* __IChapteredRowset_INTERFACE_DEFINED__ */
  3864.  
  3865.  
  3866. #ifndef __IRowsetFind_INTERFACE_DEFINED__
  3867. #define __IRowsetFind_INTERFACE_DEFINED__
  3868.  
  3869. /****************************************
  3870.  * Generated header for interface: IRowsetFind
  3871.  * at Thu Nov 12 23:35:28 1998
  3872.  * using MIDL 3.01.75
  3873.  ****************************************/
  3874. /* [unique][uuid][object][local] */ 
  3875.  
  3876.  
  3877.  
  3878. EXTERN_C const IID IID_IRowsetFind;
  3879.  
  3880. #if defined(__cplusplus) && !defined(CINTERFACE)
  3881.     
  3882.     interface DECLSPEC_UUID("0c733a9d-2a1c-11ce-ade5-00aa0044773d")
  3883.     IRowsetFind : public IUnknown
  3884.     {
  3885.     public:
  3886.         virtual HRESULT STDMETHODCALLTYPE FindNextRow( 
  3887.             /* [in] */ HCHAPTER hChapter,
  3888.             /* [in] */ HACCESSOR hAccessor,
  3889.             /* [in] */ void __RPC_FAR *pFindValue,
  3890.             /* [in] */ DBCOMPAREOP CompareOp,
  3891.             /* [in] */ ULONG cbBookmark,
  3892.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3893.             /* [in] */ LONG lRowsOffset,
  3894.             /* [in] */ LONG cRows,
  3895.             /* [out][in] */ ULONG __RPC_FAR *pcRowsObtained,
  3896.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows) = 0;
  3897.         
  3898.     };
  3899.     
  3900. #else     /* C style interface */
  3901.  
  3902.     typedef struct IRowsetFindVtbl
  3903.     {
  3904.         BEGIN_INTERFACE
  3905.         
  3906.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3907.             IRowsetFind __RPC_FAR * This,
  3908.             /* [in] */ REFIID riid,
  3909.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3910.         
  3911.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3912.             IRowsetFind __RPC_FAR * This);
  3913.         
  3914.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3915.             IRowsetFind __RPC_FAR * This);
  3916.         
  3917.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindNextRow )( 
  3918.             IRowsetFind __RPC_FAR * This,
  3919.             /* [in] */ HCHAPTER hChapter,
  3920.             /* [in] */ HACCESSOR hAccessor,
  3921.             /* [in] */ void __RPC_FAR *pFindValue,
  3922.             /* [in] */ DBCOMPAREOP CompareOp,
  3923.             /* [in] */ ULONG cbBookmark,
  3924.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3925.             /* [in] */ LONG lRowsOffset,
  3926.             /* [in] */ LONG cRows,
  3927.             /* [out][in] */ ULONG __RPC_FAR *pcRowsObtained,
  3928.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3929.         
  3930.         END_INTERFACE
  3931.     } IRowsetFindVtbl;
  3932.  
  3933.     interface IRowsetFind
  3934.     {
  3935.         CONST_VTBL struct IRowsetFindVtbl __RPC_FAR *lpVtbl;
  3936.     };
  3937.  
  3938.     
  3939.  
  3940. #ifdef COBJMACROS
  3941.  
  3942.  
  3943. #define IRowsetFind_QueryInterface(This,riid,ppvObject)    \
  3944.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3945.  
  3946. #define IRowsetFind_AddRef(This)    \
  3947.     (This)->lpVtbl -> AddRef(This)
  3948.  
  3949. #define IRowsetFind_Release(This)    \
  3950.     (This)->lpVtbl -> Release(This)
  3951.  
  3952.  
  3953. #define IRowsetFind_FindNextRow(This,hChapter,hAccessor,pFindValue,CompareOp,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3954.     (This)->lpVtbl -> FindNextRow(This,hChapter,hAccessor,pFindValue,CompareOp,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3955.  
  3956. #endif /* COBJMACROS */
  3957.  
  3958.  
  3959. #endif     /* C style interface */
  3960.  
  3961.  
  3962.  
  3963. HRESULT STDMETHODCALLTYPE IRowsetFind_FindNextRow_Proxy( 
  3964.     IRowsetFind __RPC_FAR * This,
  3965.     /* [in] */ HCHAPTER hChapter,
  3966.     /* [in] */ HACCESSOR hAccessor,
  3967.     /* [in] */ void __RPC_FAR *pFindValue,
  3968.     /* [in] */ DBCOMPAREOP CompareOp,
  3969.     /* [in] */ ULONG cbBookmark,
  3970.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3971.     /* [in] */ LONG lRowsOffset,
  3972.     /* [in] */ LONG cRows,
  3973.     /* [out][in] */ ULONG __RPC_FAR *pcRowsObtained,
  3974.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3975.  
  3976.  
  3977. void __RPC_STUB IRowsetFind_FindNextRow_Stub(
  3978.     IRpcStubBuffer *This,
  3979.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3980.     PRPC_MESSAGE _pRpcMessage,
  3981.     DWORD *_pdwStubPhase);
  3982.  
  3983.  
  3984.  
  3985. #endif     /* __IRowsetFind_INTERFACE_DEFINED__ */
  3986.  
  3987.  
  3988. #ifndef __IRowPosition_INTERFACE_DEFINED__
  3989. #define __IRowPosition_INTERFACE_DEFINED__
  3990.  
  3991. /****************************************
  3992.  * Generated header for interface: IRowPosition
  3993.  * at Thu Nov 12 23:35:28 1998
  3994.  * using MIDL 3.01.75
  3995.  ****************************************/
  3996. /* [unique][uuid][object] */ 
  3997.  
  3998.  
  3999. typedef DWORD DBPOSITIONFLAGS;
  4000.  
  4001.  
  4002. enum DBPOSITIONFLAGSENUM
  4003.     {    DBPOSITION_OK    = 0,
  4004.     DBPOSITION_NOROW    = DBPOSITION_OK + 1,
  4005.     DBPOSITION_BOF    = DBPOSITION_NOROW + 1,
  4006.     DBPOSITION_EOF    = DBPOSITION_BOF + 1
  4007.     };
  4008.  
  4009. EXTERN_C const IID IID_IRowPosition;
  4010.  
  4011. #if defined(__cplusplus) && !defined(CINTERFACE)
  4012.     
  4013.     interface DECLSPEC_UUID("0c733a94-2a1c-11ce-ade5-00aa0044773d")
  4014.     IRowPosition : public IUnknown
  4015.     {
  4016.     public:
  4017.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ClearRowPosition( void) = 0;
  4018.         
  4019.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRowPosition( 
  4020.             /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  4021.             /* [out] */ HROW __RPC_FAR *phRow,
  4022.             /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags) = 0;
  4023.         
  4024.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRowset( 
  4025.             /* [in] */ REFIID riid,
  4026.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  4027.         
  4028.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Initialize( 
  4029.             /* [in] */ IUnknown __RPC_FAR *pRowset) = 0;
  4030.         
  4031.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetRowPosition( 
  4032.             /* [in] */ HCHAPTER hChapter,
  4033.             /* [in] */ HROW hRow,
  4034.             /* [in] */ DBPOSITIONFLAGS dwPositionFlags) = 0;
  4035.         
  4036.     };
  4037.     
  4038. #else     /* C style interface */
  4039.  
  4040.     typedef struct IRowPositionVtbl
  4041.     {
  4042.         BEGIN_INTERFACE
  4043.         
  4044.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4045.             IRowPosition __RPC_FAR * This,
  4046.             /* [in] */ REFIID riid,
  4047.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4048.         
  4049.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4050.             IRowPosition __RPC_FAR * This);
  4051.         
  4052.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4053.             IRowPosition __RPC_FAR * This);
  4054.         
  4055.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearRowPosition )( 
  4056.             IRowPosition __RPC_FAR * This);
  4057.         
  4058.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowPosition )( 
  4059.             IRowPosition __RPC_FAR * This,
  4060.             /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  4061.             /* [out] */ HROW __RPC_FAR *phRow,
  4062.             /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags);
  4063.         
  4064.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowset )( 
  4065.             IRowPosition __RPC_FAR * This,
  4066.             /* [in] */ REFIID riid,
  4067.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  4068.         
  4069.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Initialize )( 
  4070.             IRowPosition __RPC_FAR * This,
  4071.             /* [in] */ IUnknown __RPC_FAR *pRowset);
  4072.         
  4073.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetRowPosition )( 
  4074.             IRowPosition __RPC_FAR * This,
  4075.             /* [in] */ HCHAPTER hChapter,
  4076.             /* [in] */ HROW hRow,
  4077.             /* [in] */ DBPOSITIONFLAGS dwPositionFlags);
  4078.         
  4079.         END_INTERFACE
  4080.     } IRowPositionVtbl;
  4081.  
  4082.     interface IRowPosition
  4083.     {
  4084.         CONST_VTBL struct IRowPositionVtbl __RPC_FAR *lpVtbl;
  4085.     };
  4086.  
  4087.     
  4088.  
  4089. #ifdef COBJMACROS
  4090.  
  4091.  
  4092. #define IRowPosition_QueryInterface(This,riid,ppvObject)    \
  4093.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4094.  
  4095. #define IRowPosition_AddRef(This)    \
  4096.     (This)->lpVtbl -> AddRef(This)
  4097.  
  4098. #define IRowPosition_Release(This)    \
  4099.     (This)->lpVtbl -> Release(This)
  4100.  
  4101.  
  4102. #define IRowPosition_ClearRowPosition(This)    \
  4103.     (This)->lpVtbl -> ClearRowPosition(This)
  4104.  
  4105. #define IRowPosition_GetRowPosition(This,phChapter,phRow,pdwPositionFlags)    \
  4106.     (This)->lpVtbl -> GetRowPosition(This,phChapter,phRow,pdwPositionFlags)
  4107.  
  4108. #define IRowPosition_GetRowset(This,riid,ppRowset)    \
  4109.     (This)->lpVtbl -> GetRowset(This,riid,ppRowset)
  4110.  
  4111. #define IRowPosition_Initialize(This,pRowset)    \
  4112.     (This)->lpVtbl -> Initialize(This,pRowset)
  4113.  
  4114. #define IRowPosition_SetRowPosition(This,hChapter,hRow,dwPositionFlags)    \
  4115.     (This)->lpVtbl -> SetRowPosition(This,hChapter,hRow,dwPositionFlags)
  4116.  
  4117. #endif /* COBJMACROS */
  4118.  
  4119.  
  4120. #endif     /* C style interface */
  4121.  
  4122.  
  4123.  
  4124. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteClearRowPosition_Proxy( 
  4125.     IRowPosition __RPC_FAR * This,
  4126.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4127.  
  4128.  
  4129. void __RPC_STUB IRowPosition_RemoteClearRowPosition_Stub(
  4130.     IRpcStubBuffer *This,
  4131.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4132.     PRPC_MESSAGE _pRpcMessage,
  4133.     DWORD *_pdwStubPhase);
  4134.  
  4135.  
  4136. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteGetRowPosition_Proxy( 
  4137.     IRowPosition __RPC_FAR * This,
  4138.     /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  4139.     /* [out] */ HROW __RPC_FAR *phRow,
  4140.     /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags,
  4141.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4142.  
  4143.  
  4144. void __RPC_STUB IRowPosition_RemoteGetRowPosition_Stub(
  4145.     IRpcStubBuffer *This,
  4146.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4147.     PRPC_MESSAGE _pRpcMessage,
  4148.     DWORD *_pdwStubPhase);
  4149.  
  4150.  
  4151. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteGetRowset_Proxy( 
  4152.     IRowPosition __RPC_FAR * This,
  4153.     /* [in] */ REFIID riid,
  4154.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  4155.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4156.  
  4157.  
  4158. void __RPC_STUB IRowPosition_RemoteGetRowset_Stub(
  4159.     IRpcStubBuffer *This,
  4160.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4161.     PRPC_MESSAGE _pRpcMessage,
  4162.     DWORD *_pdwStubPhase);
  4163.  
  4164.  
  4165. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteInitialize_Proxy( 
  4166.     IRowPosition __RPC_FAR * This,
  4167.     /* [in] */ IUnknown __RPC_FAR *pRowset,
  4168.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4169.  
  4170.  
  4171. void __RPC_STUB IRowPosition_RemoteInitialize_Stub(
  4172.     IRpcStubBuffer *This,
  4173.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4174.     PRPC_MESSAGE _pRpcMessage,
  4175.     DWORD *_pdwStubPhase);
  4176.  
  4177.  
  4178. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteSetRowPosition_Proxy( 
  4179.     IRowPosition __RPC_FAR * This,
  4180.     /* [in] */ HCHAPTER hChapter,
  4181.     /* [in] */ HROW hRow,
  4182.     /* [in] */ DBPOSITIONFLAGS dwPositionFlags,
  4183.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4184.  
  4185.  
  4186. void __RPC_STUB IRowPosition_RemoteSetRowPosition_Stub(
  4187.     IRpcStubBuffer *This,
  4188.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4189.     PRPC_MESSAGE _pRpcMessage,
  4190.     DWORD *_pdwStubPhase);
  4191.  
  4192.  
  4193.  
  4194. #endif     /* __IRowPosition_INTERFACE_DEFINED__ */
  4195.  
  4196.  
  4197. #ifndef __IRowPositionChange_INTERFACE_DEFINED__
  4198. #define __IRowPositionChange_INTERFACE_DEFINED__
  4199.  
  4200. /****************************************
  4201.  * Generated header for interface: IRowPositionChange
  4202.  * at Thu Nov 12 23:35:28 1998
  4203.  * using MIDL 3.01.75
  4204.  ****************************************/
  4205. /* [unique][uuid][object] */ 
  4206.  
  4207.  
  4208.  
  4209. EXTERN_C const IID IID_IRowPositionChange;
  4210.  
  4211. #if defined(__cplusplus) && !defined(CINTERFACE)
  4212.     
  4213.     interface DECLSPEC_UUID("0997a571-126e-11d0-9f8a-00a0c9a0631e")
  4214.     IRowPositionChange : public IUnknown
  4215.     {
  4216.     public:
  4217.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnRowPositionChange( 
  4218.             /* [in] */ DBREASON eReason,
  4219.             /* [in] */ DBEVENTPHASE ePhase,
  4220.             /* [in] */ BOOL fCantDeny) = 0;
  4221.         
  4222.     };
  4223.     
  4224. #else     /* C style interface */
  4225.  
  4226.     typedef struct IRowPositionChangeVtbl
  4227.     {
  4228.         BEGIN_INTERFACE
  4229.         
  4230.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4231.             IRowPositionChange __RPC_FAR * This,
  4232.             /* [in] */ REFIID riid,
  4233.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4234.         
  4235.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4236.             IRowPositionChange __RPC_FAR * This);
  4237.         
  4238.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4239.             IRowPositionChange __RPC_FAR * This);
  4240.         
  4241.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnRowPositionChange )( 
  4242.             IRowPositionChange __RPC_FAR * This,
  4243.             /* [in] */ DBREASON eReason,
  4244.             /* [in] */ DBEVENTPHASE ePhase,
  4245.             /* [in] */ BOOL fCantDeny);
  4246.         
  4247.         END_INTERFACE
  4248.     } IRowPositionChangeVtbl;
  4249.  
  4250.     interface IRowPositionChange
  4251.     {
  4252.         CONST_VTBL struct IRowPositionChangeVtbl __RPC_FAR *lpVtbl;
  4253.     };
  4254.  
  4255.     
  4256.  
  4257. #ifdef COBJMACROS
  4258.  
  4259.  
  4260. #define IRowPositionChange_QueryInterface(This,riid,ppvObject)    \
  4261.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4262.  
  4263. #define IRowPositionChange_AddRef(This)    \
  4264.     (This)->lpVtbl -> AddRef(This)
  4265.  
  4266. #define IRowPositionChange_Release(This)    \
  4267.     (This)->lpVtbl -> Release(This)
  4268.  
  4269.  
  4270. #define IRowPositionChange_OnRowPositionChange(This,eReason,ePhase,fCantDeny)    \
  4271.     (This)->lpVtbl -> OnRowPositionChange(This,eReason,ePhase,fCantDeny)
  4272.  
  4273. #endif /* COBJMACROS */
  4274.  
  4275.  
  4276. #endif     /* C style interface */
  4277.  
  4278.  
  4279.  
  4280. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPositionChange_RemoteOnRowPositionChange_Proxy( 
  4281.     IRowPositionChange __RPC_FAR * This,
  4282.     /* [in] */ DBREASON eReason,
  4283.     /* [in] */ DBEVENTPHASE ePhase,
  4284.     /* [in] */ BOOL fCantDeny,
  4285.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4286.  
  4287.  
  4288. void __RPC_STUB IRowPositionChange_RemoteOnRowPositionChange_Stub(
  4289.     IRpcStubBuffer *This,
  4290.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4291.     PRPC_MESSAGE _pRpcMessage,
  4292.     DWORD *_pdwStubPhase);
  4293.  
  4294.  
  4295.  
  4296. #endif     /* __IRowPositionChange_INTERFACE_DEFINED__ */
  4297.  
  4298.  
  4299. #ifndef __IViewRowset_INTERFACE_DEFINED__
  4300. #define __IViewRowset_INTERFACE_DEFINED__
  4301.  
  4302. /****************************************
  4303.  * Generated header for interface: IViewRowset
  4304.  * at Thu Nov 12 23:35:28 1998
  4305.  * using MIDL 3.01.75
  4306.  ****************************************/
  4307. /* [unique][uuid][object] */ 
  4308.  
  4309.  
  4310.  
  4311. EXTERN_C const IID IID_IViewRowset;
  4312.  
  4313. #if defined(__cplusplus) && !defined(CINTERFACE)
  4314.     
  4315.     interface DECLSPEC_UUID("0c733a97-2a1c-11ce-ade5-00aa0044773d")
  4316.     IViewRowset : public IUnknown
  4317.     {
  4318.     public:
  4319.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSpecification( 
  4320.             /* [in] */ REFIID riid,
  4321.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject) = 0;
  4322.         
  4323.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenViewRowset( 
  4324.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4325.             /* [in] */ REFIID riid,
  4326.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  4327.         
  4328.     };
  4329.     
  4330. #else     /* C style interface */
  4331.  
  4332.     typedef struct IViewRowsetVtbl
  4333.     {
  4334.         BEGIN_INTERFACE
  4335.         
  4336.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4337.             IViewRowset __RPC_FAR * This,
  4338.             /* [in] */ REFIID riid,
  4339.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4340.         
  4341.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4342.             IViewRowset __RPC_FAR * This);
  4343.         
  4344.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4345.             IViewRowset __RPC_FAR * This);
  4346.         
  4347.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecification )( 
  4348.             IViewRowset __RPC_FAR * This,
  4349.             /* [in] */ REFIID riid,
  4350.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject);
  4351.         
  4352.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenViewRowset )( 
  4353.             IViewRowset __RPC_FAR * This,
  4354.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4355.             /* [in] */ REFIID riid,
  4356.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  4357.         
  4358.         END_INTERFACE
  4359.     } IViewRowsetVtbl;
  4360.  
  4361.     interface IViewRowset
  4362.     {
  4363.         CONST_VTBL struct IViewRowsetVtbl __RPC_FAR *lpVtbl;
  4364.     };
  4365.  
  4366.     
  4367.  
  4368. #ifdef COBJMACROS
  4369.  
  4370.  
  4371. #define IViewRowset_QueryInterface(This,riid,ppvObject)    \
  4372.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4373.  
  4374. #define IViewRowset_AddRef(This)    \
  4375.     (This)->lpVtbl -> AddRef(This)
  4376.  
  4377. #define IViewRowset_Release(This)    \
  4378.     (This)->lpVtbl -> Release(This)
  4379.  
  4380.  
  4381. #define IViewRowset_GetSpecification(This,riid,ppObject)    \
  4382.     (This)->lpVtbl -> GetSpecification(This,riid,ppObject)
  4383.  
  4384. #define IViewRowset_OpenViewRowset(This,pUnkOuter,riid,ppRowset)    \
  4385.     (This)->lpVtbl -> OpenViewRowset(This,pUnkOuter,riid,ppRowset)
  4386.  
  4387. #endif /* COBJMACROS */
  4388.  
  4389.  
  4390. #endif     /* C style interface */
  4391.  
  4392.  
  4393.  
  4394. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewRowset_RemoteGetSpecification_Proxy( 
  4395.     IViewRowset __RPC_FAR * This,
  4396.     /* [in] */ REFIID riid,
  4397.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject,
  4398.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4399.  
  4400.  
  4401. void __RPC_STUB IViewRowset_RemoteGetSpecification_Stub(
  4402.     IRpcStubBuffer *This,
  4403.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4404.     PRPC_MESSAGE _pRpcMessage,
  4405.     DWORD *_pdwStubPhase);
  4406.  
  4407.  
  4408. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewRowset_RemoteOpenViewRowset_Proxy( 
  4409.     IViewRowset __RPC_FAR * This,
  4410.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4411.     /* [in] */ REFIID riid,
  4412.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  4413.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4414.  
  4415.  
  4416. void __RPC_STUB IViewRowset_RemoteOpenViewRowset_Stub(
  4417.     IRpcStubBuffer *This,
  4418.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4419.     PRPC_MESSAGE _pRpcMessage,
  4420.     DWORD *_pdwStubPhase);
  4421.  
  4422.  
  4423.  
  4424. #endif     /* __IViewRowset_INTERFACE_DEFINED__ */
  4425.  
  4426.  
  4427. #ifndef __IViewChapter_INTERFACE_DEFINED__
  4428. #define __IViewChapter_INTERFACE_DEFINED__
  4429.  
  4430. /****************************************
  4431.  * Generated header for interface: IViewChapter
  4432.  * at Thu Nov 12 23:35:28 1998
  4433.  * using MIDL 3.01.75
  4434.  ****************************************/
  4435. /* [unique][uuid][object] */ 
  4436.  
  4437.  
  4438.  
  4439. EXTERN_C const IID IID_IViewChapter;
  4440.  
  4441. #if defined(__cplusplus) && !defined(CINTERFACE)
  4442.     
  4443.     interface DECLSPEC_UUID("0c733a98-2a1c-11ce-ade5-00aa0044773d")
  4444.     IViewChapter : public IUnknown
  4445.     {
  4446.     public:
  4447.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSpecification( 
  4448.             /* [in] */ REFIID riid,
  4449.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  4450.         
  4451.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenViewChapter( 
  4452.             /* [in] */ HCHAPTER hSource,
  4453.             /* [out] */ HCHAPTER __RPC_FAR *phViewChapter) = 0;
  4454.         
  4455.     };
  4456.     
  4457. #else     /* C style interface */
  4458.  
  4459.     typedef struct IViewChapterVtbl
  4460.     {
  4461.         BEGIN_INTERFACE
  4462.         
  4463.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4464.             IViewChapter __RPC_FAR * This,
  4465.             /* [in] */ REFIID riid,
  4466.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4467.         
  4468.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4469.             IViewChapter __RPC_FAR * This);
  4470.         
  4471.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4472.             IViewChapter __RPC_FAR * This);
  4473.         
  4474.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecification )( 
  4475.             IViewChapter __RPC_FAR * This,
  4476.             /* [in] */ REFIID riid,
  4477.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  4478.         
  4479.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenViewChapter )( 
  4480.             IViewChapter __RPC_FAR * This,
  4481.             /* [in] */ HCHAPTER hSource,
  4482.             /* [out] */ HCHAPTER __RPC_FAR *phViewChapter);
  4483.         
  4484.         END_INTERFACE
  4485.     } IViewChapterVtbl;
  4486.  
  4487.     interface IViewChapter
  4488.     {
  4489.         CONST_VTBL struct IViewChapterVtbl __RPC_FAR *lpVtbl;
  4490.     };
  4491.  
  4492.     
  4493.  
  4494. #ifdef COBJMACROS
  4495.  
  4496.  
  4497. #define IViewChapter_QueryInterface(This,riid,ppvObject)    \
  4498.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4499.  
  4500. #define IViewChapter_AddRef(This)    \
  4501.     (This)->lpVtbl -> AddRef(This)
  4502.  
  4503. #define IViewChapter_Release(This)    \
  4504.     (This)->lpVtbl -> Release(This)
  4505.  
  4506.  
  4507. #define IViewChapter_GetSpecification(This,riid,ppRowset)    \
  4508.     (This)->lpVtbl -> GetSpecification(This,riid,ppRowset)
  4509.  
  4510. #define IViewChapter_OpenViewChapter(This,hSource,phViewChapter)    \
  4511.     (This)->lpVtbl -> OpenViewChapter(This,hSource,phViewChapter)
  4512.  
  4513. #endif /* COBJMACROS */
  4514.  
  4515.  
  4516. #endif     /* C style interface */
  4517.  
  4518.  
  4519.  
  4520. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewChapter_RemoteGetSpecification_Proxy( 
  4521.     IViewChapter __RPC_FAR * This,
  4522.     /* [in] */ REFIID riid,
  4523.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  4524.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4525.  
  4526.  
  4527. void __RPC_STUB IViewChapter_RemoteGetSpecification_Stub(
  4528.     IRpcStubBuffer *This,
  4529.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4530.     PRPC_MESSAGE _pRpcMessage,
  4531.     DWORD *_pdwStubPhase);
  4532.  
  4533.  
  4534. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewChapter_RemoteOpenViewChapter_Proxy( 
  4535.     IViewChapter __RPC_FAR * This,
  4536.     /* [in] */ HCHAPTER hSource,
  4537.     /* [out] */ HCHAPTER __RPC_FAR *phViewChapter,
  4538.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4539.  
  4540.  
  4541. void __RPC_STUB IViewChapter_RemoteOpenViewChapter_Stub(
  4542.     IRpcStubBuffer *This,
  4543.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4544.     PRPC_MESSAGE _pRpcMessage,
  4545.     DWORD *_pdwStubPhase);
  4546.  
  4547.  
  4548.  
  4549. #endif     /* __IViewChapter_INTERFACE_DEFINED__ */
  4550.  
  4551.  
  4552. #ifndef __IViewSort_INTERFACE_DEFINED__
  4553. #define __IViewSort_INTERFACE_DEFINED__
  4554.  
  4555. /****************************************
  4556.  * Generated header for interface: IViewSort
  4557.  * at Thu Nov 12 23:35:28 1998
  4558.  * using MIDL 3.01.75
  4559.  ****************************************/
  4560. /* [unique][uuid][object] */ 
  4561.  
  4562.  
  4563.  
  4564. EXTERN_C const IID IID_IViewSort;
  4565.  
  4566. #if defined(__cplusplus) && !defined(CINTERFACE)
  4567.     
  4568.     interface DECLSPEC_UUID("0c733a9a-2a1c-11ce-ade5-00aa0044773d")
  4569.     IViewSort : public IUnknown
  4570.     {
  4571.     public:
  4572.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSortOrder( 
  4573.             /* [out] */ ULONG __RPC_FAR *pcValues,
  4574.             /* [out] */ ULONG __RPC_FAR *__RPC_FAR prgColumns[  ],
  4575.             /* [out] */ DBSORT __RPC_FAR *__RPC_FAR prgOrders[  ]) = 0;
  4576.         
  4577.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetSortOrder( 
  4578.             /* [in] */ ULONG cValues,
  4579.             /* [size_is][in] */ const ULONG __RPC_FAR rgColumns[  ],
  4580.             /* [size_is][in] */ const DBSORT __RPC_FAR rgOrders[  ]) = 0;
  4581.         
  4582.     };
  4583.     
  4584. #else     /* C style interface */
  4585.  
  4586.     typedef struct IViewSortVtbl
  4587.     {
  4588.         BEGIN_INTERFACE
  4589.         
  4590.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4591.             IViewSort __RPC_FAR * This,
  4592.             /* [in] */ REFIID riid,
  4593.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4594.         
  4595.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4596.             IViewSort __RPC_FAR * This);
  4597.         
  4598.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4599.             IViewSort __RPC_FAR * This);
  4600.         
  4601.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSortOrder )( 
  4602.             IViewSort __RPC_FAR * This,
  4603.             /* [out] */ ULONG __RPC_FAR *pcValues,
  4604.             /* [out] */ ULONG __RPC_FAR *__RPC_FAR prgColumns[  ],
  4605.             /* [out] */ DBSORT __RPC_FAR *__RPC_FAR prgOrders[  ]);
  4606.         
  4607.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSortOrder )( 
  4608.             IViewSort __RPC_FAR * This,
  4609.             /* [in] */ ULONG cValues,
  4610.             /* [size_is][in] */ const ULONG __RPC_FAR rgColumns[  ],
  4611.             /* [size_is][in] */ const DBSORT __RPC_FAR rgOrders[  ]);
  4612.         
  4613.         END_INTERFACE
  4614.     } IViewSortVtbl;
  4615.  
  4616.     interface IViewSort
  4617.     {
  4618.         CONST_VTBL struct IViewSortVtbl __RPC_FAR *lpVtbl;
  4619.     };
  4620.  
  4621.     
  4622.  
  4623. #ifdef COBJMACROS
  4624.  
  4625.  
  4626. #define IViewSort_QueryInterface(This,riid,ppvObject)    \
  4627.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4628.  
  4629. #define IViewSort_AddRef(This)    \
  4630.     (This)->lpVtbl -> AddRef(This)
  4631.  
  4632. #define IViewSort_Release(This)    \
  4633.     (This)->lpVtbl -> Release(This)
  4634.  
  4635.  
  4636. #define IViewSort_GetSortOrder(This,pcValues,prgColumns,prgOrders)    \
  4637.     (This)->lpVtbl -> GetSortOrder(This,pcValues,prgColumns,prgOrders)
  4638.  
  4639. #define IViewSort_SetSortOrder(This,cValues,rgColumns,rgOrders)    \
  4640.     (This)->lpVtbl -> SetSortOrder(This,cValues,rgColumns,rgOrders)
  4641.  
  4642. #endif /* COBJMACROS */
  4643.  
  4644.  
  4645. #endif     /* C style interface */
  4646.  
  4647.  
  4648.  
  4649. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewSort_RemoteGetSortOrder_Proxy( 
  4650.     IViewSort __RPC_FAR * This,
  4651.     /* [out][in] */ ULONG __RPC_FAR *pcValues,
  4652.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgColumns,
  4653.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgOrders,
  4654.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4655.  
  4656.  
  4657. void __RPC_STUB IViewSort_RemoteGetSortOrder_Stub(
  4658.     IRpcStubBuffer *This,
  4659.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4660.     PRPC_MESSAGE _pRpcMessage,
  4661.     DWORD *_pdwStubPhase);
  4662.  
  4663.  
  4664. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewSort_RemoteSetSortOrder_Proxy( 
  4665.     IViewSort __RPC_FAR * This,
  4666.     /* [in] */ ULONG cValues,
  4667.     /* [size_is][in] */ const ULONG __RPC_FAR *rgColumns,
  4668.     /* [size_is][in] */ const DBSORT __RPC_FAR *rgOrders,
  4669.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4670.  
  4671.  
  4672. void __RPC_STUB IViewSort_RemoteSetSortOrder_Stub(
  4673.     IRpcStubBuffer *This,
  4674.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4675.     PRPC_MESSAGE _pRpcMessage,
  4676.     DWORD *_pdwStubPhase);
  4677.  
  4678.  
  4679.  
  4680. #endif     /* __IViewSort_INTERFACE_DEFINED__ */
  4681.  
  4682.  
  4683. #ifndef __IViewFilter_INTERFACE_DEFINED__
  4684. #define __IViewFilter_INTERFACE_DEFINED__
  4685.  
  4686. /****************************************
  4687.  * Generated header for interface: IViewFilter
  4688.  * at Thu Nov 12 23:35:28 1998
  4689.  * using MIDL 3.01.75
  4690.  ****************************************/
  4691. /* [unique][uuid][object] */ 
  4692.  
  4693.  
  4694.  
  4695. EXTERN_C const IID IID_IViewFilter;
  4696.  
  4697. #if defined(__cplusplus) && !defined(CINTERFACE)
  4698.     
  4699.     interface DECLSPEC_UUID("0c733a9b-2a1c-11ce-ade5-00aa0044773d")
  4700.     IViewFilter : public IUnknown
  4701.     {
  4702.     public:
  4703.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetFilter( 
  4704.             /* [in] */ HACCESSOR hAccessor,
  4705.             /* [out] */ ULONG __RPC_FAR *pcRows,
  4706.             /* [out] */ DBCOMPAREOP __RPC_FAR *__RPC_FAR pCompareOps[  ],
  4707.             /* [out] */ void __RPC_FAR *pCriteriaData) = 0;
  4708.         
  4709.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetFilterBindings( 
  4710.             /* [out] */ ULONG __RPC_FAR *pcBindings,
  4711.             /* [out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings) = 0;
  4712.         
  4713.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetFilter( 
  4714.             /* [in] */ HACCESSOR hAccessor,
  4715.             /* [in] */ ULONG cRows,
  4716.             /* [in] */ DBCOMPAREOP __RPC_FAR CompareOps[  ],
  4717.             /* [in] */ void __RPC_FAR *pCriteriaData) = 0;
  4718.         
  4719.     };
  4720.     
  4721. #else     /* C style interface */
  4722.  
  4723.     typedef struct IViewFilterVtbl
  4724.     {
  4725.         BEGIN_INTERFACE
  4726.         
  4727.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4728.             IViewFilter __RPC_FAR * This,
  4729.             /* [in] */ REFIID riid,
  4730.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4731.         
  4732.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4733.             IViewFilter __RPC_FAR * This);
  4734.         
  4735.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4736.             IViewFilter __RPC_FAR * This);
  4737.         
  4738.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFilter )( 
  4739.             IViewFilter __RPC_FAR * This,
  4740.             /* [in] */ HACCESSOR hAccessor,
  4741.             /* [out] */ ULONG __RPC_FAR *pcRows,
  4742.             /* [out] */ DBCOMPAREOP __RPC_FAR *__RPC_FAR pCompareOps[  ],
  4743.             /* [out] */ void __RPC_FAR *pCriteriaData);
  4744.         
  4745.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFilterBindings )( 
  4746.             IViewFilter __RPC_FAR * This,
  4747.             /* [out] */ ULONG __RPC_FAR *pcBindings,
  4748.             /* [out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings);
  4749.         
  4750.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFilter )( 
  4751.             IViewFilter __RPC_FAR * This,
  4752.             /* [in] */ HACCESSOR hAccessor,
  4753.             /* [in] */ ULONG cRows,
  4754.             /* [in] */ DBCOMPAREOP __RPC_FAR CompareOps[  ],
  4755.             /* [in] */ void __RPC_FAR *pCriteriaData);
  4756.         
  4757.         END_INTERFACE
  4758.     } IViewFilterVtbl;
  4759.  
  4760.     interface IViewFilter
  4761.     {
  4762.         CONST_VTBL struct IViewFilterVtbl __RPC_FAR *lpVtbl;
  4763.     };
  4764.  
  4765.     
  4766.  
  4767. #ifdef COBJMACROS
  4768.  
  4769.  
  4770. #define IViewFilter_QueryInterface(This,riid,ppvObject)    \
  4771.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4772.  
  4773. #define IViewFilter_AddRef(This)    \
  4774.     (This)->lpVtbl -> AddRef(This)
  4775.  
  4776. #define IViewFilter_Release(This)    \
  4777.     (This)->lpVtbl -> Release(This)
  4778.  
  4779.  
  4780. #define IViewFilter_GetFilter(This,hAccessor,pcRows,pCompareOps,pCriteriaData)    \
  4781.     (This)->lpVtbl -> GetFilter(This,hAccessor,pcRows,pCompareOps,pCriteriaData)
  4782.  
  4783. #define IViewFilter_GetFilterBindings(This,pcBindings,prgBindings)    \
  4784.     (This)->lpVtbl -> GetFilterBindings(This,pcBindings,prgBindings)
  4785.  
  4786. #define IViewFilter_SetFilter(This,hAccessor,cRows,CompareOps,pCriteriaData)    \
  4787.     (This)->lpVtbl -> SetFilter(This,hAccessor,cRows,CompareOps,pCriteriaData)
  4788.  
  4789. #endif /* COBJMACROS */
  4790.  
  4791.  
  4792. #endif     /* C style interface */
  4793.  
  4794.  
  4795.  
  4796. /* [local] */ HRESULT STDMETHODCALLTYPE IViewFilter_GetFilter_Proxy( 
  4797.     IViewFilter __RPC_FAR * This,
  4798.     /* [in] */ HACCESSOR hAccessor,
  4799.     /* [out] */ ULONG __RPC_FAR *pcRows,
  4800.     /* [out] */ DBCOMPAREOP __RPC_FAR *__RPC_FAR pCompareOps[  ],
  4801.     /* [out] */ void __RPC_FAR *pCriteriaData);
  4802.  
  4803.  
  4804. void __RPC_STUB IViewFilter_GetFilter_Stub(
  4805.     IRpcStubBuffer *This,
  4806.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4807.     PRPC_MESSAGE _pRpcMessage,
  4808.     DWORD *_pdwStubPhase);
  4809.  
  4810.  
  4811. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewFilter_RemoteGetFilterBindings_Proxy( 
  4812.     IViewFilter __RPC_FAR * This,
  4813.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  4814.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings,
  4815.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4816.  
  4817.  
  4818. void __RPC_STUB IViewFilter_RemoteGetFilterBindings_Stub(
  4819.     IRpcStubBuffer *This,
  4820.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4821.     PRPC_MESSAGE _pRpcMessage,
  4822.     DWORD *_pdwStubPhase);
  4823.  
  4824.  
  4825. /* [local] */ HRESULT STDMETHODCALLTYPE IViewFilter_SetFilter_Proxy( 
  4826.     IViewFilter __RPC_FAR * This,
  4827.     /* [in] */ HACCESSOR hAccessor,
  4828.     /* [in] */ ULONG cRows,
  4829.     /* [in] */ DBCOMPAREOP __RPC_FAR CompareOps[  ],
  4830.     /* [in] */ void __RPC_FAR *pCriteriaData);
  4831.  
  4832.  
  4833. void __RPC_STUB IViewFilter_SetFilter_Stub(
  4834.     IRpcStubBuffer *This,
  4835.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4836.     PRPC_MESSAGE _pRpcMessage,
  4837.     DWORD *_pdwStubPhase);
  4838.  
  4839.  
  4840.  
  4841. #endif     /* __IViewFilter_INTERFACE_DEFINED__ */
  4842.  
  4843.  
  4844. #ifndef __IRowsetView_INTERFACE_DEFINED__
  4845. #define __IRowsetView_INTERFACE_DEFINED__
  4846.  
  4847. /****************************************
  4848.  * Generated header for interface: IRowsetView
  4849.  * at Thu Nov 12 23:35:28 1998
  4850.  * using MIDL 3.01.75
  4851.  ****************************************/
  4852. /* [unique][uuid][object] */ 
  4853.  
  4854.  
  4855.  
  4856. EXTERN_C const IID IID_IRowsetView;
  4857.  
  4858. #if defined(__cplusplus) && !defined(CINTERFACE)
  4859.     
  4860.     interface DECLSPEC_UUID("0c733a99-2a1c-11ce-ade5-00aa0044773d")
  4861.     IRowsetView : public IUnknown
  4862.     {
  4863.     public:
  4864.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateView( 
  4865.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4866.             /* [in] */ REFIID riid,
  4867.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView) = 0;
  4868.         
  4869.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetView( 
  4870.             /* [in] */ HCHAPTER hChapter,
  4871.             /* [in] */ REFIID riid,
  4872.             /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  4873.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView) = 0;
  4874.         
  4875.     };
  4876.     
  4877. #else     /* C style interface */
  4878.  
  4879.     typedef struct IRowsetViewVtbl
  4880.     {
  4881.         BEGIN_INTERFACE
  4882.         
  4883.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4884.             IRowsetView __RPC_FAR * This,
  4885.             /* [in] */ REFIID riid,
  4886.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4887.         
  4888.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4889.             IRowsetView __RPC_FAR * This);
  4890.         
  4891.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4892.             IRowsetView __RPC_FAR * This);
  4893.         
  4894.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateView )( 
  4895.             IRowsetView __RPC_FAR * This,
  4896.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4897.             /* [in] */ REFIID riid,
  4898.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView);
  4899.         
  4900.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetView )( 
  4901.             IRowsetView __RPC_FAR * This,
  4902.             /* [in] */ HCHAPTER hChapter,
  4903.             /* [in] */ REFIID riid,
  4904.             /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  4905.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView);
  4906.         
  4907.         END_INTERFACE
  4908.     } IRowsetViewVtbl;
  4909.  
  4910.     interface IRowsetView
  4911.     {
  4912.         CONST_VTBL struct IRowsetViewVtbl __RPC_FAR *lpVtbl;
  4913.     };
  4914.  
  4915.     
  4916.  
  4917. #ifdef COBJMACROS
  4918.  
  4919.  
  4920. #define IRowsetView_QueryInterface(This,riid,ppvObject)    \
  4921.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4922.  
  4923. #define IRowsetView_AddRef(This)    \
  4924.     (This)->lpVtbl -> AddRef(This)
  4925.  
  4926. #define IRowsetView_Release(This)    \
  4927.     (This)->lpVtbl -> Release(This)
  4928.  
  4929.  
  4930. #define IRowsetView_CreateView(This,pUnkOuter,riid,ppView)    \
  4931.     (This)->lpVtbl -> CreateView(This,pUnkOuter,riid,ppView)
  4932.  
  4933. #define IRowsetView_GetView(This,hChapter,riid,phChapterSource,ppView)    \
  4934.     (This)->lpVtbl -> GetView(This,hChapter,riid,phChapterSource,ppView)
  4935.  
  4936. #endif /* COBJMACROS */
  4937.  
  4938.  
  4939. #endif     /* C style interface */
  4940.  
  4941.  
  4942.  
  4943. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetView_RemoteCreateView_Proxy( 
  4944.     IRowsetView __RPC_FAR * This,
  4945.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4946.     /* [in] */ REFIID riid,
  4947.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView,
  4948.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4949.  
  4950.  
  4951. void __RPC_STUB IRowsetView_RemoteCreateView_Stub(
  4952.     IRpcStubBuffer *This,
  4953.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4954.     PRPC_MESSAGE _pRpcMessage,
  4955.     DWORD *_pdwStubPhase);
  4956.  
  4957.  
  4958. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetView_RemoteGetView_Proxy( 
  4959.     IRowsetView __RPC_FAR * This,
  4960.     /* [in] */ HCHAPTER hChapter,
  4961.     /* [in] */ REFIID riid,
  4962.     /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  4963.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView,
  4964.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4965.  
  4966.  
  4967. void __RPC_STUB IRowsetView_RemoteGetView_Stub(
  4968.     IRpcStubBuffer *This,
  4969.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4970.     PRPC_MESSAGE _pRpcMessage,
  4971.     DWORD *_pdwStubPhase);
  4972.  
  4973.  
  4974.  
  4975. #endif     /* __IRowsetView_INTERFACE_DEFINED__ */
  4976.  
  4977.  
  4978. /****************************************
  4979.  * Generated header for interface: __MIDL_itf_oledb_0170
  4980.  * at Thu Nov 12 23:35:28 1998
  4981.  * using MIDL 3.01.75
  4982.  ****************************************/
  4983. /* [local] */ 
  4984.  
  4985.  
  4986. #endif // OLEDBVER >= 0x0150
  4987. //@@@- V1.5
  4988. //@@@+ deprecated
  4989. #ifdef deprecated
  4990.  
  4991.  
  4992. extern RPC_IF_HANDLE __MIDL_itf_oledb_0170_v0_0_c_ifspec;
  4993. extern RPC_IF_HANDLE __MIDL_itf_oledb_0170_v0_0_s_ifspec;
  4994.  
  4995. #ifndef __IRowsetExactScroll_INTERFACE_DEFINED__
  4996. #define __IRowsetExactScroll_INTERFACE_DEFINED__
  4997.  
  4998. /****************************************
  4999.  * Generated header for interface: IRowsetExactScroll
  5000.  * at Thu Nov 12 23:35:28 1998
  5001.  * using MIDL 3.01.75
  5002.  ****************************************/
  5003. /* [unique][uuid][object][local] */ 
  5004.  
  5005.  
  5006.  
  5007. EXTERN_C const IID IID_IRowsetExactScroll;
  5008.  
  5009. #if defined(__cplusplus) && !defined(CINTERFACE)
  5010.     
  5011.     interface DECLSPEC_UUID("0c733a7f-2a1c-11ce-ade5-00aa0044773d")
  5012.     IRowsetExactScroll : public IRowsetScroll
  5013.     {
  5014.     public:
  5015.         virtual HRESULT STDMETHODCALLTYPE GetExactPosition( 
  5016.             /* [in] */ HCHAPTER hChapter,
  5017.             /* [in] */ ULONG cbBookmark,
  5018.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5019.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  5020.             /* [out] */ ULONG __RPC_FAR *pcRows) = 0;
  5021.         
  5022.     };
  5023.     
  5024. #else     /* C style interface */
  5025.  
  5026.     typedef struct IRowsetExactScrollVtbl
  5027.     {
  5028.         BEGIN_INTERFACE
  5029.         
  5030.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5031.             IRowsetExactScroll __RPC_FAR * This,
  5032.             /* [in] */ REFIID riid,
  5033.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5034.         
  5035.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5036.             IRowsetExactScroll __RPC_FAR * This);
  5037.         
  5038.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5039.             IRowsetExactScroll __RPC_FAR * This);
  5040.         
  5041.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefRows )( 
  5042.             IRowsetExactScroll __RPC_FAR * This,
  5043.             /* [in] */ ULONG cRows,
  5044.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5045.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  5046.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5047.         
  5048.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetData )( 
  5049.             IRowsetExactScroll __RPC_FAR * This,
  5050.             /* [in] */ HROW hRow,
  5051.             /* [in] */ HACCESSOR hAccessor,
  5052.             /* [out] */ void __RPC_FAR *pData);
  5053.         
  5054.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRows )( 
  5055.             IRowsetExactScroll __RPC_FAR * This,
  5056.             /* [in] */ HCHAPTER hReserved,
  5057.             /* [in] */ LONG lRowsOffset,
  5058.             /* [in] */ LONG cRows,
  5059.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  5060.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  5061.         
  5062.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseRows )( 
  5063.             IRowsetExactScroll __RPC_FAR * This,
  5064.             /* [in] */ ULONG cRows,
  5065.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5066.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  5067.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  5068.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5069.         
  5070.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RestartPosition )( 
  5071.             IRowsetExactScroll __RPC_FAR * This,
  5072.             /* [in] */ HCHAPTER hReserved);
  5073.         
  5074.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Compare )( 
  5075.             IRowsetExactScroll __RPC_FAR * This,
  5076.             /* [in] */ HCHAPTER hReserved,
  5077.             /* [in] */ ULONG cbBookmark1,
  5078.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  5079.             /* [in] */ ULONG cbBookmark2,
  5080.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  5081.             /* [out] */ DBCOMPARE __RPC_FAR *pComparison);
  5082.         
  5083.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAt )( 
  5084.             IRowsetExactScroll __RPC_FAR * This,
  5085.             /* [in] */ HWATCHREGION hReserved1,
  5086.             /* [in] */ HCHAPTER hReserved2,
  5087.             /* [in] */ ULONG cbBookmark,
  5088.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5089.             /* [in] */ LONG lRowsOffset,
  5090.             /* [in] */ LONG cRows,
  5091.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  5092.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  5093.         
  5094.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsByBookmark )( 
  5095.             IRowsetExactScroll __RPC_FAR * This,
  5096.             /* [in] */ HCHAPTER hReserved,
  5097.             /* [in] */ ULONG cRows,
  5098.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  5099.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  5100.             /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  5101.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5102.         
  5103.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Hash )( 
  5104.             IRowsetExactScroll __RPC_FAR * This,
  5105.             /* [in] */ HCHAPTER hReserved,
  5106.             /* [in] */ ULONG cBookmarks,
  5107.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  5108.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  5109.             /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  5110.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]);
  5111.         
  5112.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetApproximatePosition )( 
  5113.             IRowsetExactScroll __RPC_FAR * This,
  5114.             /* [in] */ HCHAPTER hReserved,
  5115.             /* [in] */ ULONG cbBookmark,
  5116.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5117.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  5118.             /* [out] */ ULONG __RPC_FAR *pcRows);
  5119.         
  5120.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAtRatio )( 
  5121.             IRowsetExactScroll __RPC_FAR * This,
  5122.             /* [in] */ HWATCHREGION hReserved1,
  5123.             /* [in] */ HCHAPTER hReserved2,
  5124.             /* [in] */ ULONG ulNumerator,
  5125.             /* [in] */ ULONG ulDenominator,
  5126.             /* [in] */ LONG cRows,
  5127.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  5128.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  5129.         
  5130.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetExactPosition )( 
  5131.             IRowsetExactScroll __RPC_FAR * This,
  5132.             /* [in] */ HCHAPTER hChapter,
  5133.             /* [in] */ ULONG cbBookmark,
  5134.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5135.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  5136.             /* [out] */ ULONG __RPC_FAR *pcRows);
  5137.         
  5138.         END_INTERFACE
  5139.     } IRowsetExactScrollVtbl;
  5140.  
  5141.     interface IRowsetExactScroll
  5142.     {
  5143.         CONST_VTBL struct IRowsetExactScrollVtbl __RPC_FAR *lpVtbl;
  5144.     };
  5145.  
  5146.     
  5147.  
  5148. #ifdef COBJMACROS
  5149.  
  5150.  
  5151. #define IRowsetExactScroll_QueryInterface(This,riid,ppvObject)    \
  5152.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5153.  
  5154. #define IRowsetExactScroll_AddRef(This)    \
  5155.     (This)->lpVtbl -> AddRef(This)
  5156.  
  5157. #define IRowsetExactScroll_Release(This)    \
  5158.     (This)->lpVtbl -> Release(This)
  5159.  
  5160.  
  5161. #define IRowsetExactScroll_AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)    \
  5162.     (This)->lpVtbl -> AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)
  5163.  
  5164. #define IRowsetExactScroll_GetData(This,hRow,hAccessor,pData)    \
  5165.     (This)->lpVtbl -> GetData(This,hRow,hAccessor,pData)
  5166.  
  5167. #define IRowsetExactScroll_GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  5168.     (This)->lpVtbl -> GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)
  5169.  
  5170. #define IRowsetExactScroll_ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)    \
  5171.     (This)->lpVtbl -> ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)
  5172.  
  5173. #define IRowsetExactScroll_RestartPosition(This,hReserved)    \
  5174.     (This)->lpVtbl -> RestartPosition(This,hReserved)
  5175.  
  5176.  
  5177. #define IRowsetExactScroll_Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)    \
  5178.     (This)->lpVtbl -> Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)
  5179.  
  5180. #define IRowsetExactScroll_GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  5181.     (This)->lpVtbl -> GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)
  5182.  
  5183. #define IRowsetExactScroll_GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)    \
  5184.     (This)->lpVtbl -> GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)
  5185.  
  5186. #define IRowsetExactScroll_Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)    \
  5187.     (This)->lpVtbl -> Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)
  5188.  
  5189.  
  5190. #define IRowsetExactScroll_GetApproximatePosition(This,hReserved,cbBookmark,pBookmark,pulPosition,pcRows)    \
  5191.     (This)->lpVtbl -> GetApproximatePosition(This,hReserved,cbBookmark,pBookmark,pulPosition,pcRows)
  5192.  
  5193. #define IRowsetExactScroll_GetRowsAtRatio(This,hReserved1,hReserved2,ulNumerator,ulDenominator,cRows,pcRowsObtained,prghRows)    \
  5194.     (This)->lpVtbl -> GetRowsAtRatio(This,hReserved1,hReserved2,ulNumerator,ulDenominator,cRows,pcRowsObtained,prghRows)
  5195.  
  5196.  
  5197. #define IRowsetExactScroll_GetExactPosition(This,hChapter,cbBookmark,pBookmark,pulPosition,pcRows)    \
  5198.     (This)->lpVtbl -> GetExactPosition(This,hChapter,cbBookmark,pBookmark,pulPosition,pcRows)
  5199.  
  5200. #endif /* COBJMACROS */
  5201.  
  5202.  
  5203. #endif     /* C style interface */
  5204.  
  5205.  
  5206.  
  5207. HRESULT STDMETHODCALLTYPE IRowsetExactScroll_GetExactPosition_Proxy( 
  5208.     IRowsetExactScroll __RPC_FAR * This,
  5209.     /* [in] */ HCHAPTER hChapter,
  5210.     /* [in] */ ULONG cbBookmark,
  5211.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5212.     /* [out] */ ULONG __RPC_FAR *pulPosition,
  5213.     /* [out] */ ULONG __RPC_FAR *pcRows);
  5214.  
  5215.  
  5216. void __RPC_STUB IRowsetExactScroll_GetExactPosition_Stub(
  5217.     IRpcStubBuffer *This,
  5218.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5219.     PRPC_MESSAGE _pRpcMessage,
  5220.     DWORD *_pdwStubPhase);
  5221.  
  5222.  
  5223.  
  5224. #endif     /* __IRowsetExactScroll_INTERFACE_DEFINED__ */
  5225.  
  5226.  
  5227. /****************************************
  5228.  * Generated header for interface: __MIDL_itf_oledb_0171
  5229.  * at Thu Nov 12 23:35:28 1998
  5230.  * using MIDL 3.01.75
  5231.  ****************************************/
  5232. /* [local] */ 
  5233.  
  5234.  
  5235. #endif // deprecated
  5236. //@@@- deprecated
  5237.  
  5238.  
  5239. extern RPC_IF_HANDLE __MIDL_itf_oledb_0171_v0_0_c_ifspec;
  5240. extern RPC_IF_HANDLE __MIDL_itf_oledb_0171_v0_0_s_ifspec;
  5241.  
  5242. #ifndef __IRowsetChange_INTERFACE_DEFINED__
  5243. #define __IRowsetChange_INTERFACE_DEFINED__
  5244.  
  5245. /****************************************
  5246.  * Generated header for interface: IRowsetChange
  5247.  * at Thu Nov 12 23:35:28 1998
  5248.  * using MIDL 3.01.75
  5249.  ****************************************/
  5250. /* [unique][uuid][object][local] */ 
  5251.  
  5252.  
  5253.  
  5254. EXTERN_C const IID IID_IRowsetChange;
  5255.  
  5256. #if defined(__cplusplus) && !defined(CINTERFACE)
  5257.     
  5258.     interface DECLSPEC_UUID("0c733a05-2a1c-11ce-ade5-00aa0044773d")
  5259.     IRowsetChange : public IUnknown
  5260.     {
  5261.     public:
  5262.         virtual HRESULT STDMETHODCALLTYPE DeleteRows( 
  5263.             /* [in] */ HCHAPTER hReserved,
  5264.             /* [in] */ ULONG cRows,
  5265.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5266.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]) = 0;
  5267.         
  5268.         virtual HRESULT STDMETHODCALLTYPE SetData( 
  5269.             /* [in] */ HROW hRow,
  5270.             /* [in] */ HACCESSOR hAccessor,
  5271.             /* [in] */ void __RPC_FAR *pData) = 0;
  5272.         
  5273.         virtual HRESULT STDMETHODCALLTYPE InsertRow( 
  5274.             /* [in] */ HCHAPTER hReserved,
  5275.             /* [in] */ HACCESSOR hAccessor,
  5276.             /* [in] */ void __RPC_FAR *pData,
  5277.             /* [out] */ HROW __RPC_FAR *phRow) = 0;
  5278.         
  5279.     };
  5280.     
  5281. #else     /* C style interface */
  5282.  
  5283.     typedef struct IRowsetChangeVtbl
  5284.     {
  5285.         BEGIN_INTERFACE
  5286.         
  5287.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5288.             IRowsetChange __RPC_FAR * This,
  5289.             /* [in] */ REFIID riid,
  5290.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5291.         
  5292.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5293.             IRowsetChange __RPC_FAR * This);
  5294.         
  5295.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5296.             IRowsetChange __RPC_FAR * This);
  5297.         
  5298.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteRows )( 
  5299.             IRowsetChange __RPC_FAR * This,
  5300.             /* [in] */ HCHAPTER hReserved,
  5301.             /* [in] */ ULONG cRows,
  5302.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5303.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5304.         
  5305.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetData )( 
  5306.             IRowsetChange __RPC_FAR * This,
  5307.             /* [in] */ HROW hRow,
  5308.             /* [in] */ HACCESSOR hAccessor,
  5309.             /* [in] */ void __RPC_FAR *pData);
  5310.         
  5311.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InsertRow )( 
  5312.             IRowsetChange __RPC_FAR * This,
  5313.             /* [in] */ HCHAPTER hReserved,
  5314.             /* [in] */ HACCESSOR hAccessor,
  5315.             /* [in] */ void __RPC_FAR *pData,
  5316.             /* [out] */ HROW __RPC_FAR *phRow);
  5317.         
  5318.         END_INTERFACE
  5319.     } IRowsetChangeVtbl;
  5320.  
  5321.     interface IRowsetChange
  5322.     {
  5323.         CONST_VTBL struct IRowsetChangeVtbl __RPC_FAR *lpVtbl;
  5324.     };
  5325.  
  5326.     
  5327.  
  5328. #ifdef COBJMACROS
  5329.  
  5330.  
  5331. #define IRowsetChange_QueryInterface(This,riid,ppvObject)    \
  5332.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5333.  
  5334. #define IRowsetChange_AddRef(This)    \
  5335.     (This)->lpVtbl -> AddRef(This)
  5336.  
  5337. #define IRowsetChange_Release(This)    \
  5338.     (This)->lpVtbl -> Release(This)
  5339.  
  5340.  
  5341. #define IRowsetChange_DeleteRows(This,hReserved,cRows,rghRows,rgRowStatus)    \
  5342.     (This)->lpVtbl -> DeleteRows(This,hReserved,cRows,rghRows,rgRowStatus)
  5343.  
  5344. #define IRowsetChange_SetData(This,hRow,hAccessor,pData)    \
  5345.     (This)->lpVtbl -> SetData(This,hRow,hAccessor,pData)
  5346.  
  5347. #define IRowsetChange_InsertRow(This,hReserved,hAccessor,pData,phRow)    \
  5348.     (This)->lpVtbl -> InsertRow(This,hReserved,hAccessor,pData,phRow)
  5349.  
  5350. #endif /* COBJMACROS */
  5351.  
  5352.  
  5353. #endif     /* C style interface */
  5354.  
  5355.  
  5356.  
  5357. HRESULT STDMETHODCALLTYPE IRowsetChange_DeleteRows_Proxy( 
  5358.     IRowsetChange __RPC_FAR * This,
  5359.     /* [in] */ HCHAPTER hReserved,
  5360.     /* [in] */ ULONG cRows,
  5361.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5362.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5363.  
  5364.  
  5365. void __RPC_STUB IRowsetChange_DeleteRows_Stub(
  5366.     IRpcStubBuffer *This,
  5367.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5368.     PRPC_MESSAGE _pRpcMessage,
  5369.     DWORD *_pdwStubPhase);
  5370.  
  5371.  
  5372. HRESULT STDMETHODCALLTYPE IRowsetChange_SetData_Proxy( 
  5373.     IRowsetChange __RPC_FAR * This,
  5374.     /* [in] */ HROW hRow,
  5375.     /* [in] */ HACCESSOR hAccessor,
  5376.     /* [in] */ void __RPC_FAR *pData);
  5377.  
  5378.  
  5379. void __RPC_STUB IRowsetChange_SetData_Stub(
  5380.     IRpcStubBuffer *This,
  5381.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5382.     PRPC_MESSAGE _pRpcMessage,
  5383.     DWORD *_pdwStubPhase);
  5384.  
  5385.  
  5386. HRESULT STDMETHODCALLTYPE IRowsetChange_InsertRow_Proxy( 
  5387.     IRowsetChange __RPC_FAR * This,
  5388.     /* [in] */ HCHAPTER hReserved,
  5389.     /* [in] */ HACCESSOR hAccessor,
  5390.     /* [in] */ void __RPC_FAR *pData,
  5391.     /* [out] */ HROW __RPC_FAR *phRow);
  5392.  
  5393.  
  5394. void __RPC_STUB IRowsetChange_InsertRow_Stub(
  5395.     IRpcStubBuffer *This,
  5396.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5397.     PRPC_MESSAGE _pRpcMessage,
  5398.     DWORD *_pdwStubPhase);
  5399.  
  5400.  
  5401.  
  5402. #endif     /* __IRowsetChange_INTERFACE_DEFINED__ */
  5403.  
  5404.  
  5405. #ifndef __IRowsetUpdate_INTERFACE_DEFINED__
  5406. #define __IRowsetUpdate_INTERFACE_DEFINED__
  5407.  
  5408. /****************************************
  5409.  * Generated header for interface: IRowsetUpdate
  5410.  * at Thu Nov 12 23:35:28 1998
  5411.  * using MIDL 3.01.75
  5412.  ****************************************/
  5413. /* [unique][uuid][object][local] */ 
  5414.  
  5415.  
  5416. typedef DWORD DBPENDINGSTATUS;
  5417.  
  5418.  
  5419. enum DBPENDINGSTATUSENUM
  5420.     {    DBPENDINGSTATUS_NEW    = 0x1,
  5421.     DBPENDINGSTATUS_CHANGED    = 0x2,
  5422.     DBPENDINGSTATUS_DELETED    = 0x4,
  5423.     DBPENDINGSTATUS_UNCHANGED    = 0x8,
  5424.     DBPENDINGSTATUS_INVALIDROW    = 0x10
  5425.     };
  5426.  
  5427. EXTERN_C const IID IID_IRowsetUpdate;
  5428.  
  5429. #if defined(__cplusplus) && !defined(CINTERFACE)
  5430.     
  5431.     interface DECLSPEC_UUID("0c733a6d-2a1c-11ce-ade5-00aa0044773d")
  5432.     IRowsetUpdate : public IRowsetChange
  5433.     {
  5434.     public:
  5435.         virtual HRESULT STDMETHODCALLTYPE GetOriginalData( 
  5436.             /* [in] */ HROW hRow,
  5437.             /* [in] */ HACCESSOR hAccessor,
  5438.             /* [out] */ void __RPC_FAR *pData) = 0;
  5439.         
  5440.         virtual HRESULT STDMETHODCALLTYPE GetPendingRows( 
  5441.             /* [in] */ HCHAPTER hReserved,
  5442.             /* [in] */ DBPENDINGSTATUS dwRowStatus,
  5443.             /* [out][in] */ ULONG __RPC_FAR *pcPendingRows,
  5444.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgPendingRows,
  5445.             /* [size_is][size_is][out] */ DBPENDINGSTATUS __RPC_FAR *__RPC_FAR *prgPendingStatus) = 0;
  5446.         
  5447.         virtual HRESULT STDMETHODCALLTYPE GetRowStatus( 
  5448.             /* [in] */ HCHAPTER hReserved,
  5449.             /* [in] */ ULONG cRows,
  5450.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5451.             /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgPendingStatus[  ]) = 0;
  5452.         
  5453.         virtual HRESULT STDMETHODCALLTYPE Undo( 
  5454.             /* [in] */ HCHAPTER hReserved,
  5455.             /* [in] */ ULONG cRows,
  5456.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5457.             /* [out][in] */ ULONG __RPC_FAR *pcRowsUndone,
  5458.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRowsUndone,
  5459.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus) = 0;
  5460.         
  5461.         virtual HRESULT STDMETHODCALLTYPE Update( 
  5462.             /* [in] */ HCHAPTER hReserved,
  5463.             /* [in] */ ULONG cRows,
  5464.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5465.             /* [out][in] */ ULONG __RPC_FAR *pcRows,
  5466.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRows,
  5467.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus) = 0;
  5468.         
  5469.     };
  5470.     
  5471. #else     /* C style interface */
  5472.  
  5473.     typedef struct IRowsetUpdateVtbl
  5474.     {
  5475.         BEGIN_INTERFACE
  5476.         
  5477.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5478.             IRowsetUpdate __RPC_FAR * This,
  5479.             /* [in] */ REFIID riid,
  5480.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5481.         
  5482.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5483.             IRowsetUpdate __RPC_FAR * This);
  5484.         
  5485.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5486.             IRowsetUpdate __RPC_FAR * This);
  5487.         
  5488.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteRows )( 
  5489.             IRowsetUpdate __RPC_FAR * This,
  5490.             /* [in] */ HCHAPTER hReserved,
  5491.             /* [in] */ ULONG cRows,
  5492.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5493.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5494.         
  5495.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetData )( 
  5496.             IRowsetUpdate __RPC_FAR * This,
  5497.             /* [in] */ HROW hRow,
  5498.             /* [in] */ HACCESSOR hAccessor,
  5499.             /* [in] */ void __RPC_FAR *pData);
  5500.         
  5501.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InsertRow )( 
  5502.             IRowsetUpdate __RPC_FAR * This,
  5503.             /* [in] */ HCHAPTER hReserved,
  5504.             /* [in] */ HACCESSOR hAccessor,
  5505.             /* [in] */ void __RPC_FAR *pData,
  5506.             /* [out] */ HROW __RPC_FAR *phRow);
  5507.         
  5508.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetOriginalData )( 
  5509.             IRowsetUpdate __RPC_FAR * This,
  5510.             /* [in] */ HROW hRow,
  5511.             /* [in] */ HACCESSOR hAccessor,
  5512.             /* [out] */ void __RPC_FAR *pData);
  5513.         
  5514.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPendingRows )( 
  5515.             IRowsetUpdate __RPC_FAR * This,
  5516.             /* [in] */ HCHAPTER hReserved,
  5517.             /* [in] */ DBPENDINGSTATUS dwRowStatus,
  5518.             /* [out][in] */ ULONG __RPC_FAR *pcPendingRows,
  5519.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgPendingRows,
  5520.             /* [size_is][size_is][out] */ DBPENDINGSTATUS __RPC_FAR *__RPC_FAR *prgPendingStatus);
  5521.         
  5522.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowStatus )( 
  5523.             IRowsetUpdate __RPC_FAR * This,
  5524.             /* [in] */ HCHAPTER hReserved,
  5525.             /* [in] */ ULONG cRows,
  5526.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5527.             /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgPendingStatus[  ]);
  5528.         
  5529.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Undo )( 
  5530.             IRowsetUpdate __RPC_FAR * This,
  5531.             /* [in] */ HCHAPTER hReserved,
  5532.             /* [in] */ ULONG cRows,
  5533.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5534.             /* [out][in] */ ULONG __RPC_FAR *pcRowsUndone,
  5535.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRowsUndone,
  5536.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  5537.         
  5538.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
  5539.             IRowsetUpdate __RPC_FAR * This,
  5540.             /* [in] */ HCHAPTER hReserved,
  5541.             /* [in] */ ULONG cRows,
  5542.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5543.             /* [out][in] */ ULONG __RPC_FAR *pcRows,
  5544.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRows,
  5545.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  5546.         
  5547.         END_INTERFACE
  5548.     } IRowsetUpdateVtbl;
  5549.  
  5550.     interface IRowsetUpdate
  5551.     {
  5552.         CONST_VTBL struct IRowsetUpdateVtbl __RPC_FAR *lpVtbl;
  5553.     };
  5554.  
  5555.     
  5556.  
  5557. #ifdef COBJMACROS
  5558.  
  5559.  
  5560. #define IRowsetUpdate_QueryInterface(This,riid,ppvObject)    \
  5561.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5562.  
  5563. #define IRowsetUpdate_AddRef(This)    \
  5564.     (This)->lpVtbl -> AddRef(This)
  5565.  
  5566. #define IRowsetUpdate_Release(This)    \
  5567.     (This)->lpVtbl -> Release(This)
  5568.  
  5569.  
  5570. #define IRowsetUpdate_DeleteRows(This,hReserved,cRows,rghRows,rgRowStatus)    \
  5571.     (This)->lpVtbl -> DeleteRows(This,hReserved,cRows,rghRows,rgRowStatus)
  5572.  
  5573. #define IRowsetUpdate_SetData(This,hRow,hAccessor,pData)    \
  5574.     (This)->lpVtbl -> SetData(This,hRow,hAccessor,pData)
  5575.  
  5576. #define IRowsetUpdate_InsertRow(This,hReserved,hAccessor,pData,phRow)    \
  5577.     (This)->lpVtbl -> InsertRow(This,hReserved,hAccessor,pData,phRow)
  5578.  
  5579.  
  5580. #define IRowsetUpdate_GetOriginalData(This,hRow,hAccessor,pData)    \
  5581.     (This)->lpVtbl -> GetOriginalData(This,hRow,hAccessor,pData)
  5582.  
  5583. #define IRowsetUpdate_GetPendingRows(This,hReserved,dwRowStatus,pcPendingRows,prgPendingRows,prgPendingStatus)    \
  5584.     (This)->lpVtbl -> GetPendingRows(This,hReserved,dwRowStatus,pcPendingRows,prgPendingRows,prgPendingStatus)
  5585.  
  5586. #define IRowsetUpdate_GetRowStatus(This,hReserved,cRows,rghRows,rgPendingStatus)    \
  5587.     (This)->lpVtbl -> GetRowStatus(This,hReserved,cRows,rghRows,rgPendingStatus)
  5588.  
  5589. #define IRowsetUpdate_Undo(This,hReserved,cRows,rghRows,pcRowsUndone,prgRowsUndone,prgRowStatus)    \
  5590.     (This)->lpVtbl -> Undo(This,hReserved,cRows,rghRows,pcRowsUndone,prgRowsUndone,prgRowStatus)
  5591.  
  5592. #define IRowsetUpdate_Update(This,hReserved,cRows,rghRows,pcRows,prgRows,prgRowStatus)    \
  5593.     (This)->lpVtbl -> Update(This,hReserved,cRows,rghRows,pcRows,prgRows,prgRowStatus)
  5594.  
  5595. #endif /* COBJMACROS */
  5596.  
  5597.  
  5598. #endif     /* C style interface */
  5599.  
  5600.  
  5601.  
  5602. HRESULT STDMETHODCALLTYPE IRowsetUpdate_GetOriginalData_Proxy( 
  5603.     IRowsetUpdate __RPC_FAR * This,
  5604.     /* [in] */ HROW hRow,
  5605.     /* [in] */ HACCESSOR hAccessor,
  5606.     /* [out] */ void __RPC_FAR *pData);
  5607.  
  5608.  
  5609. void __RPC_STUB IRowsetUpdate_GetOriginalData_Stub(
  5610.     IRpcStubBuffer *This,
  5611.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5612.     PRPC_MESSAGE _pRpcMessage,
  5613.     DWORD *_pdwStubPhase);
  5614.  
  5615.  
  5616. HRESULT STDMETHODCALLTYPE IRowsetUpdate_GetPendingRows_Proxy( 
  5617.     IRowsetUpdate __RPC_FAR * This,
  5618.     /* [in] */ HCHAPTER hReserved,
  5619.     /* [in] */ DBPENDINGSTATUS dwRowStatus,
  5620.     /* [out][in] */ ULONG __RPC_FAR *pcPendingRows,
  5621.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgPendingRows,
  5622.     /* [size_is][size_is][out] */ DBPENDINGSTATUS __RPC_FAR *__RPC_FAR *prgPendingStatus);
  5623.  
  5624.  
  5625. void __RPC_STUB IRowsetUpdate_GetPendingRows_Stub(
  5626.     IRpcStubBuffer *This,
  5627.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5628.     PRPC_MESSAGE _pRpcMessage,
  5629.     DWORD *_pdwStubPhase);
  5630.  
  5631.  
  5632. HRESULT STDMETHODCALLTYPE IRowsetUpdate_GetRowStatus_Proxy( 
  5633.     IRowsetUpdate __RPC_FAR * This,
  5634.     /* [in] */ HCHAPTER hReserved,
  5635.     /* [in] */ ULONG cRows,
  5636.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5637.     /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgPendingStatus[  ]);
  5638.  
  5639.  
  5640. void __RPC_STUB IRowsetUpdate_GetRowStatus_Stub(
  5641.     IRpcStubBuffer *This,
  5642.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5643.     PRPC_MESSAGE _pRpcMessage,
  5644.     DWORD *_pdwStubPhase);
  5645.  
  5646.  
  5647. HRESULT STDMETHODCALLTYPE IRowsetUpdate_Undo_Proxy( 
  5648.     IRowsetUpdate __RPC_FAR * This,
  5649.     /* [in] */ HCHAPTER hReserved,
  5650.     /* [in] */ ULONG cRows,
  5651.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5652.     /* [out][in] */ ULONG __RPC_FAR *pcRowsUndone,
  5653.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRowsUndone,
  5654.     /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  5655.  
  5656.  
  5657. void __RPC_STUB IRowsetUpdate_Undo_Stub(
  5658.     IRpcStubBuffer *This,
  5659.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5660.     PRPC_MESSAGE _pRpcMessage,
  5661.     DWORD *_pdwStubPhase);
  5662.  
  5663.  
  5664. HRESULT STDMETHODCALLTYPE IRowsetUpdate_Update_Proxy( 
  5665.     IRowsetUpdate __RPC_FAR * This,
  5666.     /* [in] */ HCHAPTER hReserved,
  5667.     /* [in] */ ULONG cRows,
  5668.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5669.     /* [out][in] */ ULONG __RPC_FAR *pcRows,
  5670.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRows,
  5671.     /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  5672.  
  5673.  
  5674. void __RPC_STUB IRowsetUpdate_Update_Stub(
  5675.     IRpcStubBuffer *This,
  5676.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5677.     PRPC_MESSAGE _pRpcMessage,
  5678.     DWORD *_pdwStubPhase);
  5679.  
  5680.  
  5681.  
  5682. #endif     /* __IRowsetUpdate_INTERFACE_DEFINED__ */
  5683.  
  5684.  
  5685. #ifndef __IRowsetIdentity_INTERFACE_DEFINED__
  5686. #define __IRowsetIdentity_INTERFACE_DEFINED__
  5687.  
  5688. /****************************************
  5689.  * Generated header for interface: IRowsetIdentity
  5690.  * at Thu Nov 12 23:35:28 1998
  5691.  * using MIDL 3.01.75
  5692.  ****************************************/
  5693. /* [unique][uuid][object] */ 
  5694.  
  5695.  
  5696.  
  5697. EXTERN_C const IID IID_IRowsetIdentity;
  5698.  
  5699. #if defined(__cplusplus) && !defined(CINTERFACE)
  5700.     
  5701.     interface DECLSPEC_UUID("0c733a09-2a1c-11ce-ade5-00aa0044773d")
  5702.     IRowsetIdentity : public IUnknown
  5703.     {
  5704.     public:
  5705.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE IsSameRow( 
  5706.             /* [in] */ HROW hThisRow,
  5707.             /* [in] */ HROW hThatRow) = 0;
  5708.         
  5709.     };
  5710.     
  5711. #else     /* C style interface */
  5712.  
  5713.     typedef struct IRowsetIdentityVtbl
  5714.     {
  5715.         BEGIN_INTERFACE
  5716.         
  5717.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5718.             IRowsetIdentity __RPC_FAR * This,
  5719.             /* [in] */ REFIID riid,
  5720.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5721.         
  5722.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5723.             IRowsetIdentity __RPC_FAR * This);
  5724.         
  5725.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5726.             IRowsetIdentity __RPC_FAR * This);
  5727.         
  5728.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsSameRow )( 
  5729.             IRowsetIdentity __RPC_FAR * This,
  5730.             /* [in] */ HROW hThisRow,
  5731.             /* [in] */ HROW hThatRow);
  5732.         
  5733.         END_INTERFACE
  5734.     } IRowsetIdentityVtbl;
  5735.  
  5736.     interface IRowsetIdentity
  5737.     {
  5738.         CONST_VTBL struct IRowsetIdentityVtbl __RPC_FAR *lpVtbl;
  5739.     };
  5740.  
  5741.     
  5742.  
  5743. #ifdef COBJMACROS
  5744.  
  5745.  
  5746. #define IRowsetIdentity_QueryInterface(This,riid,ppvObject)    \
  5747.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5748.  
  5749. #define IRowsetIdentity_AddRef(This)    \
  5750.     (This)->lpVtbl -> AddRef(This)
  5751.  
  5752. #define IRowsetIdentity_Release(This)    \
  5753.     (This)->lpVtbl -> Release(This)
  5754.  
  5755.  
  5756. #define IRowsetIdentity_IsSameRow(This,hThisRow,hThatRow)    \
  5757.     (This)->lpVtbl -> IsSameRow(This,hThisRow,hThatRow)
  5758.  
  5759. #endif /* COBJMACROS */
  5760.  
  5761.  
  5762. #endif     /* C style interface */
  5763.  
  5764.  
  5765.  
  5766. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetIdentity_RemoteIsSameRow_Proxy( 
  5767.     IRowsetIdentity __RPC_FAR * This,
  5768.     /* [in] */ HROW hThisRow,
  5769.     /* [in] */ HROW hThatRow,
  5770.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  5771.  
  5772.  
  5773. void __RPC_STUB IRowsetIdentity_RemoteIsSameRow_Stub(
  5774.     IRpcStubBuffer *This,
  5775.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5776.     PRPC_MESSAGE _pRpcMessage,
  5777.     DWORD *_pdwStubPhase);
  5778.  
  5779.  
  5780.  
  5781. #endif     /* __IRowsetIdentity_INTERFACE_DEFINED__ */
  5782.  
  5783.  
  5784. #ifndef __IRowsetNotify_INTERFACE_DEFINED__
  5785. #define __IRowsetNotify_INTERFACE_DEFINED__
  5786.  
  5787. /****************************************
  5788.  * Generated header for interface: IRowsetNotify
  5789.  * at Thu Nov 12 23:35:28 1998
  5790.  * using MIDL 3.01.75
  5791.  ****************************************/
  5792. /* [unique][uuid][object] */ 
  5793.  
  5794.  
  5795.  
  5796. EXTERN_C const IID IID_IRowsetNotify;
  5797.  
  5798. #if defined(__cplusplus) && !defined(CINTERFACE)
  5799.     
  5800.     interface DECLSPEC_UUID("0c733a83-2a1c-11ce-ade5-00aa0044773d")
  5801.     IRowsetNotify : public IUnknown
  5802.     {
  5803.     public:
  5804.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnFieldChange( 
  5805.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5806.             /* [in] */ HROW hRow,
  5807.             /* [in] */ ULONG cColumns,
  5808.             /* [size_is][in] */ ULONG __RPC_FAR rgColumns[  ],
  5809.             /* [in] */ DBREASON eReason,
  5810.             /* [in] */ DBEVENTPHASE ePhase,
  5811.             /* [in] */ BOOL fCantDeny) = 0;
  5812.         
  5813.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnRowChange( 
  5814.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5815.             /* [in] */ ULONG cRows,
  5816.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5817.             /* [in] */ DBREASON eReason,
  5818.             /* [in] */ DBEVENTPHASE ePhase,
  5819.             /* [in] */ BOOL fCantDeny) = 0;
  5820.         
  5821.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnRowsetChange( 
  5822.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5823.             /* [in] */ DBREASON eReason,
  5824.             /* [in] */ DBEVENTPHASE ePhase,
  5825.             /* [in] */ BOOL fCantDeny) = 0;
  5826.         
  5827.     };
  5828.     
  5829. #else     /* C style interface */
  5830.  
  5831.     typedef struct IRowsetNotifyVtbl
  5832.     {
  5833.         BEGIN_INTERFACE
  5834.         
  5835.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5836.             IRowsetNotify __RPC_FAR * This,
  5837.             /* [in] */ REFIID riid,
  5838.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5839.         
  5840.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5841.             IRowsetNotify __RPC_FAR * This);
  5842.         
  5843.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5844.             IRowsetNotify __RPC_FAR * This);
  5845.         
  5846.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnFieldChange )( 
  5847.             IRowsetNotify __RPC_FAR * This,
  5848.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5849.             /* [in] */ HROW hRow,
  5850.             /* [in] */ ULONG cColumns,
  5851.             /* [size_is][in] */ ULONG __RPC_FAR rgColumns[  ],
  5852.             /* [in] */ DBREASON eReason,
  5853.             /* [in] */ DBEVENTPHASE ePhase,
  5854.             /* [in] */ BOOL fCantDeny);
  5855.         
  5856.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnRowChange )( 
  5857.             IRowsetNotify __RPC_FAR * This,
  5858.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5859.             /* [in] */ ULONG cRows,
  5860.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5861.             /* [in] */ DBREASON eReason,
  5862.             /* [in] */ DBEVENTPHASE ePhase,
  5863.             /* [in] */ BOOL fCantDeny);
  5864.         
  5865.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnRowsetChange )( 
  5866.             IRowsetNotify __RPC_FAR * This,
  5867.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5868.             /* [in] */ DBREASON eReason,
  5869.             /* [in] */ DBEVENTPHASE ePhase,
  5870.             /* [in] */ BOOL fCantDeny);
  5871.         
  5872.         END_INTERFACE
  5873.     } IRowsetNotifyVtbl;
  5874.  
  5875.     interface IRowsetNotify
  5876.     {
  5877.         CONST_VTBL struct IRowsetNotifyVtbl __RPC_FAR *lpVtbl;
  5878.     };
  5879.  
  5880.     
  5881.  
  5882. #ifdef COBJMACROS
  5883.  
  5884.  
  5885. #define IRowsetNotify_QueryInterface(This,riid,ppvObject)    \
  5886.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5887.  
  5888. #define IRowsetNotify_AddRef(This)    \
  5889.     (This)->lpVtbl -> AddRef(This)
  5890.  
  5891. #define IRowsetNotify_Release(This)    \
  5892.     (This)->lpVtbl -> Release(This)
  5893.  
  5894.  
  5895. #define IRowsetNotify_OnFieldChange(This,pRowset,hRow,cColumns,rgColumns,eReason,ePhase,fCantDeny)    \
  5896.     (This)->lpVtbl -> OnFieldChange(This,pRowset,hRow,cColumns,rgColumns,eReason,ePhase,fCantDeny)
  5897.  
  5898. #define IRowsetNotify_OnRowChange(This,pRowset,cRows,rghRows,eReason,ePhase,fCantDeny)    \
  5899.     (This)->lpVtbl -> OnRowChange(This,pRowset,cRows,rghRows,eReason,ePhase,fCantDeny)
  5900.  
  5901. #define IRowsetNotify_OnRowsetChange(This,pRowset,eReason,ePhase,fCantDeny)    \
  5902.     (This)->lpVtbl -> OnRowsetChange(This,pRowset,eReason,ePhase,fCantDeny)
  5903.  
  5904. #endif /* COBJMACROS */
  5905.  
  5906.  
  5907. #endif     /* C style interface */
  5908.  
  5909.  
  5910.  
  5911. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_RemoteOnFieldChange_Proxy( 
  5912.     IRowsetNotify __RPC_FAR * This,
  5913.     /* [in] */ IRowset __RPC_FAR *pRowset,
  5914.     /* [in] */ HROW hRow,
  5915.     /* [in] */ ULONG cColumns,
  5916.     /* [size_is][in] */ ULONG __RPC_FAR *rgColumns,
  5917.     /* [in] */ DBREASON eReason,
  5918.     /* [in] */ DBEVENTPHASE ePhase,
  5919.     /* [in] */ BOOL fCantDeny,
  5920.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  5921.  
  5922.  
  5923. void __RPC_STUB IRowsetNotify_RemoteOnFieldChange_Stub(
  5924.     IRpcStubBuffer *This,
  5925.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5926.     PRPC_MESSAGE _pRpcMessage,
  5927.     DWORD *_pdwStubPhase);
  5928.  
  5929.  
  5930. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_RemoteOnRowChange_Proxy( 
  5931.     IRowsetNotify __RPC_FAR * This,
  5932.     /* [in] */ IRowset __RPC_FAR *pRowset,
  5933.     /* [in] */ ULONG cRows,
  5934.     /* [size_is][in] */ const HROW __RPC_FAR *rghRows,
  5935.     /* [in] */ DBREASON eReason,
  5936.     /* [in] */ DBEVENTPHASE ePhase,
  5937.     /* [in] */ BOOL fCantDeny,
  5938.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  5939.  
  5940.  
  5941. void __RPC_STUB IRowsetNotify_RemoteOnRowChange_Stub(
  5942.     IRpcStubBuffer *This,
  5943.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5944.     PRPC_MESSAGE _pRpcMessage,
  5945.     DWORD *_pdwStubPhase);
  5946.  
  5947.  
  5948. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_RemoteOnRowsetChange_Proxy( 
  5949.     IRowsetNotify __RPC_FAR * This,
  5950.     /* [in] */ IRowset __RPC_FAR *pRowset,
  5951.     /* [in] */ DBREASON eReason,
  5952.     /* [in] */ DBEVENTPHASE ePhase,
  5953.     /* [in] */ BOOL fCantDeny,
  5954.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  5955.  
  5956.  
  5957. void __RPC_STUB IRowsetNotify_RemoteOnRowsetChange_Stub(
  5958.     IRpcStubBuffer *This,
  5959.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5960.     PRPC_MESSAGE _pRpcMessage,
  5961.     DWORD *_pdwStubPhase);
  5962.  
  5963.  
  5964.  
  5965. #endif     /* __IRowsetNotify_INTERFACE_DEFINED__ */
  5966.  
  5967.  
  5968. #ifndef __IRowsetIndex_INTERFACE_DEFINED__
  5969. #define __IRowsetIndex_INTERFACE_DEFINED__
  5970.  
  5971. /****************************************
  5972.  * Generated header for interface: IRowsetIndex
  5973.  * at Thu Nov 12 23:35:28 1998
  5974.  * using MIDL 3.01.75
  5975.  ****************************************/
  5976. /* [unique][uuid][object][local] */ 
  5977.  
  5978.  
  5979. typedef DWORD DBSEEK;
  5980.  
  5981.  
  5982. enum DBSEEKENUM
  5983.     {    DBSEEK_INVALID    = 0,
  5984.     DBSEEK_FIRSTEQ    = 0x1,
  5985.     DBSEEK_LASTEQ    = 0x2,
  5986.     DBSEEK_AFTEREQ    = 0x4,
  5987.     DBSEEK_AFTER    = 0x8,
  5988.     DBSEEK_BEFOREEQ    = 0x10,
  5989.     DBSEEK_BEFORE    = 0x20
  5990.     };
  5991. #define    DBSEEK_GE    DBSEEK_AFTEREQ
  5992. #define    DBSEEK_GT    DBSEEK_AFTER
  5993. #define    DBSEEK_LE    DBSEEK_BEFOREEQ
  5994. #define    DBSEEK_LT    DBSEEK_BEFORE
  5995. typedef DWORD DBRANGE;
  5996.  
  5997.  
  5998. enum DBRANGEENUM
  5999.     {    DBRANGE_INCLUSIVESTART    = 0,
  6000.     DBRANGE_INCLUSIVEEND    = 0,
  6001.     DBRANGE_EXCLUSIVESTART    = 0x1,
  6002.     DBRANGE_EXCLUSIVEEND    = 0x2,
  6003.     DBRANGE_EXCLUDENULLS    = 0x4,
  6004.     DBRANGE_PREFIX    = 0x8,
  6005.     DBRANGE_MATCH    = 0x10
  6006.     };
  6007. //@@@+ V2.0
  6008. #if( OLEDBVER >= 0x0200 )
  6009.  
  6010. enum DBRANGEENUM20
  6011.     {    DBRANGE_MATCH_N_SHIFT    = 0x18,
  6012.     DBRANGE_MATCH_N_MASK    = 0xff
  6013.     };
  6014. #endif // OLEDBVER >= 0x0200
  6015. //@@@- V2.0
  6016.  
  6017. EXTERN_C const IID IID_IRowsetIndex;
  6018.  
  6019. #if defined(__cplusplus) && !defined(CINTERFACE)
  6020.     
  6021.     interface DECLSPEC_UUID("0c733a82-2a1c-11ce-ade5-00aa0044773d")
  6022.     IRowsetIndex : public IUnknown
  6023.     {
  6024.     public:
  6025.         virtual HRESULT STDMETHODCALLTYPE GetIndexInfo( 
  6026.             /* [out][in] */ ULONG __RPC_FAR *pcKeyColumns,
  6027.             /* [size_is][size_is][out] */ DBINDEXCOLUMNDESC __RPC_FAR *__RPC_FAR *prgIndexColumnDesc,
  6028.             /* [out][in] */ ULONG __RPC_FAR *pcIndexProperties,
  6029.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgIndexProperties) = 0;
  6030.         
  6031.         virtual HRESULT STDMETHODCALLTYPE Seek( 
  6032.             /* [in] */ HACCESSOR hAccessor,
  6033.             /* [in] */ ULONG cKeyValues,
  6034.             /* [in] */ void __RPC_FAR *pData,
  6035.             /* [in] */ DBSEEK dwSeekOptions) = 0;
  6036.         
  6037.         virtual HRESULT STDMETHODCALLTYPE SetRange( 
  6038.             /* [in] */ HACCESSOR hAccessor,
  6039.             /* [in] */ ULONG cStartKeyColumns,
  6040.             /* [in] */ void __RPC_FAR *pStartData,
  6041.             /* [in] */ ULONG cEndKeyColumns,
  6042.             /* [in] */ void __RPC_FAR *pEndData,
  6043.             /* [in] */ DBRANGE dwRangeOptions) = 0;
  6044.         
  6045.     };
  6046.     
  6047. #else     /* C style interface */
  6048.  
  6049.     typedef struct IRowsetIndexVtbl
  6050.     {
  6051.         BEGIN_INTERFACE
  6052.         
  6053.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6054.             IRowsetIndex __RPC_FAR * This,
  6055.             /* [in] */ REFIID riid,
  6056.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6057.         
  6058.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6059.             IRowsetIndex __RPC_FAR * This);
  6060.         
  6061.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6062.             IRowsetIndex __RPC_FAR * This);
  6063.         
  6064.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIndexInfo )( 
  6065.             IRowsetIndex __RPC_FAR * This,
  6066.             /* [out][in] */ ULONG __RPC_FAR *pcKeyColumns,
  6067.             /* [size_is][size_is][out] */ DBINDEXCOLUMNDESC __RPC_FAR *__RPC_FAR *prgIndexColumnDesc,
  6068.             /* [out][in] */ ULONG __RPC_FAR *pcIndexProperties,
  6069.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgIndexProperties);
  6070.         
  6071.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Seek )( 
  6072.             IRowsetIndex __RPC_FAR * This,
  6073.             /* [in] */ HACCESSOR hAccessor,
  6074.             /* [in] */ ULONG cKeyValues,
  6075.             /* [in] */ void __RPC_FAR *pData,
  6076.             /* [in] */ DBSEEK dwSeekOptions);
  6077.         
  6078.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetRange )( 
  6079.             IRowsetIndex __RPC_FAR * This,
  6080.             /* [in] */ HACCESSOR hAccessor,
  6081.             /* [in] */ ULONG cStartKeyColumns,
  6082.             /* [in] */ void __RPC_FAR *pStartData,
  6083.             /* [in] */ ULONG cEndKeyColumns,
  6084.             /* [in] */ void __RPC_FAR *pEndData,
  6085.             /* [in] */ DBRANGE dwRangeOptions);
  6086.         
  6087.         END_INTERFACE
  6088.     } IRowsetIndexVtbl;
  6089.  
  6090.     interface IRowsetIndex
  6091.     {
  6092.         CONST_VTBL struct IRowsetIndexVtbl __RPC_FAR *lpVtbl;
  6093.     };
  6094.  
  6095.     
  6096.  
  6097. #ifdef COBJMACROS
  6098.  
  6099.  
  6100. #define IRowsetIndex_QueryInterface(This,riid,ppvObject)    \
  6101.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6102.  
  6103. #define IRowsetIndex_AddRef(This)    \
  6104.     (This)->lpVtbl -> AddRef(This)
  6105.  
  6106. #define IRowsetIndex_Release(This)    \
  6107.     (This)->lpVtbl -> Release(This)
  6108.  
  6109.  
  6110. #define IRowsetIndex_GetIndexInfo(This,pcKeyColumns,prgIndexColumnDesc,pcIndexProperties,prgIndexProperties)    \
  6111.     (This)->lpVtbl -> GetIndexInfo(This,pcKeyColumns,prgIndexColumnDesc,pcIndexProperties,prgIndexProperties)
  6112.  
  6113. #define IRowsetIndex_Seek(This,hAccessor,cKeyValues,pData,dwSeekOptions)    \
  6114.     (This)->lpVtbl -> Seek(This,hAccessor,cKeyValues,pData,dwSeekOptions)
  6115.  
  6116. #define IRowsetIndex_SetRange(This,hAccessor,cStartKeyColumns,pStartData,cEndKeyColumns,pEndData,dwRangeOptions)    \
  6117.     (This)->lpVtbl -> SetRange(This,hAccessor,cStartKeyColumns,pStartData,cEndKeyColumns,pEndData,dwRangeOptions)
  6118.  
  6119. #endif /* COBJMACROS */
  6120.  
  6121.  
  6122. #endif     /* C style interface */
  6123.  
  6124.  
  6125.  
  6126. HRESULT STDMETHODCALLTYPE IRowsetIndex_GetIndexInfo_Proxy( 
  6127.     IRowsetIndex __RPC_FAR * This,
  6128.     /* [out][in] */ ULONG __RPC_FAR *pcKeyColumns,
  6129.     /* [size_is][size_is][out] */ DBINDEXCOLUMNDESC __RPC_FAR *__RPC_FAR *prgIndexColumnDesc,
  6130.     /* [out][in] */ ULONG __RPC_FAR *pcIndexProperties,
  6131.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgIndexProperties);
  6132.  
  6133.  
  6134. void __RPC_STUB IRowsetIndex_GetIndexInfo_Stub(
  6135.     IRpcStubBuffer *This,
  6136.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6137.     PRPC_MESSAGE _pRpcMessage,
  6138.     DWORD *_pdwStubPhase);
  6139.  
  6140.  
  6141. HRESULT STDMETHODCALLTYPE IRowsetIndex_Seek_Proxy( 
  6142.     IRowsetIndex __RPC_FAR * This,
  6143.     /* [in] */ HACCESSOR hAccessor,
  6144.     /* [in] */ ULONG cKeyValues,
  6145.     /* [in] */ void __RPC_FAR *pData,
  6146.     /* [in] */ DBSEEK dwSeekOptions);
  6147.  
  6148.  
  6149. void __RPC_STUB IRowsetIndex_Seek_Stub(
  6150.     IRpcStubBuffer *This,
  6151.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6152.     PRPC_MESSAGE _pRpcMessage,
  6153.     DWORD *_pdwStubPhase);
  6154.  
  6155.  
  6156. HRESULT STDMETHODCALLTYPE IRowsetIndex_SetRange_Proxy( 
  6157.     IRowsetIndex __RPC_FAR * This,
  6158.     /* [in] */ HACCESSOR hAccessor,
  6159.     /* [in] */ ULONG cStartKeyColumns,
  6160.     /* [in] */ void __RPC_FAR *pStartData,
  6161.     /* [in] */ ULONG cEndKeyColumns,
  6162.     /* [in] */ void __RPC_FAR *pEndData,
  6163.     /* [in] */ DBRANGE dwRangeOptions);
  6164.  
  6165.  
  6166. void __RPC_STUB IRowsetIndex_SetRange_Stub(
  6167.     IRpcStubBuffer *This,
  6168.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6169.     PRPC_MESSAGE _pRpcMessage,
  6170.     DWORD *_pdwStubPhase);
  6171.  
  6172.  
  6173.  
  6174. #endif     /* __IRowsetIndex_INTERFACE_DEFINED__ */
  6175.  
  6176.  
  6177. #ifndef __ICommand_INTERFACE_DEFINED__
  6178. #define __ICommand_INTERFACE_DEFINED__
  6179.  
  6180. /****************************************
  6181.  * Generated header for interface: ICommand
  6182.  * at Thu Nov 12 23:35:28 1998
  6183.  * using MIDL 3.01.75
  6184.  ****************************************/
  6185. /* [unique][uuid][object] */ 
  6186.  
  6187.  
  6188.  
  6189. EXTERN_C const IID IID_ICommand;
  6190.  
  6191. #if defined(__cplusplus) && !defined(CINTERFACE)
  6192.     
  6193.     interface DECLSPEC_UUID("0c733a63-2a1c-11ce-ade5-00aa0044773d")
  6194.     ICommand : public IUnknown
  6195.     {
  6196.     public:
  6197.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Cancel( void) = 0;
  6198.         
  6199.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Execute( 
  6200.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6201.             /* [in] */ REFIID riid,
  6202.             /* [out][in] */ DBPARAMS __RPC_FAR *pParams,
  6203.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6204.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  6205.         
  6206.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDBSession( 
  6207.             /* [in] */ REFIID riid,
  6208.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession) = 0;
  6209.         
  6210.     };
  6211.     
  6212. #else     /* C style interface */
  6213.  
  6214.     typedef struct ICommandVtbl
  6215.     {
  6216.         BEGIN_INTERFACE
  6217.         
  6218.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6219.             ICommand __RPC_FAR * This,
  6220.             /* [in] */ REFIID riid,
  6221.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6222.         
  6223.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6224.             ICommand __RPC_FAR * This);
  6225.         
  6226.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6227.             ICommand __RPC_FAR * This);
  6228.         
  6229.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Cancel )( 
  6230.             ICommand __RPC_FAR * This);
  6231.         
  6232.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
  6233.             ICommand __RPC_FAR * This,
  6234.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6235.             /* [in] */ REFIID riid,
  6236.             /* [out][in] */ DBPARAMS __RPC_FAR *pParams,
  6237.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6238.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  6239.         
  6240.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDBSession )( 
  6241.             ICommand __RPC_FAR * This,
  6242.             /* [in] */ REFIID riid,
  6243.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  6244.         
  6245.         END_INTERFACE
  6246.     } ICommandVtbl;
  6247.  
  6248.     interface ICommand
  6249.     {
  6250.         CONST_VTBL struct ICommandVtbl __RPC_FAR *lpVtbl;
  6251.     };
  6252.  
  6253.     
  6254.  
  6255. #ifdef COBJMACROS
  6256.  
  6257.  
  6258. #define ICommand_QueryInterface(This,riid,ppvObject)    \
  6259.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6260.  
  6261. #define ICommand_AddRef(This)    \
  6262.     (This)->lpVtbl -> AddRef(This)
  6263.  
  6264. #define ICommand_Release(This)    \
  6265.     (This)->lpVtbl -> Release(This)
  6266.  
  6267.  
  6268. #define ICommand_Cancel(This)    \
  6269.     (This)->lpVtbl -> Cancel(This)
  6270.  
  6271. #define ICommand_Execute(This,pUnkOuter,riid,pParams,pcRowsAffected,ppRowset)    \
  6272.     (This)->lpVtbl -> Execute(This,pUnkOuter,riid,pParams,pcRowsAffected,ppRowset)
  6273.  
  6274. #define ICommand_GetDBSession(This,riid,ppSession)    \
  6275.     (This)->lpVtbl -> GetDBSession(This,riid,ppSession)
  6276.  
  6277. #endif /* COBJMACROS */
  6278.  
  6279.  
  6280. #endif     /* C style interface */
  6281.  
  6282.  
  6283.  
  6284. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_RemoteCancel_Proxy( 
  6285.     ICommand __RPC_FAR * This,
  6286.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6287.  
  6288.  
  6289. void __RPC_STUB ICommand_RemoteCancel_Stub(
  6290.     IRpcStubBuffer *This,
  6291.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6292.     PRPC_MESSAGE _pRpcMessage,
  6293.     DWORD *_pdwStubPhase);
  6294.  
  6295.  
  6296. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_RemoteExecute_Proxy( 
  6297.     ICommand __RPC_FAR * This,
  6298.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6299.     /* [in] */ REFIID riid,
  6300.     /* [in] */ HACCESSOR hAccessor,
  6301.     /* [in] */ ULONG cParamSets,
  6302.     /* [in] */ ULONG cbData,
  6303.     /* [size_is][unique][out][in] */ BYTE __RPC_FAR *pbData,
  6304.     /* [unique][out][in] */ LONG __RPC_FAR *pcRowsAffected,
  6305.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  6306.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6307.  
  6308.  
  6309. void __RPC_STUB ICommand_RemoteExecute_Stub(
  6310.     IRpcStubBuffer *This,
  6311.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6312.     PRPC_MESSAGE _pRpcMessage,
  6313.     DWORD *_pdwStubPhase);
  6314.  
  6315.  
  6316. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_RemoteGetDBSession_Proxy( 
  6317.     ICommand __RPC_FAR * This,
  6318.     /* [in] */ REFIID riid,
  6319.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession,
  6320.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6321.  
  6322.  
  6323. void __RPC_STUB ICommand_RemoteGetDBSession_Stub(
  6324.     IRpcStubBuffer *This,
  6325.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6326.     PRPC_MESSAGE _pRpcMessage,
  6327.     DWORD *_pdwStubPhase);
  6328.  
  6329.  
  6330.  
  6331. #endif     /* __ICommand_INTERFACE_DEFINED__ */
  6332.  
  6333.  
  6334. #ifndef __IMultipleResults_INTERFACE_DEFINED__
  6335. #define __IMultipleResults_INTERFACE_DEFINED__
  6336.  
  6337. /****************************************
  6338.  * Generated header for interface: IMultipleResults
  6339.  * at Thu Nov 12 23:35:28 1998
  6340.  * using MIDL 3.01.75
  6341.  ****************************************/
  6342. /* [unique][uuid][object] */ 
  6343.  
  6344.  
  6345.  
  6346. EXTERN_C const IID IID_IMultipleResults;
  6347.  
  6348. #if defined(__cplusplus) && !defined(CINTERFACE)
  6349.     
  6350.     interface DECLSPEC_UUID("0c733a90-2a1c-11ce-ade5-00aa0044773d")
  6351.     IMultipleResults : public IUnknown
  6352.     {
  6353.     public:
  6354.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetResult( 
  6355.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6356.             /* [in] */ LONG reserved,
  6357.             /* [in] */ REFIID riid,
  6358.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6359.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  6360.         
  6361.     };
  6362.     
  6363. #else     /* C style interface */
  6364.  
  6365.     typedef struct IMultipleResultsVtbl
  6366.     {
  6367.         BEGIN_INTERFACE
  6368.         
  6369.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6370.             IMultipleResults __RPC_FAR * This,
  6371.             /* [in] */ REFIID riid,
  6372.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6373.         
  6374.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6375.             IMultipleResults __RPC_FAR * This);
  6376.         
  6377.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6378.             IMultipleResults __RPC_FAR * This);
  6379.         
  6380.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetResult )( 
  6381.             IMultipleResults __RPC_FAR * This,
  6382.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6383.             /* [in] */ LONG reserved,
  6384.             /* [in] */ REFIID riid,
  6385.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6386.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  6387.         
  6388.         END_INTERFACE
  6389.     } IMultipleResultsVtbl;
  6390.  
  6391.     interface IMultipleResults
  6392.     {
  6393.         CONST_VTBL struct IMultipleResultsVtbl __RPC_FAR *lpVtbl;
  6394.     };
  6395.  
  6396.     
  6397.  
  6398. #ifdef COBJMACROS
  6399.  
  6400.  
  6401. #define IMultipleResults_QueryInterface(This,riid,ppvObject)    \
  6402.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6403.  
  6404. #define IMultipleResults_AddRef(This)    \
  6405.     (This)->lpVtbl -> AddRef(This)
  6406.  
  6407. #define IMultipleResults_Release(This)    \
  6408.     (This)->lpVtbl -> Release(This)
  6409.  
  6410.  
  6411. #define IMultipleResults_GetResult(This,pUnkOuter,reserved,riid,pcRowsAffected,ppRowset)    \
  6412.     (This)->lpVtbl -> GetResult(This,pUnkOuter,reserved,riid,pcRowsAffected,ppRowset)
  6413.  
  6414. #endif /* COBJMACROS */
  6415.  
  6416.  
  6417. #endif     /* C style interface */
  6418.  
  6419.  
  6420.  
  6421. /* [call_as] */ HRESULT STDMETHODCALLTYPE IMultipleResults_RemoteGetResult_Proxy( 
  6422.     IMultipleResults __RPC_FAR * This,
  6423.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6424.     /* [in] */ LONG reserved,
  6425.     /* [in] */ REFIID riid,
  6426.     /* [unique][out][in] */ LONG __RPC_FAR *pcRowsAffected,
  6427.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  6428.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6429.  
  6430.  
  6431. void __RPC_STUB IMultipleResults_RemoteGetResult_Stub(
  6432.     IRpcStubBuffer *This,
  6433.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6434.     PRPC_MESSAGE _pRpcMessage,
  6435.     DWORD *_pdwStubPhase);
  6436.  
  6437.  
  6438.  
  6439. #endif     /* __IMultipleResults_INTERFACE_DEFINED__ */
  6440.  
  6441.  
  6442. #ifndef __IConvertType_INTERFACE_DEFINED__
  6443. #define __IConvertType_INTERFACE_DEFINED__
  6444.  
  6445. /****************************************
  6446.  * Generated header for interface: IConvertType
  6447.  * at Thu Nov 12 23:35:28 1998
  6448.  * using MIDL 3.01.75
  6449.  ****************************************/
  6450. /* [unique][uuid][object] */ 
  6451.  
  6452.  
  6453. typedef DWORD DBCONVERTFLAGS;
  6454.  
  6455.  
  6456. enum DBCONVERTFLAGSENUM
  6457.     {    DBCONVERTFLAGS_COLUMN    = 0,
  6458.     DBCONVERTFLAGS_PARAMETER    = 0x1
  6459.     };
  6460. //@@@+ V2.0
  6461. #if( OLEDBVER >= 0x0200 )
  6462.  
  6463. enum DBCONVERTFLAGSENUM20
  6464.     {    DBCONVERTFLAGS_ISLONG    = 0x2,
  6465.     DBCONVERTFLAGS_ISFIXEDLENGTH    = 0x4,
  6466.     DBCONVERTFLAGS_FROMVARIANT    = 0x8
  6467.     };
  6468. #endif // OLEDBVER >= 0x0200
  6469. //@@@- V2.0
  6470.  
  6471. EXTERN_C const IID IID_IConvertType;
  6472.  
  6473. #if defined(__cplusplus) && !defined(CINTERFACE)
  6474.     
  6475.     interface DECLSPEC_UUID("0c733a88-2a1c-11ce-ade5-00aa0044773d")
  6476.     IConvertType : public IUnknown
  6477.     {
  6478.     public:
  6479.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CanConvert( 
  6480.             /* [in] */ DBTYPE wFromType,
  6481.             /* [in] */ DBTYPE wToType,
  6482.             /* [in] */ DBCONVERTFLAGS dwConvertFlags) = 0;
  6483.         
  6484.     };
  6485.     
  6486. #else     /* C style interface */
  6487.  
  6488.     typedef struct IConvertTypeVtbl
  6489.     {
  6490.         BEGIN_INTERFACE
  6491.         
  6492.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6493.             IConvertType __RPC_FAR * This,
  6494.             /* [in] */ REFIID riid,
  6495.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6496.         
  6497.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6498.             IConvertType __RPC_FAR * This);
  6499.         
  6500.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6501.             IConvertType __RPC_FAR * This);
  6502.         
  6503.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CanConvert )( 
  6504.             IConvertType __RPC_FAR * This,
  6505.             /* [in] */ DBTYPE wFromType,
  6506.             /* [in] */ DBTYPE wToType,
  6507.             /* [in] */ DBCONVERTFLAGS dwConvertFlags);
  6508.         
  6509.         END_INTERFACE
  6510.     } IConvertTypeVtbl;
  6511.  
  6512.     interface IConvertType
  6513.     {
  6514.         CONST_VTBL struct IConvertTypeVtbl __RPC_FAR *lpVtbl;
  6515.     };
  6516.  
  6517.     
  6518.  
  6519. #ifdef COBJMACROS
  6520.  
  6521.  
  6522. #define IConvertType_QueryInterface(This,riid,ppvObject)    \
  6523.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6524.  
  6525. #define IConvertType_AddRef(This)    \
  6526.     (This)->lpVtbl -> AddRef(This)
  6527.  
  6528. #define IConvertType_Release(This)    \
  6529.     (This)->lpVtbl -> Release(This)
  6530.  
  6531.  
  6532. #define IConvertType_CanConvert(This,wFromType,wToType,dwConvertFlags)    \
  6533.     (This)->lpVtbl -> CanConvert(This,wFromType,wToType,dwConvertFlags)
  6534.  
  6535. #endif /* COBJMACROS */
  6536.  
  6537.  
  6538. #endif     /* C style interface */
  6539.  
  6540.  
  6541.  
  6542. /* [call_as] */ HRESULT STDMETHODCALLTYPE IConvertType_RemoteCanConvert_Proxy( 
  6543.     IConvertType __RPC_FAR * This,
  6544.     /* [in] */ DBTYPE wFromType,
  6545.     /* [in] */ DBTYPE wToType,
  6546.     /* [in] */ DBCONVERTFLAGS dwConvertFlags,
  6547.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6548.  
  6549.  
  6550. void __RPC_STUB IConvertType_RemoteCanConvert_Stub(
  6551.     IRpcStubBuffer *This,
  6552.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6553.     PRPC_MESSAGE _pRpcMessage,
  6554.     DWORD *_pdwStubPhase);
  6555.  
  6556.  
  6557.  
  6558. #endif     /* __IConvertType_INTERFACE_DEFINED__ */
  6559.  
  6560.  
  6561. #ifndef __ICommandPrepare_INTERFACE_DEFINED__
  6562. #define __ICommandPrepare_INTERFACE_DEFINED__
  6563.  
  6564. /****************************************
  6565.  * Generated header for interface: ICommandPrepare
  6566.  * at Thu Nov 12 23:35:28 1998
  6567.  * using MIDL 3.01.75
  6568.  ****************************************/
  6569. /* [unique][uuid][object] */ 
  6570.  
  6571.  
  6572.  
  6573. EXTERN_C const IID IID_ICommandPrepare;
  6574.  
  6575. #if defined(__cplusplus) && !defined(CINTERFACE)
  6576.     
  6577.     interface DECLSPEC_UUID("0c733a26-2a1c-11ce-ade5-00aa0044773d")
  6578.     ICommandPrepare : public IUnknown
  6579.     {
  6580.     public:
  6581.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Prepare( 
  6582.             /* [in] */ ULONG cExpectedRuns) = 0;
  6583.         
  6584.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Unprepare( void) = 0;
  6585.         
  6586.     };
  6587.     
  6588. #else     /* C style interface */
  6589.  
  6590.     typedef struct ICommandPrepareVtbl
  6591.     {
  6592.         BEGIN_INTERFACE
  6593.         
  6594.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6595.             ICommandPrepare __RPC_FAR * This,
  6596.             /* [in] */ REFIID riid,
  6597.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6598.         
  6599.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6600.             ICommandPrepare __RPC_FAR * This);
  6601.         
  6602.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6603.             ICommandPrepare __RPC_FAR * This);
  6604.         
  6605.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Prepare )( 
  6606.             ICommandPrepare __RPC_FAR * This,
  6607.             /* [in] */ ULONG cExpectedRuns);
  6608.         
  6609.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Unprepare )( 
  6610.             ICommandPrepare __RPC_FAR * This);
  6611.         
  6612.         END_INTERFACE
  6613.     } ICommandPrepareVtbl;
  6614.  
  6615.     interface ICommandPrepare
  6616.     {
  6617.         CONST_VTBL struct ICommandPrepareVtbl __RPC_FAR *lpVtbl;
  6618.     };
  6619.  
  6620.     
  6621.  
  6622. #ifdef COBJMACROS
  6623.  
  6624.  
  6625. #define ICommandPrepare_QueryInterface(This,riid,ppvObject)    \
  6626.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6627.  
  6628. #define ICommandPrepare_AddRef(This)    \
  6629.     (This)->lpVtbl -> AddRef(This)
  6630.  
  6631. #define ICommandPrepare_Release(This)    \
  6632.     (This)->lpVtbl -> Release(This)
  6633.  
  6634.  
  6635. #define ICommandPrepare_Prepare(This,cExpectedRuns)    \
  6636.     (This)->lpVtbl -> Prepare(This,cExpectedRuns)
  6637.  
  6638. #define ICommandPrepare_Unprepare(This)    \
  6639.     (This)->lpVtbl -> Unprepare(This)
  6640.  
  6641. #endif /* COBJMACROS */
  6642.  
  6643.  
  6644. #endif     /* C style interface */
  6645.  
  6646.  
  6647.  
  6648. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_RemotePrepare_Proxy( 
  6649.     ICommandPrepare __RPC_FAR * This,
  6650.     /* [in] */ ULONG cExpectedRuns,
  6651.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6652.  
  6653.  
  6654. void __RPC_STUB ICommandPrepare_RemotePrepare_Stub(
  6655.     IRpcStubBuffer *This,
  6656.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6657.     PRPC_MESSAGE _pRpcMessage,
  6658.     DWORD *_pdwStubPhase);
  6659.  
  6660.  
  6661. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_RemoteUnprepare_Proxy( 
  6662.     ICommandPrepare __RPC_FAR * This,
  6663.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6664.  
  6665.  
  6666. void __RPC_STUB ICommandPrepare_RemoteUnprepare_Stub(
  6667.     IRpcStubBuffer *This,
  6668.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6669.     PRPC_MESSAGE _pRpcMessage,
  6670.     DWORD *_pdwStubPhase);
  6671.  
  6672.  
  6673.  
  6674. #endif     /* __ICommandPrepare_INTERFACE_DEFINED__ */
  6675.  
  6676.  
  6677. #ifndef __ICommandProperties_INTERFACE_DEFINED__
  6678. #define __ICommandProperties_INTERFACE_DEFINED__
  6679.  
  6680. /****************************************
  6681.  * Generated header for interface: ICommandProperties
  6682.  * at Thu Nov 12 23:35:28 1998
  6683.  * using MIDL 3.01.75
  6684.  ****************************************/
  6685. /* [unique][uuid][object] */ 
  6686.  
  6687.  
  6688.  
  6689. EXTERN_C const IID IID_ICommandProperties;
  6690.  
  6691. #if defined(__cplusplus) && !defined(CINTERFACE)
  6692.     
  6693.     interface DECLSPEC_UUID("0c733a79-2a1c-11ce-ade5-00aa0044773d")
  6694.     ICommandProperties : public IUnknown
  6695.     {
  6696.     public:
  6697.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetProperties( 
  6698.             /* [in] */ const ULONG cPropertyIDSets,
  6699.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  6700.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  6701.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  6702.         
  6703.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetProperties( 
  6704.             /* [in] */ ULONG cPropertySets,
  6705.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  6706.         
  6707.     };
  6708.     
  6709. #else     /* C style interface */
  6710.  
  6711.     typedef struct ICommandPropertiesVtbl
  6712.     {
  6713.         BEGIN_INTERFACE
  6714.         
  6715.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6716.             ICommandProperties __RPC_FAR * This,
  6717.             /* [in] */ REFIID riid,
  6718.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6719.         
  6720.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6721.             ICommandProperties __RPC_FAR * This);
  6722.         
  6723.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6724.             ICommandProperties __RPC_FAR * This);
  6725.         
  6726.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  6727.             ICommandProperties __RPC_FAR * This,
  6728.             /* [in] */ const ULONG cPropertyIDSets,
  6729.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  6730.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  6731.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  6732.         
  6733.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProperties )( 
  6734.             ICommandProperties __RPC_FAR * This,
  6735.             /* [in] */ ULONG cPropertySets,
  6736.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  6737.         
  6738.         END_INTERFACE
  6739.     } ICommandPropertiesVtbl;
  6740.  
  6741.     interface ICommandProperties
  6742.     {
  6743.         CONST_VTBL struct ICommandPropertiesVtbl __RPC_FAR *lpVtbl;
  6744.     };
  6745.  
  6746.     
  6747.  
  6748. #ifdef COBJMACROS
  6749.  
  6750.  
  6751. #define ICommandProperties_QueryInterface(This,riid,ppvObject)    \
  6752.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6753.  
  6754. #define ICommandProperties_AddRef(This)    \
  6755.     (This)->lpVtbl -> AddRef(This)
  6756.  
  6757. #define ICommandProperties_Release(This)    \
  6758.     (This)->lpVtbl -> Release(This)
  6759.  
  6760.  
  6761. #define ICommandProperties_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  6762.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  6763.  
  6764. #define ICommandProperties_SetProperties(This,cPropertySets,rgPropertySets)    \
  6765.     (This)->lpVtbl -> SetProperties(This,cPropertySets,rgPropertySets)
  6766.  
  6767. #endif /* COBJMACROS */
  6768.  
  6769.  
  6770. #endif     /* C style interface */
  6771.  
  6772.  
  6773.  
  6774. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandProperties_RemoteGetProperties_Proxy( 
  6775.     ICommandProperties __RPC_FAR * This,
  6776.     /* [in] */ const ULONG cPropertyIDSets,
  6777.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  6778.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  6779.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  6780.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6781.  
  6782.  
  6783. void __RPC_STUB ICommandProperties_RemoteGetProperties_Stub(
  6784.     IRpcStubBuffer *This,
  6785.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6786.     PRPC_MESSAGE _pRpcMessage,
  6787.     DWORD *_pdwStubPhase);
  6788.  
  6789.  
  6790. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandProperties_RemoteSetProperties_Proxy( 
  6791.     ICommandProperties __RPC_FAR * This,
  6792.     /* [in] */ ULONG cPropertySets,
  6793.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  6794.     /* [in] */ ULONG cTotalProps,
  6795.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  6796.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6797.  
  6798.  
  6799. void __RPC_STUB ICommandProperties_RemoteSetProperties_Stub(
  6800.     IRpcStubBuffer *This,
  6801.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6802.     PRPC_MESSAGE _pRpcMessage,
  6803.     DWORD *_pdwStubPhase);
  6804.  
  6805.  
  6806.  
  6807. #endif     /* __ICommandProperties_INTERFACE_DEFINED__ */
  6808.  
  6809.  
  6810. #ifndef __ICommandText_INTERFACE_DEFINED__
  6811. #define __ICommandText_INTERFACE_DEFINED__
  6812.  
  6813. /****************************************
  6814.  * Generated header for interface: ICommandText
  6815.  * at Thu Nov 12 23:35:28 1998
  6816.  * using MIDL 3.01.75
  6817.  ****************************************/
  6818. /* [unique][uuid][object] */ 
  6819.  
  6820.  
  6821.  
  6822. EXTERN_C const IID IID_ICommandText;
  6823.  
  6824. #if defined(__cplusplus) && !defined(CINTERFACE)
  6825.     
  6826.     interface DECLSPEC_UUID("0c733a27-2a1c-11ce-ade5-00aa0044773d")
  6827.     ICommandText : public ICommand
  6828.     {
  6829.     public:
  6830.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetCommandText( 
  6831.             /* [out][in] */ GUID __RPC_FAR *pguidDialect,
  6832.             /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand) = 0;
  6833.         
  6834.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetCommandText( 
  6835.             /* [in] */ REFGUID rguidDialect,
  6836.             /* [unique][in] */ LPCOLESTR pwszCommand) = 0;
  6837.         
  6838.     };
  6839.     
  6840. #else     /* C style interface */
  6841.  
  6842.     typedef struct ICommandTextVtbl
  6843.     {
  6844.         BEGIN_INTERFACE
  6845.         
  6846.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6847.             ICommandText __RPC_FAR * This,
  6848.             /* [in] */ REFIID riid,
  6849.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6850.         
  6851.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6852.             ICommandText __RPC_FAR * This);
  6853.         
  6854.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6855.             ICommandText __RPC_FAR * This);
  6856.         
  6857.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Cancel )( 
  6858.             ICommandText __RPC_FAR * This);
  6859.         
  6860.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
  6861.             ICommandText __RPC_FAR * This,
  6862.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6863.             /* [in] */ REFIID riid,
  6864.             /* [out][in] */ DBPARAMS __RPC_FAR *pParams,
  6865.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6866.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  6867.         
  6868.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDBSession )( 
  6869.             ICommandText __RPC_FAR * This,
  6870.             /* [in] */ REFIID riid,
  6871.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  6872.         
  6873.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCommandText )( 
  6874.             ICommandText __RPC_FAR * This,
  6875.             /* [out][in] */ GUID __RPC_FAR *pguidDialect,
  6876.             /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand);
  6877.         
  6878.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCommandText )( 
  6879.             ICommandText __RPC_FAR * This,
  6880.             /* [in] */ REFGUID rguidDialect,
  6881.             /* [unique][in] */ LPCOLESTR pwszCommand);
  6882.         
  6883.         END_INTERFACE
  6884.     } ICommandTextVtbl;
  6885.  
  6886.     interface ICommandText
  6887.     {
  6888.         CONST_VTBL struct ICommandTextVtbl __RPC_FAR *lpVtbl;
  6889.     };
  6890.  
  6891.     
  6892.  
  6893. #ifdef COBJMACROS
  6894.  
  6895.  
  6896. #define ICommandText_QueryInterface(This,riid,ppvObject)    \
  6897.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6898.  
  6899. #define ICommandText_AddRef(This)    \
  6900.     (This)->lpVtbl -> AddRef(This)
  6901.  
  6902. #define ICommandText_Release(This)    \
  6903.     (This)->lpVtbl -> Release(This)
  6904.  
  6905.  
  6906. #define ICommandText_Cancel(This)    \
  6907.     (This)->lpVtbl -> Cancel(This)
  6908.  
  6909. #define ICommandText_Execute(This,pUnkOuter,riid,pParams,pcRowsAffected,ppRowset)    \
  6910.     (This)->lpVtbl -> Execute(This,pUnkOuter,riid,pParams,pcRowsAffected,ppRowset)
  6911.  
  6912. #define ICommandText_GetDBSession(This,riid,ppSession)    \
  6913.     (This)->lpVtbl -> GetDBSession(This,riid,ppSession)
  6914.  
  6915.  
  6916. #define ICommandText_GetCommandText(This,pguidDialect,ppwszCommand)    \
  6917.     (This)->lpVtbl -> GetCommandText(This,pguidDialect,ppwszCommand)
  6918.  
  6919. #define ICommandText_SetCommandText(This,rguidDialect,pwszCommand)    \
  6920.     (This)->lpVtbl -> SetCommandText(This,rguidDialect,pwszCommand)
  6921.  
  6922. #endif /* COBJMACROS */
  6923.  
  6924.  
  6925. #endif     /* C style interface */
  6926.  
  6927.  
  6928.  
  6929. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandText_RemoteGetCommandText_Proxy( 
  6930.     ICommandText __RPC_FAR * This,
  6931.     /* [unique][out][in] */ GUID __RPC_FAR *pguidDialect,
  6932.     /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand,
  6933.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6934.  
  6935.  
  6936. void __RPC_STUB ICommandText_RemoteGetCommandText_Stub(
  6937.     IRpcStubBuffer *This,
  6938.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6939.     PRPC_MESSAGE _pRpcMessage,
  6940.     DWORD *_pdwStubPhase);
  6941.  
  6942.  
  6943. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandText_RemoteSetCommandText_Proxy( 
  6944.     ICommandText __RPC_FAR * This,
  6945.     /* [in] */ REFGUID rguidDialect,
  6946.     /* [unique][in] */ LPCOLESTR pwszCommand,
  6947.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6948.  
  6949.  
  6950. void __RPC_STUB ICommandText_RemoteSetCommandText_Stub(
  6951.     IRpcStubBuffer *This,
  6952.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6953.     PRPC_MESSAGE _pRpcMessage,
  6954.     DWORD *_pdwStubPhase);
  6955.  
  6956.  
  6957.  
  6958. #endif     /* __ICommandText_INTERFACE_DEFINED__ */
  6959.  
  6960.  
  6961. #ifndef __ICommandWithParameters_INTERFACE_DEFINED__
  6962. #define __ICommandWithParameters_INTERFACE_DEFINED__
  6963.  
  6964. /****************************************
  6965.  * Generated header for interface: ICommandWithParameters
  6966.  * at Thu Nov 12 23:35:28 1998
  6967.  * using MIDL 3.01.75
  6968.  ****************************************/
  6969. /* [unique][uuid][object] */ 
  6970.  
  6971.  
  6972. typedef struct  tagDBPARAMBINDINFO
  6973.     {
  6974.     LPOLESTR pwszDataSourceType;
  6975.     LPOLESTR pwszName;
  6976.     ULONG ulParamSize;
  6977.     DBPARAMFLAGS dwFlags;
  6978.     BYTE bPrecision;
  6979.     BYTE bScale;
  6980.     }    DBPARAMBINDINFO;
  6981.  
  6982.  
  6983. EXTERN_C const IID IID_ICommandWithParameters;
  6984.  
  6985. #if defined(__cplusplus) && !defined(CINTERFACE)
  6986.     
  6987.     interface DECLSPEC_UUID("0c733a64-2a1c-11ce-ade5-00aa0044773d")
  6988.     ICommandWithParameters : public IUnknown
  6989.     {
  6990.     public:
  6991.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetParameterInfo( 
  6992.             /* [out][in] */ ULONG __RPC_FAR *pcParams,
  6993.             /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  6994.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer) = 0;
  6995.         
  6996.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE MapParameterNames( 
  6997.             /* [in] */ ULONG cParamNames,
  6998.             /* [size_is][in] */ const OLECHAR __RPC_FAR *__RPC_FAR rgParamNames[  ],
  6999.             /* [size_is][out] */ LONG __RPC_FAR rgParamOrdinals[  ]) = 0;
  7000.         
  7001.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetParameterInfo( 
  7002.             /* [in] */ ULONG cParams,
  7003.             /* [size_is][unique][in] */ const ULONG __RPC_FAR rgParamOrdinals[  ],
  7004.             /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR rgParamBindInfo[  ]) = 0;
  7005.         
  7006.     };
  7007.     
  7008. #else     /* C style interface */
  7009.  
  7010.     typedef struct ICommandWithParametersVtbl
  7011.     {
  7012.         BEGIN_INTERFACE
  7013.         
  7014.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7015.             ICommandWithParameters __RPC_FAR * This,
  7016.             /* [in] */ REFIID riid,
  7017.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7018.         
  7019.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7020.             ICommandWithParameters __RPC_FAR * This);
  7021.         
  7022.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7023.             ICommandWithParameters __RPC_FAR * This);
  7024.         
  7025.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetParameterInfo )( 
  7026.             ICommandWithParameters __RPC_FAR * This,
  7027.             /* [out][in] */ ULONG __RPC_FAR *pcParams,
  7028.             /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  7029.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer);
  7030.         
  7031.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MapParameterNames )( 
  7032.             ICommandWithParameters __RPC_FAR * This,
  7033.             /* [in] */ ULONG cParamNames,
  7034.             /* [size_is][in] */ const OLECHAR __RPC_FAR *__RPC_FAR rgParamNames[  ],
  7035.             /* [size_is][out] */ LONG __RPC_FAR rgParamOrdinals[  ]);
  7036.         
  7037.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetParameterInfo )( 
  7038.             ICommandWithParameters __RPC_FAR * This,
  7039.             /* [in] */ ULONG cParams,
  7040.             /* [size_is][unique][in] */ const ULONG __RPC_FAR rgParamOrdinals[  ],
  7041.             /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR rgParamBindInfo[  ]);
  7042.         
  7043.         END_INTERFACE
  7044.     } ICommandWithParametersVtbl;
  7045.  
  7046.     interface ICommandWithParameters
  7047.     {
  7048.         CONST_VTBL struct ICommandWithParametersVtbl __RPC_FAR *lpVtbl;
  7049.     };
  7050.  
  7051.     
  7052.  
  7053. #ifdef COBJMACROS
  7054.  
  7055.  
  7056. #define ICommandWithParameters_QueryInterface(This,riid,ppvObject)    \
  7057.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7058.  
  7059. #define ICommandWithParameters_AddRef(This)    \
  7060.     (This)->lpVtbl -> AddRef(This)
  7061.  
  7062. #define ICommandWithParameters_Release(This)    \
  7063.     (This)->lpVtbl -> Release(This)
  7064.  
  7065.  
  7066. #define ICommandWithParameters_GetParameterInfo(This,pcParams,prgParamInfo,ppNamesBuffer)    \
  7067.     (This)->lpVtbl -> GetParameterInfo(This,pcParams,prgParamInfo,ppNamesBuffer)
  7068.  
  7069. #define ICommandWithParameters_MapParameterNames(This,cParamNames,rgParamNames,rgParamOrdinals)    \
  7070.     (This)->lpVtbl -> MapParameterNames(This,cParamNames,rgParamNames,rgParamOrdinals)
  7071.  
  7072. #define ICommandWithParameters_SetParameterInfo(This,cParams,rgParamOrdinals,rgParamBindInfo)    \
  7073.     (This)->lpVtbl -> SetParameterInfo(This,cParams,rgParamOrdinals,rgParamBindInfo)
  7074.  
  7075. #endif /* COBJMACROS */
  7076.  
  7077.  
  7078. #endif     /* C style interface */
  7079.  
  7080.  
  7081.  
  7082. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_RemoteGetParameterInfo_Proxy( 
  7083.     ICommandWithParameters __RPC_FAR * This,
  7084.     /* [out][in] */ ULONG __RPC_FAR *pcParams,
  7085.     /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  7086.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  7087.     /* [out][in] */ ULONG __RPC_FAR *pcbNamesBuffer,
  7088.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer,
  7089.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7090.  
  7091.  
  7092. void __RPC_STUB ICommandWithParameters_RemoteGetParameterInfo_Stub(
  7093.     IRpcStubBuffer *This,
  7094.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7095.     PRPC_MESSAGE _pRpcMessage,
  7096.     DWORD *_pdwStubPhase);
  7097.  
  7098.  
  7099. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_RemoteMapParameterNames_Proxy( 
  7100.     ICommandWithParameters __RPC_FAR * This,
  7101.     /* [in] */ ULONG cParamNames,
  7102.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgParamNames,
  7103.     /* [size_is][out] */ LONG __RPC_FAR *rgParamOrdinals,
  7104.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7105.  
  7106.  
  7107. void __RPC_STUB ICommandWithParameters_RemoteMapParameterNames_Stub(
  7108.     IRpcStubBuffer *This,
  7109.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7110.     PRPC_MESSAGE _pRpcMessage,
  7111.     DWORD *_pdwStubPhase);
  7112.  
  7113.  
  7114. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_RemoteSetParameterInfo_Proxy( 
  7115.     ICommandWithParameters __RPC_FAR * This,
  7116.     /* [in] */ ULONG cParams,
  7117.     /* [size_is][unique][in] */ const ULONG __RPC_FAR *rgParamOrdinals,
  7118.     /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR *rgParamBindInfo,
  7119.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7120.  
  7121.  
  7122. void __RPC_STUB ICommandWithParameters_RemoteSetParameterInfo_Stub(
  7123.     IRpcStubBuffer *This,
  7124.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7125.     PRPC_MESSAGE _pRpcMessage,
  7126.     DWORD *_pdwStubPhase);
  7127.  
  7128.  
  7129.  
  7130. #endif     /* __ICommandWithParameters_INTERFACE_DEFINED__ */
  7131.  
  7132.  
  7133. #ifndef __IColumnsRowset_INTERFACE_DEFINED__
  7134. #define __IColumnsRowset_INTERFACE_DEFINED__
  7135.  
  7136. /****************************************
  7137.  * Generated header for interface: IColumnsRowset
  7138.  * at Thu Nov 12 23:35:28 1998
  7139.  * using MIDL 3.01.75
  7140.  ****************************************/
  7141. /* [unique][uuid][object] */ 
  7142.  
  7143.  
  7144.  
  7145. EXTERN_C const IID IID_IColumnsRowset;
  7146.  
  7147. #if defined(__cplusplus) && !defined(CINTERFACE)
  7148.     
  7149.     interface DECLSPEC_UUID("0c733a10-2a1c-11ce-ade5-00aa0044773d")
  7150.     IColumnsRowset : public IUnknown
  7151.     {
  7152.     public:
  7153.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetAvailableColumns( 
  7154.             /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  7155.             /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns) = 0;
  7156.         
  7157.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetColumnsRowset( 
  7158.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7159.             /* [in] */ ULONG cOptColumns,
  7160.             /* [size_is][in] */ const DBID __RPC_FAR rgOptColumns[  ],
  7161.             /* [in] */ REFIID riid,
  7162.             /* [in] */ ULONG cPropertySets,
  7163.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  7164.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset) = 0;
  7165.         
  7166.     };
  7167.     
  7168. #else     /* C style interface */
  7169.  
  7170.     typedef struct IColumnsRowsetVtbl
  7171.     {
  7172.         BEGIN_INTERFACE
  7173.         
  7174.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7175.             IColumnsRowset __RPC_FAR * This,
  7176.             /* [in] */ REFIID riid,
  7177.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7178.         
  7179.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7180.             IColumnsRowset __RPC_FAR * This);
  7181.         
  7182.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7183.             IColumnsRowset __RPC_FAR * This);
  7184.         
  7185.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAvailableColumns )( 
  7186.             IColumnsRowset __RPC_FAR * This,
  7187.             /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  7188.             /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns);
  7189.         
  7190.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetColumnsRowset )( 
  7191.             IColumnsRowset __RPC_FAR * This,
  7192.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7193.             /* [in] */ ULONG cOptColumns,
  7194.             /* [size_is][in] */ const DBID __RPC_FAR rgOptColumns[  ],
  7195.             /* [in] */ REFIID riid,
  7196.             /* [in] */ ULONG cPropertySets,
  7197.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  7198.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset);
  7199.         
  7200.         END_INTERFACE
  7201.     } IColumnsRowsetVtbl;
  7202.  
  7203.     interface IColumnsRowset
  7204.     {
  7205.         CONST_VTBL struct IColumnsRowsetVtbl __RPC_FAR *lpVtbl;
  7206.     };
  7207.  
  7208.     
  7209.  
  7210. #ifdef COBJMACROS
  7211.  
  7212.  
  7213. #define IColumnsRowset_QueryInterface(This,riid,ppvObject)    \
  7214.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7215.  
  7216. #define IColumnsRowset_AddRef(This)    \
  7217.     (This)->lpVtbl -> AddRef(This)
  7218.  
  7219. #define IColumnsRowset_Release(This)    \
  7220.     (This)->lpVtbl -> Release(This)
  7221.  
  7222.  
  7223. #define IColumnsRowset_GetAvailableColumns(This,pcOptColumns,prgOptColumns)    \
  7224.     (This)->lpVtbl -> GetAvailableColumns(This,pcOptColumns,prgOptColumns)
  7225.  
  7226. #define IColumnsRowset_GetColumnsRowset(This,pUnkOuter,cOptColumns,rgOptColumns,riid,cPropertySets,rgPropertySets,ppColRowset)    \
  7227.     (This)->lpVtbl -> GetColumnsRowset(This,pUnkOuter,cOptColumns,rgOptColumns,riid,cPropertySets,rgPropertySets,ppColRowset)
  7228.  
  7229. #endif /* COBJMACROS */
  7230.  
  7231.  
  7232. #endif     /* C style interface */
  7233.  
  7234.  
  7235.  
  7236. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_RemoteGetAvailableColumns_Proxy( 
  7237.     IColumnsRowset __RPC_FAR * This,
  7238.     /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  7239.     /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns,
  7240.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7241.  
  7242.  
  7243. void __RPC_STUB IColumnsRowset_RemoteGetAvailableColumns_Stub(
  7244.     IRpcStubBuffer *This,
  7245.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7246.     PRPC_MESSAGE _pRpcMessage,
  7247.     DWORD *_pdwStubPhase);
  7248.  
  7249.  
  7250. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_RemoteGetColumnsRowset_Proxy( 
  7251.     IColumnsRowset __RPC_FAR * This,
  7252.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7253.     /* [in] */ ULONG cOptColumns,
  7254.     /* [size_is][unique][in] */ const DBID __RPC_FAR *rgOptColumns,
  7255.     /* [in] */ REFIID riid,
  7256.     /* [in] */ ULONG cPropertySets,
  7257.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  7258.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset,
  7259.     /* [in] */ ULONG cTotalProps,
  7260.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  7261.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7262.  
  7263.  
  7264. void __RPC_STUB IColumnsRowset_RemoteGetColumnsRowset_Stub(
  7265.     IRpcStubBuffer *This,
  7266.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7267.     PRPC_MESSAGE _pRpcMessage,
  7268.     DWORD *_pdwStubPhase);
  7269.  
  7270.  
  7271.  
  7272. #endif     /* __IColumnsRowset_INTERFACE_DEFINED__ */
  7273.  
  7274.  
  7275. #ifndef __IColumnsInfo_INTERFACE_DEFINED__
  7276. #define __IColumnsInfo_INTERFACE_DEFINED__
  7277.  
  7278. /****************************************
  7279.  * Generated header for interface: IColumnsInfo
  7280.  * at Thu Nov 12 23:35:28 1998
  7281.  * using MIDL 3.01.75
  7282.  ****************************************/
  7283. /* [unique][uuid][object] */ 
  7284.  
  7285.  
  7286.  
  7287. EXTERN_C const IID IID_IColumnsInfo;
  7288.  
  7289. #if defined(__cplusplus) && !defined(CINTERFACE)
  7290.     
  7291.     interface DECLSPEC_UUID("0c733a11-2a1c-11ce-ade5-00aa0044773d")
  7292.     IColumnsInfo : public IUnknown
  7293.     {
  7294.     public:
  7295.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetColumnInfo( 
  7296.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  7297.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  7298.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer) = 0;
  7299.         
  7300.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE MapColumnIDs( 
  7301.             /* [in] */ ULONG cColumnIDs,
  7302.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  7303.             /* [size_is][out] */ ULONG __RPC_FAR rgColumns[  ]) = 0;
  7304.         
  7305.     };
  7306.     
  7307. #else     /* C style interface */
  7308.  
  7309.     typedef struct IColumnsInfoVtbl
  7310.     {
  7311.         BEGIN_INTERFACE
  7312.         
  7313.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7314.             IColumnsInfo __RPC_FAR * This,
  7315.             /* [in] */ REFIID riid,
  7316.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7317.         
  7318.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7319.             IColumnsInfo __RPC_FAR * This);
  7320.         
  7321.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7322.             IColumnsInfo __RPC_FAR * This);
  7323.         
  7324.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetColumnInfo )( 
  7325.             IColumnsInfo __RPC_FAR * This,
  7326.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  7327.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  7328.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  7329.         
  7330.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MapColumnIDs )( 
  7331.             IColumnsInfo __RPC_FAR * This,
  7332.             /* [in] */ ULONG cColumnIDs,
  7333.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  7334.             /* [size_is][out] */ ULONG __RPC_FAR rgColumns[  ]);
  7335.         
  7336.         END_INTERFACE
  7337.     } IColumnsInfoVtbl;
  7338.  
  7339.     interface IColumnsInfo
  7340.     {
  7341.         CONST_VTBL struct IColumnsInfoVtbl __RPC_FAR *lpVtbl;
  7342.     };
  7343.  
  7344.     
  7345.  
  7346. #ifdef COBJMACROS
  7347.  
  7348.  
  7349. #define IColumnsInfo_QueryInterface(This,riid,ppvObject)    \
  7350.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7351.  
  7352. #define IColumnsInfo_AddRef(This)    \
  7353.     (This)->lpVtbl -> AddRef(This)
  7354.  
  7355. #define IColumnsInfo_Release(This)    \
  7356.     (This)->lpVtbl -> Release(This)
  7357.  
  7358.  
  7359. #define IColumnsInfo_GetColumnInfo(This,pcColumns,prgInfo,ppStringsBuffer)    \
  7360.     (This)->lpVtbl -> GetColumnInfo(This,pcColumns,prgInfo,ppStringsBuffer)
  7361.  
  7362. #define IColumnsInfo_MapColumnIDs(This,cColumnIDs,rgColumnIDs,rgColumns)    \
  7363.     (This)->lpVtbl -> MapColumnIDs(This,cColumnIDs,rgColumnIDs,rgColumns)
  7364.  
  7365. #endif /* COBJMACROS */
  7366.  
  7367.  
  7368. #endif     /* C style interface */
  7369.  
  7370.  
  7371.  
  7372. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_RemoteGetColumnInfo_Proxy( 
  7373.     IColumnsInfo __RPC_FAR * This,
  7374.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  7375.     /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  7376.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  7377.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgcolumnidOffsets,
  7378.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  7379.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer,
  7380.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7381.  
  7382.  
  7383. void __RPC_STUB IColumnsInfo_RemoteGetColumnInfo_Stub(
  7384.     IRpcStubBuffer *This,
  7385.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7386.     PRPC_MESSAGE _pRpcMessage,
  7387.     DWORD *_pdwStubPhase);
  7388.  
  7389.  
  7390. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_RemoteMapColumnIDs_Proxy( 
  7391.     IColumnsInfo __RPC_FAR * This,
  7392.     /* [in] */ ULONG cColumnIDs,
  7393.     /* [size_is][in] */ const DBID __RPC_FAR *rgColumnIDs,
  7394.     /* [size_is][out] */ ULONG __RPC_FAR *rgColumns,
  7395.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7396.  
  7397.  
  7398. void __RPC_STUB IColumnsInfo_RemoteMapColumnIDs_Stub(
  7399.     IRpcStubBuffer *This,
  7400.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7401.     PRPC_MESSAGE _pRpcMessage,
  7402.     DWORD *_pdwStubPhase);
  7403.  
  7404.  
  7405.  
  7406. #endif     /* __IColumnsInfo_INTERFACE_DEFINED__ */
  7407.  
  7408.  
  7409. #ifndef __IDBCreateCommand_INTERFACE_DEFINED__
  7410. #define __IDBCreateCommand_INTERFACE_DEFINED__
  7411.  
  7412. /****************************************
  7413.  * Generated header for interface: IDBCreateCommand
  7414.  * at Thu Nov 12 23:35:28 1998
  7415.  * using MIDL 3.01.75
  7416.  ****************************************/
  7417. /* [unique][uuid][object] */ 
  7418.  
  7419.  
  7420.  
  7421. EXTERN_C const IID IID_IDBCreateCommand;
  7422.  
  7423. #if defined(__cplusplus) && !defined(CINTERFACE)
  7424.     
  7425.     interface DECLSPEC_UUID("0c733a1d-2a1c-11ce-ade5-00aa0044773d")
  7426.     IDBCreateCommand : public IUnknown
  7427.     {
  7428.     public:
  7429.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateCommand( 
  7430.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7431.             /* [in] */ REFIID riid,
  7432.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand) = 0;
  7433.         
  7434.     };
  7435.     
  7436. #else     /* C style interface */
  7437.  
  7438.     typedef struct IDBCreateCommandVtbl
  7439.     {
  7440.         BEGIN_INTERFACE
  7441.         
  7442.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7443.             IDBCreateCommand __RPC_FAR * This,
  7444.             /* [in] */ REFIID riid,
  7445.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7446.         
  7447.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7448.             IDBCreateCommand __RPC_FAR * This);
  7449.         
  7450.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7451.             IDBCreateCommand __RPC_FAR * This);
  7452.         
  7453.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateCommand )( 
  7454.             IDBCreateCommand __RPC_FAR * This,
  7455.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7456.             /* [in] */ REFIID riid,
  7457.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand);
  7458.         
  7459.         END_INTERFACE
  7460.     } IDBCreateCommandVtbl;
  7461.  
  7462.     interface IDBCreateCommand
  7463.     {
  7464.         CONST_VTBL struct IDBCreateCommandVtbl __RPC_FAR *lpVtbl;
  7465.     };
  7466.  
  7467.     
  7468.  
  7469. #ifdef COBJMACROS
  7470.  
  7471.  
  7472. #define IDBCreateCommand_QueryInterface(This,riid,ppvObject)    \
  7473.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7474.  
  7475. #define IDBCreateCommand_AddRef(This)    \
  7476.     (This)->lpVtbl -> AddRef(This)
  7477.  
  7478. #define IDBCreateCommand_Release(This)    \
  7479.     (This)->lpVtbl -> Release(This)
  7480.  
  7481.  
  7482. #define IDBCreateCommand_CreateCommand(This,pUnkOuter,riid,ppCommand)    \
  7483.     (This)->lpVtbl -> CreateCommand(This,pUnkOuter,riid,ppCommand)
  7484.  
  7485. #endif /* COBJMACROS */
  7486.  
  7487.  
  7488. #endif     /* C style interface */
  7489.  
  7490.  
  7491.  
  7492. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBCreateCommand_RemoteCreateCommand_Proxy( 
  7493.     IDBCreateCommand __RPC_FAR * This,
  7494.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7495.     /* [in] */ REFIID riid,
  7496.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand,
  7497.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7498.  
  7499.  
  7500. void __RPC_STUB IDBCreateCommand_RemoteCreateCommand_Stub(
  7501.     IRpcStubBuffer *This,
  7502.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7503.     PRPC_MESSAGE _pRpcMessage,
  7504.     DWORD *_pdwStubPhase);
  7505.  
  7506.  
  7507.  
  7508. #endif     /* __IDBCreateCommand_INTERFACE_DEFINED__ */
  7509.  
  7510.  
  7511. #ifndef __IDBCreateSession_INTERFACE_DEFINED__
  7512. #define __IDBCreateSession_INTERFACE_DEFINED__
  7513.  
  7514. /****************************************
  7515.  * Generated header for interface: IDBCreateSession
  7516.  * at Thu Nov 12 23:35:28 1998
  7517.  * using MIDL 3.01.75
  7518.  ****************************************/
  7519. /* [unique][uuid][object] */ 
  7520.  
  7521.  
  7522.  
  7523. EXTERN_C const IID IID_IDBCreateSession;
  7524.  
  7525. #if defined(__cplusplus) && !defined(CINTERFACE)
  7526.     
  7527.     interface DECLSPEC_UUID("0c733a5d-2a1c-11ce-ade5-00aa0044773d")
  7528.     IDBCreateSession : public IUnknown
  7529.     {
  7530.     public:
  7531.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateSession( 
  7532.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7533.             /* [in] */ REFIID riid,
  7534.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession) = 0;
  7535.         
  7536.     };
  7537.     
  7538. #else     /* C style interface */
  7539.  
  7540.     typedef struct IDBCreateSessionVtbl
  7541.     {
  7542.         BEGIN_INTERFACE
  7543.         
  7544.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7545.             IDBCreateSession __RPC_FAR * This,
  7546.             /* [in] */ REFIID riid,
  7547.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7548.         
  7549.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7550.             IDBCreateSession __RPC_FAR * This);
  7551.         
  7552.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7553.             IDBCreateSession __RPC_FAR * This);
  7554.         
  7555.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateSession )( 
  7556.             IDBCreateSession __RPC_FAR * This,
  7557.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7558.             /* [in] */ REFIID riid,
  7559.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession);
  7560.         
  7561.         END_INTERFACE
  7562.     } IDBCreateSessionVtbl;
  7563.  
  7564.     interface IDBCreateSession
  7565.     {
  7566.         CONST_VTBL struct IDBCreateSessionVtbl __RPC_FAR *lpVtbl;
  7567.     };
  7568.  
  7569.     
  7570.  
  7571. #ifdef COBJMACROS
  7572.  
  7573.  
  7574. #define IDBCreateSession_QueryInterface(This,riid,ppvObject)    \
  7575.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7576.  
  7577. #define IDBCreateSession_AddRef(This)    \
  7578.     (This)->lpVtbl -> AddRef(This)
  7579.  
  7580. #define IDBCreateSession_Release(This)    \
  7581.     (This)->lpVtbl -> Release(This)
  7582.  
  7583.  
  7584. #define IDBCreateSession_CreateSession(This,pUnkOuter,riid,ppDBSession)    \
  7585.     (This)->lpVtbl -> CreateSession(This,pUnkOuter,riid,ppDBSession)
  7586.  
  7587. #endif /* COBJMACROS */
  7588.  
  7589.  
  7590. #endif     /* C style interface */
  7591.  
  7592.  
  7593.  
  7594. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBCreateSession_RemoteCreateSession_Proxy( 
  7595.     IDBCreateSession __RPC_FAR * This,
  7596.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7597.     /* [in] */ REFIID riid,
  7598.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession,
  7599.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7600.  
  7601.  
  7602. void __RPC_STUB IDBCreateSession_RemoteCreateSession_Stub(
  7603.     IRpcStubBuffer *This,
  7604.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7605.     PRPC_MESSAGE _pRpcMessage,
  7606.     DWORD *_pdwStubPhase);
  7607.  
  7608.  
  7609.  
  7610. #endif     /* __IDBCreateSession_INTERFACE_DEFINED__ */
  7611.  
  7612.  
  7613. #ifndef __ISourcesRowset_INTERFACE_DEFINED__
  7614. #define __ISourcesRowset_INTERFACE_DEFINED__
  7615.  
  7616. /****************************************
  7617.  * Generated header for interface: ISourcesRowset
  7618.  * at Thu Nov 12 23:35:28 1998
  7619.  * using MIDL 3.01.75
  7620.  ****************************************/
  7621. /* [unique][uuid][object] */ 
  7622.  
  7623.  
  7624. typedef DWORD DBSOURCETYPE;
  7625.  
  7626.  
  7627. enum DBSOURCETYPEENUM
  7628.     {    DBSOURCETYPE_DATASOURCE    = 1,
  7629.     DBSOURCETYPE_ENUMERATOR    = 2
  7630.     };
  7631. //@@@+ V2.0
  7632. #if( OLEDBVER >= 0x0200 )
  7633.  
  7634. enum DBSOURCETYPEENUM20
  7635.     {    DBSOURCETYPE_DATASOURCE_TDP    = 1,
  7636.     DBSOURCETYPE_DATASOURCE_MDP    = 3
  7637.     };
  7638. #endif // OLEDBVER >= 0x0200
  7639. //@@@- V2.0
  7640.  
  7641. EXTERN_C const IID IID_ISourcesRowset;
  7642.  
  7643. #if defined(__cplusplus) && !defined(CINTERFACE)
  7644.     
  7645.     interface DECLSPEC_UUID("0c733a1e-2a1c-11ce-ade5-00aa0044773d")
  7646.     ISourcesRowset : public IUnknown
  7647.     {
  7648.     public:
  7649.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSourcesRowset( 
  7650.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7651.             /* [in] */ REFIID riid,
  7652.             /* [in] */ ULONG cPropertySets,
  7653.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgProperties[  ],
  7654.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset) = 0;
  7655.         
  7656.     };
  7657.     
  7658. #else     /* C style interface */
  7659.  
  7660.     typedef struct ISourcesRowsetVtbl
  7661.     {
  7662.         BEGIN_INTERFACE
  7663.         
  7664.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7665.             ISourcesRowset __RPC_FAR * This,
  7666.             /* [in] */ REFIID riid,
  7667.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7668.         
  7669.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7670.             ISourcesRowset __RPC_FAR * This);
  7671.         
  7672.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7673.             ISourcesRowset __RPC_FAR * This);
  7674.         
  7675.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourcesRowset )( 
  7676.             ISourcesRowset __RPC_FAR * This,
  7677.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7678.             /* [in] */ REFIID riid,
  7679.             /* [in] */ ULONG cPropertySets,
  7680.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgProperties[  ],
  7681.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset);
  7682.         
  7683.         END_INTERFACE
  7684.     } ISourcesRowsetVtbl;
  7685.  
  7686.     interface ISourcesRowset
  7687.     {
  7688.         CONST_VTBL struct ISourcesRowsetVtbl __RPC_FAR *lpVtbl;
  7689.     };
  7690.  
  7691.     
  7692.  
  7693. #ifdef COBJMACROS
  7694.  
  7695.  
  7696. #define ISourcesRowset_QueryInterface(This,riid,ppvObject)    \
  7697.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7698.  
  7699. #define ISourcesRowset_AddRef(This)    \
  7700.     (This)->lpVtbl -> AddRef(This)
  7701.  
  7702. #define ISourcesRowset_Release(This)    \
  7703.     (This)->lpVtbl -> Release(This)
  7704.  
  7705.  
  7706. #define ISourcesRowset_GetSourcesRowset(This,pUnkOuter,riid,cPropertySets,rgProperties,ppSourcesRowset)    \
  7707.     (This)->lpVtbl -> GetSourcesRowset(This,pUnkOuter,riid,cPropertySets,rgProperties,ppSourcesRowset)
  7708.  
  7709. #endif /* COBJMACROS */
  7710.  
  7711.  
  7712. #endif     /* C style interface */
  7713.  
  7714.  
  7715.  
  7716. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISourcesRowset_RemoteGetSourcesRowset_Proxy( 
  7717.     ISourcesRowset __RPC_FAR * This,
  7718.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7719.     /* [in] */ REFIID riid,
  7720.     /* [in] */ ULONG cPropertySets,
  7721.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgProperties,
  7722.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset,
  7723.     /* [in] */ ULONG cTotalProps,
  7724.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  7725.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7726.  
  7727.  
  7728. void __RPC_STUB ISourcesRowset_RemoteGetSourcesRowset_Stub(
  7729.     IRpcStubBuffer *This,
  7730.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7731.     PRPC_MESSAGE _pRpcMessage,
  7732.     DWORD *_pdwStubPhase);
  7733.  
  7734.  
  7735.  
  7736. #endif     /* __ISourcesRowset_INTERFACE_DEFINED__ */
  7737.  
  7738.  
  7739. #ifndef __IDBProperties_INTERFACE_DEFINED__
  7740. #define __IDBProperties_INTERFACE_DEFINED__
  7741.  
  7742. /****************************************
  7743.  * Generated header for interface: IDBProperties
  7744.  * at Thu Nov 12 23:35:28 1998
  7745.  * using MIDL 3.01.75
  7746.  ****************************************/
  7747. /* [unique][uuid][object] */ 
  7748.  
  7749.  
  7750.  
  7751. EXTERN_C const IID IID_IDBProperties;
  7752.  
  7753. #if defined(__cplusplus) && !defined(CINTERFACE)
  7754.     
  7755.     interface DECLSPEC_UUID("0c733a8a-2a1c-11ce-ade5-00aa0044773d")
  7756.     IDBProperties : public IUnknown
  7757.     {
  7758.     public:
  7759.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetProperties( 
  7760.             /* [in] */ ULONG cPropertyIDSets,
  7761.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  7762.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  7763.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  7764.         
  7765.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetPropertyInfo( 
  7766.             /* [in] */ ULONG cPropertyIDSets,
  7767.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  7768.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  7769.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  7770.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer) = 0;
  7771.         
  7772.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetProperties( 
  7773.             /* [in] */ ULONG cPropertySets,
  7774.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  7775.         
  7776.     };
  7777.     
  7778. #else     /* C style interface */
  7779.  
  7780.     typedef struct IDBPropertiesVtbl
  7781.     {
  7782.         BEGIN_INTERFACE
  7783.         
  7784.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7785.             IDBProperties __RPC_FAR * This,
  7786.             /* [in] */ REFIID riid,
  7787.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7788.         
  7789.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7790.             IDBProperties __RPC_FAR * This);
  7791.         
  7792.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7793.             IDBProperties __RPC_FAR * This);
  7794.         
  7795.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  7796.             IDBProperties __RPC_FAR * This,
  7797.             /* [in] */ ULONG cPropertyIDSets,
  7798.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  7799.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  7800.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  7801.         
  7802.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPropertyInfo )( 
  7803.             IDBProperties __RPC_FAR * This,
  7804.             /* [in] */ ULONG cPropertyIDSets,
  7805.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  7806.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  7807.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  7808.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  7809.         
  7810.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProperties )( 
  7811.             IDBProperties __RPC_FAR * This,
  7812.             /* [in] */ ULONG cPropertySets,
  7813.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  7814.         
  7815.         END_INTERFACE
  7816.     } IDBPropertiesVtbl;
  7817.  
  7818.     interface IDBProperties
  7819.     {
  7820.         CONST_VTBL struct IDBPropertiesVtbl __RPC_FAR *lpVtbl;
  7821.     };
  7822.  
  7823.     
  7824.  
  7825. #ifdef COBJMACROS
  7826.  
  7827.  
  7828. #define IDBProperties_QueryInterface(This,riid,ppvObject)    \
  7829.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7830.  
  7831. #define IDBProperties_AddRef(This)    \
  7832.     (This)->lpVtbl -> AddRef(This)
  7833.  
  7834. #define IDBProperties_Release(This)    \
  7835.     (This)->lpVtbl -> Release(This)
  7836.  
  7837.  
  7838. #define IDBProperties_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  7839.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  7840.  
  7841. #define IDBProperties_GetPropertyInfo(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)    \
  7842.     (This)->lpVtbl -> GetPropertyInfo(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)
  7843.  
  7844. #define IDBProperties_SetProperties(This,cPropertySets,rgPropertySets)    \
  7845.     (This)->lpVtbl -> SetProperties(This,cPropertySets,rgPropertySets)
  7846.  
  7847. #endif /* COBJMACROS */
  7848.  
  7849.  
  7850. #endif     /* C style interface */
  7851.  
  7852.  
  7853.  
  7854. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_RemoteGetProperties_Proxy( 
  7855.     IDBProperties __RPC_FAR * This,
  7856.     /* [in] */ ULONG cPropertyIDSets,
  7857.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  7858.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  7859.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  7860.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7861.  
  7862.  
  7863. void __RPC_STUB IDBProperties_RemoteGetProperties_Stub(
  7864.     IRpcStubBuffer *This,
  7865.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7866.     PRPC_MESSAGE _pRpcMessage,
  7867.     DWORD *_pdwStubPhase);
  7868.  
  7869.  
  7870. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_RemoteGetPropertyInfo_Proxy( 
  7871.     IDBProperties __RPC_FAR * This,
  7872.     /* [in] */ ULONG cPropertyIDSets,
  7873.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  7874.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  7875.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  7876.     /* [out][in] */ ULONG __RPC_FAR *pcOffsets,
  7877.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgDescOffsets,
  7878.     /* [out][in] */ ULONG __RPC_FAR *pcbDescBuffer,
  7879.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer,
  7880.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7881.  
  7882.  
  7883. void __RPC_STUB IDBProperties_RemoteGetPropertyInfo_Stub(
  7884.     IRpcStubBuffer *This,
  7885.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7886.     PRPC_MESSAGE _pRpcMessage,
  7887.     DWORD *_pdwStubPhase);
  7888.  
  7889.  
  7890. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_RemoteSetProperties_Proxy( 
  7891.     IDBProperties __RPC_FAR * This,
  7892.     /* [in] */ ULONG cPropertySets,
  7893.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  7894.     /* [in] */ ULONG cTotalProps,
  7895.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  7896.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7897.  
  7898.  
  7899. void __RPC_STUB IDBProperties_RemoteSetProperties_Stub(
  7900.     IRpcStubBuffer *This,
  7901.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7902.     PRPC_MESSAGE _pRpcMessage,
  7903.     DWORD *_pdwStubPhase);
  7904.  
  7905.  
  7906.  
  7907. #endif     /* __IDBProperties_INTERFACE_DEFINED__ */
  7908.  
  7909.  
  7910. #ifndef __IDBInitialize_INTERFACE_DEFINED__
  7911. #define __IDBInitialize_INTERFACE_DEFINED__
  7912.  
  7913. /****************************************
  7914.  * Generated header for interface: IDBInitialize
  7915.  * at Thu Nov 12 23:35:28 1998
  7916.  * using MIDL 3.01.75
  7917.  ****************************************/
  7918. /* [unique][uuid][object] */ 
  7919.  
  7920.  
  7921.  
  7922. EXTERN_C const IID IID_IDBInitialize;
  7923.  
  7924. #if defined(__cplusplus) && !defined(CINTERFACE)
  7925.     
  7926.     interface DECLSPEC_UUID("0c733a8b-2a1c-11ce-ade5-00aa0044773d")
  7927.     IDBInitialize : public IUnknown
  7928.     {
  7929.     public:
  7930.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Initialize( void) = 0;
  7931.         
  7932.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Uninitialize( void) = 0;
  7933.         
  7934.     };
  7935.     
  7936. #else     /* C style interface */
  7937.  
  7938.     typedef struct IDBInitializeVtbl
  7939.     {
  7940.         BEGIN_INTERFACE
  7941.         
  7942.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7943.             IDBInitialize __RPC_FAR * This,
  7944.             /* [in] */ REFIID riid,
  7945.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7946.         
  7947.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7948.             IDBInitialize __RPC_FAR * This);
  7949.         
  7950.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7951.             IDBInitialize __RPC_FAR * This);
  7952.         
  7953.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Initialize )( 
  7954.             IDBInitialize __RPC_FAR * This);
  7955.         
  7956.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Uninitialize )( 
  7957.             IDBInitialize __RPC_FAR * This);
  7958.         
  7959.         END_INTERFACE
  7960.     } IDBInitializeVtbl;
  7961.  
  7962.     interface IDBInitialize
  7963.     {
  7964.         CONST_VTBL struct IDBInitializeVtbl __RPC_FAR *lpVtbl;
  7965.     };
  7966.  
  7967.     
  7968.  
  7969. #ifdef COBJMACROS
  7970.  
  7971.  
  7972. #define IDBInitialize_QueryInterface(This,riid,ppvObject)    \
  7973.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7974.  
  7975. #define IDBInitialize_AddRef(This)    \
  7976.     (This)->lpVtbl -> AddRef(This)
  7977.  
  7978. #define IDBInitialize_Release(This)    \
  7979.     (This)->lpVtbl -> Release(This)
  7980.  
  7981.  
  7982. #define IDBInitialize_Initialize(This)    \
  7983.     (This)->lpVtbl -> Initialize(This)
  7984.  
  7985. #define IDBInitialize_Uninitialize(This)    \
  7986.     (This)->lpVtbl -> Uninitialize(This)
  7987.  
  7988. #endif /* COBJMACROS */
  7989.  
  7990.  
  7991. #endif     /* C style interface */
  7992.  
  7993.  
  7994.  
  7995. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInitialize_RemoteInitialize_Proxy( 
  7996.     IDBInitialize __RPC_FAR * This,
  7997.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7998.  
  7999.  
  8000. void __RPC_STUB IDBInitialize_RemoteInitialize_Stub(
  8001.     IRpcStubBuffer *This,
  8002.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8003.     PRPC_MESSAGE _pRpcMessage,
  8004.     DWORD *_pdwStubPhase);
  8005.  
  8006.  
  8007. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInitialize_RemoteUninitialize_Proxy( 
  8008.     IDBInitialize __RPC_FAR * This,
  8009.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8010.  
  8011.  
  8012. void __RPC_STUB IDBInitialize_RemoteUninitialize_Stub(
  8013.     IRpcStubBuffer *This,
  8014.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8015.     PRPC_MESSAGE _pRpcMessage,
  8016.     DWORD *_pdwStubPhase);
  8017.  
  8018.  
  8019.  
  8020. #endif     /* __IDBInitialize_INTERFACE_DEFINED__ */
  8021.  
  8022.  
  8023. #ifndef __IDBInfo_INTERFACE_DEFINED__
  8024. #define __IDBInfo_INTERFACE_DEFINED__
  8025.  
  8026. /****************************************
  8027.  * Generated header for interface: IDBInfo
  8028.  * at Thu Nov 12 23:35:28 1998
  8029.  * using MIDL 3.01.75
  8030.  ****************************************/
  8031. /* [unique][uuid][object] */ 
  8032.  
  8033.  
  8034. typedef DWORD DBLITERAL;
  8035.  
  8036.  
  8037. enum DBLITERALENUM
  8038.     {    DBLITERAL_INVALID    = 0,
  8039.     DBLITERAL_BINARY_LITERAL    = 1,
  8040.     DBLITERAL_CATALOG_NAME    = 2,
  8041.     DBLITERAL_CATALOG_SEPARATOR    = 3,
  8042.     DBLITERAL_CHAR_LITERAL    = 4,
  8043.     DBLITERAL_COLUMN_ALIAS    = 5,
  8044.     DBLITERAL_COLUMN_NAME    = 6,
  8045.     DBLITERAL_CORRELATION_NAME    = 7,
  8046.     DBLITERAL_CURSOR_NAME    = 8,
  8047.     DBLITERAL_ESCAPE_PERCENT    = 9,
  8048.     DBLITERAL_ESCAPE_UNDERSCORE    = 10,
  8049.     DBLITERAL_INDEX_NAME    = 11,
  8050.     DBLITERAL_LIKE_PERCENT    = 12,
  8051.     DBLITERAL_LIKE_UNDERSCORE    = 13,
  8052.     DBLITERAL_PROCEDURE_NAME    = 14,
  8053.     DBLITERAL_QUOTE    = 15,
  8054.     DBLITERAL_SCHEMA_NAME    = 16,
  8055.     DBLITERAL_TABLE_NAME    = 17,
  8056.     DBLITERAL_TEXT_COMMAND    = 18,
  8057.     DBLITERAL_USER_NAME    = 19,
  8058.     DBLITERAL_VIEW_NAME    = 20
  8059.     };
  8060. //@@@+ V2.0
  8061. #if( OLEDBVER >= 0x0200 )
  8062. #define DBLITERAL_QUOTE_PREFIX DBLITERAL_QUOTE
  8063.  
  8064. enum DBLITERALENUM20
  8065.     {    DBLITERAL_CUBE_NAME    = 21,
  8066.     DBLITERAL_DIMENSION_NAME    = 22,
  8067.     DBLITERAL_HIERARCHY_NAME    = 23,
  8068.     DBLITERAL_LEVEL_NAME    = 24,
  8069.     DBLITERAL_MEMBER_NAME    = 25,
  8070.     DBLITERAL_PROPERTY_NAME    = 26,
  8071.     DBLITERAL_SCHEMA_SEPARATOR    = 27,
  8072.     DBLITERAL_QUOTE_SUFFIX    = 28
  8073.     };
  8074. #endif // OLEDBVER >= 0x0200
  8075. //@@@- V2.0
  8076. //@@@+ V2.1
  8077. #if( OLEDBVER >= 0x0210 )
  8078. #define DBLITERAL_ESCAPE_PERCENT_PREFIX DBLITERAL_ESCAPE_PERCENT
  8079. #define DBLITERAL_ESCAPE_UNDERSCORE_PREFIX DBLITERAL_ESCAPE_UNDERSCORE
  8080.  
  8081. enum DBLITERALENUM21
  8082.     {    DBLITERAL_ESCAPE_PERCENT_SUFFIX    = 29,
  8083.     DBLITERAL_ESCAPE_UNDERSCORE_SUFFIX    = 30
  8084.     };
  8085. #endif // OLEDBVER >= 0x0210
  8086. //@@@- V2.1
  8087. typedef struct  tagDBLITERALINFO
  8088.     {
  8089.     LPOLESTR pwszLiteralValue;
  8090.     LPOLESTR pwszInvalidChars;
  8091.     LPOLESTR pwszInvalidStartingChars;
  8092.     DBLITERAL lt;
  8093.     BOOL fSupported;
  8094.     ULONG cchMaxLen;
  8095.     }    DBLITERALINFO;
  8096.  
  8097.  
  8098. EXTERN_C const IID IID_IDBInfo;
  8099.  
  8100. #if defined(__cplusplus) && !defined(CINTERFACE)
  8101.     
  8102.     interface DECLSPEC_UUID("0c733a89-2a1c-11ce-ade5-00aa0044773d")
  8103.     IDBInfo : public IUnknown
  8104.     {
  8105.     public:
  8106.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetKeywords( 
  8107.             /* [out] */ LPOLESTR __RPC_FAR *ppwszKeywords) = 0;
  8108.         
  8109.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetLiteralInfo( 
  8110.             /* [in] */ ULONG cLiterals,
  8111.             /* [size_is][in] */ const DBLITERAL __RPC_FAR rgLiterals[  ],
  8112.             /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  8113.             /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  8114.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer) = 0;
  8115.         
  8116.     };
  8117.     
  8118. #else     /* C style interface */
  8119.  
  8120.     typedef struct IDBInfoVtbl
  8121.     {
  8122.         BEGIN_INTERFACE
  8123.         
  8124.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8125.             IDBInfo __RPC_FAR * This,
  8126.             /* [in] */ REFIID riid,
  8127.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8128.         
  8129.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8130.             IDBInfo __RPC_FAR * This);
  8131.         
  8132.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8133.             IDBInfo __RPC_FAR * This);
  8134.         
  8135.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetKeywords )( 
  8136.             IDBInfo __RPC_FAR * This,
  8137.             /* [out] */ LPOLESTR __RPC_FAR *ppwszKeywords);
  8138.         
  8139.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLiteralInfo )( 
  8140.             IDBInfo __RPC_FAR * This,
  8141.             /* [in] */ ULONG cLiterals,
  8142.             /* [size_is][in] */ const DBLITERAL __RPC_FAR rgLiterals[  ],
  8143.             /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  8144.             /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  8145.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer);
  8146.         
  8147.         END_INTERFACE
  8148.     } IDBInfoVtbl;
  8149.  
  8150.     interface IDBInfo
  8151.     {
  8152.         CONST_VTBL struct IDBInfoVtbl __RPC_FAR *lpVtbl;
  8153.     };
  8154.  
  8155.     
  8156.  
  8157. #ifdef COBJMACROS
  8158.  
  8159.  
  8160. #define IDBInfo_QueryInterface(This,riid,ppvObject)    \
  8161.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8162.  
  8163. #define IDBInfo_AddRef(This)    \
  8164.     (This)->lpVtbl -> AddRef(This)
  8165.  
  8166. #define IDBInfo_Release(This)    \
  8167.     (This)->lpVtbl -> Release(This)
  8168.  
  8169.  
  8170. #define IDBInfo_GetKeywords(This,ppwszKeywords)    \
  8171.     (This)->lpVtbl -> GetKeywords(This,ppwszKeywords)
  8172.  
  8173. #define IDBInfo_GetLiteralInfo(This,cLiterals,rgLiterals,pcLiteralInfo,prgLiteralInfo,ppCharBuffer)    \
  8174.     (This)->lpVtbl -> GetLiteralInfo(This,cLiterals,rgLiterals,pcLiteralInfo,prgLiteralInfo,ppCharBuffer)
  8175.  
  8176. #endif /* COBJMACROS */
  8177.  
  8178.  
  8179. #endif     /* C style interface */
  8180.  
  8181.  
  8182.  
  8183. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInfo_RemoteGetKeywords_Proxy( 
  8184.     IDBInfo __RPC_FAR * This,
  8185.     /* [unique][out][in] */ LPOLESTR __RPC_FAR *ppwszKeywords,
  8186.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8187.  
  8188.  
  8189. void __RPC_STUB IDBInfo_RemoteGetKeywords_Stub(
  8190.     IRpcStubBuffer *This,
  8191.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8192.     PRPC_MESSAGE _pRpcMessage,
  8193.     DWORD *_pdwStubPhase);
  8194.  
  8195.  
  8196. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInfo_RemoteGetLiteralInfo_Proxy( 
  8197.     IDBInfo __RPC_FAR * This,
  8198.     /* [in] */ ULONG cLiterals,
  8199.     /* [size_is][unique][in] */ const DBLITERAL __RPC_FAR *rgLiterals,
  8200.     /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  8201.     /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  8202.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgLVOffsets,
  8203.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgICOffsets,
  8204.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgISCOffsets,
  8205.     /* [out][in] */ ULONG __RPC_FAR *pcbCharBuffer,
  8206.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer,
  8207.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8208.  
  8209.  
  8210. void __RPC_STUB IDBInfo_RemoteGetLiteralInfo_Stub(
  8211.     IRpcStubBuffer *This,
  8212.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8213.     PRPC_MESSAGE _pRpcMessage,
  8214.     DWORD *_pdwStubPhase);
  8215.  
  8216.  
  8217.  
  8218. #endif     /* __IDBInfo_INTERFACE_DEFINED__ */
  8219.  
  8220.  
  8221. #ifndef __IDBDataSourceAdmin_INTERFACE_DEFINED__
  8222. #define __IDBDataSourceAdmin_INTERFACE_DEFINED__
  8223.  
  8224. /****************************************
  8225.  * Generated header for interface: IDBDataSourceAdmin
  8226.  * at Thu Nov 12 23:35:28 1998
  8227.  * using MIDL 3.01.75
  8228.  ****************************************/
  8229. /* [unique][uuid][object] */ 
  8230.  
  8231.  
  8232.  
  8233. EXTERN_C const IID IID_IDBDataSourceAdmin;
  8234.  
  8235. #if defined(__cplusplus) && !defined(CINTERFACE)
  8236.     
  8237.     interface DECLSPEC_UUID("0c733a7a-2a1c-11ce-ade5-00aa0044773d")
  8238.     IDBDataSourceAdmin : public IUnknown
  8239.     {
  8240.     public:
  8241.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateDataSource( 
  8242.             /* [in] */ ULONG cPropertySets,
  8243.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  8244.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  8245.             /* [in] */ REFIID riid,
  8246.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession) = 0;
  8247.         
  8248.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DestroyDataSource( void) = 0;
  8249.         
  8250.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetCreationProperties( 
  8251.             /* [in] */ ULONG cPropertyIDSets,
  8252.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  8253.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  8254.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  8255.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer) = 0;
  8256.         
  8257.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ModifyDataSource( 
  8258.             /* [in] */ ULONG cPropertySets,
  8259.             /* [size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  8260.         
  8261.     };
  8262.     
  8263. #else     /* C style interface */
  8264.  
  8265.     typedef struct IDBDataSourceAdminVtbl
  8266.     {
  8267.         BEGIN_INTERFACE
  8268.         
  8269.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8270.             IDBDataSourceAdmin __RPC_FAR * This,
  8271.             /* [in] */ REFIID riid,
  8272.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8273.         
  8274.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8275.             IDBDataSourceAdmin __RPC_FAR * This);
  8276.         
  8277.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8278.             IDBDataSourceAdmin __RPC_FAR * This);
  8279.         
  8280.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateDataSource )( 
  8281.             IDBDataSourceAdmin __RPC_FAR * This,
  8282.             /* [in] */ ULONG cPropertySets,
  8283.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  8284.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  8285.             /* [in] */ REFIID riid,
  8286.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession);
  8287.         
  8288.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DestroyDataSource )( 
  8289.             IDBDataSourceAdmin __RPC_FAR * This);
  8290.         
  8291.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCreationProperties )( 
  8292.             IDBDataSourceAdmin __RPC_FAR * This,
  8293.             /* [in] */ ULONG cPropertyIDSets,
  8294.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  8295.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  8296.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  8297.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  8298.         
  8299.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ModifyDataSource )( 
  8300.             IDBDataSourceAdmin __RPC_FAR * This,
  8301.             /* [in] */ ULONG cPropertySets,
  8302.             /* [size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  8303.         
  8304.         END_INTERFACE
  8305.     } IDBDataSourceAdminVtbl;
  8306.  
  8307.     interface IDBDataSourceAdmin
  8308.     {
  8309.         CONST_VTBL struct IDBDataSourceAdminVtbl __RPC_FAR *lpVtbl;
  8310.     };
  8311.  
  8312.     
  8313.  
  8314. #ifdef COBJMACROS
  8315.  
  8316.  
  8317. #define IDBDataSourceAdmin_QueryInterface(This,riid,ppvObject)    \
  8318.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8319.  
  8320. #define IDBDataSourceAdmin_AddRef(This)    \
  8321.     (This)->lpVtbl -> AddRef(This)
  8322.  
  8323. #define IDBDataSourceAdmin_Release(This)    \
  8324.     (This)->lpVtbl -> Release(This)
  8325.  
  8326.  
  8327. #define IDBDataSourceAdmin_CreateDataSource(This,cPropertySets,rgPropertySets,pUnkOuter,riid,ppDBSession)    \
  8328.     (This)->lpVtbl -> CreateDataSource(This,cPropertySets,rgPropertySets,pUnkOuter,riid,ppDBSession)
  8329.  
  8330. #define IDBDataSourceAdmin_DestroyDataSource(This)    \
  8331.     (This)->lpVtbl -> DestroyDataSource(This)
  8332.  
  8333. #define IDBDataSourceAdmin_GetCreationProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)    \
  8334.     (This)->lpVtbl -> GetCreationProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)
  8335.  
  8336. #define IDBDataSourceAdmin_ModifyDataSource(This,cPropertySets,rgPropertySets)    \
  8337.     (This)->lpVtbl -> ModifyDataSource(This,cPropertySets,rgPropertySets)
  8338.  
  8339. #endif /* COBJMACROS */
  8340.  
  8341.  
  8342. #endif     /* C style interface */
  8343.  
  8344.  
  8345.  
  8346. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_RemoteCreateDataSource_Proxy( 
  8347.     IDBDataSourceAdmin __RPC_FAR * This,
  8348.     /* [in] */ ULONG cPropertySets,
  8349.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  8350.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  8351.     /* [in] */ REFIID riid,
  8352.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession,
  8353.     /* [in] */ ULONG cTotalProps,
  8354.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  8355.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8356.  
  8357.  
  8358. void __RPC_STUB IDBDataSourceAdmin_RemoteCreateDataSource_Stub(
  8359.     IRpcStubBuffer *This,
  8360.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8361.     PRPC_MESSAGE _pRpcMessage,
  8362.     DWORD *_pdwStubPhase);
  8363.  
  8364.  
  8365. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_RemoteDestroyDataSource_Proxy( 
  8366.     IDBDataSourceAdmin __RPC_FAR * This,
  8367.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8368.  
  8369.  
  8370. void __RPC_STUB IDBDataSourceAdmin_RemoteDestroyDataSource_Stub(
  8371.     IRpcStubBuffer *This,
  8372.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8373.     PRPC_MESSAGE _pRpcMessage,
  8374.     DWORD *_pdwStubPhase);
  8375.  
  8376.  
  8377. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_RemoteGetCreationProperties_Proxy( 
  8378.     IDBDataSourceAdmin __RPC_FAR * This,
  8379.     /* [in] */ ULONG cPropertyIDSets,
  8380.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  8381.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  8382.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  8383.     /* [out][in] */ ULONG __RPC_FAR *pcOffsets,
  8384.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgDescOffsets,
  8385.     /* [out][in] */ ULONG __RPC_FAR *pcbDescBuffer,
  8386.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer,
  8387.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8388.  
  8389.  
  8390. void __RPC_STUB IDBDataSourceAdmin_RemoteGetCreationProperties_Stub(
  8391.     IRpcStubBuffer *This,
  8392.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8393.     PRPC_MESSAGE _pRpcMessage,
  8394.     DWORD *_pdwStubPhase);
  8395.  
  8396.  
  8397. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_RemoteModifyDataSource_Proxy( 
  8398.     IDBDataSourceAdmin __RPC_FAR * This,
  8399.     /* [in] */ ULONG cPropertySets,
  8400.     /* [size_is][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  8401.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8402.  
  8403.  
  8404. void __RPC_STUB IDBDataSourceAdmin_RemoteModifyDataSource_Stub(
  8405.     IRpcStubBuffer *This,
  8406.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8407.     PRPC_MESSAGE _pRpcMessage,
  8408.     DWORD *_pdwStubPhase);
  8409.  
  8410.  
  8411.  
  8412. #endif     /* __IDBDataSourceAdmin_INTERFACE_DEFINED__ */
  8413.  
  8414.  
  8415. /****************************************
  8416.  * Generated header for interface: __MIDL_itf_oledb_0192
  8417.  * at Thu Nov 12 23:35:28 1998
  8418.  * using MIDL 3.01.75
  8419.  ****************************************/
  8420. /* [local] */ 
  8421.  
  8422.  
  8423. //@@@+ V1.5
  8424. #if( OLEDBVER >= 0x0150 )
  8425.  
  8426.  
  8427. extern RPC_IF_HANDLE __MIDL_itf_oledb_0192_v0_0_c_ifspec;
  8428. extern RPC_IF_HANDLE __MIDL_itf_oledb_0192_v0_0_s_ifspec;
  8429.  
  8430. #ifndef __IDBAsynchNotify_INTERFACE_DEFINED__
  8431. #define __IDBAsynchNotify_INTERFACE_DEFINED__
  8432.  
  8433. /****************************************
  8434.  * Generated header for interface: IDBAsynchNotify
  8435.  * at Thu Nov 12 23:35:28 1998
  8436.  * using MIDL 3.01.75
  8437.  ****************************************/
  8438. /* [unique][uuid][object] */ 
  8439.  
  8440.  
  8441.  
  8442. EXTERN_C const IID IID_IDBAsynchNotify;
  8443.  
  8444. #if defined(__cplusplus) && !defined(CINTERFACE)
  8445.     
  8446.     interface DECLSPEC_UUID("0c733a96-2a1c-11ce-ade5-00aa0044773d")
  8447.     IDBAsynchNotify : public IUnknown
  8448.     {
  8449.     public:
  8450.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnLowResource( 
  8451.             /* [in] */ DWORD dwReserved) = 0;
  8452.         
  8453.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnProgress( 
  8454.             /* [in] */ HCHAPTER hChapter,
  8455.             /* [in] */ DBASYNCHOP eOperation,
  8456.             /* [in] */ ULONG ulProgress,
  8457.             /* [in] */ ULONG ulProgressMax,
  8458.             /* [in] */ DBASYNCHPHASE eAsynchPhase,
  8459.             /* [in] */ LPOLESTR pwszStatusText) = 0;
  8460.         
  8461.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnStop( 
  8462.             /* [in] */ HCHAPTER hChapter,
  8463.             /* [in] */ DBASYNCHOP eOperation,
  8464.             /* [in] */ HRESULT hrStatus,
  8465.             /* [in] */ LPOLESTR pwszStatusText) = 0;
  8466.         
  8467.     };
  8468.     
  8469. #else     /* C style interface */
  8470.  
  8471.     typedef struct IDBAsynchNotifyVtbl
  8472.     {
  8473.         BEGIN_INTERFACE
  8474.         
  8475.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8476.             IDBAsynchNotify __RPC_FAR * This,
  8477.             /* [in] */ REFIID riid,
  8478.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8479.         
  8480.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8481.             IDBAsynchNotify __RPC_FAR * This);
  8482.         
  8483.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8484.             IDBAsynchNotify __RPC_FAR * This);
  8485.         
  8486.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnLowResource )( 
  8487.             IDBAsynchNotify __RPC_FAR * This,
  8488.             /* [in] */ DWORD dwReserved);
  8489.         
  8490.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnProgress )( 
  8491.             IDBAsynchNotify __RPC_FAR * This,
  8492.             /* [in] */ HCHAPTER hChapter,
  8493.             /* [in] */ DBASYNCHOP eOperation,
  8494.             /* [in] */ ULONG ulProgress,
  8495.             /* [in] */ ULONG ulProgressMax,
  8496.             /* [in] */ DBASYNCHPHASE eAsynchPhase,
  8497.             /* [in] */ LPOLESTR pwszStatusText);
  8498.         
  8499.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnStop )( 
  8500.             IDBAsynchNotify __RPC_FAR * This,
  8501.             /* [in] */ HCHAPTER hChapter,
  8502.             /* [in] */ DBASYNCHOP eOperation,
  8503.             /* [in] */ HRESULT hrStatus,
  8504.             /* [in] */ LPOLESTR pwszStatusText);
  8505.         
  8506.         END_INTERFACE
  8507.     } IDBAsynchNotifyVtbl;
  8508.  
  8509.     interface IDBAsynchNotify
  8510.     {
  8511.         CONST_VTBL struct IDBAsynchNotifyVtbl __RPC_FAR *lpVtbl;
  8512.     };
  8513.  
  8514.     
  8515.  
  8516. #ifdef COBJMACROS
  8517.  
  8518.  
  8519. #define IDBAsynchNotify_QueryInterface(This,riid,ppvObject)    \
  8520.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8521.  
  8522. #define IDBAsynchNotify_AddRef(This)    \
  8523.     (This)->lpVtbl -> AddRef(This)
  8524.  
  8525. #define IDBAsynchNotify_Release(This)    \
  8526.     (This)->lpVtbl -> Release(This)
  8527.  
  8528.  
  8529. #define IDBAsynchNotify_OnLowResource(This,dwReserved)    \
  8530.     (This)->lpVtbl -> OnLowResource(This,dwReserved)
  8531.  
  8532. #define IDBAsynchNotify_OnProgress(This,hChapter,eOperation,ulProgress,ulProgressMax,eAsynchPhase,pwszStatusText)    \
  8533.     (This)->lpVtbl -> OnProgress(This,hChapter,eOperation,ulProgress,ulProgressMax,eAsynchPhase,pwszStatusText)
  8534.  
  8535. #define IDBAsynchNotify_OnStop(This,hChapter,eOperation,hrStatus,pwszStatusText)    \
  8536.     (This)->lpVtbl -> OnStop(This,hChapter,eOperation,hrStatus,pwszStatusText)
  8537.  
  8538. #endif /* COBJMACROS */
  8539.  
  8540.  
  8541. #endif     /* C style interface */
  8542.  
  8543.  
  8544.  
  8545. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_RemoteOnLowResource_Proxy( 
  8546.     IDBAsynchNotify __RPC_FAR * This,
  8547.     /* [in] */ DWORD dwReserved,
  8548.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8549.  
  8550.  
  8551. void __RPC_STUB IDBAsynchNotify_RemoteOnLowResource_Stub(
  8552.     IRpcStubBuffer *This,
  8553.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8554.     PRPC_MESSAGE _pRpcMessage,
  8555.     DWORD *_pdwStubPhase);
  8556.  
  8557.  
  8558. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_RemoteOnProgress_Proxy( 
  8559.     IDBAsynchNotify __RPC_FAR * This,
  8560.     /* [in] */ HCHAPTER hChapter,
  8561.     /* [in] */ DBASYNCHOP eOperation,
  8562.     /* [in] */ ULONG ulProgress,
  8563.     /* [in] */ ULONG ulProgressMax,
  8564.     /* [in] */ DBASYNCHPHASE eAsynchPhase,
  8565.     /* [in] */ LPOLESTR pwszStatusText,
  8566.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8567.  
  8568.  
  8569. void __RPC_STUB IDBAsynchNotify_RemoteOnProgress_Stub(
  8570.     IRpcStubBuffer *This,
  8571.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8572.     PRPC_MESSAGE _pRpcMessage,
  8573.     DWORD *_pdwStubPhase);
  8574.  
  8575.  
  8576. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_RemoteOnStop_Proxy( 
  8577.     IDBAsynchNotify __RPC_FAR * This,
  8578.     /* [in] */ HCHAPTER hChapter,
  8579.     /* [in] */ DBASYNCHOP eOperation,
  8580.     /* [in] */ HRESULT hrStatus,
  8581.     /* [in] */ LPOLESTR pwszStatusText,
  8582.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8583.  
  8584.  
  8585. void __RPC_STUB IDBAsynchNotify_RemoteOnStop_Stub(
  8586.     IRpcStubBuffer *This,
  8587.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8588.     PRPC_MESSAGE _pRpcMessage,
  8589.     DWORD *_pdwStubPhase);
  8590.  
  8591.  
  8592.  
  8593. #endif     /* __IDBAsynchNotify_INTERFACE_DEFINED__ */
  8594.  
  8595.  
  8596. #ifndef __IDBAsynchStatus_INTERFACE_DEFINED__
  8597. #define __IDBAsynchStatus_INTERFACE_DEFINED__
  8598.  
  8599. /****************************************
  8600.  * Generated header for interface: IDBAsynchStatus
  8601.  * at Thu Nov 12 23:35:28 1998
  8602.  * using MIDL 3.01.75
  8603.  ****************************************/
  8604. /* [unique][uuid][object] */ 
  8605.  
  8606.  
  8607.  
  8608. EXTERN_C const IID IID_IDBAsynchStatus;
  8609.  
  8610. #if defined(__cplusplus) && !defined(CINTERFACE)
  8611.     
  8612.     interface DECLSPEC_UUID("0c733a95-2a1c-11ce-ade5-00aa0044773d")
  8613.     IDBAsynchStatus : public IUnknown
  8614.     {
  8615.     public:
  8616.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Abort( 
  8617.             /* [in] */ HCHAPTER hChapter,
  8618.             /* [in] */ DBASYNCHOP eOperation) = 0;
  8619.         
  8620.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetStatus( 
  8621.             /* [in] */ HCHAPTER hChapter,
  8622.             /* [in] */ DBASYNCHOP eOperation,
  8623.             /* [out] */ ULONG __RPC_FAR *pulProgress,
  8624.             /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  8625.             /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  8626.             /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText) = 0;
  8627.         
  8628.     };
  8629.     
  8630. #else     /* C style interface */
  8631.  
  8632.     typedef struct IDBAsynchStatusVtbl
  8633.     {
  8634.         BEGIN_INTERFACE
  8635.         
  8636.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8637.             IDBAsynchStatus __RPC_FAR * This,
  8638.             /* [in] */ REFIID riid,
  8639.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8640.         
  8641.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8642.             IDBAsynchStatus __RPC_FAR * This);
  8643.         
  8644.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8645.             IDBAsynchStatus __RPC_FAR * This);
  8646.         
  8647.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Abort )( 
  8648.             IDBAsynchStatus __RPC_FAR * This,
  8649.             /* [in] */ HCHAPTER hChapter,
  8650.             /* [in] */ DBASYNCHOP eOperation);
  8651.         
  8652.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetStatus )( 
  8653.             IDBAsynchStatus __RPC_FAR * This,
  8654.             /* [in] */ HCHAPTER hChapter,
  8655.             /* [in] */ DBASYNCHOP eOperation,
  8656.             /* [out] */ ULONG __RPC_FAR *pulProgress,
  8657.             /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  8658.             /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  8659.             /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText);
  8660.         
  8661.         END_INTERFACE
  8662.     } IDBAsynchStatusVtbl;
  8663.  
  8664.     interface IDBAsynchStatus
  8665.     {
  8666.         CONST_VTBL struct IDBAsynchStatusVtbl __RPC_FAR *lpVtbl;
  8667.     };
  8668.  
  8669.     
  8670.  
  8671. #ifdef COBJMACROS
  8672.  
  8673.  
  8674. #define IDBAsynchStatus_QueryInterface(This,riid,ppvObject)    \
  8675.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8676.  
  8677. #define IDBAsynchStatus_AddRef(This)    \
  8678.     (This)->lpVtbl -> AddRef(This)
  8679.  
  8680. #define IDBAsynchStatus_Release(This)    \
  8681.     (This)->lpVtbl -> Release(This)
  8682.  
  8683.  
  8684. #define IDBAsynchStatus_Abort(This,hChapter,eOperation)    \
  8685.     (This)->lpVtbl -> Abort(This,hChapter,eOperation)
  8686.  
  8687. #define IDBAsynchStatus_GetStatus(This,hChapter,eOperation,pulProgress,pulProgressMax,peAsynchPhase,ppwszStatusText)    \
  8688.     (This)->lpVtbl -> GetStatus(This,hChapter,eOperation,pulProgress,pulProgressMax,peAsynchPhase,ppwszStatusText)
  8689.  
  8690. #endif /* COBJMACROS */
  8691.  
  8692.  
  8693. #endif     /* C style interface */
  8694.  
  8695.  
  8696.  
  8697. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_RemoteAbort_Proxy( 
  8698.     IDBAsynchStatus __RPC_FAR * This,
  8699.     /* [in] */ HCHAPTER hChapter,
  8700.     /* [in] */ DBASYNCHOP eOperation,
  8701.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8702.  
  8703.  
  8704. void __RPC_STUB IDBAsynchStatus_RemoteAbort_Stub(
  8705.     IRpcStubBuffer *This,
  8706.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8707.     PRPC_MESSAGE _pRpcMessage,
  8708.     DWORD *_pdwStubPhase);
  8709.  
  8710.  
  8711. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_RemoteGetStatus_Proxy( 
  8712.     IDBAsynchStatus __RPC_FAR * This,
  8713.     /* [in] */ HCHAPTER hChapter,
  8714.     /* [in] */ DBASYNCHOP eOperation,
  8715.     /* [out] */ ULONG __RPC_FAR *pulProgress,
  8716.     /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  8717.     /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  8718.     /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText,
  8719.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8720.  
  8721.  
  8722. void __RPC_STUB IDBAsynchStatus_RemoteGetStatus_Stub(
  8723.     IRpcStubBuffer *This,
  8724.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8725.     PRPC_MESSAGE _pRpcMessage,
  8726.     DWORD *_pdwStubPhase);
  8727.  
  8728.  
  8729.  
  8730. #endif     /* __IDBAsynchStatus_INTERFACE_DEFINED__ */
  8731.  
  8732.  
  8733. /****************************************
  8734.  * Generated header for interface: __MIDL_itf_oledb_0194
  8735.  * at Thu Nov 12 23:35:28 1998
  8736.  * using MIDL 3.01.75
  8737.  ****************************************/
  8738. /* [local] */ 
  8739.  
  8740.  
  8741. #endif // OLEDBVER >= 0x0150
  8742. //@@@- V1.5
  8743.  
  8744.  
  8745. extern RPC_IF_HANDLE __MIDL_itf_oledb_0194_v0_0_c_ifspec;
  8746. extern RPC_IF_HANDLE __MIDL_itf_oledb_0194_v0_0_s_ifspec;
  8747.  
  8748. #ifndef __ISessionProperties_INTERFACE_DEFINED__
  8749. #define __ISessionProperties_INTERFACE_DEFINED__
  8750.  
  8751. /****************************************
  8752.  * Generated header for interface: ISessionProperties
  8753.  * at Thu Nov 12 23:35:28 1998
  8754.  * using MIDL 3.01.75
  8755.  ****************************************/
  8756. /* [unique][uuid][object] */ 
  8757.  
  8758.  
  8759.  
  8760. EXTERN_C const IID IID_ISessionProperties;
  8761.  
  8762. #if defined(__cplusplus) && !defined(CINTERFACE)
  8763.     
  8764.     interface DECLSPEC_UUID("0c733a85-2a1c-11ce-ade5-00aa0044773d")
  8765.     ISessionProperties : public IUnknown
  8766.     {
  8767.     public:
  8768.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetProperties( 
  8769.             /* [in] */ ULONG cPropertyIDSets,
  8770.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  8771.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  8772.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  8773.         
  8774.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetProperties( 
  8775.             /* [in] */ ULONG cPropertySets,
  8776.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  8777.         
  8778.     };
  8779.     
  8780. #else     /* C style interface */
  8781.  
  8782.     typedef struct ISessionPropertiesVtbl
  8783.     {
  8784.         BEGIN_INTERFACE
  8785.         
  8786.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8787.             ISessionProperties __RPC_FAR * This,
  8788.             /* [in] */ REFIID riid,
  8789.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8790.         
  8791.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8792.             ISessionProperties __RPC_FAR * This);
  8793.         
  8794.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8795.             ISessionProperties __RPC_FAR * This);
  8796.         
  8797.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  8798.             ISessionProperties __RPC_FAR * This,
  8799.             /* [in] */ ULONG cPropertyIDSets,
  8800.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  8801.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  8802.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  8803.         
  8804.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProperties )( 
  8805.             ISessionProperties __RPC_FAR * This,
  8806.             /* [in] */ ULONG cPropertySets,
  8807.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  8808.         
  8809.         END_INTERFACE
  8810.     } ISessionPropertiesVtbl;
  8811.  
  8812.     interface ISessionProperties
  8813.     {
  8814.         CONST_VTBL struct ISessionPropertiesVtbl __RPC_FAR *lpVtbl;
  8815.     };
  8816.  
  8817.     
  8818.  
  8819. #ifdef COBJMACROS
  8820.  
  8821.  
  8822. #define ISessionProperties_QueryInterface(This,riid,ppvObject)    \
  8823.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8824.  
  8825. #define ISessionProperties_AddRef(This)    \
  8826.     (This)->lpVtbl -> AddRef(This)
  8827.  
  8828. #define ISessionProperties_Release(This)    \
  8829.     (This)->lpVtbl -> Release(This)
  8830.  
  8831.  
  8832. #define ISessionProperties_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  8833.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  8834.  
  8835. #define ISessionProperties_SetProperties(This,cPropertySets,rgPropertySets)    \
  8836.     (This)->lpVtbl -> SetProperties(This,cPropertySets,rgPropertySets)
  8837.  
  8838. #endif /* COBJMACROS */
  8839.  
  8840.  
  8841. #endif     /* C style interface */
  8842.  
  8843.  
  8844.  
  8845. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISessionProperties_RemoteGetProperties_Proxy( 
  8846.     ISessionProperties __RPC_FAR * This,
  8847.     /* [in] */ ULONG cPropertyIDSets,
  8848.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  8849.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  8850.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  8851.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8852.  
  8853.  
  8854. void __RPC_STUB ISessionProperties_RemoteGetProperties_Stub(
  8855.     IRpcStubBuffer *This,
  8856.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8857.     PRPC_MESSAGE _pRpcMessage,
  8858.     DWORD *_pdwStubPhase);
  8859.  
  8860.  
  8861. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISessionProperties_RemoteSetProperties_Proxy( 
  8862.     ISessionProperties __RPC_FAR * This,
  8863.     /* [in] */ ULONG cPropertySets,
  8864.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  8865.     /* [in] */ ULONG cTotalProps,
  8866.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  8867.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8868.  
  8869.  
  8870. void __RPC_STUB ISessionProperties_RemoteSetProperties_Stub(
  8871.     IRpcStubBuffer *This,
  8872.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8873.     PRPC_MESSAGE _pRpcMessage,
  8874.     DWORD *_pdwStubPhase);
  8875.  
  8876.  
  8877.  
  8878. #endif     /* __ISessionProperties_INTERFACE_DEFINED__ */
  8879.  
  8880.  
  8881. #ifndef __IIndexDefinition_INTERFACE_DEFINED__
  8882. #define __IIndexDefinition_INTERFACE_DEFINED__
  8883.  
  8884. /****************************************
  8885.  * Generated header for interface: IIndexDefinition
  8886.  * at Thu Nov 12 23:35:28 1998
  8887.  * using MIDL 3.01.75
  8888.  ****************************************/
  8889. /* [unique][uuid][object] */ 
  8890.  
  8891.  
  8892.  
  8893. EXTERN_C const IID IID_IIndexDefinition;
  8894.  
  8895. #if defined(__cplusplus) && !defined(CINTERFACE)
  8896.     
  8897.     interface DECLSPEC_UUID("0c733a68-2a1c-11ce-ade5-00aa0044773d")
  8898.     IIndexDefinition : public IUnknown
  8899.     {
  8900.     public:
  8901.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateIndex( 
  8902.             /* [in] */ DBID __RPC_FAR *pTableID,
  8903.             /* [in] */ DBID __RPC_FAR *pIndexID,
  8904.             /* [in] */ ULONG cIndexColumnDescs,
  8905.             /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR rgIndexColumnDescs[  ],
  8906.             /* [in] */ ULONG cPropertySets,
  8907.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  8908.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID) = 0;
  8909.         
  8910.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DropIndex( 
  8911.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  8912.             /* [unique][in] */ DBID __RPC_FAR *pIndexID) = 0;
  8913.         
  8914.     };
  8915.     
  8916. #else     /* C style interface */
  8917.  
  8918.     typedef struct IIndexDefinitionVtbl
  8919.     {
  8920.         BEGIN_INTERFACE
  8921.         
  8922.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8923.             IIndexDefinition __RPC_FAR * This,
  8924.             /* [in] */ REFIID riid,
  8925.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8926.         
  8927.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8928.             IIndexDefinition __RPC_FAR * This);
  8929.         
  8930.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8931.             IIndexDefinition __RPC_FAR * This);
  8932.         
  8933.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateIndex )( 
  8934.             IIndexDefinition __RPC_FAR * This,
  8935.             /* [in] */ DBID __RPC_FAR *pTableID,
  8936.             /* [in] */ DBID __RPC_FAR *pIndexID,
  8937.             /* [in] */ ULONG cIndexColumnDescs,
  8938.             /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR rgIndexColumnDescs[  ],
  8939.             /* [in] */ ULONG cPropertySets,
  8940.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  8941.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID);
  8942.         
  8943.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropIndex )( 
  8944.             IIndexDefinition __RPC_FAR * This,
  8945.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  8946.             /* [unique][in] */ DBID __RPC_FAR *pIndexID);
  8947.         
  8948.         END_INTERFACE
  8949.     } IIndexDefinitionVtbl;
  8950.  
  8951.     interface IIndexDefinition
  8952.     {
  8953.         CONST_VTBL struct IIndexDefinitionVtbl __RPC_FAR *lpVtbl;
  8954.     };
  8955.  
  8956.     
  8957.  
  8958. #ifdef COBJMACROS
  8959.  
  8960.  
  8961. #define IIndexDefinition_QueryInterface(This,riid,ppvObject)    \
  8962.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8963.  
  8964. #define IIndexDefinition_AddRef(This)    \
  8965.     (This)->lpVtbl -> AddRef(This)
  8966.  
  8967. #define IIndexDefinition_Release(This)    \
  8968.     (This)->lpVtbl -> Release(This)
  8969.  
  8970.  
  8971. #define IIndexDefinition_CreateIndex(This,pTableID,pIndexID,cIndexColumnDescs,rgIndexColumnDescs,cPropertySets,rgPropertySets,ppIndexID)    \
  8972.     (This)->lpVtbl -> CreateIndex(This,pTableID,pIndexID,cIndexColumnDescs,rgIndexColumnDescs,cPropertySets,rgPropertySets,ppIndexID)
  8973.  
  8974. #define IIndexDefinition_DropIndex(This,pTableID,pIndexID)    \
  8975.     (This)->lpVtbl -> DropIndex(This,pTableID,pIndexID)
  8976.  
  8977. #endif /* COBJMACROS */
  8978.  
  8979.  
  8980. #endif     /* C style interface */
  8981.  
  8982.  
  8983.  
  8984. /* [call_as] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_RemoteCreateIndex_Proxy( 
  8985.     IIndexDefinition __RPC_FAR * This,
  8986.     /* [in] */ DBID __RPC_FAR *pTableID,
  8987.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  8988.     /* [in] */ ULONG cIndexColumnDescs,
  8989.     /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR *rgIndexColumnDescs,
  8990.     /* [in] */ ULONG cPropertySets,
  8991.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  8992.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID,
  8993.     /* [in] */ ULONG cTotalProps,
  8994.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  8995.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8996.  
  8997.  
  8998. void __RPC_STUB IIndexDefinition_RemoteCreateIndex_Stub(
  8999.     IRpcStubBuffer *This,
  9000.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9001.     PRPC_MESSAGE _pRpcMessage,
  9002.     DWORD *_pdwStubPhase);
  9003.  
  9004.  
  9005. /* [call_as] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_RemoteDropIndex_Proxy( 
  9006.     IIndexDefinition __RPC_FAR * This,
  9007.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9008.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  9009.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9010.  
  9011.  
  9012. void __RPC_STUB IIndexDefinition_RemoteDropIndex_Stub(
  9013.     IRpcStubBuffer *This,
  9014.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9015.     PRPC_MESSAGE _pRpcMessage,
  9016.     DWORD *_pdwStubPhase);
  9017.  
  9018.  
  9019.  
  9020. #endif     /* __IIndexDefinition_INTERFACE_DEFINED__ */
  9021.  
  9022.  
  9023. #ifndef __ITableDefinition_INTERFACE_DEFINED__
  9024. #define __ITableDefinition_INTERFACE_DEFINED__
  9025.  
  9026. /****************************************
  9027.  * Generated header for interface: ITableDefinition
  9028.  * at Thu Nov 12 23:35:28 1998
  9029.  * using MIDL 3.01.75
  9030.  ****************************************/
  9031. /* [unique][uuid][object] */ 
  9032.  
  9033.  
  9034.  
  9035. EXTERN_C const IID IID_ITableDefinition;
  9036.  
  9037. #if defined(__cplusplus) && !defined(CINTERFACE)
  9038.     
  9039.     interface DECLSPEC_UUID("0c733a86-2a1c-11ce-ade5-00aa0044773d")
  9040.     ITableDefinition : public IUnknown
  9041.     {
  9042.     public:
  9043.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateTable( 
  9044.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9045.             /* [in] */ DBID __RPC_FAR *pTableID,
  9046.             /* [in] */ ULONG cColumnDescs,
  9047.             /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  9048.             /* [in] */ REFIID riid,
  9049.             /* [in] */ ULONG cPropertySets,
  9050.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9051.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  9052.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9053.         
  9054.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DropTable( 
  9055.             /* [unique][in] */ DBID __RPC_FAR *pTableID) = 0;
  9056.         
  9057.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddColumn( 
  9058.             /* [in] */ DBID __RPC_FAR *pTableID,
  9059.             /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  9060.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID) = 0;
  9061.         
  9062.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DropColumn( 
  9063.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9064.             /* [unique][in] */ DBID __RPC_FAR *pColumnID) = 0;
  9065.         
  9066.     };
  9067.     
  9068. #else     /* C style interface */
  9069.  
  9070.     typedef struct ITableDefinitionVtbl
  9071.     {
  9072.         BEGIN_INTERFACE
  9073.         
  9074.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9075.             ITableDefinition __RPC_FAR * This,
  9076.             /* [in] */ REFIID riid,
  9077.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9078.         
  9079.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9080.             ITableDefinition __RPC_FAR * This);
  9081.         
  9082.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9083.             ITableDefinition __RPC_FAR * This);
  9084.         
  9085.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTable )( 
  9086.             ITableDefinition __RPC_FAR * This,
  9087.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9088.             /* [in] */ DBID __RPC_FAR *pTableID,
  9089.             /* [in] */ ULONG cColumnDescs,
  9090.             /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  9091.             /* [in] */ REFIID riid,
  9092.             /* [in] */ ULONG cPropertySets,
  9093.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9094.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  9095.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9096.         
  9097.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropTable )( 
  9098.             ITableDefinition __RPC_FAR * This,
  9099.             /* [unique][in] */ DBID __RPC_FAR *pTableID);
  9100.         
  9101.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
  9102.             ITableDefinition __RPC_FAR * This,
  9103.             /* [in] */ DBID __RPC_FAR *pTableID,
  9104.             /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  9105.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID);
  9106.         
  9107.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropColumn )( 
  9108.             ITableDefinition __RPC_FAR * This,
  9109.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9110.             /* [unique][in] */ DBID __RPC_FAR *pColumnID);
  9111.         
  9112.         END_INTERFACE
  9113.     } ITableDefinitionVtbl;
  9114.  
  9115.     interface ITableDefinition
  9116.     {
  9117.         CONST_VTBL struct ITableDefinitionVtbl __RPC_FAR *lpVtbl;
  9118.     };
  9119.  
  9120.     
  9121.  
  9122. #ifdef COBJMACROS
  9123.  
  9124.  
  9125. #define ITableDefinition_QueryInterface(This,riid,ppvObject)    \
  9126.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9127.  
  9128. #define ITableDefinition_AddRef(This)    \
  9129.     (This)->lpVtbl -> AddRef(This)
  9130.  
  9131. #define ITableDefinition_Release(This)    \
  9132.     (This)->lpVtbl -> Release(This)
  9133.  
  9134.  
  9135. #define ITableDefinition_CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)    \
  9136.     (This)->lpVtbl -> CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)
  9137.  
  9138. #define ITableDefinition_DropTable(This,pTableID)    \
  9139.     (This)->lpVtbl -> DropTable(This,pTableID)
  9140.  
  9141. #define ITableDefinition_AddColumn(This,pTableID,pColumnDesc,ppColumnID)    \
  9142.     (This)->lpVtbl -> AddColumn(This,pTableID,pColumnDesc,ppColumnID)
  9143.  
  9144. #define ITableDefinition_DropColumn(This,pTableID,pColumnID)    \
  9145.     (This)->lpVtbl -> DropColumn(This,pTableID,pColumnID)
  9146.  
  9147. #endif /* COBJMACROS */
  9148.  
  9149.  
  9150. #endif     /* C style interface */
  9151.  
  9152.  
  9153.  
  9154. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_RemoteCreateTable_Proxy( 
  9155.     ITableDefinition __RPC_FAR * This,
  9156.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9157.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9158.     /* [in] */ ULONG cColumnDescs,
  9159.     /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR *rgColumnDescs,
  9160.     /* [in] */ REFIID riid,
  9161.     /* [in] */ ULONG cPropertySets,
  9162.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  9163.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  9164.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  9165.     /* [in] */ ULONG cTotalProps,
  9166.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  9167.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9168.  
  9169.  
  9170. void __RPC_STUB ITableDefinition_RemoteCreateTable_Stub(
  9171.     IRpcStubBuffer *This,
  9172.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9173.     PRPC_MESSAGE _pRpcMessage,
  9174.     DWORD *_pdwStubPhase);
  9175.  
  9176.  
  9177. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_RemoteDropTable_Proxy( 
  9178.     ITableDefinition __RPC_FAR * This,
  9179.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9180.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9181.  
  9182.  
  9183. void __RPC_STUB ITableDefinition_RemoteDropTable_Stub(
  9184.     IRpcStubBuffer *This,
  9185.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9186.     PRPC_MESSAGE _pRpcMessage,
  9187.     DWORD *_pdwStubPhase);
  9188.  
  9189.  
  9190. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_RemoteAddColumn_Proxy( 
  9191.     ITableDefinition __RPC_FAR * This,
  9192.     /* [in] */ DBID __RPC_FAR *pTableID,
  9193.     /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  9194.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID,
  9195.     /* [in] */ ULONG cTotalProps,
  9196.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  9197.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9198.  
  9199.  
  9200. void __RPC_STUB ITableDefinition_RemoteAddColumn_Stub(
  9201.     IRpcStubBuffer *This,
  9202.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9203.     PRPC_MESSAGE _pRpcMessage,
  9204.     DWORD *_pdwStubPhase);
  9205.  
  9206.  
  9207. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_RemoteDropColumn_Proxy( 
  9208.     ITableDefinition __RPC_FAR * This,
  9209.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9210.     /* [unique][in] */ DBID __RPC_FAR *pColumnID,
  9211.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9212.  
  9213.  
  9214. void __RPC_STUB ITableDefinition_RemoteDropColumn_Stub(
  9215.     IRpcStubBuffer *This,
  9216.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9217.     PRPC_MESSAGE _pRpcMessage,
  9218.     DWORD *_pdwStubPhase);
  9219.  
  9220.  
  9221.  
  9222. #endif     /* __ITableDefinition_INTERFACE_DEFINED__ */
  9223.  
  9224.  
  9225. #ifndef __IOpenRowset_INTERFACE_DEFINED__
  9226. #define __IOpenRowset_INTERFACE_DEFINED__
  9227.  
  9228. /****************************************
  9229.  * Generated header for interface: IOpenRowset
  9230.  * at Thu Nov 12 23:35:28 1998
  9231.  * using MIDL 3.01.75
  9232.  ****************************************/
  9233. /* [unique][uuid][object] */ 
  9234.  
  9235.  
  9236.  
  9237. EXTERN_C const IID IID_IOpenRowset;
  9238.  
  9239. #if defined(__cplusplus) && !defined(CINTERFACE)
  9240.     
  9241.     interface DECLSPEC_UUID("0c733a69-2a1c-11ce-ade5-00aa0044773d")
  9242.     IOpenRowset : public IUnknown
  9243.     {
  9244.     public:
  9245.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenRowset( 
  9246.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9247.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9248.             /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  9249.             /* [in] */ REFIID riid,
  9250.             /* [in] */ ULONG cPropertySets,
  9251.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9252.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9253.         
  9254.     };
  9255.     
  9256. #else     /* C style interface */
  9257.  
  9258.     typedef struct IOpenRowsetVtbl
  9259.     {
  9260.         BEGIN_INTERFACE
  9261.         
  9262.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9263.             IOpenRowset __RPC_FAR * This,
  9264.             /* [in] */ REFIID riid,
  9265.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9266.         
  9267.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9268.             IOpenRowset __RPC_FAR * This);
  9269.         
  9270.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9271.             IOpenRowset __RPC_FAR * This);
  9272.         
  9273.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenRowset )( 
  9274.             IOpenRowset __RPC_FAR * This,
  9275.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9276.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9277.             /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  9278.             /* [in] */ REFIID riid,
  9279.             /* [in] */ ULONG cPropertySets,
  9280.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9281.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9282.         
  9283.         END_INTERFACE
  9284.     } IOpenRowsetVtbl;
  9285.  
  9286.     interface IOpenRowset
  9287.     {
  9288.         CONST_VTBL struct IOpenRowsetVtbl __RPC_FAR *lpVtbl;
  9289.     };
  9290.  
  9291.     
  9292.  
  9293. #ifdef COBJMACROS
  9294.  
  9295.  
  9296. #define IOpenRowset_QueryInterface(This,riid,ppvObject)    \
  9297.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9298.  
  9299. #define IOpenRowset_AddRef(This)    \
  9300.     (This)->lpVtbl -> AddRef(This)
  9301.  
  9302. #define IOpenRowset_Release(This)    \
  9303.     (This)->lpVtbl -> Release(This)
  9304.  
  9305.  
  9306. #define IOpenRowset_OpenRowset(This,pUnkOuter,pTableID,pIndexID,riid,cPropertySets,rgPropertySets,ppRowset)    \
  9307.     (This)->lpVtbl -> OpenRowset(This,pUnkOuter,pTableID,pIndexID,riid,cPropertySets,rgPropertySets,ppRowset)
  9308.  
  9309. #endif /* COBJMACROS */
  9310.  
  9311.  
  9312. #endif     /* C style interface */
  9313.  
  9314.  
  9315.  
  9316. /* [call_as] */ HRESULT STDMETHODCALLTYPE IOpenRowset_RemoteOpenRowset_Proxy( 
  9317.     IOpenRowset __RPC_FAR * This,
  9318.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9319.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9320.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  9321.     /* [in] */ REFIID riid,
  9322.     /* [in] */ ULONG cPropertySets,
  9323.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  9324.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  9325.     /* [in] */ ULONG cTotalProps,
  9326.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  9327.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9328.  
  9329.  
  9330. void __RPC_STUB IOpenRowset_RemoteOpenRowset_Stub(
  9331.     IRpcStubBuffer *This,
  9332.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9333.     PRPC_MESSAGE _pRpcMessage,
  9334.     DWORD *_pdwStubPhase);
  9335.  
  9336.  
  9337.  
  9338. #endif     /* __IOpenRowset_INTERFACE_DEFINED__ */
  9339.  
  9340.  
  9341. #ifndef __IDBSchemaRowset_INTERFACE_DEFINED__
  9342. #define __IDBSchemaRowset_INTERFACE_DEFINED__
  9343.  
  9344. /****************************************
  9345.  * Generated header for interface: IDBSchemaRowset
  9346.  * at Thu Nov 12 23:35:28 1998
  9347.  * using MIDL 3.01.75
  9348.  ****************************************/
  9349. /* [unique][uuid][object] */ 
  9350.  
  9351.  
  9352. #define CRESTRICTIONS_DBSCHEMA_ASSERTIONS                      3
  9353. #define CRESTRICTIONS_DBSCHEMA_CATALOGS                        1
  9354. #define CRESTRICTIONS_DBSCHEMA_CHARACTER_SETS                  3
  9355. #define CRESTRICTIONS_DBSCHEMA_COLLATIONS                      3
  9356. #define CRESTRICTIONS_DBSCHEMA_COLUMNS                         4
  9357. #define CRESTRICTIONS_DBSCHEMA_CHECK_CONSTRAINTS               3
  9358. #define CRESTRICTIONS_DBSCHEMA_CONSTRAINT_COLUMN_USAGE         4
  9359. #define CRESTRICTIONS_DBSCHEMA_CONSTRAINT_TABLE_USAGE          3
  9360. #define CRESTRICTIONS_DBSCHEMA_KEY_COLUMN_USAGE                7
  9361. #define CRESTRICTIONS_DBSCHEMA_REFERENTIAL_CONSTRAINTS         3
  9362. #define CRESTRICTIONS_DBSCHEMA_TABLE_CONSTRAINTS               7
  9363. #define CRESTRICTIONS_DBSCHEMA_COLUMN_DOMAIN_USAGE             4
  9364. #define CRESTRICTIONS_DBSCHEMA_INDEXES                         5
  9365. #define CRESTRICTIONS_DBSCHEMA_OBJECT_ACTIONS                  1
  9366. #define CRESTRICTIONS_DBSCHEMA_OBJECTS                         1
  9367. #define CRESTRICTIONS_DBSCHEMA_COLUMN_PRIVILEGES               6
  9368. #define CRESTRICTIONS_DBSCHEMA_TABLE_PRIVILEGES                5
  9369. #define CRESTRICTIONS_DBSCHEMA_USAGE_PRIVILEGES                6
  9370. #define CRESTRICTIONS_DBSCHEMA_PROCEDURES                      4
  9371. #define CRESTRICTIONS_DBSCHEMA_SCHEMATA                        3
  9372. #define CRESTRICTIONS_DBSCHEMA_SQL_LANGUAGES                   0
  9373. #define CRESTRICTIONS_DBSCHEMA_STATISTICS                      3
  9374. #define CRESTRICTIONS_DBSCHEMA_TABLES                          4
  9375. #define CRESTRICTIONS_DBSCHEMA_TRANSLATIONS                    3
  9376. #define CRESTRICTIONS_DBSCHEMA_PROVIDER_TYPES                  2
  9377. #define CRESTRICTIONS_DBSCHEMA_VIEWS                           3
  9378. #define CRESTRICTIONS_DBSCHEMA_VIEW_COLUMN_USAGE               3
  9379. #define CRESTRICTIONS_DBSCHEMA_VIEW_TABLE_USAGE                3
  9380. #define CRESTRICTIONS_DBSCHEMA_PROCEDURE_PARAMETERS            4
  9381. #define CRESTRICTIONS_DBSCHEMA_FOREIGN_KEYS                    6
  9382. #define CRESTRICTIONS_DBSCHEMA_PRIMARY_KEYS                    3
  9383. #define CRESTRICTIONS_DBSCHEMA_PROCEDURE_COLUMNS               4
  9384. //@@@+ V2.0
  9385. #if( OLEDBVER >= 0x0200 )
  9386. #define CRESTRICTIONS_DBSCHEMA_TABLES_INFO                     4
  9387. #define CRESTRICTIONS_MDSCHEMA_CUBES                           3
  9388. #define CRESTRICTIONS_MDSCHEMA_DIMENSIONS                      5
  9389. #define CRESTRICTIONS_MDSCHEMA_HIERARCHIES                     6
  9390. #define CRESTRICTIONS_MDSCHEMA_LEVELS                          7
  9391. #define CRESTRICTIONS_MDSCHEMA_MEASURES                        5
  9392. #define CRESTRICTIONS_MDSCHEMA_PROPERTIES                      9
  9393. #define CRESTRICTIONS_MDSCHEMA_MEMBERS                         12
  9394. #endif // OLEDBVER >= 0x0200
  9395. //@@@- V2.0
  9396. //@@@+ V2.1
  9397. #if( OLEDBVER >= 0x0210 )
  9398. #define CRESTRICTIONS_DBSCHEMA_TRUSTEE                             4
  9399. #endif // OLEDBVER >= 0x0210
  9400. //@@@- V2.1
  9401.  
  9402. EXTERN_C const IID IID_IDBSchemaRowset;
  9403.  
  9404. #if defined(__cplusplus) && !defined(CINTERFACE)
  9405.     
  9406.     interface DECLSPEC_UUID("0c733a7b-2a1c-11ce-ade5-00aa0044773d")
  9407.     IDBSchemaRowset : public IUnknown
  9408.     {
  9409.     public:
  9410.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRowset( 
  9411.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9412.             /* [in] */ REFGUID rguidSchema,
  9413.             /* [in] */ ULONG cRestrictions,
  9414.             /* [size_is][in] */ const VARIANT __RPC_FAR rgRestrictions[  ],
  9415.             /* [in] */ REFIID riid,
  9416.             /* [in] */ ULONG cPropertySets,
  9417.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9418.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9419.         
  9420.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSchemas( 
  9421.             /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  9422.             /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  9423.             /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport) = 0;
  9424.         
  9425.     };
  9426.     
  9427. #else     /* C style interface */
  9428.  
  9429.     typedef struct IDBSchemaRowsetVtbl
  9430.     {
  9431.         BEGIN_INTERFACE
  9432.         
  9433.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9434.             IDBSchemaRowset __RPC_FAR * This,
  9435.             /* [in] */ REFIID riid,
  9436.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9437.         
  9438.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9439.             IDBSchemaRowset __RPC_FAR * This);
  9440.         
  9441.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9442.             IDBSchemaRowset __RPC_FAR * This);
  9443.         
  9444.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowset )( 
  9445.             IDBSchemaRowset __RPC_FAR * This,
  9446.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9447.             /* [in] */ REFGUID rguidSchema,
  9448.             /* [in] */ ULONG cRestrictions,
  9449.             /* [size_is][in] */ const VARIANT __RPC_FAR rgRestrictions[  ],
  9450.             /* [in] */ REFIID riid,
  9451.             /* [in] */ ULONG cPropertySets,
  9452.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9453.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9454.         
  9455.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSchemas )( 
  9456.             IDBSchemaRowset __RPC_FAR * This,
  9457.             /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  9458.             /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  9459.             /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport);
  9460.         
  9461.         END_INTERFACE
  9462.     } IDBSchemaRowsetVtbl;
  9463.  
  9464.     interface IDBSchemaRowset
  9465.     {
  9466.         CONST_VTBL struct IDBSchemaRowsetVtbl __RPC_FAR *lpVtbl;
  9467.     };
  9468.  
  9469.     
  9470.  
  9471. #ifdef COBJMACROS
  9472.  
  9473.  
  9474. #define IDBSchemaRowset_QueryInterface(This,riid,ppvObject)    \
  9475.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9476.  
  9477. #define IDBSchemaRowset_AddRef(This)    \
  9478.     (This)->lpVtbl -> AddRef(This)
  9479.  
  9480. #define IDBSchemaRowset_Release(This)    \
  9481.     (This)->lpVtbl -> Release(This)
  9482.  
  9483.  
  9484. #define IDBSchemaRowset_GetRowset(This,pUnkOuter,rguidSchema,cRestrictions,rgRestrictions,riid,cPropertySets,rgPropertySets,ppRowset)    \
  9485.     (This)->lpVtbl -> GetRowset(This,pUnkOuter,rguidSchema,cRestrictions,rgRestrictions,riid,cPropertySets,rgPropertySets,ppRowset)
  9486.  
  9487. #define IDBSchemaRowset_GetSchemas(This,pcSchemas,prgSchemas,prgRestrictionSupport)    \
  9488.     (This)->lpVtbl -> GetSchemas(This,pcSchemas,prgSchemas,prgRestrictionSupport)
  9489.  
  9490. #endif /* COBJMACROS */
  9491.  
  9492.  
  9493. #endif     /* C style interface */
  9494.  
  9495.  
  9496.  
  9497. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_RemoteGetRowset_Proxy( 
  9498.     IDBSchemaRowset __RPC_FAR * This,
  9499.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9500.     /* [in] */ REFGUID rguidSchema,
  9501.     /* [in] */ ULONG cRestrictions,
  9502.     /* [size_is][unique][in] */ const VARIANT __RPC_FAR *rgRestrictions,
  9503.     /* [in] */ REFIID riid,
  9504.     /* [in] */ ULONG cPropertySets,
  9505.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  9506.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  9507.     /* [in] */ ULONG cTotalProps,
  9508.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  9509.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9510.  
  9511.  
  9512. void __RPC_STUB IDBSchemaRowset_RemoteGetRowset_Stub(
  9513.     IRpcStubBuffer *This,
  9514.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9515.     PRPC_MESSAGE _pRpcMessage,
  9516.     DWORD *_pdwStubPhase);
  9517.  
  9518.  
  9519. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_RemoteGetSchemas_Proxy( 
  9520.     IDBSchemaRowset __RPC_FAR * This,
  9521.     /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  9522.     /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  9523.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport,
  9524.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9525.  
  9526.  
  9527. void __RPC_STUB IDBSchemaRowset_RemoteGetSchemas_Stub(
  9528.     IRpcStubBuffer *This,
  9529.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9530.     PRPC_MESSAGE _pRpcMessage,
  9531.     DWORD *_pdwStubPhase);
  9532.  
  9533.  
  9534.  
  9535. #endif     /* __IDBSchemaRowset_INTERFACE_DEFINED__ */
  9536.  
  9537.  
  9538. /****************************************
  9539.  * Generated header for interface: __MIDL_itf_oledb_0199
  9540.  * at Thu Nov 12 23:35:28 1998
  9541.  * using MIDL 3.01.75
  9542.  ****************************************/
  9543. /* [local] */ 
  9544.  
  9545.  
  9546. //@@@+ V2.0
  9547. #if( OLEDBVER >= 0x0200 )
  9548.  
  9549.  
  9550. extern RPC_IF_HANDLE __MIDL_itf_oledb_0199_v0_0_c_ifspec;
  9551. extern RPC_IF_HANDLE __MIDL_itf_oledb_0199_v0_0_s_ifspec;
  9552.  
  9553. #ifndef __IMDDataset_INTERFACE_DEFINED__
  9554. #define __IMDDataset_INTERFACE_DEFINED__
  9555.  
  9556. /****************************************
  9557.  * Generated header for interface: IMDDataset
  9558.  * at Thu Nov 12 23:35:28 1998
  9559.  * using MIDL 3.01.75
  9560.  ****************************************/
  9561. /* [unique][uuid][object][local] */ 
  9562.  
  9563.  
  9564.  
  9565. EXTERN_C const IID IID_IMDDataset;
  9566.  
  9567. #if defined(__cplusplus) && !defined(CINTERFACE)
  9568.     
  9569.     interface DECLSPEC_UUID("a07cccd1-8148-11d0-87bb-00c04fc33942")
  9570.     IMDDataset : public IUnknown
  9571.     {
  9572.     public:
  9573.         virtual HRESULT STDMETHODCALLTYPE FreeAxisInfo( 
  9574.             /* [in] */ ULONG cAxes,
  9575.             /* [size_is][in] */ MDAXISINFO __RPC_FAR *rgAxisInfo) = 0;
  9576.         
  9577.         virtual HRESULT STDMETHODCALLTYPE GetAxisInfo( 
  9578.             /* [out][in] */ ULONG __RPC_FAR *pcAxes,
  9579.             /* [size_is][size_is][out] */ MDAXISINFO __RPC_FAR *__RPC_FAR *prgAxisInfo) = 0;
  9580.         
  9581.         virtual HRESULT STDMETHODCALLTYPE GetAxisRowset( 
  9582.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9583.             /* [in] */ ULONG iAxis,
  9584.             /* [in] */ REFIID riid,
  9585.             /* [in] */ ULONG cPropertySets,
  9586.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9587.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9588.         
  9589.         virtual HRESULT STDMETHODCALLTYPE GetCellData( 
  9590.             /* [in] */ HACCESSOR hAccessor,
  9591.             /* [in] */ ULONG ulStartCell,
  9592.             /* [in] */ ULONG ulEndCell,
  9593.             /* [out] */ void __RPC_FAR *pData) = 0;
  9594.         
  9595.         virtual HRESULT STDMETHODCALLTYPE GetSpecification( 
  9596.             /* [in] */ REFIID riid,
  9597.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification) = 0;
  9598.         
  9599.     };
  9600.     
  9601. #else     /* C style interface */
  9602.  
  9603.     typedef struct IMDDatasetVtbl
  9604.     {
  9605.         BEGIN_INTERFACE
  9606.         
  9607.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9608.             IMDDataset __RPC_FAR * This,
  9609.             /* [in] */ REFIID riid,
  9610.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9611.         
  9612.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9613.             IMDDataset __RPC_FAR * This);
  9614.         
  9615.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9616.             IMDDataset __RPC_FAR * This);
  9617.         
  9618.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeAxisInfo )( 
  9619.             IMDDataset __RPC_FAR * This,
  9620.             /* [in] */ ULONG cAxes,
  9621.             /* [size_is][in] */ MDAXISINFO __RPC_FAR *rgAxisInfo);
  9622.         
  9623.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAxisInfo )( 
  9624.             IMDDataset __RPC_FAR * This,
  9625.             /* [out][in] */ ULONG __RPC_FAR *pcAxes,
  9626.             /* [size_is][size_is][out] */ MDAXISINFO __RPC_FAR *__RPC_FAR *prgAxisInfo);
  9627.         
  9628.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAxisRowset )( 
  9629.             IMDDataset __RPC_FAR * This,
  9630.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9631.             /* [in] */ ULONG iAxis,
  9632.             /* [in] */ REFIID riid,
  9633.             /* [in] */ ULONG cPropertySets,
  9634.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9635.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9636.         
  9637.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCellData )( 
  9638.             IMDDataset __RPC_FAR * This,
  9639.             /* [in] */ HACCESSOR hAccessor,
  9640.             /* [in] */ ULONG ulStartCell,
  9641.             /* [in] */ ULONG ulEndCell,
  9642.             /* [out] */ void __RPC_FAR *pData);
  9643.         
  9644.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecification )( 
  9645.             IMDDataset __RPC_FAR * This,
  9646.             /* [in] */ REFIID riid,
  9647.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification);
  9648.         
  9649.         END_INTERFACE
  9650.     } IMDDatasetVtbl;
  9651.  
  9652.     interface IMDDataset
  9653.     {
  9654.         CONST_VTBL struct IMDDatasetVtbl __RPC_FAR *lpVtbl;
  9655.     };
  9656.  
  9657.     
  9658.  
  9659. #ifdef COBJMACROS
  9660.  
  9661.  
  9662. #define IMDDataset_QueryInterface(This,riid,ppvObject)    \
  9663.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9664.  
  9665. #define IMDDataset_AddRef(This)    \
  9666.     (This)->lpVtbl -> AddRef(This)
  9667.  
  9668. #define IMDDataset_Release(This)    \
  9669.     (This)->lpVtbl -> Release(This)
  9670.  
  9671.  
  9672. #define IMDDataset_FreeAxisInfo(This,cAxes,rgAxisInfo)    \
  9673.     (This)->lpVtbl -> FreeAxisInfo(This,cAxes,rgAxisInfo)
  9674.  
  9675. #define IMDDataset_GetAxisInfo(This,pcAxes,prgAxisInfo)    \
  9676.     (This)->lpVtbl -> GetAxisInfo(This,pcAxes,prgAxisInfo)
  9677.  
  9678. #define IMDDataset_GetAxisRowset(This,pUnkOuter,iAxis,riid,cPropertySets,rgPropertySets,ppRowset)    \
  9679.     (This)->lpVtbl -> GetAxisRowset(This,pUnkOuter,iAxis,riid,cPropertySets,rgPropertySets,ppRowset)
  9680.  
  9681. #define IMDDataset_GetCellData(This,hAccessor,ulStartCell,ulEndCell,pData)    \
  9682.     (This)->lpVtbl -> GetCellData(This,hAccessor,ulStartCell,ulEndCell,pData)
  9683.  
  9684. #define IMDDataset_GetSpecification(This,riid,ppSpecification)    \
  9685.     (This)->lpVtbl -> GetSpecification(This,riid,ppSpecification)
  9686.  
  9687. #endif /* COBJMACROS */
  9688.  
  9689.  
  9690. #endif     /* C style interface */
  9691.  
  9692.  
  9693.  
  9694. HRESULT STDMETHODCALLTYPE IMDDataset_FreeAxisInfo_Proxy( 
  9695.     IMDDataset __RPC_FAR * This,
  9696.     /* [in] */ ULONG cAxes,
  9697.     /* [size_is][in] */ MDAXISINFO __RPC_FAR *rgAxisInfo);
  9698.  
  9699.  
  9700. void __RPC_STUB IMDDataset_FreeAxisInfo_Stub(
  9701.     IRpcStubBuffer *This,
  9702.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9703.     PRPC_MESSAGE _pRpcMessage,
  9704.     DWORD *_pdwStubPhase);
  9705.  
  9706.  
  9707. HRESULT STDMETHODCALLTYPE IMDDataset_GetAxisInfo_Proxy( 
  9708.     IMDDataset __RPC_FAR * This,
  9709.     /* [out][in] */ ULONG __RPC_FAR *pcAxes,
  9710.     /* [size_is][size_is][out] */ MDAXISINFO __RPC_FAR *__RPC_FAR *prgAxisInfo);
  9711.  
  9712.  
  9713. void __RPC_STUB IMDDataset_GetAxisInfo_Stub(
  9714.     IRpcStubBuffer *This,
  9715.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9716.     PRPC_MESSAGE _pRpcMessage,
  9717.     DWORD *_pdwStubPhase);
  9718.  
  9719.  
  9720. HRESULT STDMETHODCALLTYPE IMDDataset_GetAxisRowset_Proxy( 
  9721.     IMDDataset __RPC_FAR * This,
  9722.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9723.     /* [in] */ ULONG iAxis,
  9724.     /* [in] */ REFIID riid,
  9725.     /* [in] */ ULONG cPropertySets,
  9726.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9727.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9728.  
  9729.  
  9730. void __RPC_STUB IMDDataset_GetAxisRowset_Stub(
  9731.     IRpcStubBuffer *This,
  9732.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9733.     PRPC_MESSAGE _pRpcMessage,
  9734.     DWORD *_pdwStubPhase);
  9735.  
  9736.  
  9737. HRESULT STDMETHODCALLTYPE IMDDataset_GetCellData_Proxy( 
  9738.     IMDDataset __RPC_FAR * This,
  9739.     /* [in] */ HACCESSOR hAccessor,
  9740.     /* [in] */ ULONG ulStartCell,
  9741.     /* [in] */ ULONG ulEndCell,
  9742.     /* [out] */ void __RPC_FAR *pData);
  9743.  
  9744.  
  9745. void __RPC_STUB IMDDataset_GetCellData_Stub(
  9746.     IRpcStubBuffer *This,
  9747.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9748.     PRPC_MESSAGE _pRpcMessage,
  9749.     DWORD *_pdwStubPhase);
  9750.  
  9751.  
  9752. HRESULT STDMETHODCALLTYPE IMDDataset_GetSpecification_Proxy( 
  9753.     IMDDataset __RPC_FAR * This,
  9754.     /* [in] */ REFIID riid,
  9755.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification);
  9756.  
  9757.  
  9758. void __RPC_STUB IMDDataset_GetSpecification_Stub(
  9759.     IRpcStubBuffer *This,
  9760.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9761.     PRPC_MESSAGE _pRpcMessage,
  9762.     DWORD *_pdwStubPhase);
  9763.  
  9764.  
  9765.  
  9766. #endif     /* __IMDDataset_INTERFACE_DEFINED__ */
  9767.  
  9768.  
  9769. #ifndef __IMDFind_INTERFACE_DEFINED__
  9770. #define __IMDFind_INTERFACE_DEFINED__
  9771.  
  9772. /****************************************
  9773.  * Generated header for interface: IMDFind
  9774.  * at Thu Nov 12 23:35:28 1998
  9775.  * using MIDL 3.01.75
  9776.  ****************************************/
  9777. /* [unique][uuid][object][local] */ 
  9778.  
  9779.  
  9780.  
  9781. EXTERN_C const IID IID_IMDFind;
  9782.  
  9783. #if defined(__cplusplus) && !defined(CINTERFACE)
  9784.     
  9785.     interface DECLSPEC_UUID("a07cccd2-8148-11d0-87bb-00c04fc33942")
  9786.     IMDFind : public IUnknown
  9787.     {
  9788.     public:
  9789.         virtual HRESULT STDMETHODCALLTYPE FindCell( 
  9790.             /* [in] */ ULONG ulStartingOrdinal,
  9791.             /* [in] */ ULONG cMembers,
  9792.             /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9793.             /* [out] */ ULONG __RPC_FAR *pulCellOrdinal) = 0;
  9794.         
  9795.         virtual HRESULT STDMETHODCALLTYPE FindTuple( 
  9796.             /* [in] */ ULONG ulAxisIdentifier,
  9797.             /* [in] */ ULONG ulStartingOrdinal,
  9798.             /* [in] */ ULONG cMembers,
  9799.             /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9800.             /* [out] */ ULONG __RPC_FAR *pulTupleOrdinal) = 0;
  9801.         
  9802.     };
  9803.     
  9804. #else     /* C style interface */
  9805.  
  9806.     typedef struct IMDFindVtbl
  9807.     {
  9808.         BEGIN_INTERFACE
  9809.         
  9810.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9811.             IMDFind __RPC_FAR * This,
  9812.             /* [in] */ REFIID riid,
  9813.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9814.         
  9815.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9816.             IMDFind __RPC_FAR * This);
  9817.         
  9818.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9819.             IMDFind __RPC_FAR * This);
  9820.         
  9821.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindCell )( 
  9822.             IMDFind __RPC_FAR * This,
  9823.             /* [in] */ ULONG ulStartingOrdinal,
  9824.             /* [in] */ ULONG cMembers,
  9825.             /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9826.             /* [out] */ ULONG __RPC_FAR *pulCellOrdinal);
  9827.         
  9828.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindTuple )( 
  9829.             IMDFind __RPC_FAR * This,
  9830.             /* [in] */ ULONG ulAxisIdentifier,
  9831.             /* [in] */ ULONG ulStartingOrdinal,
  9832.             /* [in] */ ULONG cMembers,
  9833.             /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9834.             /* [out] */ ULONG __RPC_FAR *pulTupleOrdinal);
  9835.         
  9836.         END_INTERFACE
  9837.     } IMDFindVtbl;
  9838.  
  9839.     interface IMDFind
  9840.     {
  9841.         CONST_VTBL struct IMDFindVtbl __RPC_FAR *lpVtbl;
  9842.     };
  9843.  
  9844.     
  9845.  
  9846. #ifdef COBJMACROS
  9847.  
  9848.  
  9849. #define IMDFind_QueryInterface(This,riid,ppvObject)    \
  9850.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9851.  
  9852. #define IMDFind_AddRef(This)    \
  9853.     (This)->lpVtbl -> AddRef(This)
  9854.  
  9855. #define IMDFind_Release(This)    \
  9856.     (This)->lpVtbl -> Release(This)
  9857.  
  9858.  
  9859. #define IMDFind_FindCell(This,ulStartingOrdinal,cMembers,rgpwszMember,pulCellOrdinal)    \
  9860.     (This)->lpVtbl -> FindCell(This,ulStartingOrdinal,cMembers,rgpwszMember,pulCellOrdinal)
  9861.  
  9862. #define IMDFind_FindTuple(This,ulAxisIdentifier,ulStartingOrdinal,cMembers,rgpwszMember,pulTupleOrdinal)    \
  9863.     (This)->lpVtbl -> FindTuple(This,ulAxisIdentifier,ulStartingOrdinal,cMembers,rgpwszMember,pulTupleOrdinal)
  9864.  
  9865. #endif /* COBJMACROS */
  9866.  
  9867.  
  9868. #endif     /* C style interface */
  9869.  
  9870.  
  9871.  
  9872. HRESULT STDMETHODCALLTYPE IMDFind_FindCell_Proxy( 
  9873.     IMDFind __RPC_FAR * This,
  9874.     /* [in] */ ULONG ulStartingOrdinal,
  9875.     /* [in] */ ULONG cMembers,
  9876.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9877.     /* [out] */ ULONG __RPC_FAR *pulCellOrdinal);
  9878.  
  9879.  
  9880. void __RPC_STUB IMDFind_FindCell_Stub(
  9881.     IRpcStubBuffer *This,
  9882.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9883.     PRPC_MESSAGE _pRpcMessage,
  9884.     DWORD *_pdwStubPhase);
  9885.  
  9886.  
  9887. HRESULT STDMETHODCALLTYPE IMDFind_FindTuple_Proxy( 
  9888.     IMDFind __RPC_FAR * This,
  9889.     /* [in] */ ULONG ulAxisIdentifier,
  9890.     /* [in] */ ULONG ulStartingOrdinal,
  9891.     /* [in] */ ULONG cMembers,
  9892.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9893.     /* [out] */ ULONG __RPC_FAR *pulTupleOrdinal);
  9894.  
  9895.  
  9896. void __RPC_STUB IMDFind_FindTuple_Stub(
  9897.     IRpcStubBuffer *This,
  9898.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9899.     PRPC_MESSAGE _pRpcMessage,
  9900.     DWORD *_pdwStubPhase);
  9901.  
  9902.  
  9903.  
  9904. #endif     /* __IMDFind_INTERFACE_DEFINED__ */
  9905.  
  9906.  
  9907. #ifndef __IMDRangeRowset_INTERFACE_DEFINED__
  9908. #define __IMDRangeRowset_INTERFACE_DEFINED__
  9909.  
  9910. /****************************************
  9911.  * Generated header for interface: IMDRangeRowset
  9912.  * at Thu Nov 12 23:35:28 1998
  9913.  * using MIDL 3.01.75
  9914.  ****************************************/
  9915. /* [unique][uuid][object][local] */ 
  9916.  
  9917.  
  9918.  
  9919. EXTERN_C const IID IID_IMDRangeRowset;
  9920.  
  9921. #if defined(__cplusplus) && !defined(CINTERFACE)
  9922.     
  9923.     interface DECLSPEC_UUID("0c733aa0-2a1c-11ce-ade5-00aa0044773d")
  9924.     IMDRangeRowset : public IUnknown
  9925.     {
  9926.     public:
  9927.         virtual HRESULT STDMETHODCALLTYPE GetRangeRowset( 
  9928.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9929.             /* [in] */ ULONG ulStartCell,
  9930.             /* [in] */ ULONG ulEndCell,
  9931.             /* [in] */ REFIID riid,
  9932.             /* [in] */ ULONG cPropertySets,
  9933.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9934.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9935.         
  9936.     };
  9937.     
  9938. #else     /* C style interface */
  9939.  
  9940.     typedef struct IMDRangeRowsetVtbl
  9941.     {
  9942.         BEGIN_INTERFACE
  9943.         
  9944.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9945.             IMDRangeRowset __RPC_FAR * This,
  9946.             /* [in] */ REFIID riid,
  9947.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9948.         
  9949.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9950.             IMDRangeRowset __RPC_FAR * This);
  9951.         
  9952.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9953.             IMDRangeRowset __RPC_FAR * This);
  9954.         
  9955.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRangeRowset )( 
  9956.             IMDRangeRowset __RPC_FAR * This,
  9957.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9958.             /* [in] */ ULONG ulStartCell,
  9959.             /* [in] */ ULONG ulEndCell,
  9960.             /* [in] */ REFIID riid,
  9961.             /* [in] */ ULONG cPropertySets,
  9962.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9963.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9964.         
  9965.         END_INTERFACE
  9966.     } IMDRangeRowsetVtbl;
  9967.  
  9968.     interface IMDRangeRowset
  9969.     {
  9970.         CONST_VTBL struct IMDRangeRowsetVtbl __RPC_FAR *lpVtbl;
  9971.     };
  9972.  
  9973.     
  9974.  
  9975. #ifdef COBJMACROS
  9976.  
  9977.  
  9978. #define IMDRangeRowset_QueryInterface(This,riid,ppvObject)    \
  9979.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9980.  
  9981. #define IMDRangeRowset_AddRef(This)    \
  9982.     (This)->lpVtbl -> AddRef(This)
  9983.  
  9984. #define IMDRangeRowset_Release(This)    \
  9985.     (This)->lpVtbl -> Release(This)
  9986.  
  9987.  
  9988. #define IMDRangeRowset_GetRangeRowset(This,pUnkOuter,ulStartCell,ulEndCell,riid,cPropertySets,rgPropertySets,ppRowset)    \
  9989.     (This)->lpVtbl -> GetRangeRowset(This,pUnkOuter,ulStartCell,ulEndCell,riid,cPropertySets,rgPropertySets,ppRowset)
  9990.  
  9991. #endif /* COBJMACROS */
  9992.  
  9993.  
  9994. #endif     /* C style interface */
  9995.  
  9996.  
  9997.  
  9998. HRESULT STDMETHODCALLTYPE IMDRangeRowset_GetRangeRowset_Proxy( 
  9999.     IMDRangeRowset __RPC_FAR * This,
  10000.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  10001.     /* [in] */ ULONG ulStartCell,
  10002.     /* [in] */ ULONG ulEndCell,
  10003.     /* [in] */ REFIID riid,
  10004.     /* [in] */ ULONG cPropertySets,
  10005.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  10006.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  10007.  
  10008.  
  10009. void __RPC_STUB IMDRangeRowset_GetRangeRowset_Stub(
  10010.     IRpcStubBuffer *This,
  10011.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10012.     PRPC_MESSAGE _pRpcMessage,
  10013.     DWORD *_pdwStubPhase);
  10014.  
  10015.  
  10016.  
  10017. #endif     /* __IMDRangeRowset_INTERFACE_DEFINED__ */
  10018.  
  10019.  
  10020. #ifndef __IAlterTable_INTERFACE_DEFINED__
  10021. #define __IAlterTable_INTERFACE_DEFINED__
  10022.  
  10023. /****************************************
  10024.  * Generated header for interface: IAlterTable
  10025.  * at Thu Nov 12 23:35:28 1998
  10026.  * using MIDL 3.01.75
  10027.  ****************************************/
  10028. /* [unique][uuid][object][local] */ 
  10029.  
  10030.  
  10031.  
  10032. EXTERN_C const IID IID_IAlterTable;
  10033.  
  10034. #if defined(__cplusplus) && !defined(CINTERFACE)
  10035.     
  10036.     interface DECLSPEC_UUID("0c733aa5-2a1c-11ce-ade5-00aa0044773d")
  10037.     IAlterTable : public IUnknown
  10038.     {
  10039.     public:
  10040.         virtual HRESULT STDMETHODCALLTYPE AlterColumn( 
  10041.             /* [in] */ DBID __RPC_FAR *pTableId,
  10042.             /* [in] */ DBID __RPC_FAR *pColumnId,
  10043.             /* [in] */ DBCOLUMNDESCFLAGS ColumnDescFlags,
  10044.             /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc) = 0;
  10045.         
  10046.         virtual HRESULT STDMETHODCALLTYPE AlterTable( 
  10047.             /* [in] */ DBID __RPC_FAR *pTableId,
  10048.             /* [in] */ DBID __RPC_FAR *pNewTableId,
  10049.             /* [in] */ ULONG cPropertySets,
  10050.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  10051.         
  10052.     };
  10053.     
  10054. #else     /* C style interface */
  10055.  
  10056.     typedef struct IAlterTableVtbl
  10057.     {
  10058.         BEGIN_INTERFACE
  10059.         
  10060.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10061.             IAlterTable __RPC_FAR * This,
  10062.             /* [in] */ REFIID riid,
  10063.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10064.         
  10065.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10066.             IAlterTable __RPC_FAR * This);
  10067.         
  10068.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10069.             IAlterTable __RPC_FAR * This);
  10070.         
  10071.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AlterColumn )( 
  10072.             IAlterTable __RPC_FAR * This,
  10073.             /* [in] */ DBID __RPC_FAR *pTableId,
  10074.             /* [in] */ DBID __RPC_FAR *pColumnId,
  10075.             /* [in] */ DBCOLUMNDESCFLAGS ColumnDescFlags,
  10076.             /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc);
  10077.         
  10078.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AlterTable )( 
  10079.             IAlterTable __RPC_FAR * This,
  10080.             /* [in] */ DBID __RPC_FAR *pTableId,
  10081.             /* [in] */ DBID __RPC_FAR *pNewTableId,
  10082.             /* [in] */ ULONG cPropertySets,
  10083.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  10084.         
  10085.         END_INTERFACE
  10086.     } IAlterTableVtbl;
  10087.  
  10088.     interface IAlterTable
  10089.     {
  10090.         CONST_VTBL struct IAlterTableVtbl __RPC_FAR *lpVtbl;
  10091.     };
  10092.  
  10093.     
  10094.  
  10095. #ifdef COBJMACROS
  10096.  
  10097.  
  10098. #define IAlterTable_QueryInterface(This,riid,ppvObject)    \
  10099.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10100.  
  10101. #define IAlterTable_AddRef(This)    \
  10102.     (This)->lpVtbl -> AddRef(This)
  10103.  
  10104. #define IAlterTable_Release(This)    \
  10105.     (This)->lpVtbl -> Release(This)
  10106.  
  10107.  
  10108. #define IAlterTable_AlterColumn(This,pTableId,pColumnId,ColumnDescFlags,pColumnDesc)    \
  10109.     (This)->lpVtbl -> AlterColumn(This,pTableId,pColumnId,ColumnDescFlags,pColumnDesc)
  10110.  
  10111. #define IAlterTable_AlterTable(This,pTableId,pNewTableId,cPropertySets,rgPropertySets)    \
  10112.     (This)->lpVtbl -> AlterTable(This,pTableId,pNewTableId,cPropertySets,rgPropertySets)
  10113.  
  10114. #endif /* COBJMACROS */
  10115.  
  10116.  
  10117. #endif     /* C style interface */
  10118.  
  10119.  
  10120.  
  10121. HRESULT STDMETHODCALLTYPE IAlterTable_AlterColumn_Proxy( 
  10122.     IAlterTable __RPC_FAR * This,
  10123.     /* [in] */ DBID __RPC_FAR *pTableId,
  10124.     /* [in] */ DBID __RPC_FAR *pColumnId,
  10125.     /* [in] */ DBCOLUMNDESCFLAGS ColumnDescFlags,
  10126.     /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc);
  10127.  
  10128.  
  10129. void __RPC_STUB IAlterTable_AlterColumn_Stub(
  10130.     IRpcStubBuffer *This,
  10131.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10132.     PRPC_MESSAGE _pRpcMessage,
  10133.     DWORD *_pdwStubPhase);
  10134.  
  10135.  
  10136. HRESULT STDMETHODCALLTYPE IAlterTable_AlterTable_Proxy( 
  10137.     IAlterTable __RPC_FAR * This,
  10138.     /* [in] */ DBID __RPC_FAR *pTableId,
  10139.     /* [in] */ DBID __RPC_FAR *pNewTableId,
  10140.     /* [in] */ ULONG cPropertySets,
  10141.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  10142.  
  10143.  
  10144. void __RPC_STUB IAlterTable_AlterTable_Stub(
  10145.     IRpcStubBuffer *This,
  10146.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10147.     PRPC_MESSAGE _pRpcMessage,
  10148.     DWORD *_pdwStubPhase);
  10149.  
  10150.  
  10151.  
  10152. #endif     /* __IAlterTable_INTERFACE_DEFINED__ */
  10153.  
  10154.  
  10155. #ifndef __IAlterIndex_INTERFACE_DEFINED__
  10156. #define __IAlterIndex_INTERFACE_DEFINED__
  10157.  
  10158. /****************************************
  10159.  * Generated header for interface: IAlterIndex
  10160.  * at Thu Nov 12 23:35:28 1998
  10161.  * using MIDL 3.01.75
  10162.  ****************************************/
  10163. /* [unique][uuid][object][local] */ 
  10164.  
  10165.  
  10166.  
  10167. EXTERN_C const IID IID_IAlterIndex;
  10168.  
  10169. #if defined(__cplusplus) && !defined(CINTERFACE)
  10170.     
  10171.     interface DECLSPEC_UUID("0c733aa6-2a1c-11ce-ade5-00aa0044773d")
  10172.     IAlterIndex : public IUnknown
  10173.     {
  10174.     public:
  10175.         virtual HRESULT STDMETHODCALLTYPE AlterIndex( 
  10176.             /* [in] */ DBID __RPC_FAR *pTableId,
  10177.             /* [in] */ DBID __RPC_FAR *pIndexId,
  10178.             /* [in] */ DBID __RPC_FAR *pNewIndexId,
  10179.             /* [in] */ ULONG cPropertySets,
  10180.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySet[  ]) = 0;
  10181.         
  10182.     };
  10183.     
  10184. #else     /* C style interface */
  10185.  
  10186.     typedef struct IAlterIndexVtbl
  10187.     {
  10188.         BEGIN_INTERFACE
  10189.         
  10190.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10191.             IAlterIndex __RPC_FAR * This,
  10192.             /* [in] */ REFIID riid,
  10193.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10194.         
  10195.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10196.             IAlterIndex __RPC_FAR * This);
  10197.         
  10198.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10199.             IAlterIndex __RPC_FAR * This);
  10200.         
  10201.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AlterIndex )( 
  10202.             IAlterIndex __RPC_FAR * This,
  10203.             /* [in] */ DBID __RPC_FAR *pTableId,
  10204.             /* [in] */ DBID __RPC_FAR *pIndexId,
  10205.             /* [in] */ DBID __RPC_FAR *pNewIndexId,
  10206.             /* [in] */ ULONG cPropertySets,
  10207.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySet[  ]);
  10208.         
  10209.         END_INTERFACE
  10210.     } IAlterIndexVtbl;
  10211.  
  10212.     interface IAlterIndex
  10213.     {
  10214.         CONST_VTBL struct IAlterIndexVtbl __RPC_FAR *lpVtbl;
  10215.     };
  10216.  
  10217.     
  10218.  
  10219. #ifdef COBJMACROS
  10220.  
  10221.  
  10222. #define IAlterIndex_QueryInterface(This,riid,ppvObject)    \
  10223.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10224.  
  10225. #define IAlterIndex_AddRef(This)    \
  10226.     (This)->lpVtbl -> AddRef(This)
  10227.  
  10228. #define IAlterIndex_Release(This)    \
  10229.     (This)->lpVtbl -> Release(This)
  10230.  
  10231.  
  10232. #define IAlterIndex_AlterIndex(This,pTableId,pIndexId,pNewIndexId,cPropertySets,rgPropertySet)    \
  10233.     (This)->lpVtbl -> AlterIndex(This,pTableId,pIndexId,pNewIndexId,cPropertySets,rgPropertySet)
  10234.  
  10235. #endif /* COBJMACROS */
  10236.  
  10237.  
  10238. #endif     /* C style interface */
  10239.  
  10240.  
  10241.  
  10242. HRESULT STDMETHODCALLTYPE IAlterIndex_AlterIndex_Proxy( 
  10243.     IAlterIndex __RPC_FAR * This,
  10244.     /* [in] */ DBID __RPC_FAR *pTableId,
  10245.     /* [in] */ DBID __RPC_FAR *pIndexId,
  10246.     /* [in] */ DBID __RPC_FAR *pNewIndexId,
  10247.     /* [in] */ ULONG cPropertySets,
  10248.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySet[  ]);
  10249.  
  10250.  
  10251. void __RPC_STUB IAlterIndex_AlterIndex_Stub(
  10252.     IRpcStubBuffer *This,
  10253.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10254.     PRPC_MESSAGE _pRpcMessage,
  10255.     DWORD *_pdwStubPhase);
  10256.  
  10257.  
  10258.  
  10259. #endif     /* __IAlterIndex_INTERFACE_DEFINED__ */
  10260.  
  10261.  
  10262. #ifndef __IRowsetChapterMember_INTERFACE_DEFINED__
  10263. #define __IRowsetChapterMember_INTERFACE_DEFINED__
  10264.  
  10265. /****************************************
  10266.  * Generated header for interface: IRowsetChapterMember
  10267.  * at Thu Nov 12 23:35:28 1998
  10268.  * using MIDL 3.01.75
  10269.  ****************************************/
  10270. /* [unique][uuid][object][local] */ 
  10271.  
  10272.  
  10273.  
  10274. EXTERN_C const IID IID_IRowsetChapterMember;
  10275.  
  10276. #if defined(__cplusplus) && !defined(CINTERFACE)
  10277.     
  10278.     interface DECLSPEC_UUID("0c733aa8-2a1c-11ce-ade5-00aa0044773d")
  10279.     IRowsetChapterMember : public IUnknown
  10280.     {
  10281.     public:
  10282.         virtual HRESULT STDMETHODCALLTYPE IsRowInChapter( 
  10283.             /* [in] */ HCHAPTER hChapter,
  10284.             /* [in] */ HROW hRow) = 0;
  10285.         
  10286.     };
  10287.     
  10288. #else     /* C style interface */
  10289.  
  10290.     typedef struct IRowsetChapterMemberVtbl
  10291.     {
  10292.         BEGIN_INTERFACE
  10293.         
  10294.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10295.             IRowsetChapterMember __RPC_FAR * This,
  10296.             /* [in] */ REFIID riid,
  10297.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10298.         
  10299.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10300.             IRowsetChapterMember __RPC_FAR * This);
  10301.         
  10302.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10303.             IRowsetChapterMember __RPC_FAR * This);
  10304.         
  10305.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsRowInChapter )( 
  10306.             IRowsetChapterMember __RPC_FAR * This,
  10307.             /* [in] */ HCHAPTER hChapter,
  10308.             /* [in] */ HROW hRow);
  10309.         
  10310.         END_INTERFACE
  10311.     } IRowsetChapterMemberVtbl;
  10312.  
  10313.     interface IRowsetChapterMember
  10314.     {
  10315.         CONST_VTBL struct IRowsetChapterMemberVtbl __RPC_FAR *lpVtbl;
  10316.     };
  10317.  
  10318.     
  10319.  
  10320. #ifdef COBJMACROS
  10321.  
  10322.  
  10323. #define IRowsetChapterMember_QueryInterface(This,riid,ppvObject)    \
  10324.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10325.  
  10326. #define IRowsetChapterMember_AddRef(This)    \
  10327.     (This)->lpVtbl -> AddRef(This)
  10328.  
  10329. #define IRowsetChapterMember_Release(This)    \
  10330.     (This)->lpVtbl -> Release(This)
  10331.  
  10332.  
  10333. #define IRowsetChapterMember_IsRowInChapter(This,hChapter,hRow)    \
  10334.     (This)->lpVtbl -> IsRowInChapter(This,hChapter,hRow)
  10335.  
  10336. #endif /* COBJMACROS */
  10337.  
  10338.  
  10339. #endif     /* C style interface */
  10340.  
  10341.  
  10342.  
  10343. HRESULT STDMETHODCALLTYPE IRowsetChapterMember_IsRowInChapter_Proxy( 
  10344.     IRowsetChapterMember __RPC_FAR * This,
  10345.     /* [in] */ HCHAPTER hChapter,
  10346.     /* [in] */ HROW hRow);
  10347.  
  10348.  
  10349. void __RPC_STUB IRowsetChapterMember_IsRowInChapter_Stub(
  10350.     IRpcStubBuffer *This,
  10351.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10352.     PRPC_MESSAGE _pRpcMessage,
  10353.     DWORD *_pdwStubPhase);
  10354.  
  10355.  
  10356.  
  10357. #endif     /* __IRowsetChapterMember_INTERFACE_DEFINED__ */
  10358.  
  10359.  
  10360. #ifndef __ICommandPersist_INTERFACE_DEFINED__
  10361. #define __ICommandPersist_INTERFACE_DEFINED__
  10362.  
  10363. /****************************************
  10364.  * Generated header for interface: ICommandPersist
  10365.  * at Thu Nov 12 23:35:28 1998
  10366.  * using MIDL 3.01.75
  10367.  ****************************************/
  10368. /* [unique][uuid][object][local] */ 
  10369.  
  10370.  
  10371.  
  10372. EXTERN_C const IID IID_ICommandPersist;
  10373.  
  10374. #if defined(__cplusplus) && !defined(CINTERFACE)
  10375.     
  10376.     interface DECLSPEC_UUID("0c733aa7-2a1c-11ce-ade5-00aa0044773d")
  10377.     ICommandPersist : public IUnknown
  10378.     {
  10379.     public:
  10380.         virtual HRESULT STDMETHODCALLTYPE DeleteCommand( 
  10381.             /* [in] */ DBID __RPC_FAR *pCommandID) = 0;
  10382.         
  10383.         virtual HRESULT STDMETHODCALLTYPE GetCurrentCommand( 
  10384.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppCommandID) = 0;
  10385.         
  10386.         virtual HRESULT STDMETHODCALLTYPE LoadCommand( 
  10387.             /* [in] */ DBID __RPC_FAR *pCommandID,
  10388.             /* [in] */ DWORD dwFlags) = 0;
  10389.         
  10390.         virtual HRESULT STDMETHODCALLTYPE SaveCommand( 
  10391.             /* [in] */ DBID __RPC_FAR *pCommandID,
  10392.             /* [in] */ DWORD dwFlags) = 0;
  10393.         
  10394.     };
  10395.     
  10396. #else     /* C style interface */
  10397.  
  10398.     typedef struct ICommandPersistVtbl
  10399.     {
  10400.         BEGIN_INTERFACE
  10401.         
  10402.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10403.             ICommandPersist __RPC_FAR * This,
  10404.             /* [in] */ REFIID riid,
  10405.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10406.         
  10407.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10408.             ICommandPersist __RPC_FAR * This);
  10409.         
  10410.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10411.             ICommandPersist __RPC_FAR * This);
  10412.         
  10413.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteCommand )( 
  10414.             ICommandPersist __RPC_FAR * This,
  10415.             /* [in] */ DBID __RPC_FAR *pCommandID);
  10416.         
  10417.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCurrentCommand )( 
  10418.             ICommandPersist __RPC_FAR * This,
  10419.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppCommandID);
  10420.         
  10421.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *LoadCommand )( 
  10422.             ICommandPersist __RPC_FAR * This,
  10423.             /* [in] */ DBID __RPC_FAR *pCommandID,
  10424.             /* [in] */ DWORD dwFlags);
  10425.         
  10426.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveCommand )( 
  10427.             ICommandPersist __RPC_FAR * This,
  10428.             /* [in] */ DBID __RPC_FAR *pCommandID,
  10429.             /* [in] */ DWORD dwFlags);
  10430.         
  10431.         END_INTERFACE
  10432.     } ICommandPersistVtbl;
  10433.  
  10434.     interface ICommandPersist
  10435.     {
  10436.         CONST_VTBL struct ICommandPersistVtbl __RPC_FAR *lpVtbl;
  10437.     };
  10438.  
  10439.     
  10440.  
  10441. #ifdef COBJMACROS
  10442.  
  10443.  
  10444. #define ICommandPersist_QueryInterface(This,riid,ppvObject)    \
  10445.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10446.  
  10447. #define ICommandPersist_AddRef(This)    \
  10448.     (This)->lpVtbl -> AddRef(This)
  10449.  
  10450. #define ICommandPersist_Release(This)    \
  10451.     (This)->lpVtbl -> Release(This)
  10452.  
  10453.  
  10454. #define ICommandPersist_DeleteCommand(This,pCommandID)    \
  10455.     (This)->lpVtbl -> DeleteCommand(This,pCommandID)
  10456.  
  10457. #define ICommandPersist_GetCurrentCommand(This,ppCommandID)    \
  10458.     (This)->lpVtbl -> GetCurrentCommand(This,ppCommandID)
  10459.  
  10460. #define ICommandPersist_LoadCommand(This,pCommandID,dwFlags)    \
  10461.     (This)->lpVtbl -> LoadCommand(This,pCommandID,dwFlags)
  10462.  
  10463. #define ICommandPersist_SaveCommand(This,pCommandID,dwFlags)    \
  10464.     (This)->lpVtbl -> SaveCommand(This,pCommandID,dwFlags)
  10465.  
  10466. #endif /* COBJMACROS */
  10467.  
  10468.  
  10469. #endif     /* C style interface */
  10470.  
  10471.  
  10472.  
  10473. HRESULT STDMETHODCALLTYPE ICommandPersist_DeleteCommand_Proxy( 
  10474.     ICommandPersist __RPC_FAR * This,
  10475.     /* [in] */ DBID __RPC_FAR *pCommandID);
  10476.  
  10477.  
  10478. void __RPC_STUB ICommandPersist_DeleteCommand_Stub(
  10479.     IRpcStubBuffer *This,
  10480.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10481.     PRPC_MESSAGE _pRpcMessage,
  10482.     DWORD *_pdwStubPhase);
  10483.  
  10484.  
  10485. HRESULT STDMETHODCALLTYPE ICommandPersist_GetCurrentCommand_Proxy( 
  10486.     ICommandPersist __RPC_FAR * This,
  10487.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppCommandID);
  10488.  
  10489.  
  10490. void __RPC_STUB ICommandPersist_GetCurrentCommand_Stub(
  10491.     IRpcStubBuffer *This,
  10492.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10493.     PRPC_MESSAGE _pRpcMessage,
  10494.     DWORD *_pdwStubPhase);
  10495.  
  10496.  
  10497. HRESULT STDMETHODCALLTYPE ICommandPersist_LoadCommand_Proxy( 
  10498.     ICommandPersist __RPC_FAR * This,
  10499.     /* [in] */ DBID __RPC_FAR *pCommandID,
  10500.     /* [in] */ DWORD dwFlags);
  10501.  
  10502.  
  10503. void __RPC_STUB ICommandPersist_LoadCommand_Stub(
  10504.     IRpcStubBuffer *This,
  10505.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10506.     PRPC_MESSAGE _pRpcMessage,
  10507.     DWORD *_pdwStubPhase);
  10508.  
  10509.  
  10510. HRESULT STDMETHODCALLTYPE ICommandPersist_SaveCommand_Proxy( 
  10511.     ICommandPersist __RPC_FAR * This,
  10512.     /* [in] */ DBID __RPC_FAR *pCommandID,
  10513.     /* [in] */ DWORD dwFlags);
  10514.  
  10515.  
  10516. void __RPC_STUB ICommandPersist_SaveCommand_Stub(
  10517.     IRpcStubBuffer *This,
  10518.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10519.     PRPC_MESSAGE _pRpcMessage,
  10520.     DWORD *_pdwStubPhase);
  10521.  
  10522.  
  10523.  
  10524. #endif     /* __ICommandPersist_INTERFACE_DEFINED__ */
  10525.  
  10526.  
  10527. #ifndef __IRowsetRefresh_INTERFACE_DEFINED__
  10528. #define __IRowsetRefresh_INTERFACE_DEFINED__
  10529.  
  10530. /****************************************
  10531.  * Generated header for interface: IRowsetRefresh
  10532.  * at Thu Nov 12 23:35:28 1998
  10533.  * using MIDL 3.01.75
  10534.  ****************************************/
  10535. /* [unique][uuid][object][local] */ 
  10536.  
  10537.  
  10538.  
  10539. EXTERN_C const IID IID_IRowsetRefresh;
  10540.  
  10541. #if defined(__cplusplus) && !defined(CINTERFACE)
  10542.     
  10543.     interface DECLSPEC_UUID("0c733aa9-2a1c-11ce-ade5-00aa0044773d")
  10544.     IRowsetRefresh : public IUnknown
  10545.     {
  10546.     public:
  10547.         virtual HRESULT STDMETHODCALLTYPE RefreshVisibleData( 
  10548.             /* [in] */ HCHAPTER hChapter,
  10549.             /* [in] */ ULONG cRows,
  10550.             /* [in] */ const HROW __RPC_FAR rghRows[  ],
  10551.             /* [in] */ BOOL fOverWrite,
  10552.             /* [out] */ ULONG __RPC_FAR *pcRowsRefreshed,
  10553.             /* [out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsRefreshed,
  10554.             /* [out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus) = 0;
  10555.         
  10556.         virtual HRESULT STDMETHODCALLTYPE GetLastVisibleData( 
  10557.             /* [in] */ HROW hRow,
  10558.             /* [in] */ HACCESSOR hAccessor,
  10559.             /* [out] */ void __RPC_FAR *pData) = 0;
  10560.         
  10561.     };
  10562.     
  10563. #else     /* C style interface */
  10564.  
  10565.     typedef struct IRowsetRefreshVtbl
  10566.     {
  10567.         BEGIN_INTERFACE
  10568.         
  10569.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10570.             IRowsetRefresh __RPC_FAR * This,
  10571.             /* [in] */ REFIID riid,
  10572.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10573.         
  10574.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10575.             IRowsetRefresh __RPC_FAR * This);
  10576.         
  10577.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10578.             IRowsetRefresh __RPC_FAR * This);
  10579.         
  10580.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RefreshVisibleData )( 
  10581.             IRowsetRefresh __RPC_FAR * This,
  10582.             /* [in] */ HCHAPTER hChapter,
  10583.             /* [in] */ ULONG cRows,
  10584.             /* [in] */ const HROW __RPC_FAR rghRows[  ],
  10585.             /* [in] */ BOOL fOverWrite,
  10586.             /* [out] */ ULONG __RPC_FAR *pcRowsRefreshed,
  10587.             /* [out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsRefreshed,
  10588.             /* [out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  10589.         
  10590.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLastVisibleData )( 
  10591.             IRowsetRefresh __RPC_FAR * This,
  10592.             /* [in] */ HROW hRow,
  10593.             /* [in] */ HACCESSOR hAccessor,
  10594.             /* [out] */ void __RPC_FAR *pData);
  10595.         
  10596.         END_INTERFACE
  10597.     } IRowsetRefreshVtbl;
  10598.  
  10599.     interface IRowsetRefresh
  10600.     {
  10601.         CONST_VTBL struct IRowsetRefreshVtbl __RPC_FAR *lpVtbl;
  10602.     };
  10603.  
  10604.     
  10605.  
  10606. #ifdef COBJMACROS
  10607.  
  10608.  
  10609. #define IRowsetRefresh_QueryInterface(This,riid,ppvObject)    \
  10610.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10611.  
  10612. #define IRowsetRefresh_AddRef(This)    \
  10613.     (This)->lpVtbl -> AddRef(This)
  10614.  
  10615. #define IRowsetRefresh_Release(This)    \
  10616.     (This)->lpVtbl -> Release(This)
  10617.  
  10618.  
  10619. #define IRowsetRefresh_RefreshVisibleData(This,hChapter,cRows,rghRows,fOverWrite,pcRowsRefreshed,prghRowsRefreshed,prgRowStatus)    \
  10620.     (This)->lpVtbl -> RefreshVisibleData(This,hChapter,cRows,rghRows,fOverWrite,pcRowsRefreshed,prghRowsRefreshed,prgRowStatus)
  10621.  
  10622. #define IRowsetRefresh_GetLastVisibleData(This,hRow,hAccessor,pData)    \
  10623.     (This)->lpVtbl -> GetLastVisibleData(This,hRow,hAccessor,pData)
  10624.  
  10625. #endif /* COBJMACROS */
  10626.  
  10627.  
  10628. #endif     /* C style interface */
  10629.  
  10630.  
  10631.  
  10632. HRESULT STDMETHODCALLTYPE IRowsetRefresh_RefreshVisibleData_Proxy( 
  10633.     IRowsetRefresh __RPC_FAR * This,
  10634.     /* [in] */ HCHAPTER hChapter,
  10635.     /* [in] */ ULONG cRows,
  10636.     /* [in] */ const HROW __RPC_FAR rghRows[  ],
  10637.     /* [in] */ BOOL fOverWrite,
  10638.     /* [out] */ ULONG __RPC_FAR *pcRowsRefreshed,
  10639.     /* [out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsRefreshed,
  10640.     /* [out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  10641.  
  10642.  
  10643. void __RPC_STUB IRowsetRefresh_RefreshVisibleData_Stub(
  10644.     IRpcStubBuffer *This,
  10645.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10646.     PRPC_MESSAGE _pRpcMessage,
  10647.     DWORD *_pdwStubPhase);
  10648.  
  10649.  
  10650. HRESULT STDMETHODCALLTYPE IRowsetRefresh_GetLastVisibleData_Proxy( 
  10651.     IRowsetRefresh __RPC_FAR * This,
  10652.     /* [in] */ HROW hRow,
  10653.     /* [in] */ HACCESSOR hAccessor,
  10654.     /* [out] */ void __RPC_FAR *pData);
  10655.  
  10656.  
  10657. void __RPC_STUB IRowsetRefresh_GetLastVisibleData_Stub(
  10658.     IRpcStubBuffer *This,
  10659.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10660.     PRPC_MESSAGE _pRpcMessage,
  10661.     DWORD *_pdwStubPhase);
  10662.  
  10663.  
  10664.  
  10665. #endif     /* __IRowsetRefresh_INTERFACE_DEFINED__ */
  10666.  
  10667.  
  10668. #ifndef __IParentRowset_INTERFACE_DEFINED__
  10669. #define __IParentRowset_INTERFACE_DEFINED__
  10670.  
  10671. /****************************************
  10672.  * Generated header for interface: IParentRowset
  10673.  * at Thu Nov 12 23:35:28 1998
  10674.  * using MIDL 3.01.75
  10675.  ****************************************/
  10676. /* [unique][uuid][object][local] */ 
  10677.  
  10678.  
  10679.  
  10680. EXTERN_C const IID IID_IParentRowset;
  10681.  
  10682. #if defined(__cplusplus) && !defined(CINTERFACE)
  10683.     
  10684.     interface DECLSPEC_UUID("0c733aaa-2a1c-11ce-ade5-00aa0044773d")
  10685.     IParentRowset : public IUnknown
  10686.     {
  10687.     public:
  10688.         virtual HRESULT STDMETHODCALLTYPE GetChildRowset( 
  10689.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  10690.             /* [in] */ ULONG iOrdinal,
  10691.             /* [in] */ REFIID riid,
  10692.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  10693.         
  10694.     };
  10695.     
  10696. #else     /* C style interface */
  10697.  
  10698.     typedef struct IParentRowsetVtbl
  10699.     {
  10700.         BEGIN_INTERFACE
  10701.         
  10702.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10703.             IParentRowset __RPC_FAR * This,
  10704.             /* [in] */ REFIID riid,
  10705.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10706.         
  10707.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10708.             IParentRowset __RPC_FAR * This);
  10709.         
  10710.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10711.             IParentRowset __RPC_FAR * This);
  10712.         
  10713.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetChildRowset )( 
  10714.             IParentRowset __RPC_FAR * This,
  10715.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  10716.             /* [in] */ ULONG iOrdinal,
  10717.             /* [in] */ REFIID riid,
  10718.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  10719.         
  10720.         END_INTERFACE
  10721.     } IParentRowsetVtbl;
  10722.  
  10723.     interface IParentRowset
  10724.     {
  10725.         CONST_VTBL struct IParentRowsetVtbl __RPC_FAR *lpVtbl;
  10726.     };
  10727.  
  10728.     
  10729.  
  10730. #ifdef COBJMACROS
  10731.  
  10732.  
  10733. #define IParentRowset_QueryInterface(This,riid,ppvObject)    \
  10734.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10735.  
  10736. #define IParentRowset_AddRef(This)    \
  10737.     (This)->lpVtbl -> AddRef(This)
  10738.  
  10739. #define IParentRowset_Release(This)    \
  10740.     (This)->lpVtbl -> Release(This)
  10741.  
  10742.  
  10743. #define IParentRowset_GetChildRowset(This,pUnkOuter,iOrdinal,riid,ppRowset)    \
  10744.     (This)->lpVtbl -> GetChildRowset(This,pUnkOuter,iOrdinal,riid,ppRowset)
  10745.  
  10746. #endif /* COBJMACROS */
  10747.  
  10748.  
  10749. #endif     /* C style interface */
  10750.  
  10751.  
  10752.  
  10753. HRESULT STDMETHODCALLTYPE IParentRowset_GetChildRowset_Proxy( 
  10754.     IParentRowset __RPC_FAR * This,
  10755.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  10756.     /* [in] */ ULONG iOrdinal,
  10757.     /* [in] */ REFIID riid,
  10758.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  10759.  
  10760.  
  10761. void __RPC_STUB IParentRowset_GetChildRowset_Stub(
  10762.     IRpcStubBuffer *This,
  10763.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10764.     PRPC_MESSAGE _pRpcMessage,
  10765.     DWORD *_pdwStubPhase);
  10766.  
  10767.  
  10768.  
  10769. #endif     /* __IParentRowset_INTERFACE_DEFINED__ */
  10770.  
  10771.  
  10772. /****************************************
  10773.  * Generated header for interface: __MIDL_itf_oledb_0208
  10774.  * at Thu Nov 12 23:35:28 1998
  10775.  * using MIDL 3.01.75
  10776.  ****************************************/
  10777. /* [local] */ 
  10778.  
  10779.  
  10780. #endif // OLEDBVER >= 0x0200
  10781. //@@@- V2.0
  10782.  
  10783.  
  10784. extern RPC_IF_HANDLE __MIDL_itf_oledb_0208_v0_0_c_ifspec;
  10785. extern RPC_IF_HANDLE __MIDL_itf_oledb_0208_v0_0_s_ifspec;
  10786.  
  10787. #ifndef __IErrorRecords_INTERFACE_DEFINED__
  10788. #define __IErrorRecords_INTERFACE_DEFINED__
  10789.  
  10790. /****************************************
  10791.  * Generated header for interface: IErrorRecords
  10792.  * at Thu Nov 12 23:35:28 1998
  10793.  * using MIDL 3.01.75
  10794.  ****************************************/
  10795. /* [unique][uuid][object] */ 
  10796.  
  10797.  
  10798. #define IDENTIFIER_SDK_MASK    0xF0000000
  10799. #define IDENTIFIER_SDK_ERROR    0x10000000
  10800. typedef struct  tagERRORINFO
  10801.     {
  10802.     HRESULT hrError;
  10803.     DWORD dwMinor;
  10804.     CLSID clsid;
  10805.     IID iid;
  10806.     DISPID dispid;
  10807.     }    ERRORINFO;
  10808.  
  10809.  
  10810. EXTERN_C const IID IID_IErrorRecords;
  10811.  
  10812. #if defined(__cplusplus) && !defined(CINTERFACE)
  10813.     
  10814.     interface DECLSPEC_UUID("0c733a67-2a1c-11ce-ade5-00aa0044773d")
  10815.     IErrorRecords : public IUnknown
  10816.     {
  10817.     public:
  10818.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddErrorRecord( 
  10819.             /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  10820.             /* [in] */ DWORD dwLookupID,
  10821.             /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  10822.             /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  10823.             /* [in] */ DWORD dwDynamicErrorID) = 0;
  10824.         
  10825.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetBasicErrorInfo( 
  10826.             /* [in] */ ULONG ulRecordNum,
  10827.             /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo) = 0;
  10828.         
  10829.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetCustomErrorObject( 
  10830.             /* [in] */ ULONG ulRecordNum,
  10831.             /* [in] */ REFIID riid,
  10832.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject) = 0;
  10833.         
  10834.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetErrorInfo( 
  10835.             /* [in] */ ULONG ulRecordNum,
  10836.             /* [in] */ LCID lcid,
  10837.             /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo) = 0;
  10838.         
  10839.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetErrorParameters( 
  10840.             /* [in] */ ULONG ulRecordNum,
  10841.             /* [out] */ DISPPARAMS __RPC_FAR *pdispparams) = 0;
  10842.         
  10843.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRecordCount( 
  10844.             /* [out] */ ULONG __RPC_FAR *pcRecords) = 0;
  10845.         
  10846.     };
  10847.     
  10848. #else     /* C style interface */
  10849.  
  10850.     typedef struct IErrorRecordsVtbl
  10851.     {
  10852.         BEGIN_INTERFACE
  10853.         
  10854.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10855.             IErrorRecords __RPC_FAR * This,
  10856.             /* [in] */ REFIID riid,
  10857.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10858.         
  10859.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10860.             IErrorRecords __RPC_FAR * This);
  10861.         
  10862.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10863.             IErrorRecords __RPC_FAR * This);
  10864.         
  10865.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddErrorRecord )( 
  10866.             IErrorRecords __RPC_FAR * This,
  10867.             /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  10868.             /* [in] */ DWORD dwLookupID,
  10869.             /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  10870.             /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  10871.             /* [in] */ DWORD dwDynamicErrorID);
  10872.         
  10873.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBasicErrorInfo )( 
  10874.             IErrorRecords __RPC_FAR * This,
  10875.             /* [in] */ ULONG ulRecordNum,
  10876.             /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo);
  10877.         
  10878.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCustomErrorObject )( 
  10879.             IErrorRecords __RPC_FAR * This,
  10880.             /* [in] */ ULONG ulRecordNum,
  10881.             /* [in] */ REFIID riid,
  10882.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject);
  10883.         
  10884.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetErrorInfo )( 
  10885.             IErrorRecords __RPC_FAR * This,
  10886.             /* [in] */ ULONG ulRecordNum,
  10887.             /* [in] */ LCID lcid,
  10888.             /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo);
  10889.         
  10890.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetErrorParameters )( 
  10891.             IErrorRecords __RPC_FAR * This,
  10892.             /* [in] */ ULONG ulRecordNum,
  10893.             /* [out] */ DISPPARAMS __RPC_FAR *pdispparams);
  10894.         
  10895.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRecordCount )( 
  10896.             IErrorRecords __RPC_FAR * This,
  10897.             /* [out] */ ULONG __RPC_FAR *pcRecords);
  10898.         
  10899.         END_INTERFACE
  10900.     } IErrorRecordsVtbl;
  10901.  
  10902.     interface IErrorRecords
  10903.     {
  10904.         CONST_VTBL struct IErrorRecordsVtbl __RPC_FAR *lpVtbl;
  10905.     };
  10906.  
  10907.     
  10908.  
  10909. #ifdef COBJMACROS
  10910.  
  10911.  
  10912. #define IErrorRecords_QueryInterface(This,riid,ppvObject)    \
  10913.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10914.  
  10915. #define IErrorRecords_AddRef(This)    \
  10916.     (This)->lpVtbl -> AddRef(This)
  10917.  
  10918. #define IErrorRecords_Release(This)    \
  10919.     (This)->lpVtbl -> Release(This)
  10920.  
  10921.  
  10922. #define IErrorRecords_AddErrorRecord(This,pErrorInfo,dwLookupID,pdispparams,punkCustomError,dwDynamicErrorID)    \
  10923.     (This)->lpVtbl -> AddErrorRecord(This,pErrorInfo,dwLookupID,pdispparams,punkCustomError,dwDynamicErrorID)
  10924.  
  10925. #define IErrorRecords_GetBasicErrorInfo(This,ulRecordNum,pErrorInfo)    \
  10926.     (This)->lpVtbl -> GetBasicErrorInfo(This,ulRecordNum,pErrorInfo)
  10927.  
  10928. #define IErrorRecords_GetCustomErrorObject(This,ulRecordNum,riid,ppObject)    \
  10929.     (This)->lpVtbl -> GetCustomErrorObject(This,ulRecordNum,riid,ppObject)
  10930.  
  10931. #define IErrorRecords_GetErrorInfo(This,ulRecordNum,lcid,ppErrorInfo)    \
  10932.     (This)->lpVtbl -> GetErrorInfo(This,ulRecordNum,lcid,ppErrorInfo)
  10933.  
  10934. #define IErrorRecords_GetErrorParameters(This,ulRecordNum,pdispparams)    \
  10935.     (This)->lpVtbl -> GetErrorParameters(This,ulRecordNum,pdispparams)
  10936.  
  10937. #define IErrorRecords_GetRecordCount(This,pcRecords)    \
  10938.     (This)->lpVtbl -> GetRecordCount(This,pcRecords)
  10939.  
  10940. #endif /* COBJMACROS */
  10941.  
  10942.  
  10943. #endif     /* C style interface */
  10944.  
  10945.  
  10946.  
  10947. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteAddErrorRecord_Proxy( 
  10948.     IErrorRecords __RPC_FAR * This,
  10949.     /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  10950.     /* [in] */ DWORD dwLookupID,
  10951.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  10952.     /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  10953.     /* [in] */ DWORD dwDynamicErrorID,
  10954.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  10955.  
  10956.  
  10957. void __RPC_STUB IErrorRecords_RemoteAddErrorRecord_Stub(
  10958.     IRpcStubBuffer *This,
  10959.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10960.     PRPC_MESSAGE _pRpcMessage,
  10961.     DWORD *_pdwStubPhase);
  10962.  
  10963.  
  10964. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetBasicErrorInfo_Proxy( 
  10965.     IErrorRecords __RPC_FAR * This,
  10966.     /* [in] */ ULONG ulRecordNum,
  10967.     /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo,
  10968.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  10969.  
  10970.  
  10971. void __RPC_STUB IErrorRecords_RemoteGetBasicErrorInfo_Stub(
  10972.     IRpcStubBuffer *This,
  10973.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10974.     PRPC_MESSAGE _pRpcMessage,
  10975.     DWORD *_pdwStubPhase);
  10976.  
  10977.  
  10978. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetCustomErrorObject_Proxy( 
  10979.     IErrorRecords __RPC_FAR * This,
  10980.     /* [in] */ ULONG ulRecordNum,
  10981.     /* [in] */ REFIID riid,
  10982.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject,
  10983.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  10984.  
  10985.  
  10986. void __RPC_STUB IErrorRecords_RemoteGetCustomErrorObject_Stub(
  10987.     IRpcStubBuffer *This,
  10988.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10989.     PRPC_MESSAGE _pRpcMessage,
  10990.     DWORD *_pdwStubPhase);
  10991.  
  10992.  
  10993. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetErrorInfo_Proxy( 
  10994.     IErrorRecords __RPC_FAR * This,
  10995.     /* [in] */ ULONG ulRecordNum,
  10996.     /* [in] */ LCID lcid,
  10997.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo,
  10998.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  10999.  
  11000.  
  11001. void __RPC_STUB IErrorRecords_RemoteGetErrorInfo_Stub(
  11002.     IRpcStubBuffer *This,
  11003.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11004.     PRPC_MESSAGE _pRpcMessage,
  11005.     DWORD *_pdwStubPhase);
  11006.  
  11007.  
  11008. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetErrorParameters_Proxy( 
  11009.     IErrorRecords __RPC_FAR * This,
  11010.     /* [in] */ ULONG ulRecordNum,
  11011.     /* [out] */ DISPPARAMS __RPC_FAR *pdispparams,
  11012.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11013.  
  11014.  
  11015. void __RPC_STUB IErrorRecords_RemoteGetErrorParameters_Stub(
  11016.     IRpcStubBuffer *This,
  11017.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11018.     PRPC_MESSAGE _pRpcMessage,
  11019.     DWORD *_pdwStubPhase);
  11020.  
  11021.  
  11022. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetRecordCount_Proxy( 
  11023.     IErrorRecords __RPC_FAR * This,
  11024.     /* [out] */ ULONG __RPC_FAR *pcRecords,
  11025.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11026.  
  11027.  
  11028. void __RPC_STUB IErrorRecords_RemoteGetRecordCount_Stub(
  11029.     IRpcStubBuffer *This,
  11030.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11031.     PRPC_MESSAGE _pRpcMessage,
  11032.     DWORD *_pdwStubPhase);
  11033.  
  11034.  
  11035.  
  11036. #endif     /* __IErrorRecords_INTERFACE_DEFINED__ */
  11037.  
  11038.  
  11039. #ifndef __IErrorLookup_INTERFACE_DEFINED__
  11040. #define __IErrorLookup_INTERFACE_DEFINED__
  11041.  
  11042. /****************************************
  11043.  * Generated header for interface: IErrorLookup
  11044.  * at Thu Nov 12 23:35:28 1998
  11045.  * using MIDL 3.01.75
  11046.  ****************************************/
  11047. /* [unique][uuid][object] */ 
  11048.  
  11049.  
  11050.  
  11051. EXTERN_C const IID IID_IErrorLookup;
  11052.  
  11053. #if defined(__cplusplus) && !defined(CINTERFACE)
  11054.     
  11055.     interface DECLSPEC_UUID("0c733a66-2a1c-11ce-ade5-00aa0044773d")
  11056.     IErrorLookup : public IUnknown
  11057.     {
  11058.     public:
  11059.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetErrorDescription( 
  11060.             /* [in] */ HRESULT hrError,
  11061.             /* [in] */ DWORD dwLookupID,
  11062.             /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  11063.             /* [in] */ LCID lcid,
  11064.             /* [out] */ BSTR __RPC_FAR *pbstrSource,
  11065.             /* [out] */ BSTR __RPC_FAR *pbstrDescription) = 0;
  11066.         
  11067.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetHelpInfo( 
  11068.             /* [in] */ HRESULT hrError,
  11069.             /* [in] */ DWORD dwLookupID,
  11070.             /* [in] */ LCID lcid,
  11071.             /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  11072.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext) = 0;
  11073.         
  11074.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ReleaseErrors( 
  11075.             /* [in] */ const DWORD dwDynamicErrorID) = 0;
  11076.         
  11077.     };
  11078.     
  11079. #else     /* C style interface */
  11080.  
  11081.     typedef struct IErrorLookupVtbl
  11082.     {
  11083.         BEGIN_INTERFACE
  11084.         
  11085.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11086.             IErrorLookup __RPC_FAR * This,
  11087.             /* [in] */ REFIID riid,
  11088.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11089.         
  11090.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11091.             IErrorLookup __RPC_FAR * This);
  11092.         
  11093.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11094.             IErrorLookup __RPC_FAR * This);
  11095.         
  11096.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetErrorDescription )( 
  11097.             IErrorLookup __RPC_FAR * This,
  11098.             /* [in] */ HRESULT hrError,
  11099.             /* [in] */ DWORD dwLookupID,
  11100.             /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  11101.             /* [in] */ LCID lcid,
  11102.             /* [out] */ BSTR __RPC_FAR *pbstrSource,
  11103.             /* [out] */ BSTR __RPC_FAR *pbstrDescription);
  11104.         
  11105.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetHelpInfo )( 
  11106.             IErrorLookup __RPC_FAR * This,
  11107.             /* [in] */ HRESULT hrError,
  11108.             /* [in] */ DWORD dwLookupID,
  11109.             /* [in] */ LCID lcid,
  11110.             /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  11111.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext);
  11112.         
  11113.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseErrors )( 
  11114.             IErrorLookup __RPC_FAR * This,
  11115.             /* [in] */ const DWORD dwDynamicErrorID);
  11116.         
  11117.         END_INTERFACE
  11118.     } IErrorLookupVtbl;
  11119.  
  11120.     interface IErrorLookup
  11121.     {
  11122.         CONST_VTBL struct IErrorLookupVtbl __RPC_FAR *lpVtbl;
  11123.     };
  11124.  
  11125.     
  11126.  
  11127. #ifdef COBJMACROS
  11128.  
  11129.  
  11130. #define IErrorLookup_QueryInterface(This,riid,ppvObject)    \
  11131.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11132.  
  11133. #define IErrorLookup_AddRef(This)    \
  11134.     (This)->lpVtbl -> AddRef(This)
  11135.  
  11136. #define IErrorLookup_Release(This)    \
  11137.     (This)->lpVtbl -> Release(This)
  11138.  
  11139.  
  11140. #define IErrorLookup_GetErrorDescription(This,hrError,dwLookupID,pdispparams,lcid,pbstrSource,pbstrDescription)    \
  11141.     (This)->lpVtbl -> GetErrorDescription(This,hrError,dwLookupID,pdispparams,lcid,pbstrSource,pbstrDescription)
  11142.  
  11143. #define IErrorLookup_GetHelpInfo(This,hrError,dwLookupID,lcid,pbstrHelpFile,pdwHelpContext)    \
  11144.     (This)->lpVtbl -> GetHelpInfo(This,hrError,dwLookupID,lcid,pbstrHelpFile,pdwHelpContext)
  11145.  
  11146. #define IErrorLookup_ReleaseErrors(This,dwDynamicErrorID)    \
  11147.     (This)->lpVtbl -> ReleaseErrors(This,dwDynamicErrorID)
  11148.  
  11149. #endif /* COBJMACROS */
  11150.  
  11151.  
  11152. #endif     /* C style interface */
  11153.  
  11154.  
  11155.  
  11156. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_RemoteGetErrorDescription_Proxy( 
  11157.     IErrorLookup __RPC_FAR * This,
  11158.     /* [in] */ HRESULT hrError,
  11159.     /* [in] */ DWORD dwLookupID,
  11160.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  11161.     /* [in] */ LCID lcid,
  11162.     /* [out] */ BSTR __RPC_FAR *pbstrSource,
  11163.     /* [out] */ BSTR __RPC_FAR *pbstrDescription,
  11164.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11165.  
  11166.  
  11167. void __RPC_STUB IErrorLookup_RemoteGetErrorDescription_Stub(
  11168.     IRpcStubBuffer *This,
  11169.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11170.     PRPC_MESSAGE _pRpcMessage,
  11171.     DWORD *_pdwStubPhase);
  11172.  
  11173.  
  11174. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_RemoteGetHelpInfo_Proxy( 
  11175.     IErrorLookup __RPC_FAR * This,
  11176.     /* [in] */ HRESULT hrError,
  11177.     /* [in] */ DWORD dwLookupID,
  11178.     /* [in] */ LCID lcid,
  11179.     /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  11180.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  11181.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11182.  
  11183.  
  11184. void __RPC_STUB IErrorLookup_RemoteGetHelpInfo_Stub(
  11185.     IRpcStubBuffer *This,
  11186.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11187.     PRPC_MESSAGE _pRpcMessage,
  11188.     DWORD *_pdwStubPhase);
  11189.  
  11190.  
  11191. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_RemoteReleaseErrors_Proxy( 
  11192.     IErrorLookup __RPC_FAR * This,
  11193.     /* [in] */ const DWORD dwDynamicErrorID,
  11194.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11195.  
  11196.  
  11197. void __RPC_STUB IErrorLookup_RemoteReleaseErrors_Stub(
  11198.     IRpcStubBuffer *This,
  11199.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11200.     PRPC_MESSAGE _pRpcMessage,
  11201.     DWORD *_pdwStubPhase);
  11202.  
  11203.  
  11204.  
  11205. #endif     /* __IErrorLookup_INTERFACE_DEFINED__ */
  11206.  
  11207.  
  11208. #ifndef __ISQLErrorInfo_INTERFACE_DEFINED__
  11209. #define __ISQLErrorInfo_INTERFACE_DEFINED__
  11210.  
  11211. /****************************************
  11212.  * Generated header for interface: ISQLErrorInfo
  11213.  * at Thu Nov 12 23:35:28 1998
  11214.  * using MIDL 3.01.75
  11215.  ****************************************/
  11216. /* [unique][uuid][object] */ 
  11217.  
  11218.  
  11219.  
  11220. EXTERN_C const IID IID_ISQLErrorInfo;
  11221.  
  11222. #if defined(__cplusplus) && !defined(CINTERFACE)
  11223.     
  11224.     interface DECLSPEC_UUID("0c733a74-2a1c-11ce-ade5-00aa0044773d")
  11225.     ISQLErrorInfo : public IUnknown
  11226.     {
  11227.     public:
  11228.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSQLInfo( 
  11229.             /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  11230.             /* [out] */ LONG __RPC_FAR *plNativeError) = 0;
  11231.         
  11232.     };
  11233.     
  11234. #else     /* C style interface */
  11235.  
  11236.     typedef struct ISQLErrorInfoVtbl
  11237.     {
  11238.         BEGIN_INTERFACE
  11239.         
  11240.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11241.             ISQLErrorInfo __RPC_FAR * This,
  11242.             /* [in] */ REFIID riid,
  11243.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11244.         
  11245.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11246.             ISQLErrorInfo __RPC_FAR * This);
  11247.         
  11248.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11249.             ISQLErrorInfo __RPC_FAR * This);
  11250.         
  11251.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSQLInfo )( 
  11252.             ISQLErrorInfo __RPC_FAR * This,
  11253.             /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  11254.             /* [out] */ LONG __RPC_FAR *plNativeError);
  11255.         
  11256.         END_INTERFACE
  11257.     } ISQLErrorInfoVtbl;
  11258.  
  11259.     interface ISQLErrorInfo
  11260.     {
  11261.         CONST_VTBL struct ISQLErrorInfoVtbl __RPC_FAR *lpVtbl;
  11262.     };
  11263.  
  11264.     
  11265.  
  11266. #ifdef COBJMACROS
  11267.  
  11268.  
  11269. #define ISQLErrorInfo_QueryInterface(This,riid,ppvObject)    \
  11270.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11271.  
  11272. #define ISQLErrorInfo_AddRef(This)    \
  11273.     (This)->lpVtbl -> AddRef(This)
  11274.  
  11275. #define ISQLErrorInfo_Release(This)    \
  11276.     (This)->lpVtbl -> Release(This)
  11277.  
  11278.  
  11279. #define ISQLErrorInfo_GetSQLInfo(This,pbstrSQLState,plNativeError)    \
  11280.     (This)->lpVtbl -> GetSQLInfo(This,pbstrSQLState,plNativeError)
  11281.  
  11282. #endif /* COBJMACROS */
  11283.  
  11284.  
  11285. #endif     /* C style interface */
  11286.  
  11287.  
  11288.  
  11289. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISQLErrorInfo_RemoteGetSQLInfo_Proxy( 
  11290.     ISQLErrorInfo __RPC_FAR * This,
  11291.     /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  11292.     /* [out] */ LONG __RPC_FAR *plNativeError,
  11293.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11294.  
  11295.  
  11296. void __RPC_STUB ISQLErrorInfo_RemoteGetSQLInfo_Stub(
  11297.     IRpcStubBuffer *This,
  11298.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11299.     PRPC_MESSAGE _pRpcMessage,
  11300.     DWORD *_pdwStubPhase);
  11301.  
  11302.  
  11303.  
  11304. #endif     /* __ISQLErrorInfo_INTERFACE_DEFINED__ */
  11305.  
  11306.  
  11307. #ifndef __IGetDataSource_INTERFACE_DEFINED__
  11308. #define __IGetDataSource_INTERFACE_DEFINED__
  11309.  
  11310. /****************************************
  11311.  * Generated header for interface: IGetDataSource
  11312.  * at Thu Nov 12 23:35:28 1998
  11313.  * using MIDL 3.01.75
  11314.  ****************************************/
  11315. /* [unique][uuid][object] */ 
  11316.  
  11317.  
  11318.  
  11319. EXTERN_C const IID IID_IGetDataSource;
  11320.  
  11321. #if defined(__cplusplus) && !defined(CINTERFACE)
  11322.     
  11323.     interface DECLSPEC_UUID("0c733a75-2a1c-11ce-ade5-00aa0044773d")
  11324.     IGetDataSource : public IUnknown
  11325.     {
  11326.     public:
  11327.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDataSource( 
  11328.             /* [in] */ REFIID riid,
  11329.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource) = 0;
  11330.         
  11331.     };
  11332.     
  11333. #else     /* C style interface */
  11334.  
  11335.     typedef struct IGetDataSourceVtbl
  11336.     {
  11337.         BEGIN_INTERFACE
  11338.         
  11339.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11340.             IGetDataSource __RPC_FAR * This,
  11341.             /* [in] */ REFIID riid,
  11342.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11343.         
  11344.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11345.             IGetDataSource __RPC_FAR * This);
  11346.         
  11347.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11348.             IGetDataSource __RPC_FAR * This);
  11349.         
  11350.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDataSource )( 
  11351.             IGetDataSource __RPC_FAR * This,
  11352.             /* [in] */ REFIID riid,
  11353.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource);
  11354.         
  11355.         END_INTERFACE
  11356.     } IGetDataSourceVtbl;
  11357.  
  11358.     interface IGetDataSource
  11359.     {
  11360.         CONST_VTBL struct IGetDataSourceVtbl __RPC_FAR *lpVtbl;
  11361.     };
  11362.  
  11363.     
  11364.  
  11365. #ifdef COBJMACROS
  11366.  
  11367.  
  11368. #define IGetDataSource_QueryInterface(This,riid,ppvObject)    \
  11369.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11370.  
  11371. #define IGetDataSource_AddRef(This)    \
  11372.     (This)->lpVtbl -> AddRef(This)
  11373.  
  11374. #define IGetDataSource_Release(This)    \
  11375.     (This)->lpVtbl -> Release(This)
  11376.  
  11377.  
  11378. #define IGetDataSource_GetDataSource(This,riid,ppDataSource)    \
  11379.     (This)->lpVtbl -> GetDataSource(This,riid,ppDataSource)
  11380.  
  11381. #endif /* COBJMACROS */
  11382.  
  11383.  
  11384. #endif     /* C style interface */
  11385.  
  11386.  
  11387.  
  11388. /* [call_as] */ HRESULT STDMETHODCALLTYPE IGetDataSource_RemoteGetDataSource_Proxy( 
  11389.     IGetDataSource __RPC_FAR * This,
  11390.     /* [in] */ REFIID riid,
  11391.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource,
  11392.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11393.  
  11394.  
  11395. void __RPC_STUB IGetDataSource_RemoteGetDataSource_Stub(
  11396.     IRpcStubBuffer *This,
  11397.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11398.     PRPC_MESSAGE _pRpcMessage,
  11399.     DWORD *_pdwStubPhase);
  11400.  
  11401.  
  11402.  
  11403. #endif     /* __IGetDataSource_INTERFACE_DEFINED__ */
  11404.  
  11405.  
  11406. #ifndef __ITransactionLocal_INTERFACE_DEFINED__
  11407. #define __ITransactionLocal_INTERFACE_DEFINED__
  11408.  
  11409. /****************************************
  11410.  * Generated header for interface: ITransactionLocal
  11411.  * at Thu Nov 12 23:35:28 1998
  11412.  * using MIDL 3.01.75
  11413.  ****************************************/
  11414. /* [unique][uuid][object] */ 
  11415.  
  11416.  
  11417.  
  11418. EXTERN_C const IID IID_ITransactionLocal;
  11419.  
  11420. #if defined(__cplusplus) && !defined(CINTERFACE)
  11421.     
  11422.     interface DECLSPEC_UUID("0c733a5f-2a1c-11ce-ade5-00aa0044773d")
  11423.     ITransactionLocal : public ITransaction
  11424.     {
  11425.     public:
  11426.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetOptionsObject( 
  11427.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions) = 0;
  11428.         
  11429.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE StartTransaction( 
  11430.             /* [in] */ ISOLEVEL isoLevel,
  11431.             /* [in] */ ULONG isoFlags,
  11432.             /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  11433.             /* [out] */ ULONG __RPC_FAR *pulTransactionLevel) = 0;
  11434.         
  11435.     };
  11436.     
  11437. #else     /* C style interface */
  11438.  
  11439.     typedef struct ITransactionLocalVtbl
  11440.     {
  11441.         BEGIN_INTERFACE
  11442.         
  11443.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11444.             ITransactionLocal __RPC_FAR * This,
  11445.             /* [in] */ REFIID riid,
  11446.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11447.         
  11448.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11449.             ITransactionLocal __RPC_FAR * This);
  11450.         
  11451.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11452.             ITransactionLocal __RPC_FAR * This);
  11453.         
  11454.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Commit )( 
  11455.             ITransactionLocal __RPC_FAR * This,
  11456.             /* [in] */ BOOL fRetaining,
  11457.             /* [in] */ DWORD grfTC,
  11458.             /* [in] */ DWORD grfRM);
  11459.         
  11460.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Abort )( 
  11461.             ITransactionLocal __RPC_FAR * This,
  11462.             /* [unique][in] */ BOID __RPC_FAR *pboidReason,
  11463.             /* [in] */ BOOL fRetaining,
  11464.             /* [in] */ BOOL fAsync);
  11465.         
  11466.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTransactionInfo )( 
  11467.             ITransactionLocal __RPC_FAR * This,
  11468.             /* [out] */ XACTTRANSINFO __RPC_FAR *pinfo);
  11469.         
  11470.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetOptionsObject )( 
  11471.             ITransactionLocal __RPC_FAR * This,
  11472.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  11473.         
  11474.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *StartTransaction )( 
  11475.             ITransactionLocal __RPC_FAR * This,
  11476.             /* [in] */ ISOLEVEL isoLevel,
  11477.             /* [in] */ ULONG isoFlags,
  11478.             /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  11479.             /* [out] */ ULONG __RPC_FAR *pulTransactionLevel);
  11480.         
  11481.         END_INTERFACE
  11482.     } ITransactionLocalVtbl;
  11483.  
  11484.     interface ITransactionLocal
  11485.     {
  11486.         CONST_VTBL struct ITransactionLocalVtbl __RPC_FAR *lpVtbl;
  11487.     };
  11488.  
  11489.     
  11490.  
  11491. #ifdef COBJMACROS
  11492.  
  11493.  
  11494. #define ITransactionLocal_QueryInterface(This,riid,ppvObject)    \
  11495.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11496.  
  11497. #define ITransactionLocal_AddRef(This)    \
  11498.     (This)->lpVtbl -> AddRef(This)
  11499.  
  11500. #define ITransactionLocal_Release(This)    \
  11501.     (This)->lpVtbl -> Release(This)
  11502.  
  11503.  
  11504. #define ITransactionLocal_Commit(This,fRetaining,grfTC,grfRM)    \
  11505.     (This)->lpVtbl -> Commit(This,fRetaining,grfTC,grfRM)
  11506.  
  11507. #define ITransactionLocal_Abort(This,pboidReason,fRetaining,fAsync)    \
  11508.     (This)->lpVtbl -> Abort(This,pboidReason,fRetaining,fAsync)
  11509.  
  11510. #define ITransactionLocal_GetTransactionInfo(This,pinfo)    \
  11511.     (This)->lpVtbl -> GetTransactionInfo(This,pinfo)
  11512.  
  11513.  
  11514. #define ITransactionLocal_GetOptionsObject(This,ppOptions)    \
  11515.     (This)->lpVtbl -> GetOptionsObject(This,ppOptions)
  11516.  
  11517. #define ITransactionLocal_StartTransaction(This,isoLevel,isoFlags,pOtherOptions,pulTransactionLevel)    \
  11518.     (This)->lpVtbl -> StartTransaction(This,isoLevel,isoFlags,pOtherOptions,pulTransactionLevel)
  11519.  
  11520. #endif /* COBJMACROS */
  11521.  
  11522.  
  11523. #endif     /* C style interface */
  11524.  
  11525.  
  11526.  
  11527. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_RemoteGetOptionsObject_Proxy( 
  11528.     ITransactionLocal __RPC_FAR * This,
  11529.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions,
  11530.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11531.  
  11532.  
  11533. void __RPC_STUB ITransactionLocal_RemoteGetOptionsObject_Stub(
  11534.     IRpcStubBuffer *This,
  11535.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11536.     PRPC_MESSAGE _pRpcMessage,
  11537.     DWORD *_pdwStubPhase);
  11538.  
  11539.  
  11540. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_RemoteStartTransaction_Proxy( 
  11541.     ITransactionLocal __RPC_FAR * This,
  11542.     /* [in] */ ISOLEVEL isoLevel,
  11543.     /* [in] */ ULONG isoFlags,
  11544.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  11545.     /* [unique][out][in] */ ULONG __RPC_FAR *pulTransactionLevel,
  11546.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11547.  
  11548.  
  11549. void __RPC_STUB ITransactionLocal_RemoteStartTransaction_Stub(
  11550.     IRpcStubBuffer *This,
  11551.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11552.     PRPC_MESSAGE _pRpcMessage,
  11553.     DWORD *_pdwStubPhase);
  11554.  
  11555.  
  11556.  
  11557. #endif     /* __ITransactionLocal_INTERFACE_DEFINED__ */
  11558.  
  11559.  
  11560. #ifndef __ITransactionJoin_INTERFACE_DEFINED__
  11561. #define __ITransactionJoin_INTERFACE_DEFINED__
  11562.  
  11563. /****************************************
  11564.  * Generated header for interface: ITransactionJoin
  11565.  * at Thu Nov 12 23:35:28 1998
  11566.  * using MIDL 3.01.75
  11567.  ****************************************/
  11568. /* [unique][uuid][object] */ 
  11569.  
  11570.  
  11571.  
  11572. EXTERN_C const IID IID_ITransactionJoin;
  11573.  
  11574. #if defined(__cplusplus) && !defined(CINTERFACE)
  11575.     
  11576.     interface DECLSPEC_UUID("0c733a5e-2a1c-11ce-ade5-00aa0044773d")
  11577.     ITransactionJoin : public IUnknown
  11578.     {
  11579.     public:
  11580.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetOptionsObject( 
  11581.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions) = 0;
  11582.         
  11583.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE JoinTransaction( 
  11584.             /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  11585.             /* [in] */ ISOLEVEL isoLevel,
  11586.             /* [in] */ ULONG isoFlags,
  11587.             /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions) = 0;
  11588.         
  11589.     };
  11590.     
  11591. #else     /* C style interface */
  11592.  
  11593.     typedef struct ITransactionJoinVtbl
  11594.     {
  11595.         BEGIN_INTERFACE
  11596.         
  11597.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11598.             ITransactionJoin __RPC_FAR * This,
  11599.             /* [in] */ REFIID riid,
  11600.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11601.         
  11602.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11603.             ITransactionJoin __RPC_FAR * This);
  11604.         
  11605.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11606.             ITransactionJoin __RPC_FAR * This);
  11607.         
  11608.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetOptionsObject )( 
  11609.             ITransactionJoin __RPC_FAR * This,
  11610.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  11611.         
  11612.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *JoinTransaction )( 
  11613.             ITransactionJoin __RPC_FAR * This,
  11614.             /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  11615.             /* [in] */ ISOLEVEL isoLevel,
  11616.             /* [in] */ ULONG isoFlags,
  11617.             /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions);
  11618.         
  11619.         END_INTERFACE
  11620.     } ITransactionJoinVtbl;
  11621.  
  11622.     interface ITransactionJoin
  11623.     {
  11624.         CONST_VTBL struct ITransactionJoinVtbl __RPC_FAR *lpVtbl;
  11625.     };
  11626.  
  11627.     
  11628.  
  11629. #ifdef COBJMACROS
  11630.  
  11631.  
  11632. #define ITransactionJoin_QueryInterface(This,riid,ppvObject)    \
  11633.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11634.  
  11635. #define ITransactionJoin_AddRef(This)    \
  11636.     (This)->lpVtbl -> AddRef(This)
  11637.  
  11638. #define ITransactionJoin_Release(This)    \
  11639.     (This)->lpVtbl -> Release(This)
  11640.  
  11641.  
  11642. #define ITransactionJoin_GetOptionsObject(This,ppOptions)    \
  11643.     (This)->lpVtbl -> GetOptionsObject(This,ppOptions)
  11644.  
  11645. #define ITransactionJoin_JoinTransaction(This,punkTransactionCoord,isoLevel,isoFlags,pOtherOptions)    \
  11646.     (This)->lpVtbl -> JoinTransaction(This,punkTransactionCoord,isoLevel,isoFlags,pOtherOptions)
  11647.  
  11648. #endif /* COBJMACROS */
  11649.  
  11650.  
  11651. #endif     /* C style interface */
  11652.  
  11653.  
  11654.  
  11655. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_RemoteGetOptionsObject_Proxy( 
  11656.     ITransactionJoin __RPC_FAR * This,
  11657.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions,
  11658.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11659.  
  11660.  
  11661. void __RPC_STUB ITransactionJoin_RemoteGetOptionsObject_Stub(
  11662.     IRpcStubBuffer *This,
  11663.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11664.     PRPC_MESSAGE _pRpcMessage,
  11665.     DWORD *_pdwStubPhase);
  11666.  
  11667.  
  11668. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_RemoteJoinTransaction_Proxy( 
  11669.     ITransactionJoin __RPC_FAR * This,
  11670.     /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  11671.     /* [in] */ ISOLEVEL isoLevel,
  11672.     /* [in] */ ULONG isoFlags,
  11673.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  11674.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11675.  
  11676.  
  11677. void __RPC_STUB ITransactionJoin_RemoteJoinTransaction_Stub(
  11678.     IRpcStubBuffer *This,
  11679.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11680.     PRPC_MESSAGE _pRpcMessage,
  11681.     DWORD *_pdwStubPhase);
  11682.  
  11683.  
  11684.  
  11685. #endif     /* __ITransactionJoin_INTERFACE_DEFINED__ */
  11686.  
  11687.  
  11688. #ifndef __ITransactionObject_INTERFACE_DEFINED__
  11689. #define __ITransactionObject_INTERFACE_DEFINED__
  11690.  
  11691. /****************************************
  11692.  * Generated header for interface: ITransactionObject
  11693.  * at Thu Nov 12 23:35:28 1998
  11694.  * using MIDL 3.01.75
  11695.  ****************************************/
  11696. /* [unique][uuid][object] */ 
  11697.  
  11698.  
  11699.  
  11700. EXTERN_C const IID IID_ITransactionObject;
  11701.  
  11702. #if defined(__cplusplus) && !defined(CINTERFACE)
  11703.     
  11704.     interface DECLSPEC_UUID("0c733a60-2a1c-11ce-ade5-00aa0044773d")
  11705.     ITransactionObject : public IUnknown
  11706.     {
  11707.     public:
  11708.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetTransactionObject( 
  11709.             /* [in] */ ULONG ulTransactionLevel,
  11710.             /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject) = 0;
  11711.         
  11712.     };
  11713.     
  11714. #else     /* C style interface */
  11715.  
  11716.     typedef struct ITransactionObjectVtbl
  11717.     {
  11718.         BEGIN_INTERFACE
  11719.         
  11720.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11721.             ITransactionObject __RPC_FAR * This,
  11722.             /* [in] */ REFIID riid,
  11723.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11724.         
  11725.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11726.             ITransactionObject __RPC_FAR * This);
  11727.         
  11728.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11729.             ITransactionObject __RPC_FAR * This);
  11730.         
  11731.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTransactionObject )( 
  11732.             ITransactionObject __RPC_FAR * This,
  11733.             /* [in] */ ULONG ulTransactionLevel,
  11734.             /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject);
  11735.         
  11736.         END_INTERFACE
  11737.     } ITransactionObjectVtbl;
  11738.  
  11739.     interface ITransactionObject
  11740.     {
  11741.         CONST_VTBL struct ITransactionObjectVtbl __RPC_FAR *lpVtbl;
  11742.     };
  11743.  
  11744.     
  11745.  
  11746. #ifdef COBJMACROS
  11747.  
  11748.  
  11749. #define ITransactionObject_QueryInterface(This,riid,ppvObject)    \
  11750.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11751.  
  11752. #define ITransactionObject_AddRef(This)    \
  11753.     (This)->lpVtbl -> AddRef(This)
  11754.  
  11755. #define ITransactionObject_Release(This)    \
  11756.     (This)->lpVtbl -> Release(This)
  11757.  
  11758.  
  11759. #define ITransactionObject_GetTransactionObject(This,ulTransactionLevel,ppTransactionObject)    \
  11760.     (This)->lpVtbl -> GetTransactionObject(This,ulTransactionLevel,ppTransactionObject)
  11761.  
  11762. #endif /* COBJMACROS */
  11763.  
  11764.  
  11765. #endif     /* C style interface */
  11766.  
  11767.  
  11768.  
  11769. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionObject_RemoteGetTransactionObject_Proxy( 
  11770.     ITransactionObject __RPC_FAR * This,
  11771.     /* [in] */ ULONG ulTransactionLevel,
  11772.     /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject,
  11773.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11774.  
  11775.  
  11776. void __RPC_STUB ITransactionObject_RemoteGetTransactionObject_Stub(
  11777.     IRpcStubBuffer *This,
  11778.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11779.     PRPC_MESSAGE _pRpcMessage,
  11780.     DWORD *_pdwStubPhase);
  11781.  
  11782.  
  11783.  
  11784. #endif     /* __ITransactionObject_INTERFACE_DEFINED__ */
  11785.  
  11786.  
  11787. /****************************************
  11788.  * Generated header for interface: __MIDL_itf_oledb_0223
  11789.  * at Thu Nov 12 23:35:28 1998
  11790.  * using MIDL 3.01.75
  11791.  ****************************************/
  11792. /* [local] */ 
  11793.  
  11794.  
  11795. //@@@+ V2.1
  11796. #if( OLEDBVER >= 0x0210 )
  11797. #if 0  // to get around a MIDL limitation
  11798. typedef 
  11799. enum _TRUSTEE_TYPE
  11800.     {    TRUSTEE_IS_UNKNOWN    = 0,
  11801.     TRUSTEE_IS_USER    = TRUSTEE_IS_UNKNOWN + 1,
  11802.     TRUSTEE_IS_GROUP    = TRUSTEE_IS_USER + 1
  11803.     }    TRUSTEE_TYPE;
  11804.  
  11805. typedef 
  11806. enum _TRUSTEE_FORM
  11807.     {    TRUSTEE_IS_SID    = 0,
  11808.     TRUSTEE_IS_NAME    = TRUSTEE_IS_SID + 1
  11809.     }    TRUSTEE_FORM;
  11810.  
  11811. typedef 
  11812. enum _MULTIPLE_TRUSTEE_OPERATION
  11813.     {    NO_MULTIPLE_TRUSTEE    = 0,
  11814.     TRUSTEE_IS_IMPERSONATE    = NO_MULTIPLE_TRUSTEE + 1
  11815.     }    MULTIPLE_TRUSTEE_OPERATION;
  11816.  
  11817. typedef struct _TRUSTEE_A __RPC_FAR *PTRUSTEE_A;
  11818.  
  11819. typedef struct _TRUSTEE_W __RPC_FAR *PTRUSTEE_W;
  11820.  
  11821. typedef struct  _TRUSTEE_W
  11822.     {
  11823.     PTRUSTEE_W pMultipleTrustee;
  11824.     MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
  11825.     TRUSTEE_FORM TrusteeForm;
  11826.     TRUSTEE_TYPE TrusteeType;
  11827.     LPWSTR ptstrName;
  11828.     }    TRUSTEE_W;
  11829.  
  11830. typedef struct  _TRUSTEE_A
  11831.     {
  11832.     PTRUSTEE_A pMultipleTrustee;
  11833.     MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
  11834.     TRUSTEE_FORM TrusteeForm;
  11835.     TRUSTEE_TYPE TrusteeType;
  11836.     LPSTR ptstrName;
  11837.     }    TRUSTEE_A;
  11838.  
  11839. typedef 
  11840. enum _ACCESS_MODE
  11841.     {    NOT_USED_ACCESS    = 0,
  11842.     GRANT_ACCESS    = NOT_USED_ACCESS + 1,
  11843.     SET_ACCESS    = GRANT_ACCESS + 1,
  11844.     DENY_ACCESS    = SET_ACCESS + 1,
  11845.     REVOKE_ACCESS    = DENY_ACCESS + 1,
  11846.     SET_AUDIT_SUCCESS    = REVOKE_ACCESS + 1,
  11847.     SET_AUDIT_FAILURE    = SET_AUDIT_SUCCESS + 1
  11848.     }    ACCESS_MODE;
  11849.  
  11850. typedef 
  11851. enum _SE_OBJECT_TYPE
  11852.     {    SE_UNKNOWN_OBJECT_TYPE    = 0,
  11853.     SE_FILE_OBJECT    = SE_UNKNOWN_OBJECT_TYPE + 1,
  11854.     SE_SERVICE    = SE_FILE_OBJECT + 1,
  11855.     SE_PRINTER    = SE_SERVICE + 1,
  11856.     SE_REGISTRY_KEY    = SE_PRINTER + 1,
  11857.     SE_LMSHARE    = SE_REGISTRY_KEY + 1,
  11858.     SE_KERNEL_OBJECT    = SE_LMSHARE + 1,
  11859.     SE_WINDOW_OBJECT    = SE_KERNEL_OBJECT + 1
  11860.     }    SE_OBJECT_TYPE;
  11861.  
  11862. typedef struct  _EXPLICIT_ACCESS_W
  11863.     {
  11864.     DWORD grfAccessPermissions;
  11865.     ACCESS_MODE grfAccessMode;
  11866.     DWORD grfInheritance;
  11867.     TRUSTEE_W Trustee;
  11868.     }    EXPLICIT_ACCESS_W;
  11869.  
  11870. typedef struct _EXPLICIT_ACCESS_W __RPC_FAR *PEXPLICIT_ACCESS_W;
  11871.  
  11872. typedef struct  _EXPLICIT_ACCESS_A
  11873.     {
  11874.     DWORD grfAccessPermissions;
  11875.     ACCESS_MODE grfAccessMode;
  11876.     DWORD grfInheritance;
  11877.     TRUSTEE_A Trustee;
  11878.     }    EXPLICIT_ACCESS_A;
  11879.  
  11880. typedef struct _EXPLICIT_ACCESS_A __RPC_FAR *PEXPLICIT_ACCESS_A;
  11881.  
  11882. #else
  11883. #include <accctrl.h>
  11884. #endif
  11885.  
  11886.  
  11887. extern RPC_IF_HANDLE __MIDL_itf_oledb_0223_v0_0_c_ifspec;
  11888. extern RPC_IF_HANDLE __MIDL_itf_oledb_0223_v0_0_s_ifspec;
  11889.  
  11890. #ifndef __ITrusteeAdmin_INTERFACE_DEFINED__
  11891. #define __ITrusteeAdmin_INTERFACE_DEFINED__
  11892.  
  11893. /****************************************
  11894.  * Generated header for interface: ITrusteeAdmin
  11895.  * at Thu Nov 12 23:35:28 1998
  11896.  * using MIDL 3.01.75
  11897.  ****************************************/
  11898. /* [unique][uuid][object][local] */ 
  11899.  
  11900.  
  11901.  
  11902. EXTERN_C const IID IID_ITrusteeAdmin;
  11903.  
  11904. #if defined(__cplusplus) && !defined(CINTERFACE)
  11905.     
  11906.     interface DECLSPEC_UUID("0c733aa1-2a1c-11ce-ade5-00aa0044773d")
  11907.     ITrusteeAdmin : public IUnknown
  11908.     {
  11909.     public:
  11910.         virtual HRESULT STDMETHODCALLTYPE CompareTrustees( 
  11911.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee1,
  11912.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee2) = 0;
  11913.         
  11914.         virtual HRESULT STDMETHODCALLTYPE CreateTrustee( 
  11915.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11916.             /* [in] */ ULONG cPropertySets,
  11917.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  11918.         
  11919.         virtual HRESULT STDMETHODCALLTYPE DeleteTrustee( 
  11920.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee) = 0;
  11921.         
  11922.         virtual HRESULT STDMETHODCALLTYPE SetTrusteeProperties( 
  11923.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11924.             /* [in] */ ULONG cPropertySets,
  11925.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  11926.         
  11927.         virtual HRESULT STDMETHODCALLTYPE GetTrusteeProperties( 
  11928.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11929.             /* [in] */ const ULONG cPropertyIDSets,
  11930.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  11931.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  11932.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  11933.         
  11934.     };
  11935.     
  11936. #else     /* C style interface */
  11937.  
  11938.     typedef struct ITrusteeAdminVtbl
  11939.     {
  11940.         BEGIN_INTERFACE
  11941.         
  11942.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11943.             ITrusteeAdmin __RPC_FAR * This,
  11944.             /* [in] */ REFIID riid,
  11945.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11946.         
  11947.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11948.             ITrusteeAdmin __RPC_FAR * This);
  11949.         
  11950.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11951.             ITrusteeAdmin __RPC_FAR * This);
  11952.         
  11953.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CompareTrustees )( 
  11954.             ITrusteeAdmin __RPC_FAR * This,
  11955.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee1,
  11956.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee2);
  11957.         
  11958.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTrustee )( 
  11959.             ITrusteeAdmin __RPC_FAR * This,
  11960.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11961.             /* [in] */ ULONG cPropertySets,
  11962.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  11963.         
  11964.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteTrustee )( 
  11965.             ITrusteeAdmin __RPC_FAR * This,
  11966.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee);
  11967.         
  11968.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTrusteeProperties )( 
  11969.             ITrusteeAdmin __RPC_FAR * This,
  11970.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11971.             /* [in] */ ULONG cPropertySets,
  11972.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  11973.         
  11974.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTrusteeProperties )( 
  11975.             ITrusteeAdmin __RPC_FAR * This,
  11976.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11977.             /* [in] */ const ULONG cPropertyIDSets,
  11978.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  11979.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  11980.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  11981.         
  11982.         END_INTERFACE
  11983.     } ITrusteeAdminVtbl;
  11984.  
  11985.     interface ITrusteeAdmin
  11986.     {
  11987.         CONST_VTBL struct ITrusteeAdminVtbl __RPC_FAR *lpVtbl;
  11988.     };
  11989.  
  11990.     
  11991.  
  11992. #ifdef COBJMACROS
  11993.  
  11994.  
  11995. #define ITrusteeAdmin_QueryInterface(This,riid,ppvObject)    \
  11996.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11997.  
  11998. #define ITrusteeAdmin_AddRef(This)    \
  11999.     (This)->lpVtbl -> AddRef(This)
  12000.  
  12001. #define ITrusteeAdmin_Release(This)    \
  12002.     (This)->lpVtbl -> Release(This)
  12003.  
  12004.  
  12005. #define ITrusteeAdmin_CompareTrustees(This,pTrustee1,pTrustee2)    \
  12006.     (This)->lpVtbl -> CompareTrustees(This,pTrustee1,pTrustee2)
  12007.  
  12008. #define ITrusteeAdmin_CreateTrustee(This,pTrustee,cPropertySets,rgPropertySets)    \
  12009.     (This)->lpVtbl -> CreateTrustee(This,pTrustee,cPropertySets,rgPropertySets)
  12010.  
  12011. #define ITrusteeAdmin_DeleteTrustee(This,pTrustee)    \
  12012.     (This)->lpVtbl -> DeleteTrustee(This,pTrustee)
  12013.  
  12014. #define ITrusteeAdmin_SetTrusteeProperties(This,pTrustee,cPropertySets,rgPropertySets)    \
  12015.     (This)->lpVtbl -> SetTrusteeProperties(This,pTrustee,cPropertySets,rgPropertySets)
  12016.  
  12017. #define ITrusteeAdmin_GetTrusteeProperties(This,pTrustee,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  12018.     (This)->lpVtbl -> GetTrusteeProperties(This,pTrustee,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  12019.  
  12020. #endif /* COBJMACROS */
  12021.  
  12022.  
  12023. #endif     /* C style interface */
  12024.  
  12025.  
  12026.  
  12027. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_CompareTrustees_Proxy( 
  12028.     ITrusteeAdmin __RPC_FAR * This,
  12029.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee1,
  12030.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee2);
  12031.  
  12032.  
  12033. void __RPC_STUB ITrusteeAdmin_CompareTrustees_Stub(
  12034.     IRpcStubBuffer *This,
  12035.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12036.     PRPC_MESSAGE _pRpcMessage,
  12037.     DWORD *_pdwStubPhase);
  12038.  
  12039.  
  12040. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_CreateTrustee_Proxy( 
  12041.     ITrusteeAdmin __RPC_FAR * This,
  12042.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12043.     /* [in] */ ULONG cPropertySets,
  12044.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  12045.  
  12046.  
  12047. void __RPC_STUB ITrusteeAdmin_CreateTrustee_Stub(
  12048.     IRpcStubBuffer *This,
  12049.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12050.     PRPC_MESSAGE _pRpcMessage,
  12051.     DWORD *_pdwStubPhase);
  12052.  
  12053.  
  12054. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_DeleteTrustee_Proxy( 
  12055.     ITrusteeAdmin __RPC_FAR * This,
  12056.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee);
  12057.  
  12058.  
  12059. void __RPC_STUB ITrusteeAdmin_DeleteTrustee_Stub(
  12060.     IRpcStubBuffer *This,
  12061.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12062.     PRPC_MESSAGE _pRpcMessage,
  12063.     DWORD *_pdwStubPhase);
  12064.  
  12065.  
  12066. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_SetTrusteeProperties_Proxy( 
  12067.     ITrusteeAdmin __RPC_FAR * This,
  12068.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12069.     /* [in] */ ULONG cPropertySets,
  12070.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  12071.  
  12072.  
  12073. void __RPC_STUB ITrusteeAdmin_SetTrusteeProperties_Stub(
  12074.     IRpcStubBuffer *This,
  12075.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12076.     PRPC_MESSAGE _pRpcMessage,
  12077.     DWORD *_pdwStubPhase);
  12078.  
  12079.  
  12080. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_GetTrusteeProperties_Proxy( 
  12081.     ITrusteeAdmin __RPC_FAR * This,
  12082.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12083.     /* [in] */ const ULONG cPropertyIDSets,
  12084.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  12085.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  12086.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  12087.  
  12088.  
  12089. void __RPC_STUB ITrusteeAdmin_GetTrusteeProperties_Stub(
  12090.     IRpcStubBuffer *This,
  12091.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12092.     PRPC_MESSAGE _pRpcMessage,
  12093.     DWORD *_pdwStubPhase);
  12094.  
  12095.  
  12096.  
  12097. #endif     /* __ITrusteeAdmin_INTERFACE_DEFINED__ */
  12098.  
  12099.  
  12100. #ifndef __ITrusteeGroupAdmin_INTERFACE_DEFINED__
  12101. #define __ITrusteeGroupAdmin_INTERFACE_DEFINED__
  12102.  
  12103. /****************************************
  12104.  * Generated header for interface: ITrusteeGroupAdmin
  12105.  * at Thu Nov 12 23:35:28 1998
  12106.  * using MIDL 3.01.75
  12107.  ****************************************/
  12108. /* [unique][uuid][object][local] */ 
  12109.  
  12110.  
  12111.  
  12112. EXTERN_C const IID IID_ITrusteeGroupAdmin;
  12113.  
  12114. #if defined(__cplusplus) && !defined(CINTERFACE)
  12115.     
  12116.     interface DECLSPEC_UUID("0c733aa2-2a1c-11ce-ade5-00aa0044773d")
  12117.     ITrusteeGroupAdmin : public IUnknown
  12118.     {
  12119.     public:
  12120.         virtual HRESULT STDMETHODCALLTYPE AddMember( 
  12121.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12122.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee) = 0;
  12123.         
  12124.         virtual HRESULT STDMETHODCALLTYPE DeleteMember( 
  12125.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12126.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee) = 0;
  12127.         
  12128.         virtual HRESULT STDMETHODCALLTYPE IsMember( 
  12129.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12130.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee,
  12131.             /* [out] */ BOOL __RPC_FAR *pfStatus) = 0;
  12132.         
  12133.         virtual HRESULT STDMETHODCALLTYPE GetMembers( 
  12134.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12135.             /* [out] */ ULONG __RPC_FAR *pcMembers,
  12136.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMembers) = 0;
  12137.         
  12138.         virtual HRESULT STDMETHODCALLTYPE GetMemberships( 
  12139.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12140.             /* [out] */ ULONG __RPC_FAR *pcMemberships,
  12141.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMemberships) = 0;
  12142.         
  12143.     };
  12144.     
  12145. #else     /* C style interface */
  12146.  
  12147.     typedef struct ITrusteeGroupAdminVtbl
  12148.     {
  12149.         BEGIN_INTERFACE
  12150.         
  12151.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12152.             ITrusteeGroupAdmin __RPC_FAR * This,
  12153.             /* [in] */ REFIID riid,
  12154.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12155.         
  12156.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12157.             ITrusteeGroupAdmin __RPC_FAR * This);
  12158.         
  12159.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12160.             ITrusteeGroupAdmin __RPC_FAR * This);
  12161.         
  12162.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddMember )( 
  12163.             ITrusteeGroupAdmin __RPC_FAR * This,
  12164.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12165.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee);
  12166.         
  12167.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteMember )( 
  12168.             ITrusteeGroupAdmin __RPC_FAR * This,
  12169.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12170.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee);
  12171.         
  12172.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsMember )( 
  12173.             ITrusteeGroupAdmin __RPC_FAR * This,
  12174.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12175.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee,
  12176.             /* [out] */ BOOL __RPC_FAR *pfStatus);
  12177.         
  12178.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMembers )( 
  12179.             ITrusteeGroupAdmin __RPC_FAR * This,
  12180.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12181.             /* [out] */ ULONG __RPC_FAR *pcMembers,
  12182.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMembers);
  12183.         
  12184.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMemberships )( 
  12185.             ITrusteeGroupAdmin __RPC_FAR * This,
  12186.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12187.             /* [out] */ ULONG __RPC_FAR *pcMemberships,
  12188.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMemberships);
  12189.         
  12190.         END_INTERFACE
  12191.     } ITrusteeGroupAdminVtbl;
  12192.  
  12193.     interface ITrusteeGroupAdmin
  12194.     {
  12195.         CONST_VTBL struct ITrusteeGroupAdminVtbl __RPC_FAR *lpVtbl;
  12196.     };
  12197.  
  12198.     
  12199.  
  12200. #ifdef COBJMACROS
  12201.  
  12202.  
  12203. #define ITrusteeGroupAdmin_QueryInterface(This,riid,ppvObject)    \
  12204.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12205.  
  12206. #define ITrusteeGroupAdmin_AddRef(This)    \
  12207.     (This)->lpVtbl -> AddRef(This)
  12208.  
  12209. #define ITrusteeGroupAdmin_Release(This)    \
  12210.     (This)->lpVtbl -> Release(This)
  12211.  
  12212.  
  12213. #define ITrusteeGroupAdmin_AddMember(This,pMembershipTrustee,pMemberTrustee)    \
  12214.     (This)->lpVtbl -> AddMember(This,pMembershipTrustee,pMemberTrustee)
  12215.  
  12216. #define ITrusteeGroupAdmin_DeleteMember(This,pMembershipTrustee,pMemberTrustee)    \
  12217.     (This)->lpVtbl -> DeleteMember(This,pMembershipTrustee,pMemberTrustee)
  12218.  
  12219. #define ITrusteeGroupAdmin_IsMember(This,pMembershipTrustee,pMemberTrustee,pfStatus)    \
  12220.     (This)->lpVtbl -> IsMember(This,pMembershipTrustee,pMemberTrustee,pfStatus)
  12221.  
  12222. #define ITrusteeGroupAdmin_GetMembers(This,pMembershipTrustee,pcMembers,prgMembers)    \
  12223.     (This)->lpVtbl -> GetMembers(This,pMembershipTrustee,pcMembers,prgMembers)
  12224.  
  12225. #define ITrusteeGroupAdmin_GetMemberships(This,pTrustee,pcMemberships,prgMemberships)    \
  12226.     (This)->lpVtbl -> GetMemberships(This,pTrustee,pcMemberships,prgMemberships)
  12227.  
  12228. #endif /* COBJMACROS */
  12229.  
  12230.  
  12231. #endif     /* C style interface */
  12232.  
  12233.  
  12234.  
  12235. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_AddMember_Proxy( 
  12236.     ITrusteeGroupAdmin __RPC_FAR * This,
  12237.     /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12238.     /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee);
  12239.  
  12240.  
  12241. void __RPC_STUB ITrusteeGroupAdmin_AddMember_Stub(
  12242.     IRpcStubBuffer *This,
  12243.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12244.     PRPC_MESSAGE _pRpcMessage,
  12245.     DWORD *_pdwStubPhase);
  12246.  
  12247.  
  12248. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_DeleteMember_Proxy( 
  12249.     ITrusteeGroupAdmin __RPC_FAR * This,
  12250.     /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12251.     /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee);
  12252.  
  12253.  
  12254. void __RPC_STUB ITrusteeGroupAdmin_DeleteMember_Stub(
  12255.     IRpcStubBuffer *This,
  12256.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12257.     PRPC_MESSAGE _pRpcMessage,
  12258.     DWORD *_pdwStubPhase);
  12259.  
  12260.  
  12261. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_IsMember_Proxy( 
  12262.     ITrusteeGroupAdmin __RPC_FAR * This,
  12263.     /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12264.     /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee,
  12265.     /* [out] */ BOOL __RPC_FAR *pfStatus);
  12266.  
  12267.  
  12268. void __RPC_STUB ITrusteeGroupAdmin_IsMember_Stub(
  12269.     IRpcStubBuffer *This,
  12270.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12271.     PRPC_MESSAGE _pRpcMessage,
  12272.     DWORD *_pdwStubPhase);
  12273.  
  12274.  
  12275. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_GetMembers_Proxy( 
  12276.     ITrusteeGroupAdmin __RPC_FAR * This,
  12277.     /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12278.     /* [out] */ ULONG __RPC_FAR *pcMembers,
  12279.     /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMembers);
  12280.  
  12281.  
  12282. void __RPC_STUB ITrusteeGroupAdmin_GetMembers_Stub(
  12283.     IRpcStubBuffer *This,
  12284.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12285.     PRPC_MESSAGE _pRpcMessage,
  12286.     DWORD *_pdwStubPhase);
  12287.  
  12288.  
  12289. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_GetMemberships_Proxy( 
  12290.     ITrusteeGroupAdmin __RPC_FAR * This,
  12291.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12292.     /* [out] */ ULONG __RPC_FAR *pcMemberships,
  12293.     /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMemberships);
  12294.  
  12295.  
  12296. void __RPC_STUB ITrusteeGroupAdmin_GetMemberships_Stub(
  12297.     IRpcStubBuffer *This,
  12298.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12299.     PRPC_MESSAGE _pRpcMessage,
  12300.     DWORD *_pdwStubPhase);
  12301.  
  12302.  
  12303.  
  12304. #endif     /* __ITrusteeGroupAdmin_INTERFACE_DEFINED__ */
  12305.  
  12306.  
  12307. #ifndef __IObjectAccessControl_INTERFACE_DEFINED__
  12308. #define __IObjectAccessControl_INTERFACE_DEFINED__
  12309.  
  12310. /****************************************
  12311.  * Generated header for interface: IObjectAccessControl
  12312.  * at Thu Nov 12 23:35:28 1998
  12313.  * using MIDL 3.01.75
  12314.  ****************************************/
  12315. /* [unique][uuid][object][local] */ 
  12316.  
  12317.  
  12318.  
  12319. EXTERN_C const IID IID_IObjectAccessControl;
  12320.  
  12321. #if defined(__cplusplus) && !defined(CINTERFACE)
  12322.     
  12323.     interface DECLSPEC_UUID("0c733aa3-2a1c-11ce-ade5-00aa0044773d")
  12324.     IObjectAccessControl : public IUnknown
  12325.     {
  12326.     public:
  12327.         virtual HRESULT STDMETHODCALLTYPE GetObjectAccessRights( 
  12328.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12329.             /* [out][in] */ ULONG __RPC_FAR *pcAccessEntries,
  12330.             /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *__RPC_FAR *prgAccessEntries) = 0;
  12331.         
  12332.         virtual HRESULT STDMETHODCALLTYPE GetObjectOwner( 
  12333.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12334.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppOwner) = 0;
  12335.         
  12336.         virtual HRESULT STDMETHODCALLTYPE IsObjectAccessAllowed( 
  12337.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12338.             /* [in] */ EXPLICIT_ACCESS_W __RPC_FAR *pAccessEntry,
  12339.             /* [out] */ BOOL __RPC_FAR *pfResult) = 0;
  12340.         
  12341.         virtual HRESULT STDMETHODCALLTYPE SetObjectAccessRights( 
  12342.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12343.             /* [in] */ ULONG cAccessEntries,
  12344.             /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *prgAccessEntries) = 0;
  12345.         
  12346.         virtual HRESULT STDMETHODCALLTYPE SetObjectOwner( 
  12347.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12348.             /* [in] */ TRUSTEE_W __RPC_FAR *pOwner) = 0;
  12349.         
  12350.     };
  12351.     
  12352. #else     /* C style interface */
  12353.  
  12354.     typedef struct IObjectAccessControlVtbl
  12355.     {
  12356.         BEGIN_INTERFACE
  12357.         
  12358.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12359.             IObjectAccessControl __RPC_FAR * This,
  12360.             /* [in] */ REFIID riid,
  12361.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12362.         
  12363.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12364.             IObjectAccessControl __RPC_FAR * This);
  12365.         
  12366.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12367.             IObjectAccessControl __RPC_FAR * This);
  12368.         
  12369.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjectAccessRights )( 
  12370.             IObjectAccessControl __RPC_FAR * This,
  12371.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12372.             /* [out][in] */ ULONG __RPC_FAR *pcAccessEntries,
  12373.             /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *__RPC_FAR *prgAccessEntries);
  12374.         
  12375.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjectOwner )( 
  12376.             IObjectAccessControl __RPC_FAR * This,
  12377.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12378.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppOwner);
  12379.         
  12380.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsObjectAccessAllowed )( 
  12381.             IObjectAccessControl __RPC_FAR * This,
  12382.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12383.             /* [in] */ EXPLICIT_ACCESS_W __RPC_FAR *pAccessEntry,
  12384.             /* [out] */ BOOL __RPC_FAR *pfResult);
  12385.         
  12386.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObjectAccessRights )( 
  12387.             IObjectAccessControl __RPC_FAR * This,
  12388.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12389.             /* [in] */ ULONG cAccessEntries,
  12390.             /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *prgAccessEntries);
  12391.         
  12392.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObjectOwner )( 
  12393.             IObjectAccessControl __RPC_FAR * This,
  12394.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12395.             /* [in] */ TRUSTEE_W __RPC_FAR *pOwner);
  12396.         
  12397.         END_INTERFACE
  12398.     } IObjectAccessControlVtbl;
  12399.  
  12400.     interface IObjectAccessControl
  12401.     {
  12402.         CONST_VTBL struct IObjectAccessControlVtbl __RPC_FAR *lpVtbl;
  12403.     };
  12404.  
  12405.     
  12406.  
  12407. #ifdef COBJMACROS
  12408.  
  12409.  
  12410. #define IObjectAccessControl_QueryInterface(This,riid,ppvObject)    \
  12411.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12412.  
  12413. #define IObjectAccessControl_AddRef(This)    \
  12414.     (This)->lpVtbl -> AddRef(This)
  12415.  
  12416. #define IObjectAccessControl_Release(This)    \
  12417.     (This)->lpVtbl -> Release(This)
  12418.  
  12419.  
  12420. #define IObjectAccessControl_GetObjectAccessRights(This,pObject,pcAccessEntries,prgAccessEntries)    \
  12421.     (This)->lpVtbl -> GetObjectAccessRights(This,pObject,pcAccessEntries,prgAccessEntries)
  12422.  
  12423. #define IObjectAccessControl_GetObjectOwner(This,pObject,ppOwner)    \
  12424.     (This)->lpVtbl -> GetObjectOwner(This,pObject,ppOwner)
  12425.  
  12426. #define IObjectAccessControl_IsObjectAccessAllowed(This,pObject,pAccessEntry,pfResult)    \
  12427.     (This)->lpVtbl -> IsObjectAccessAllowed(This,pObject,pAccessEntry,pfResult)
  12428.  
  12429. #define IObjectAccessControl_SetObjectAccessRights(This,pObject,cAccessEntries,prgAccessEntries)    \
  12430.     (This)->lpVtbl -> SetObjectAccessRights(This,pObject,cAccessEntries,prgAccessEntries)
  12431.  
  12432. #define IObjectAccessControl_SetObjectOwner(This,pObject,pOwner)    \
  12433.     (This)->lpVtbl -> SetObjectOwner(This,pObject,pOwner)
  12434.  
  12435. #endif /* COBJMACROS */
  12436.  
  12437.  
  12438. #endif     /* C style interface */
  12439.  
  12440.  
  12441.  
  12442. HRESULT STDMETHODCALLTYPE IObjectAccessControl_GetObjectAccessRights_Proxy( 
  12443.     IObjectAccessControl __RPC_FAR * This,
  12444.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12445.     /* [out][in] */ ULONG __RPC_FAR *pcAccessEntries,
  12446.     /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *__RPC_FAR *prgAccessEntries);
  12447.  
  12448.  
  12449. void __RPC_STUB IObjectAccessControl_GetObjectAccessRights_Stub(
  12450.     IRpcStubBuffer *This,
  12451.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12452.     PRPC_MESSAGE _pRpcMessage,
  12453.     DWORD *_pdwStubPhase);
  12454.  
  12455.  
  12456. HRESULT STDMETHODCALLTYPE IObjectAccessControl_GetObjectOwner_Proxy( 
  12457.     IObjectAccessControl __RPC_FAR * This,
  12458.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12459.     /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppOwner);
  12460.  
  12461.  
  12462. void __RPC_STUB IObjectAccessControl_GetObjectOwner_Stub(
  12463.     IRpcStubBuffer *This,
  12464.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12465.     PRPC_MESSAGE _pRpcMessage,
  12466.     DWORD *_pdwStubPhase);
  12467.  
  12468.  
  12469. HRESULT STDMETHODCALLTYPE IObjectAccessControl_IsObjectAccessAllowed_Proxy( 
  12470.     IObjectAccessControl __RPC_FAR * This,
  12471.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12472.     /* [in] */ EXPLICIT_ACCESS_W __RPC_FAR *pAccessEntry,
  12473.     /* [out] */ BOOL __RPC_FAR *pfResult);
  12474.  
  12475.  
  12476. void __RPC_STUB IObjectAccessControl_IsObjectAccessAllowed_Stub(
  12477.     IRpcStubBuffer *This,
  12478.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12479.     PRPC_MESSAGE _pRpcMessage,
  12480.     DWORD *_pdwStubPhase);
  12481.  
  12482.  
  12483. HRESULT STDMETHODCALLTYPE IObjectAccessControl_SetObjectAccessRights_Proxy( 
  12484.     IObjectAccessControl __RPC_FAR * This,
  12485.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12486.     /* [in] */ ULONG cAccessEntries,
  12487.     /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *prgAccessEntries);
  12488.  
  12489.  
  12490. void __RPC_STUB IObjectAccessControl_SetObjectAccessRights_Stub(
  12491.     IRpcStubBuffer *This,
  12492.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12493.     PRPC_MESSAGE _pRpcMessage,
  12494.     DWORD *_pdwStubPhase);
  12495.  
  12496.  
  12497. HRESULT STDMETHODCALLTYPE IObjectAccessControl_SetObjectOwner_Proxy( 
  12498.     IObjectAccessControl __RPC_FAR * This,
  12499.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12500.     /* [in] */ TRUSTEE_W __RPC_FAR *pOwner);
  12501.  
  12502.  
  12503. void __RPC_STUB IObjectAccessControl_SetObjectOwner_Stub(
  12504.     IRpcStubBuffer *This,
  12505.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12506.     PRPC_MESSAGE _pRpcMessage,
  12507.     DWORD *_pdwStubPhase);
  12508.  
  12509.  
  12510.  
  12511. #endif     /* __IObjectAccessControl_INTERFACE_DEFINED__ */
  12512.  
  12513.  
  12514. #ifndef __ISecurityInfo_INTERFACE_DEFINED__
  12515. #define __ISecurityInfo_INTERFACE_DEFINED__
  12516.  
  12517. /****************************************
  12518.  * Generated header for interface: ISecurityInfo
  12519.  * at Thu Nov 12 23:35:28 1998
  12520.  * using MIDL 3.01.75
  12521.  ****************************************/
  12522. /* [unique][uuid][object][local] */ 
  12523.  
  12524.  
  12525. //@@@+ V2.1
  12526. #if( OLEDBVER >= 0x0210 )
  12527. typedef DWORD ACCESS_MASK;
  12528.  
  12529.  
  12530. enum ACCESS_MASKENUM
  12531.     {    PERM_EXCLUSIVE    = 0x200L,
  12532.     PERM_READDESIGN    = 0x400L,
  12533.     PERM_WRITEDESIGN    = 0x800L,
  12534.     PERM_WITHGRANT    = 0x1000L,
  12535.     PERM_REFERENCE    = 0x2000L,
  12536.     PERM_CREATE    = 0x4000L,
  12537.     PERM_INSERT    = 0x8000L,
  12538.     PERM_DELETE    = 0x10000L,
  12539.     PERM_READCONTROL    = 0x20000L,
  12540.     PERM_WRITEPERMISSIONS    = 0x40000L,
  12541.     PERM_WRITEOWNER    = 0x80000L,
  12542.     PERM_MAXIMUM_ALLOWED    = 0x2000000L,
  12543.     PERM_ALL    = 0x10000000L,
  12544.     PERM_EXECUTE    = 0x20000000L,
  12545.     PERM_READ    = 0x80000000L,
  12546.     PERM_UPDATE    = 0x40000000L,
  12547.     PERM_DROP    = 0x100L
  12548.     };
  12549. #define PERM_DESIGN                             PERM_WRITEDESIGN
  12550. #endif // OLEDBVER >= 0x0210
  12551. //@@@- V2.1
  12552.  
  12553. EXTERN_C const IID IID_ISecurityInfo;
  12554.  
  12555. #if defined(__cplusplus) && !defined(CINTERFACE)
  12556.     
  12557.     interface DECLSPEC_UUID("0c733aa4-2a1c-11ce-ade5-00aa0044773d")
  12558.     ISecurityInfo : public IUnknown
  12559.     {
  12560.     public:
  12561.         virtual HRESULT STDMETHODCALLTYPE GetCurrentTrustee( 
  12562.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppTrustee) = 0;
  12563.         
  12564.         virtual HRESULT STDMETHODCALLTYPE GetObjectTypes( 
  12565.             /* [out] */ ULONG __RPC_FAR *cObjectTypes,
  12566.             /* [out] */ GUID __RPC_FAR *__RPC_FAR *rgObjectTypes) = 0;
  12567.         
  12568.         virtual HRESULT STDMETHODCALLTYPE GetPermissions( 
  12569.             /* [in] */ GUID ObjectType,
  12570.             /* [out] */ ACCESS_MASK __RPC_FAR *pPermissions) = 0;
  12571.         
  12572.     };
  12573.     
  12574. #else     /* C style interface */
  12575.  
  12576.     typedef struct ISecurityInfoVtbl
  12577.     {
  12578.         BEGIN_INTERFACE
  12579.         
  12580.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12581.             ISecurityInfo __RPC_FAR * This,
  12582.             /* [in] */ REFIID riid,
  12583.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12584.         
  12585.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12586.             ISecurityInfo __RPC_FAR * This);
  12587.         
  12588.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12589.             ISecurityInfo __RPC_FAR * This);
  12590.         
  12591.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCurrentTrustee )( 
  12592.             ISecurityInfo __RPC_FAR * This,
  12593.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppTrustee);
  12594.         
  12595.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjectTypes )( 
  12596.             ISecurityInfo __RPC_FAR * This,
  12597.             /* [out] */ ULONG __RPC_FAR *cObjectTypes,
  12598.             /* [out] */ GUID __RPC_FAR *__RPC_FAR *rgObjectTypes);
  12599.         
  12600.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPermissions )( 
  12601.             ISecurityInfo __RPC_FAR * This,
  12602.             /* [in] */ GUID ObjectType,
  12603.             /* [out] */ ACCESS_MASK __RPC_FAR *pPermissions);
  12604.         
  12605.         END_INTERFACE
  12606.     } ISecurityInfoVtbl;
  12607.  
  12608.     interface ISecurityInfo
  12609.     {
  12610.         CONST_VTBL struct ISecurityInfoVtbl __RPC_FAR *lpVtbl;
  12611.     };
  12612.  
  12613.     
  12614.  
  12615. #ifdef COBJMACROS
  12616.  
  12617.  
  12618. #define ISecurityInfo_QueryInterface(This,riid,ppvObject)    \
  12619.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12620.  
  12621. #define ISecurityInfo_AddRef(This)    \
  12622.     (This)->lpVtbl -> AddRef(This)
  12623.  
  12624. #define ISecurityInfo_Release(This)    \
  12625.     (This)->lpVtbl -> Release(This)
  12626.  
  12627.  
  12628. #define ISecurityInfo_GetCurrentTrustee(This,ppTrustee)    \
  12629.     (This)->lpVtbl -> GetCurrentTrustee(This,ppTrustee)
  12630.  
  12631. #define ISecurityInfo_GetObjectTypes(This,cObjectTypes,rgObjectTypes)    \
  12632.     (This)->lpVtbl -> GetObjectTypes(This,cObjectTypes,rgObjectTypes)
  12633.  
  12634. #define ISecurityInfo_GetPermissions(This,ObjectType,pPermissions)    \
  12635.     (This)->lpVtbl -> GetPermissions(This,ObjectType,pPermissions)
  12636.  
  12637. #endif /* COBJMACROS */
  12638.  
  12639.  
  12640. #endif     /* C style interface */
  12641.  
  12642.  
  12643.  
  12644. HRESULT STDMETHODCALLTYPE ISecurityInfo_GetCurrentTrustee_Proxy( 
  12645.     ISecurityInfo __RPC_FAR * This,
  12646.     /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppTrustee);
  12647.  
  12648.  
  12649. void __RPC_STUB ISecurityInfo_GetCurrentTrustee_Stub(
  12650.     IRpcStubBuffer *This,
  12651.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12652.     PRPC_MESSAGE _pRpcMessage,
  12653.     DWORD *_pdwStubPhase);
  12654.  
  12655.  
  12656. HRESULT STDMETHODCALLTYPE ISecurityInfo_GetObjectTypes_Proxy( 
  12657.     ISecurityInfo __RPC_FAR * This,
  12658.     /* [out] */ ULONG __RPC_FAR *cObjectTypes,
  12659.     /* [out] */ GUID __RPC_FAR *__RPC_FAR *rgObjectTypes);
  12660.  
  12661.  
  12662. void __RPC_STUB ISecurityInfo_GetObjectTypes_Stub(
  12663.     IRpcStubBuffer *This,
  12664.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12665.     PRPC_MESSAGE _pRpcMessage,
  12666.     DWORD *_pdwStubPhase);
  12667.  
  12668.  
  12669. HRESULT STDMETHODCALLTYPE ISecurityInfo_GetPermissions_Proxy( 
  12670.     ISecurityInfo __RPC_FAR * This,
  12671.     /* [in] */ GUID ObjectType,
  12672.     /* [out] */ ACCESS_MASK __RPC_FAR *pPermissions);
  12673.  
  12674.  
  12675. void __RPC_STUB ISecurityInfo_GetPermissions_Stub(
  12676.     IRpcStubBuffer *This,
  12677.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12678.     PRPC_MESSAGE _pRpcMessage,
  12679.     DWORD *_pdwStubPhase);
  12680.  
  12681.  
  12682.  
  12683. #endif     /* __ISecurityInfo_INTERFACE_DEFINED__ */
  12684.  
  12685.  
  12686. #ifndef __ITableCreation_INTERFACE_DEFINED__
  12687. #define __ITableCreation_INTERFACE_DEFINED__
  12688.  
  12689. /****************************************
  12690.  * Generated header for interface: ITableCreation
  12691.  * at Thu Nov 12 23:35:28 1998
  12692.  * using MIDL 3.01.75
  12693.  ****************************************/
  12694. /* [unique][uuid][object][local] */ 
  12695.  
  12696.  
  12697.  
  12698. EXTERN_C const IID IID_ITableCreation;
  12699.  
  12700. #if defined(__cplusplus) && !defined(CINTERFACE)
  12701.     
  12702.     interface DECLSPEC_UUID("0c733abc-2a1c-11ce-ade5-00aa0044773d")
  12703.     ITableCreation : public ITableDefinition
  12704.     {
  12705.     public:
  12706.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetTableDefinition( 
  12707.             /* [in] */ DBID __RPC_FAR *pTableID,
  12708.             /* [out] */ ULONG __RPC_FAR *pcColumnDescs,
  12709.             /* [size_is][size_is][out] */ DBCOLUMNDESC __RPC_FAR *__RPC_FAR prgColumnDescs[  ],
  12710.             /* [out] */ ULONG __RPC_FAR *pcPropertySets,
  12711.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR prgPropertySets[  ],
  12712.             /* [out] */ ULONG __RPC_FAR *pcConstraintDescs,
  12713.             /* [size_is][size_is][out] */ DBCONSTRAINTDESC __RPC_FAR *__RPC_FAR prgConstraintDescs[  ],
  12714.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppwszStringBuffer) = 0;
  12715.         
  12716.     };
  12717.     
  12718. #else     /* C style interface */
  12719.  
  12720.     typedef struct ITableCreationVtbl
  12721.     {
  12722.         BEGIN_INTERFACE
  12723.         
  12724.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12725.             ITableCreation __RPC_FAR * This,
  12726.             /* [in] */ REFIID riid,
  12727.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12728.         
  12729.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12730.             ITableCreation __RPC_FAR * This);
  12731.         
  12732.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12733.             ITableCreation __RPC_FAR * This);
  12734.         
  12735.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTable )( 
  12736.             ITableCreation __RPC_FAR * This,
  12737.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  12738.             /* [in] */ DBID __RPC_FAR *pTableID,
  12739.             /* [in] */ ULONG cColumnDescs,
  12740.             /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  12741.             /* [in] */ REFIID riid,
  12742.             /* [in] */ ULONG cPropertySets,
  12743.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  12744.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  12745.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  12746.         
  12747.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropTable )( 
  12748.             ITableCreation __RPC_FAR * This,
  12749.             /* [unique][in] */ DBID __RPC_FAR *pTableID);
  12750.         
  12751.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
  12752.             ITableCreation __RPC_FAR * This,
  12753.             /* [in] */ DBID __RPC_FAR *pTableID,
  12754.             /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  12755.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID);
  12756.         
  12757.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropColumn )( 
  12758.             ITableCreation __RPC_FAR * This,
  12759.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  12760.             /* [unique][in] */ DBID __RPC_FAR *pColumnID);
  12761.         
  12762.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTableDefinition )( 
  12763.             ITableCreation __RPC_FAR * This,
  12764.             /* [in] */ DBID __RPC_FAR *pTableID,
  12765.             /* [out] */ ULONG __RPC_FAR *pcColumnDescs,
  12766.             /* [size_is][size_is][out] */ DBCOLUMNDESC __RPC_FAR *__RPC_FAR prgColumnDescs[  ],
  12767.             /* [out] */ ULONG __RPC_FAR *pcPropertySets,
  12768.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR prgPropertySets[  ],
  12769.             /* [out] */ ULONG __RPC_FAR *pcConstraintDescs,
  12770.             /* [size_is][size_is][out] */ DBCONSTRAINTDESC __RPC_FAR *__RPC_FAR prgConstraintDescs[  ],
  12771.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppwszStringBuffer);
  12772.         
  12773.         END_INTERFACE
  12774.     } ITableCreationVtbl;
  12775.  
  12776.     interface ITableCreation
  12777.     {
  12778.         CONST_VTBL struct ITableCreationVtbl __RPC_FAR *lpVtbl;
  12779.     };
  12780.  
  12781.     
  12782.  
  12783. #ifdef COBJMACROS
  12784.  
  12785.  
  12786. #define ITableCreation_QueryInterface(This,riid,ppvObject)    \
  12787.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12788.  
  12789. #define ITableCreation_AddRef(This)    \
  12790.     (This)->lpVtbl -> AddRef(This)
  12791.  
  12792. #define ITableCreation_Release(This)    \
  12793.     (This)->lpVtbl -> Release(This)
  12794.  
  12795.  
  12796. #define ITableCreation_CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)    \
  12797.     (This)->lpVtbl -> CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)
  12798.  
  12799. #define ITableCreation_DropTable(This,pTableID)    \
  12800.     (This)->lpVtbl -> DropTable(This,pTableID)
  12801.  
  12802. #define ITableCreation_AddColumn(This,pTableID,pColumnDesc,ppColumnID)    \
  12803.     (This)->lpVtbl -> AddColumn(This,pTableID,pColumnDesc,ppColumnID)
  12804.  
  12805. #define ITableCreation_DropColumn(This,pTableID,pColumnID)    \
  12806.     (This)->lpVtbl -> DropColumn(This,pTableID,pColumnID)
  12807.  
  12808.  
  12809. #define ITableCreation_GetTableDefinition(This,pTableID,pcColumnDescs,prgColumnDescs,pcPropertySets,prgPropertySets,pcConstraintDescs,prgConstraintDescs,ppwszStringBuffer)    \
  12810.     (This)->lpVtbl -> GetTableDefinition(This,pTableID,pcColumnDescs,prgColumnDescs,pcPropertySets,prgPropertySets,pcConstraintDescs,prgConstraintDescs,ppwszStringBuffer)
  12811.  
  12812. #endif /* COBJMACROS */
  12813.  
  12814.  
  12815. #endif     /* C style interface */
  12816.  
  12817.  
  12818.  
  12819. /* [local] */ HRESULT STDMETHODCALLTYPE ITableCreation_GetTableDefinition_Proxy( 
  12820.     ITableCreation __RPC_FAR * This,
  12821.     /* [in] */ DBID __RPC_FAR *pTableID,
  12822.     /* [out] */ ULONG __RPC_FAR *pcColumnDescs,
  12823.     /* [size_is][size_is][out] */ DBCOLUMNDESC __RPC_FAR *__RPC_FAR prgColumnDescs[  ],
  12824.     /* [out] */ ULONG __RPC_FAR *pcPropertySets,
  12825.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR prgPropertySets[  ],
  12826.     /* [out] */ ULONG __RPC_FAR *pcConstraintDescs,
  12827.     /* [size_is][size_is][out] */ DBCONSTRAINTDESC __RPC_FAR *__RPC_FAR prgConstraintDescs[  ],
  12828.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppwszStringBuffer);
  12829.  
  12830.  
  12831. void __RPC_STUB ITableCreation_GetTableDefinition_Stub(
  12832.     IRpcStubBuffer *This,
  12833.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12834.     PRPC_MESSAGE _pRpcMessage,
  12835.     DWORD *_pdwStubPhase);
  12836.  
  12837.  
  12838.  
  12839. #endif     /* __ITableCreation_INTERFACE_DEFINED__ */
  12840.  
  12841.  
  12842. #ifndef __ITableDefinitionWithConstraints_INTERFACE_DEFINED__
  12843. #define __ITableDefinitionWithConstraints_INTERFACE_DEFINED__
  12844.  
  12845. /****************************************
  12846.  * Generated header for interface: ITableDefinitionWithConstraints
  12847.  * at Thu Nov 12 23:35:28 1998
  12848.  * using MIDL 3.01.75
  12849.  ****************************************/
  12850. /* [unique][uuid][object][local] */ 
  12851.  
  12852.  
  12853.  
  12854. EXTERN_C const IID IID_ITableDefinitionWithConstraints;
  12855.  
  12856. #if defined(__cplusplus) && !defined(CINTERFACE)
  12857.     
  12858.     interface DECLSPEC_UUID("0c733aab-2a1c-11ce-ade5-00aa0044773d")
  12859.     ITableDefinitionWithConstraints : public ITableCreation
  12860.     {
  12861.     public:
  12862.         virtual HRESULT STDMETHODCALLTYPE AddConstraint( 
  12863.             /* [in] */ DBID __RPC_FAR *pTableID,
  12864.             /* [in] */ DBCONSTRAINTDESC __RPC_FAR *pConstraintDesc) = 0;
  12865.         
  12866.         virtual HRESULT STDMETHODCALLTYPE CreateTableWithConstraints( 
  12867.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  12868.             /* [in] */ DBID __RPC_FAR *pTableID,
  12869.             /* [in] */ ULONG cColumnDescs,
  12870.             /* [out][size_is][in] */ DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  12871.             /* [in] */ ULONG cConstraintDescs,
  12872.             /* [size_is][in] */ DBCONSTRAINTDESC __RPC_FAR rgConstraintDescs[  ],
  12873.             /* [in] */ REFIID riid,
  12874.             /* [in] */ ULONG cPropertySets,
  12875.             /* [out][size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  12876.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  12877.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  12878.         
  12879.         virtual HRESULT STDMETHODCALLTYPE DropConstraint( 
  12880.             /* [in] */ DBID __RPC_FAR *pTableID,
  12881.             /* [in] */ DBID __RPC_FAR *pConstraintID) = 0;
  12882.         
  12883.     };
  12884.     
  12885. #else     /* C style interface */
  12886.  
  12887.     typedef struct ITableDefinitionWithConstraintsVtbl
  12888.     {
  12889.         BEGIN_INTERFACE
  12890.         
  12891.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12892.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12893.             /* [in] */ REFIID riid,
  12894.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12895.         
  12896.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12897.             ITableDefinitionWithConstraints __RPC_FAR * This);
  12898.         
  12899.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12900.             ITableDefinitionWithConstraints __RPC_FAR * This);
  12901.         
  12902.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTable )( 
  12903.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12904.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  12905.             /* [in] */ DBID __RPC_FAR *pTableID,
  12906.             /* [in] */ ULONG cColumnDescs,
  12907.             /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  12908.             /* [in] */ REFIID riid,
  12909.             /* [in] */ ULONG cPropertySets,
  12910.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  12911.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  12912.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  12913.         
  12914.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropTable )( 
  12915.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12916.             /* [unique][in] */ DBID __RPC_FAR *pTableID);
  12917.         
  12918.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
  12919.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12920.             /* [in] */ DBID __RPC_FAR *pTableID,
  12921.             /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  12922.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID);
  12923.         
  12924.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropColumn )( 
  12925.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12926.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  12927.             /* [unique][in] */ DBID __RPC_FAR *pColumnID);
  12928.         
  12929.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTableDefinition )( 
  12930.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12931.             /* [in] */ DBID __RPC_FAR *pTableID,
  12932.             /* [out] */ ULONG __RPC_FAR *pcColumnDescs,
  12933.             /* [size_is][size_is][out] */ DBCOLUMNDESC __RPC_FAR *__RPC_FAR prgColumnDescs[  ],
  12934.             /* [out] */ ULONG __RPC_FAR *pcPropertySets,
  12935.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR prgPropertySets[  ],
  12936.             /* [out] */ ULONG __RPC_FAR *pcConstraintDescs,
  12937.             /* [size_is][size_is][out] */ DBCONSTRAINTDESC __RPC_FAR *__RPC_FAR prgConstraintDescs[  ],
  12938.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppwszStringBuffer);
  12939.         
  12940.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddConstraint )( 
  12941.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12942.             /* [in] */ DBID __RPC_FAR *pTableID,
  12943.             /* [in] */ DBCONSTRAINTDESC __RPC_FAR *pConstraintDesc);
  12944.         
  12945.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTableWithConstraints )( 
  12946.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12947.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  12948.             /* [in] */ DBID __RPC_FAR *pTableID,
  12949.             /* [in] */ ULONG cColumnDescs,
  12950.             /* [out][size_is][in] */ DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  12951.             /* [in] */ ULONG cConstraintDescs,
  12952.             /* [size_is][in] */ DBCONSTRAINTDESC __RPC_FAR rgConstraintDescs[  ],
  12953.             /* [in] */ REFIID riid,
  12954.             /* [in] */ ULONG cPropertySets,
  12955.             /* [out][size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  12956.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  12957.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  12958.         
  12959.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropConstraint )( 
  12960.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12961.             /* [in] */ DBID __RPC_FAR *pTableID,
  12962.             /* [in] */ DBID __RPC_FAR *pConstraintID);
  12963.         
  12964.         END_INTERFACE
  12965.     } ITableDefinitionWithConstraintsVtbl;
  12966.  
  12967.     interface ITableDefinitionWithConstraints
  12968.     {
  12969.         CONST_VTBL struct ITableDefinitionWithConstraintsVtbl __RPC_FAR *lpVtbl;
  12970.     };
  12971.  
  12972.     
  12973.  
  12974. #ifdef COBJMACROS
  12975.  
  12976.  
  12977. #define ITableDefinitionWithConstraints_QueryInterface(This,riid,ppvObject)    \
  12978.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12979.  
  12980. #define ITableDefinitionWithConstraints_AddRef(This)    \
  12981.     (This)->lpVtbl -> AddRef(This)
  12982.  
  12983. #define ITableDefinitionWithConstraints_Release(This)    \
  12984.     (This)->lpVtbl -> Release(This)
  12985.  
  12986.  
  12987. #define ITableDefinitionWithConstraints_CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)    \
  12988.     (This)->lpVtbl -> CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)
  12989.  
  12990. #define ITableDefinitionWithConstraints_DropTable(This,pTableID)    \
  12991.     (This)->lpVtbl -> DropTable(This,pTableID)
  12992.  
  12993. #define ITableDefinitionWithConstraints_AddColumn(This,pTableID,pColumnDesc,ppColumnID)    \
  12994.     (This)->lpVtbl -> AddColumn(This,pTableID,pColumnDesc,ppColumnID)
  12995.  
  12996. #define ITableDefinitionWithConstraints_DropColumn(This,pTableID,pColumnID)    \
  12997.     (This)->lpVtbl -> DropColumn(This,pTableID,pColumnID)
  12998.  
  12999.  
  13000. #define ITableDefinitionWithConstraints_GetTableDefinition(This,pTableID,pcColumnDescs,prgColumnDescs,pcPropertySets,prgPropertySets,pcConstraintDescs,prgConstraintDescs,ppwszStringBuffer)    \
  13001.     (This)->lpVtbl -> GetTableDefinition(This,pTableID,pcColumnDescs,prgColumnDescs,pcPropertySets,prgPropertySets,pcConstraintDescs,prgConstraintDescs,ppwszStringBuffer)
  13002.  
  13003.  
  13004. #define ITableDefinitionWithConstraints_AddConstraint(This,pTableID,pConstraintDesc)    \
  13005.     (This)->lpVtbl -> AddConstraint(This,pTableID,pConstraintDesc)
  13006.  
  13007. #define ITableDefinitionWithConstraints_CreateTableWithConstraints(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,cConstraintDescs,rgConstraintDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)    \
  13008.     (This)->lpVtbl -> CreateTableWithConstraints(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,cConstraintDescs,rgConstraintDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)
  13009.  
  13010. #define ITableDefinitionWithConstraints_DropConstraint(This,pTableID,pConstraintID)    \
  13011.     (This)->lpVtbl -> DropConstraint(This,pTableID,pConstraintID)
  13012.  
  13013. #endif /* COBJMACROS */
  13014.  
  13015.  
  13016. #endif     /* C style interface */
  13017.  
  13018.  
  13019.  
  13020. HRESULT STDMETHODCALLTYPE ITableDefinitionWithConstraints_AddConstraint_Proxy( 
  13021.     ITableDefinitionWithConstraints __RPC_FAR * This,
  13022.     /* [in] */ DBID __RPC_FAR *pTableID,
  13023.     /* [in] */ DBCONSTRAINTDESC __RPC_FAR *pConstraintDesc);
  13024.  
  13025.  
  13026. void __RPC_STUB ITableDefinitionWithConstraints_AddConstraint_Stub(
  13027.     IRpcStubBuffer *This,
  13028.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13029.     PRPC_MESSAGE _pRpcMessage,
  13030.     DWORD *_pdwStubPhase);
  13031.  
  13032.  
  13033. HRESULT STDMETHODCALLTYPE ITableDefinitionWithConstraints_CreateTableWithConstraints_Proxy( 
  13034.     ITableDefinitionWithConstraints __RPC_FAR * This,
  13035.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13036.     /* [in] */ DBID __RPC_FAR *pTableID,
  13037.     /* [in] */ ULONG cColumnDescs,
  13038.     /* [out][size_is][in] */ DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  13039.     /* [in] */ ULONG cConstraintDescs,
  13040.     /* [size_is][in] */ DBCONSTRAINTDESC __RPC_FAR rgConstraintDescs[  ],
  13041.     /* [in] */ REFIID riid,
  13042.     /* [in] */ ULONG cPropertySets,
  13043.     /* [out][size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  13044.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  13045.     /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  13046.  
  13047.  
  13048. void __RPC_STUB ITableDefinitionWithConstraints_CreateTableWithConstraints_Stub(
  13049.     IRpcStubBuffer *This,
  13050.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13051.     PRPC_MESSAGE _pRpcMessage,
  13052.     DWORD *_pdwStubPhase);
  13053.  
  13054.  
  13055. HRESULT STDMETHODCALLTYPE ITableDefinitionWithConstraints_DropConstraint_Proxy( 
  13056.     ITableDefinitionWithConstraints __RPC_FAR * This,
  13057.     /* [in] */ DBID __RPC_FAR *pTableID,
  13058.     /* [in] */ DBID __RPC_FAR *pConstraintID);
  13059.  
  13060.  
  13061. void __RPC_STUB ITableDefinitionWithConstraints_DropConstraint_Stub(
  13062.     IRpcStubBuffer *This,
  13063.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13064.     PRPC_MESSAGE _pRpcMessage,
  13065.     DWORD *_pdwStubPhase);
  13066.  
  13067.  
  13068.  
  13069. #endif     /* __ITableDefinitionWithConstraints_INTERFACE_DEFINED__ */
  13070.  
  13071.  
  13072. #ifndef __IRow_INTERFACE_DEFINED__
  13073. #define __IRow_INTERFACE_DEFINED__
  13074.  
  13075. /****************************************
  13076.  * Generated header for interface: IRow
  13077.  * at Thu Nov 12 23:35:28 1998
  13078.  * using MIDL 3.01.75
  13079.  ****************************************/
  13080. /* [unique][uuid][object][local] */ 
  13081.  
  13082.  
  13083.  
  13084. EXTERN_C const IID IID_IRow;
  13085.  
  13086. #if defined(__cplusplus) && !defined(CINTERFACE)
  13087.     
  13088.     interface DECLSPEC_UUID("0c733ab4-2a1c-11ce-ade5-00aa0044773d")
  13089.     IRow : public IUnknown
  13090.     {
  13091.     public:
  13092.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetColumns( 
  13093.             /* [in] */ ULONG cColumns,
  13094.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]) = 0;
  13095.         
  13096.         virtual HRESULT STDMETHODCALLTYPE GetSourceRowset( 
  13097.             /* [in] */ REFIID riid,
  13098.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  13099.             /* [out] */ HROW __RPC_FAR *phRow) = 0;
  13100.         
  13101.         virtual HRESULT STDMETHODCALLTYPE Open( 
  13102.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13103.             /* [in] */ DBID __RPC_FAR *pColumnID,
  13104.             /* [in] */ REFGUID rguidColumnType,
  13105.             /* [in] */ DWORD dwBindFlags,
  13106.             /* [in] */ REFIID riid,
  13107.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk) = 0;
  13108.         
  13109.     };
  13110.     
  13111. #else     /* C style interface */
  13112.  
  13113.     typedef struct IRowVtbl
  13114.     {
  13115.         BEGIN_INTERFACE
  13116.         
  13117.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13118.             IRow __RPC_FAR * This,
  13119.             /* [in] */ REFIID riid,
  13120.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13121.         
  13122.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13123.             IRow __RPC_FAR * This);
  13124.         
  13125.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13126.             IRow __RPC_FAR * This);
  13127.         
  13128.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetColumns )( 
  13129.             IRow __RPC_FAR * This,
  13130.             /* [in] */ ULONG cColumns,
  13131.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13132.         
  13133.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceRowset )( 
  13134.             IRow __RPC_FAR * This,
  13135.             /* [in] */ REFIID riid,
  13136.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  13137.             /* [out] */ HROW __RPC_FAR *phRow);
  13138.         
  13139.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )( 
  13140.             IRow __RPC_FAR * This,
  13141.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13142.             /* [in] */ DBID __RPC_FAR *pColumnID,
  13143.             /* [in] */ REFGUID rguidColumnType,
  13144.             /* [in] */ DWORD dwBindFlags,
  13145.             /* [in] */ REFIID riid,
  13146.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13147.         
  13148.         END_INTERFACE
  13149.     } IRowVtbl;
  13150.  
  13151.     interface IRow
  13152.     {
  13153.         CONST_VTBL struct IRowVtbl __RPC_FAR *lpVtbl;
  13154.     };
  13155.  
  13156.     
  13157.  
  13158. #ifdef COBJMACROS
  13159.  
  13160.  
  13161. #define IRow_QueryInterface(This,riid,ppvObject)    \
  13162.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13163.  
  13164. #define IRow_AddRef(This)    \
  13165.     (This)->lpVtbl -> AddRef(This)
  13166.  
  13167. #define IRow_Release(This)    \
  13168.     (This)->lpVtbl -> Release(This)
  13169.  
  13170.  
  13171. #define IRow_GetColumns(This,cColumns,rgColumns)    \
  13172.     (This)->lpVtbl -> GetColumns(This,cColumns,rgColumns)
  13173.  
  13174. #define IRow_GetSourceRowset(This,riid,ppRowset,phRow)    \
  13175.     (This)->lpVtbl -> GetSourceRowset(This,riid,ppRowset,phRow)
  13176.  
  13177. #define IRow_Open(This,pUnkOuter,pColumnID,rguidColumnType,dwBindFlags,riid,ppUnk)    \
  13178.     (This)->lpVtbl -> Open(This,pUnkOuter,pColumnID,rguidColumnType,dwBindFlags,riid,ppUnk)
  13179.  
  13180. #endif /* COBJMACROS */
  13181.  
  13182.  
  13183. #endif     /* C style interface */
  13184.  
  13185.  
  13186.  
  13187. /* [local] */ HRESULT STDMETHODCALLTYPE IRow_GetColumns_Proxy( 
  13188.     IRow __RPC_FAR * This,
  13189.     /* [in] */ ULONG cColumns,
  13190.     /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13191.  
  13192.  
  13193. void __RPC_STUB IRow_GetColumns_Stub(
  13194.     IRpcStubBuffer *This,
  13195.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13196.     PRPC_MESSAGE _pRpcMessage,
  13197.     DWORD *_pdwStubPhase);
  13198.  
  13199.  
  13200. HRESULT STDMETHODCALLTYPE IRow_GetSourceRowset_Proxy( 
  13201.     IRow __RPC_FAR * This,
  13202.     /* [in] */ REFIID riid,
  13203.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  13204.     /* [out] */ HROW __RPC_FAR *phRow);
  13205.  
  13206.  
  13207. void __RPC_STUB IRow_GetSourceRowset_Stub(
  13208.     IRpcStubBuffer *This,
  13209.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13210.     PRPC_MESSAGE _pRpcMessage,
  13211.     DWORD *_pdwStubPhase);
  13212.  
  13213.  
  13214. HRESULT STDMETHODCALLTYPE IRow_Open_Proxy( 
  13215.     IRow __RPC_FAR * This,
  13216.     /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13217.     /* [in] */ DBID __RPC_FAR *pColumnID,
  13218.     /* [in] */ REFGUID rguidColumnType,
  13219.     /* [in] */ DWORD dwBindFlags,
  13220.     /* [in] */ REFIID riid,
  13221.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13222.  
  13223.  
  13224. void __RPC_STUB IRow_Open_Stub(
  13225.     IRpcStubBuffer *This,
  13226.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13227.     PRPC_MESSAGE _pRpcMessage,
  13228.     DWORD *_pdwStubPhase);
  13229.  
  13230.  
  13231.  
  13232. #endif     /* __IRow_INTERFACE_DEFINED__ */
  13233.  
  13234.  
  13235. #ifndef __IRowChange_INTERFACE_DEFINED__
  13236. #define __IRowChange_INTERFACE_DEFINED__
  13237.  
  13238. /****************************************
  13239.  * Generated header for interface: IRowChange
  13240.  * at Thu Nov 12 23:35:28 1998
  13241.  * using MIDL 3.01.75
  13242.  ****************************************/
  13243. /* [unique][uuid][object][local] */ 
  13244.  
  13245.  
  13246.  
  13247. EXTERN_C const IID IID_IRowChange;
  13248.  
  13249. #if defined(__cplusplus) && !defined(CINTERFACE)
  13250.     
  13251.     interface DECLSPEC_UUID("0c733ab5-2a1c-11ce-ade5-00aa0044773d")
  13252.     IRowChange : public IUnknown
  13253.     {
  13254.     public:
  13255.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetColumns( 
  13256.             /* [in] */ ULONG cColumns,
  13257.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]) = 0;
  13258.         
  13259.     };
  13260.     
  13261. #else     /* C style interface */
  13262.  
  13263.     typedef struct IRowChangeVtbl
  13264.     {
  13265.         BEGIN_INTERFACE
  13266.         
  13267.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13268.             IRowChange __RPC_FAR * This,
  13269.             /* [in] */ REFIID riid,
  13270.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13271.         
  13272.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13273.             IRowChange __RPC_FAR * This);
  13274.         
  13275.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13276.             IRowChange __RPC_FAR * This);
  13277.         
  13278.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetColumns )( 
  13279.             IRowChange __RPC_FAR * This,
  13280.             /* [in] */ ULONG cColumns,
  13281.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13282.         
  13283.         END_INTERFACE
  13284.     } IRowChangeVtbl;
  13285.  
  13286.     interface IRowChange
  13287.     {
  13288.         CONST_VTBL struct IRowChangeVtbl __RPC_FAR *lpVtbl;
  13289.     };
  13290.  
  13291.     
  13292.  
  13293. #ifdef COBJMACROS
  13294.  
  13295.  
  13296. #define IRowChange_QueryInterface(This,riid,ppvObject)    \
  13297.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13298.  
  13299. #define IRowChange_AddRef(This)    \
  13300.     (This)->lpVtbl -> AddRef(This)
  13301.  
  13302. #define IRowChange_Release(This)    \
  13303.     (This)->lpVtbl -> Release(This)
  13304.  
  13305.  
  13306. #define IRowChange_SetColumns(This,cColumns,rgColumns)    \
  13307.     (This)->lpVtbl -> SetColumns(This,cColumns,rgColumns)
  13308.  
  13309. #endif /* COBJMACROS */
  13310.  
  13311.  
  13312. #endif     /* C style interface */
  13313.  
  13314.  
  13315.  
  13316. /* [local] */ HRESULT STDMETHODCALLTYPE IRowChange_SetColumns_Proxy( 
  13317.     IRowChange __RPC_FAR * This,
  13318.     /* [in] */ ULONG cColumns,
  13319.     /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13320.  
  13321.  
  13322. void __RPC_STUB IRowChange_SetColumns_Stub(
  13323.     IRpcStubBuffer *This,
  13324.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13325.     PRPC_MESSAGE _pRpcMessage,
  13326.     DWORD *_pdwStubPhase);
  13327.  
  13328.  
  13329.  
  13330. #endif     /* __IRowChange_INTERFACE_DEFINED__ */
  13331.  
  13332.  
  13333. #ifndef __IRowSchemaChange_INTERFACE_DEFINED__
  13334. #define __IRowSchemaChange_INTERFACE_DEFINED__
  13335.  
  13336. /****************************************
  13337.  * Generated header for interface: IRowSchemaChange
  13338.  * at Thu Nov 12 23:35:28 1998
  13339.  * using MIDL 3.01.75
  13340.  ****************************************/
  13341. /* [unique][uuid][object][local] */ 
  13342.  
  13343.  
  13344.  
  13345. EXTERN_C const IID IID_IRowSchemaChange;
  13346.  
  13347. #if defined(__cplusplus) && !defined(CINTERFACE)
  13348.     
  13349.     interface DECLSPEC_UUID("0c733aae-2a1c-11ce-ade5-00aa0044773d")
  13350.     IRowSchemaChange : public IRowChange
  13351.     {
  13352.     public:
  13353.         virtual HRESULT STDMETHODCALLTYPE DeleteColumns( 
  13354.             /* [in] */ ULONG cColumns,
  13355.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  13356.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]) = 0;
  13357.         
  13358.         virtual HRESULT STDMETHODCALLTYPE AddColumns( 
  13359.             /* [in] */ ULONG cColumns,
  13360.             /* [size_is][in] */ const DBCOLUMNINFO __RPC_FAR rgNewColumnInfo[  ],
  13361.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]) = 0;
  13362.         
  13363.     };
  13364.     
  13365. #else     /* C style interface */
  13366.  
  13367.     typedef struct IRowSchemaChangeVtbl
  13368.     {
  13369.         BEGIN_INTERFACE
  13370.         
  13371.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13372.             IRowSchemaChange __RPC_FAR * This,
  13373.             /* [in] */ REFIID riid,
  13374.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13375.         
  13376.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13377.             IRowSchemaChange __RPC_FAR * This);
  13378.         
  13379.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13380.             IRowSchemaChange __RPC_FAR * This);
  13381.         
  13382.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetColumns )( 
  13383.             IRowSchemaChange __RPC_FAR * This,
  13384.             /* [in] */ ULONG cColumns,
  13385.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13386.         
  13387.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteColumns )( 
  13388.             IRowSchemaChange __RPC_FAR * This,
  13389.             /* [in] */ ULONG cColumns,
  13390.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  13391.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]);
  13392.         
  13393.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumns )( 
  13394.             IRowSchemaChange __RPC_FAR * This,
  13395.             /* [in] */ ULONG cColumns,
  13396.             /* [size_is][in] */ const DBCOLUMNINFO __RPC_FAR rgNewColumnInfo[  ],
  13397.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13398.         
  13399.         END_INTERFACE
  13400.     } IRowSchemaChangeVtbl;
  13401.  
  13402.     interface IRowSchemaChange
  13403.     {
  13404.         CONST_VTBL struct IRowSchemaChangeVtbl __RPC_FAR *lpVtbl;
  13405.     };
  13406.  
  13407.     
  13408.  
  13409. #ifdef COBJMACROS
  13410.  
  13411.  
  13412. #define IRowSchemaChange_QueryInterface(This,riid,ppvObject)    \
  13413.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13414.  
  13415. #define IRowSchemaChange_AddRef(This)    \
  13416.     (This)->lpVtbl -> AddRef(This)
  13417.  
  13418. #define IRowSchemaChange_Release(This)    \
  13419.     (This)->lpVtbl -> Release(This)
  13420.  
  13421.  
  13422. #define IRowSchemaChange_SetColumns(This,cColumns,rgColumns)    \
  13423.     (This)->lpVtbl -> SetColumns(This,cColumns,rgColumns)
  13424.  
  13425.  
  13426. #define IRowSchemaChange_DeleteColumns(This,cColumns,rgColumnIDs,rgdwStatus)    \
  13427.     (This)->lpVtbl -> DeleteColumns(This,cColumns,rgColumnIDs,rgdwStatus)
  13428.  
  13429. #define IRowSchemaChange_AddColumns(This,cColumns,rgNewColumnInfo,rgColumns)    \
  13430.     (This)->lpVtbl -> AddColumns(This,cColumns,rgNewColumnInfo,rgColumns)
  13431.  
  13432. #endif /* COBJMACROS */
  13433.  
  13434.  
  13435. #endif     /* C style interface */
  13436.  
  13437.  
  13438.  
  13439. HRESULT STDMETHODCALLTYPE IRowSchemaChange_DeleteColumns_Proxy( 
  13440.     IRowSchemaChange __RPC_FAR * This,
  13441.     /* [in] */ ULONG cColumns,
  13442.     /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  13443.     /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]);
  13444.  
  13445.  
  13446. void __RPC_STUB IRowSchemaChange_DeleteColumns_Stub(
  13447.     IRpcStubBuffer *This,
  13448.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13449.     PRPC_MESSAGE _pRpcMessage,
  13450.     DWORD *_pdwStubPhase);
  13451.  
  13452.  
  13453. HRESULT STDMETHODCALLTYPE IRowSchemaChange_AddColumns_Proxy( 
  13454.     IRowSchemaChange __RPC_FAR * This,
  13455.     /* [in] */ ULONG cColumns,
  13456.     /* [size_is][in] */ const DBCOLUMNINFO __RPC_FAR rgNewColumnInfo[  ],
  13457.     /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13458.  
  13459.  
  13460. void __RPC_STUB IRowSchemaChange_AddColumns_Stub(
  13461.     IRpcStubBuffer *This,
  13462.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13463.     PRPC_MESSAGE _pRpcMessage,
  13464.     DWORD *_pdwStubPhase);
  13465.  
  13466.  
  13467.  
  13468. #endif     /* __IRowSchemaChange_INTERFACE_DEFINED__ */
  13469.  
  13470.  
  13471. #ifndef __IGetRow_INTERFACE_DEFINED__
  13472. #define __IGetRow_INTERFACE_DEFINED__
  13473.  
  13474. /****************************************
  13475.  * Generated header for interface: IGetRow
  13476.  * at Thu Nov 12 23:35:28 1998
  13477.  * using MIDL 3.01.75
  13478.  ****************************************/
  13479. /* [unique][uuid][object][local] */ 
  13480.  
  13481.  
  13482.  
  13483. EXTERN_C const IID IID_IGetRow;
  13484.  
  13485. #if defined(__cplusplus) && !defined(CINTERFACE)
  13486.     
  13487.     interface DECLSPEC_UUID("0c733aaf-2a1c-11ce-ade5-00aa0044773d")
  13488.     IGetRow : public IUnknown
  13489.     {
  13490.     public:
  13491.         virtual HRESULT STDMETHODCALLTYPE GetRowFromHROW( 
  13492.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13493.             /* [in] */ HROW hRow,
  13494.             /* [in] */ REFIID riid,
  13495.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk) = 0;
  13496.         
  13497.         virtual HRESULT STDMETHODCALLTYPE GetURLFromHROW( 
  13498.             /* [in] */ HROW hRow,
  13499.             /* [out] */ LPOLESTR __RPC_FAR *ppwszURL) = 0;
  13500.         
  13501.     };
  13502.     
  13503. #else     /* C style interface */
  13504.  
  13505.     typedef struct IGetRowVtbl
  13506.     {
  13507.         BEGIN_INTERFACE
  13508.         
  13509.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13510.             IGetRow __RPC_FAR * This,
  13511.             /* [in] */ REFIID riid,
  13512.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13513.         
  13514.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13515.             IGetRow __RPC_FAR * This);
  13516.         
  13517.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13518.             IGetRow __RPC_FAR * This);
  13519.         
  13520.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowFromHROW )( 
  13521.             IGetRow __RPC_FAR * This,
  13522.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13523.             /* [in] */ HROW hRow,
  13524.             /* [in] */ REFIID riid,
  13525.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13526.         
  13527.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetURLFromHROW )( 
  13528.             IGetRow __RPC_FAR * This,
  13529.             /* [in] */ HROW hRow,
  13530.             /* [out] */ LPOLESTR __RPC_FAR *ppwszURL);
  13531.         
  13532.         END_INTERFACE
  13533.     } IGetRowVtbl;
  13534.  
  13535.     interface IGetRow
  13536.     {
  13537.         CONST_VTBL struct IGetRowVtbl __RPC_FAR *lpVtbl;
  13538.     };
  13539.  
  13540.     
  13541.  
  13542. #ifdef COBJMACROS
  13543.  
  13544.  
  13545. #define IGetRow_QueryInterface(This,riid,ppvObject)    \
  13546.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13547.  
  13548. #define IGetRow_AddRef(This)    \
  13549.     (This)->lpVtbl -> AddRef(This)
  13550.  
  13551. #define IGetRow_Release(This)    \
  13552.     (This)->lpVtbl -> Release(This)
  13553.  
  13554.  
  13555. #define IGetRow_GetRowFromHROW(This,pUnkOuter,hRow,riid,ppUnk)    \
  13556.     (This)->lpVtbl -> GetRowFromHROW(This,pUnkOuter,hRow,riid,ppUnk)
  13557.  
  13558. #define IGetRow_GetURLFromHROW(This,hRow,ppwszURL)    \
  13559.     (This)->lpVtbl -> GetURLFromHROW(This,hRow,ppwszURL)
  13560.  
  13561. #endif /* COBJMACROS */
  13562.  
  13563.  
  13564. #endif     /* C style interface */
  13565.  
  13566.  
  13567.  
  13568. HRESULT STDMETHODCALLTYPE IGetRow_GetRowFromHROW_Proxy( 
  13569.     IGetRow __RPC_FAR * This,
  13570.     /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13571.     /* [in] */ HROW hRow,
  13572.     /* [in] */ REFIID riid,
  13573.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13574.  
  13575.  
  13576. void __RPC_STUB IGetRow_GetRowFromHROW_Stub(
  13577.     IRpcStubBuffer *This,
  13578.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13579.     PRPC_MESSAGE _pRpcMessage,
  13580.     DWORD *_pdwStubPhase);
  13581.  
  13582.  
  13583. HRESULT STDMETHODCALLTYPE IGetRow_GetURLFromHROW_Proxy( 
  13584.     IGetRow __RPC_FAR * This,
  13585.     /* [in] */ HROW hRow,
  13586.     /* [out] */ LPOLESTR __RPC_FAR *ppwszURL);
  13587.  
  13588.  
  13589. void __RPC_STUB IGetRow_GetURLFromHROW_Stub(
  13590.     IRpcStubBuffer *This,
  13591.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13592.     PRPC_MESSAGE _pRpcMessage,
  13593.     DWORD *_pdwStubPhase);
  13594.  
  13595.  
  13596.  
  13597. #endif     /* __IGetRow_INTERFACE_DEFINED__ */
  13598.  
  13599.  
  13600. #ifndef __IBindResource_INTERFACE_DEFINED__
  13601. #define __IBindResource_INTERFACE_DEFINED__
  13602.  
  13603. /****************************************
  13604.  * Generated header for interface: IBindResource
  13605.  * at Thu Nov 12 23:35:28 1998
  13606.  * using MIDL 3.01.75
  13607.  ****************************************/
  13608. /* [unique][uuid][object] */ 
  13609.  
  13610.  
  13611.  
  13612. EXTERN_C const IID IID_IBindResource;
  13613.  
  13614. #if defined(__cplusplus) && !defined(CINTERFACE)
  13615.     
  13616.     interface DECLSPEC_UUID("0c733ab1-2a1c-11ce-ade5-00aa0044773d")
  13617.     IBindResource : public IUnknown
  13618.     {
  13619.     public:
  13620.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Bind( 
  13621.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13622.             /* [in] */ LPCOLESTR pwszURL,
  13623.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  13624.             /* [in] */ REFGUID rguid,
  13625.             /* [in] */ REFIID riid,
  13626.             /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13627.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  13628.             /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  13629.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk) = 0;
  13630.         
  13631.     };
  13632.     
  13633. #else     /* C style interface */
  13634.  
  13635.     typedef struct IBindResourceVtbl
  13636.     {
  13637.         BEGIN_INTERFACE
  13638.         
  13639.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13640.             IBindResource __RPC_FAR * This,
  13641.             /* [in] */ REFIID riid,
  13642.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13643.         
  13644.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13645.             IBindResource __RPC_FAR * This);
  13646.         
  13647.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13648.             IBindResource __RPC_FAR * This);
  13649.         
  13650.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Bind )( 
  13651.             IBindResource __RPC_FAR * This,
  13652.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13653.             /* [in] */ LPCOLESTR pwszURL,
  13654.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  13655.             /* [in] */ REFGUID rguid,
  13656.             /* [in] */ REFIID riid,
  13657.             /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13658.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  13659.             /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  13660.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13661.         
  13662.         END_INTERFACE
  13663.     } IBindResourceVtbl;
  13664.  
  13665.     interface IBindResource
  13666.     {
  13667.         CONST_VTBL struct IBindResourceVtbl __RPC_FAR *lpVtbl;
  13668.     };
  13669.  
  13670.     
  13671.  
  13672. #ifdef COBJMACROS
  13673.  
  13674.  
  13675. #define IBindResource_QueryInterface(This,riid,ppvObject)    \
  13676.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13677.  
  13678. #define IBindResource_AddRef(This)    \
  13679.     (This)->lpVtbl -> AddRef(This)
  13680.  
  13681. #define IBindResource_Release(This)    \
  13682.     (This)->lpVtbl -> Release(This)
  13683.  
  13684.  
  13685. #define IBindResource_Bind(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppUnk)    \
  13686.     (This)->lpVtbl -> Bind(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppUnk)
  13687.  
  13688. #endif /* COBJMACROS */
  13689.  
  13690.  
  13691. #endif     /* C style interface */
  13692.  
  13693.  
  13694.  
  13695. /* [call_as] */ HRESULT STDMETHODCALLTYPE IBindResource_RemoteBind_Proxy( 
  13696.     IBindResource __RPC_FAR * This,
  13697.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13698.     /* [in] */ LPCOLESTR pwszURL,
  13699.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  13700.     /* [in] */ REFGUID rguid,
  13701.     /* [in] */ REFIID riid,
  13702.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13703.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  13704.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  13705.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13706.  
  13707.  
  13708. void __RPC_STUB IBindResource_RemoteBind_Stub(
  13709.     IRpcStubBuffer *This,
  13710.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13711.     PRPC_MESSAGE _pRpcMessage,
  13712.     DWORD *_pdwStubPhase);
  13713.  
  13714.  
  13715.  
  13716. #endif     /* __IBindResource_INTERFACE_DEFINED__ */
  13717.  
  13718.  
  13719. #ifndef __IScopedOperations_INTERFACE_DEFINED__
  13720. #define __IScopedOperations_INTERFACE_DEFINED__
  13721.  
  13722. /****************************************
  13723.  * Generated header for interface: IScopedOperations
  13724.  * at Thu Nov 12 23:35:28 1998
  13725.  * using MIDL 3.01.75
  13726.  ****************************************/
  13727. /* [unique][uuid][object] */ 
  13728.  
  13729.  
  13730. typedef DWORD DBCOPYFLAGS;
  13731.  
  13732.  
  13733. enum DBCOPYFLAGSENUM
  13734.     {    DBCOPY_ASYNC    = 0x100,
  13735.     DBCOPY_REPLACE_EXISTING    = 0x200,
  13736.     DBCOPY_ALLOW_EMULATION    = 0x400,
  13737.     DBCOPY_NON_RECURSIVE    = 0x800,
  13738.     DBCOPY_ATOMIC    = 0x1000
  13739.     };
  13740. typedef DWORD DBMOVEFLAGS;
  13741.  
  13742.  
  13743. enum DBMOVEFLAGSENUM
  13744.     {    DBMOVE_REPLACE_EXISTING    = 0x1,
  13745.     DBMOVE_ASYNC    = 0x100,
  13746.     DBMOVE_DONT_UPDATE_LINKS    = 0x200,
  13747.     DBMOVE_ALLOW_EMULATION    = 0x400,
  13748.     DBMOVE_ATOMIC    = 0x1000
  13749.     };
  13750. typedef DWORD DBDELETEFLAGS;
  13751.  
  13752.  
  13753. enum DBDELETEFLAGSENUM
  13754.     {    DBDELETE_ASYNC    = 0x100,
  13755.     DBDELETE_ATOMIC    = 0x1000
  13756.     };
  13757.  
  13758. EXTERN_C const IID IID_IScopedOperations;
  13759.  
  13760. #if defined(__cplusplus) && !defined(CINTERFACE)
  13761.     
  13762.     interface DECLSPEC_UUID("0c733ab0-2a1c-11ce-ade5-00aa0044773d")
  13763.     IScopedOperations : public IBindResource
  13764.     {
  13765.     public:
  13766.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Copy( 
  13767.             /* [in] */ ULONG cRows,
  13768.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  13769.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  13770.             /* [in] */ DWORD dwCopyFlags,
  13771.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13772.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  13773.             /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  13774.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer) = 0;
  13775.         
  13776.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Move( 
  13777.             /* [in] */ ULONG cRows,
  13778.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  13779.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  13780.             /* [in] */ DWORD dwMoveFlags,
  13781.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13782.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  13783.             /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  13784.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer) = 0;
  13785.         
  13786.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Delete( 
  13787.             /* [in] */ ULONG cRows,
  13788.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszURLs[  ],
  13789.             /* [in] */ DWORD dwDeleteFlags,
  13790.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]) = 0;
  13791.         
  13792.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenRowset( 
  13793.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13794.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  13795.             /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  13796.             /* [in] */ REFIID riid,
  13797.             /* [in] */ ULONG cPropertySets,
  13798.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  13799.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  13800.         
  13801.     };
  13802.     
  13803. #else     /* C style interface */
  13804.  
  13805.     typedef struct IScopedOperationsVtbl
  13806.     {
  13807.         BEGIN_INTERFACE
  13808.         
  13809.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13810.             IScopedOperations __RPC_FAR * This,
  13811.             /* [in] */ REFIID riid,
  13812.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13813.         
  13814.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13815.             IScopedOperations __RPC_FAR * This);
  13816.         
  13817.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13818.             IScopedOperations __RPC_FAR * This);
  13819.         
  13820.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Bind )( 
  13821.             IScopedOperations __RPC_FAR * This,
  13822.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13823.             /* [in] */ LPCOLESTR pwszURL,
  13824.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  13825.             /* [in] */ REFGUID rguid,
  13826.             /* [in] */ REFIID riid,
  13827.             /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13828.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  13829.             /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  13830.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13831.         
  13832.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Copy )( 
  13833.             IScopedOperations __RPC_FAR * This,
  13834.             /* [in] */ ULONG cRows,
  13835.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  13836.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  13837.             /* [in] */ DWORD dwCopyFlags,
  13838.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13839.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  13840.             /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  13841.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  13842.         
  13843.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Move )( 
  13844.             IScopedOperations __RPC_FAR * This,
  13845.             /* [in] */ ULONG cRows,
  13846.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  13847.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  13848.             /* [in] */ DWORD dwMoveFlags,
  13849.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13850.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  13851.             /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  13852.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  13853.         
  13854.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  13855.             IScopedOperations __RPC_FAR * This,
  13856.             /* [in] */ ULONG cRows,
  13857.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszURLs[  ],
  13858.             /* [in] */ DWORD dwDeleteFlags,
  13859.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]);
  13860.         
  13861.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenRowset )( 
  13862.             IScopedOperations __RPC_FAR * This,
  13863.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13864.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  13865.             /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  13866.             /* [in] */ REFIID riid,
  13867.             /* [in] */ ULONG cPropertySets,
  13868.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  13869.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  13870.         
  13871.         END_INTERFACE
  13872.     } IScopedOperationsVtbl;
  13873.  
  13874.     interface IScopedOperations
  13875.     {
  13876.         CONST_VTBL struct IScopedOperationsVtbl __RPC_FAR *lpVtbl;
  13877.     };
  13878.  
  13879.     
  13880.  
  13881. #ifdef COBJMACROS
  13882.  
  13883.  
  13884. #define IScopedOperations_QueryInterface(This,riid,ppvObject)    \
  13885.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13886.  
  13887. #define IScopedOperations_AddRef(This)    \
  13888.     (This)->lpVtbl -> AddRef(This)
  13889.  
  13890. #define IScopedOperations_Release(This)    \
  13891.     (This)->lpVtbl -> Release(This)
  13892.  
  13893.  
  13894. #define IScopedOperations_Bind(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppUnk)    \
  13895.     (This)->lpVtbl -> Bind(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppUnk)
  13896.  
  13897.  
  13898. #define IScopedOperations_Copy(This,cRows,rgpwszSourceURLs,rgpwszDestURLs,dwCopyFlags,pAuthenticate,rgdwStatus,rgpwszNewURLs,ppStringsBuffer)    \
  13899.     (This)->lpVtbl -> Copy(This,cRows,rgpwszSourceURLs,rgpwszDestURLs,dwCopyFlags,pAuthenticate,rgdwStatus,rgpwszNewURLs,ppStringsBuffer)
  13900.  
  13901. #define IScopedOperations_Move(This,cRows,rgpwszSourceURLs,rgpwszDestURLs,dwMoveFlags,pAuthenticate,rgdwStatus,rgpwszNewURLs,ppStringsBuffer)    \
  13902.     (This)->lpVtbl -> Move(This,cRows,rgpwszSourceURLs,rgpwszDestURLs,dwMoveFlags,pAuthenticate,rgdwStatus,rgpwszNewURLs,ppStringsBuffer)
  13903.  
  13904. #define IScopedOperations_Delete(This,cRows,rgpwszURLs,dwDeleteFlags,rgdwStatus)    \
  13905.     (This)->lpVtbl -> Delete(This,cRows,rgpwszURLs,dwDeleteFlags,rgdwStatus)
  13906.  
  13907. #define IScopedOperations_OpenRowset(This,pUnkOuter,pTableID,pIndexID,riid,cPropertySets,rgPropertySets,ppRowset)    \
  13908.     (This)->lpVtbl -> OpenRowset(This,pUnkOuter,pTableID,pIndexID,riid,cPropertySets,rgPropertySets,ppRowset)
  13909.  
  13910. #endif /* COBJMACROS */
  13911.  
  13912.  
  13913. #endif     /* C style interface */
  13914.  
  13915.  
  13916.  
  13917. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_RemoteCopy_Proxy( 
  13918.     IScopedOperations __RPC_FAR * This,
  13919.     /* [in] */ ULONG cRows,
  13920.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszSourceURLs,
  13921.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszDestURLs,
  13922.     /* [in] */ DWORD dwCopyFlags,
  13923.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13924.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus,
  13925.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgulNewURLOffsets,
  13926.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  13927.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  13928.  
  13929.  
  13930. void __RPC_STUB IScopedOperations_RemoteCopy_Stub(
  13931.     IRpcStubBuffer *This,
  13932.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13933.     PRPC_MESSAGE _pRpcMessage,
  13934.     DWORD *_pdwStubPhase);
  13935.  
  13936.  
  13937. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_RemoteMove_Proxy( 
  13938.     IScopedOperations __RPC_FAR * This,
  13939.     /* [in] */ ULONG cRows,
  13940.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszSourceURLs,
  13941.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszDestURLs,
  13942.     /* [in] */ DWORD dwMoveFlags,
  13943.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13944.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus,
  13945.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgulNewURLOffsets,
  13946.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  13947.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  13948.  
  13949.  
  13950. void __RPC_STUB IScopedOperations_RemoteMove_Stub(
  13951.     IRpcStubBuffer *This,
  13952.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13953.     PRPC_MESSAGE _pRpcMessage,
  13954.     DWORD *_pdwStubPhase);
  13955.  
  13956.  
  13957. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_RemoteDelete_Proxy( 
  13958.     IScopedOperations __RPC_FAR * This,
  13959.     /* [in] */ ULONG cRows,
  13960.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszURLs,
  13961.     /* [in] */ DWORD dwDeleteFlags,
  13962.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus);
  13963.  
  13964.  
  13965. void __RPC_STUB IScopedOperations_RemoteDelete_Stub(
  13966.     IRpcStubBuffer *This,
  13967.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13968.     PRPC_MESSAGE _pRpcMessage,
  13969.     DWORD *_pdwStubPhase);
  13970.  
  13971.  
  13972. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_RemoteOpenRowset_Proxy( 
  13973.     IScopedOperations __RPC_FAR * This,
  13974.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13975.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  13976.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  13977.     /* [in] */ REFIID riid,
  13978.     /* [in] */ ULONG cPropertySets,
  13979.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  13980.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  13981.     /* [in] */ ULONG cTotalProps,
  13982.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus);
  13983.  
  13984.  
  13985. void __RPC_STUB IScopedOperations_RemoteOpenRowset_Stub(
  13986.     IRpcStubBuffer *This,
  13987.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13988.     PRPC_MESSAGE _pRpcMessage,
  13989.     DWORD *_pdwStubPhase);
  13990.  
  13991.  
  13992.  
  13993. #endif     /* __IScopedOperations_INTERFACE_DEFINED__ */
  13994.  
  13995.  
  13996. #ifndef __ICreateRow_INTERFACE_DEFINED__
  13997. #define __ICreateRow_INTERFACE_DEFINED__
  13998.  
  13999. /****************************************
  14000.  * Generated header for interface: ICreateRow
  14001.  * at Thu Nov 12 23:35:28 1998
  14002.  * using MIDL 3.01.75
  14003.  ****************************************/
  14004. /* [unique][uuid][object] */ 
  14005.  
  14006.  
  14007.  
  14008. EXTERN_C const IID IID_ICreateRow;
  14009.  
  14010. #if defined(__cplusplus) && !defined(CINTERFACE)
  14011.     
  14012.     interface DECLSPEC_UUID("0c733ab2-2a1c-11ce-ade5-00aa0044773d")
  14013.     ICreateRow : public IUnknown
  14014.     {
  14015.     public:
  14016.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateRow( 
  14017.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  14018.             /* [in] */ LPCOLESTR pwszURL,
  14019.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  14020.             /* [in] */ REFGUID rguid,
  14021.             /* [in] */ REFIID riid,
  14022.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  14023.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  14024.             /* [out][in] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  14025.             /* [out] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  14026.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk) = 0;
  14027.         
  14028.     };
  14029.     
  14030. #else     /* C style interface */
  14031.  
  14032.     typedef struct ICreateRowVtbl
  14033.     {
  14034.         BEGIN_INTERFACE
  14035.         
  14036.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14037.             ICreateRow __RPC_FAR * This,
  14038.             /* [in] */ REFIID riid,
  14039.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14040.         
  14041.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14042.             ICreateRow __RPC_FAR * This);
  14043.         
  14044.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14045.             ICreateRow __RPC_FAR * This);
  14046.         
  14047.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateRow )( 
  14048.             ICreateRow __RPC_FAR * This,
  14049.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  14050.             /* [in] */ LPCOLESTR pwszURL,
  14051.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  14052.             /* [in] */ REFGUID rguid,
  14053.             /* [in] */ REFIID riid,
  14054.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  14055.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  14056.             /* [out][in] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  14057.             /* [out] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  14058.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  14059.         
  14060.         END_INTERFACE
  14061.     } ICreateRowVtbl;
  14062.  
  14063.     interface ICreateRow
  14064.     {
  14065.         CONST_VTBL struct ICreateRowVtbl __RPC_FAR *lpVtbl;
  14066.     };
  14067.  
  14068.     
  14069.  
  14070. #ifdef COBJMACROS
  14071.  
  14072.  
  14073. #define ICreateRow_QueryInterface(This,riid,ppvObject)    \
  14074.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14075.  
  14076. #define ICreateRow_AddRef(This)    \
  14077.     (This)->lpVtbl -> AddRef(This)
  14078.  
  14079. #define ICreateRow_Release(This)    \
  14080.     (This)->lpVtbl -> Release(This)
  14081.  
  14082.  
  14083. #define ICreateRow_CreateRow(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppwszNewURL,ppUnk)    \
  14084.     (This)->lpVtbl -> CreateRow(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppwszNewURL,ppUnk)
  14085.  
  14086. #endif /* COBJMACROS */
  14087.  
  14088.  
  14089. #endif     /* C style interface */
  14090.  
  14091.  
  14092.  
  14093. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICreateRow_RemoteCreateRow_Proxy( 
  14094.     ICreateRow __RPC_FAR * This,
  14095.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  14096.     /* [in] */ LPCOLESTR pwszURL,
  14097.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  14098.     /* [in] */ REFGUID rguid,
  14099.     /* [in] */ REFIID riid,
  14100.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  14101.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  14102.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  14103.     /* [unique][out][in] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  14104.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  14105.  
  14106.  
  14107. void __RPC_STUB ICreateRow_RemoteCreateRow_Stub(
  14108.     IRpcStubBuffer *This,
  14109.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14110.     PRPC_MESSAGE _pRpcMessage,
  14111.     DWORD *_pdwStubPhase);
  14112.  
  14113.  
  14114.  
  14115. #endif     /* __ICreateRow_INTERFACE_DEFINED__ */
  14116.  
  14117.  
  14118. #ifndef __IDBBinderProperties_INTERFACE_DEFINED__
  14119. #define __IDBBinderProperties_INTERFACE_DEFINED__
  14120.  
  14121. /****************************************
  14122.  * Generated header for interface: IDBBinderProperties
  14123.  * at Thu Nov 12 23:35:28 1998
  14124.  * using MIDL 3.01.75
  14125.  ****************************************/
  14126. /* [unique][uuid][object] */ 
  14127.  
  14128.  
  14129.  
  14130. EXTERN_C const IID IID_IDBBinderProperties;
  14131.  
  14132. #if defined(__cplusplus) && !defined(CINTERFACE)
  14133.     
  14134.     interface DECLSPEC_UUID("0c733ab3-2a1c-11ce-ade5-00aa0044773d")
  14135.     IDBBinderProperties : public IDBProperties
  14136.     {
  14137.     public:
  14138.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  14139.         
  14140.     };
  14141.     
  14142. #else     /* C style interface */
  14143.  
  14144.     typedef struct IDBBinderPropertiesVtbl
  14145.     {
  14146.         BEGIN_INTERFACE
  14147.         
  14148.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14149.             IDBBinderProperties __RPC_FAR * This,
  14150.             /* [in] */ REFIID riid,
  14151.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14152.         
  14153.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14154.             IDBBinderProperties __RPC_FAR * This);
  14155.         
  14156.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14157.             IDBBinderProperties __RPC_FAR * This);
  14158.         
  14159.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  14160.             IDBBinderProperties __RPC_FAR * This,
  14161.             /* [in] */ ULONG cPropertyIDSets,
  14162.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  14163.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  14164.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  14165.         
  14166.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPropertyInfo )( 
  14167.             IDBBinderProperties __RPC_FAR * This,
  14168.             /* [in] */ ULONG cPropertyIDSets,
  14169.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  14170.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  14171.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  14172.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  14173.         
  14174.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProperties )( 
  14175.             IDBBinderProperties __RPC_FAR * This,
  14176.             /* [in] */ ULONG cPropertySets,
  14177.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  14178.         
  14179.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Reset )( 
  14180.             IDBBinderProperties __RPC_FAR * This);
  14181.         
  14182.         END_INTERFACE
  14183.     } IDBBinderPropertiesVtbl;
  14184.  
  14185.     interface IDBBinderProperties
  14186.     {
  14187.         CONST_VTBL struct IDBBinderPropertiesVtbl __RPC_FAR *lpVtbl;
  14188.     };
  14189.  
  14190.     
  14191.  
  14192. #ifdef COBJMACROS
  14193.  
  14194.  
  14195. #define IDBBinderProperties_QueryInterface(This,riid,ppvObject)    \
  14196.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14197.  
  14198. #define IDBBinderProperties_AddRef(This)    \
  14199.     (This)->lpVtbl -> AddRef(This)
  14200.  
  14201. #define IDBBinderProperties_Release(This)    \
  14202.     (This)->lpVtbl -> Release(This)
  14203.  
  14204.  
  14205. #define IDBBinderProperties_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  14206.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  14207.  
  14208. #define IDBBinderProperties_GetPropertyInfo(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)    \
  14209.     (This)->lpVtbl -> GetPropertyInfo(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)
  14210.  
  14211. #define IDBBinderProperties_SetProperties(This,cPropertySets,rgPropertySets)    \
  14212.     (This)->lpVtbl -> SetProperties(This,cPropertySets,rgPropertySets)
  14213.  
  14214.  
  14215. #define IDBBinderProperties_Reset(This)    \
  14216.     (This)->lpVtbl -> Reset(This)
  14217.  
  14218. #endif /* COBJMACROS */
  14219.  
  14220.  
  14221. #endif     /* C style interface */
  14222.  
  14223.  
  14224.  
  14225. HRESULT STDMETHODCALLTYPE IDBBinderProperties_Reset_Proxy( 
  14226.     IDBBinderProperties __RPC_FAR * This);
  14227.  
  14228.  
  14229. void __RPC_STUB IDBBinderProperties_Reset_Stub(
  14230.     IRpcStubBuffer *This,
  14231.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14232.     PRPC_MESSAGE _pRpcMessage,
  14233.     DWORD *_pdwStubPhase);
  14234.  
  14235.  
  14236.  
  14237. #endif     /* __IDBBinderProperties_INTERFACE_DEFINED__ */
  14238.  
  14239.  
  14240. #ifndef __IColumnsInfo2_INTERFACE_DEFINED__
  14241. #define __IColumnsInfo2_INTERFACE_DEFINED__
  14242.  
  14243. /****************************************
  14244.  * Generated header for interface: IColumnsInfo2
  14245.  * at Thu Nov 12 23:35:28 1998
  14246.  * using MIDL 3.01.75
  14247.  ****************************************/
  14248. /* [unique][uuid][object] */ 
  14249.  
  14250.  
  14251.  
  14252. EXTERN_C const IID IID_IColumnsInfo2;
  14253.  
  14254. #if defined(__cplusplus) && !defined(CINTERFACE)
  14255.     
  14256.     interface DECLSPEC_UUID("0c733ab8-2a1c-11ce-ade5-00aa0044773d")
  14257.     IColumnsInfo2 : public IColumnsInfo
  14258.     {
  14259.     public:
  14260.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRestrictedColumnInfo( 
  14261.             /* [in] */ ULONG cColumnIDMasks,
  14262.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDMasks[  ],
  14263.             /* [in] */ DWORD dwFlags,
  14264.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  14265.             /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  14266.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  14267.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer) = 0;
  14268.         
  14269.     };
  14270.     
  14271. #else     /* C style interface */
  14272.  
  14273.     typedef struct IColumnsInfo2Vtbl
  14274.     {
  14275.         BEGIN_INTERFACE
  14276.         
  14277.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14278.             IColumnsInfo2 __RPC_FAR * This,
  14279.             /* [in] */ REFIID riid,
  14280.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14281.         
  14282.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14283.             IColumnsInfo2 __RPC_FAR * This);
  14284.         
  14285.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14286.             IColumnsInfo2 __RPC_FAR * This);
  14287.         
  14288.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetColumnInfo )( 
  14289.             IColumnsInfo2 __RPC_FAR * This,
  14290.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  14291.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  14292.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  14293.         
  14294.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MapColumnIDs )( 
  14295.             IColumnsInfo2 __RPC_FAR * This,
  14296.             /* [in] */ ULONG cColumnIDs,
  14297.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  14298.             /* [size_is][out] */ ULONG __RPC_FAR rgColumns[  ]);
  14299.         
  14300.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRestrictedColumnInfo )( 
  14301.             IColumnsInfo2 __RPC_FAR * This,
  14302.             /* [in] */ ULONG cColumnIDMasks,
  14303.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDMasks[  ],
  14304.             /* [in] */ DWORD dwFlags,
  14305.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  14306.             /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  14307.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  14308.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  14309.         
  14310.         END_INTERFACE
  14311.     } IColumnsInfo2Vtbl;
  14312.  
  14313.     interface IColumnsInfo2
  14314.     {
  14315.         CONST_VTBL struct IColumnsInfo2Vtbl __RPC_FAR *lpVtbl;
  14316.     };
  14317.  
  14318.     
  14319.  
  14320. #ifdef COBJMACROS
  14321.  
  14322.  
  14323. #define IColumnsInfo2_QueryInterface(This,riid,ppvObject)    \
  14324.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14325.  
  14326. #define IColumnsInfo2_AddRef(This)    \
  14327.     (This)->lpVtbl -> AddRef(This)
  14328.  
  14329. #define IColumnsInfo2_Release(This)    \
  14330.     (This)->lpVtbl -> Release(This)
  14331.  
  14332.  
  14333. #define IColumnsInfo2_GetColumnInfo(This,pcColumns,prgInfo,ppStringsBuffer)    \
  14334.     (This)->lpVtbl -> GetColumnInfo(This,pcColumns,prgInfo,ppStringsBuffer)
  14335.  
  14336. #define IColumnsInfo2_MapColumnIDs(This,cColumnIDs,rgColumnIDs,rgColumns)    \
  14337.     (This)->lpVtbl -> MapColumnIDs(This,cColumnIDs,rgColumnIDs,rgColumns)
  14338.  
  14339.  
  14340. #define IColumnsInfo2_GetRestrictedColumnInfo(This,cColumnIDMasks,rgColumnIDMasks,dwFlags,pcColumns,prgColumnIDs,prgColumnInfo,ppStringsBuffer)    \
  14341.     (This)->lpVtbl -> GetRestrictedColumnInfo(This,cColumnIDMasks,rgColumnIDMasks,dwFlags,pcColumns,prgColumnIDs,prgColumnInfo,ppStringsBuffer)
  14342.  
  14343. #endif /* COBJMACROS */
  14344.  
  14345.  
  14346. #endif     /* C style interface */
  14347.  
  14348.  
  14349.  
  14350. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo2_RemoteGetRestrictedColumnInfo_Proxy( 
  14351.     IColumnsInfo2 __RPC_FAR * This,
  14352.     /* [in] */ ULONG cColumnIDMasks,
  14353.     /* [size_is][unique][in] */ const DBID __RPC_FAR *rgColumnIDMasks,
  14354.     /* [in] */ DWORD dwFlags,
  14355.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  14356.     /* [size_is][size_is][unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  14357.     /* [size_is][size_is][unique][out][in] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  14358.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  14359.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgcolumnidOffsets,
  14360.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  14361.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  14362.  
  14363.  
  14364. void __RPC_STUB IColumnsInfo2_RemoteGetRestrictedColumnInfo_Stub(
  14365.     IRpcStubBuffer *This,
  14366.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14367.     PRPC_MESSAGE _pRpcMessage,
  14368.     DWORD *_pdwStubPhase);
  14369.  
  14370.  
  14371.  
  14372. #endif     /* __IColumnsInfo2_INTERFACE_DEFINED__ */
  14373.  
  14374.  
  14375. #ifndef __IRegisterProvider_INTERFACE_DEFINED__
  14376. #define __IRegisterProvider_INTERFACE_DEFINED__
  14377.  
  14378. /****************************************
  14379.  * Generated header for interface: IRegisterProvider
  14380.  * at Thu Nov 12 23:35:28 1998
  14381.  * using MIDL 3.01.75
  14382.  ****************************************/
  14383. /* [unique][uuid][object] */ 
  14384.  
  14385.  
  14386.  
  14387. EXTERN_C const IID IID_IRegisterProvider;
  14388.  
  14389. #if defined(__cplusplus) && !defined(CINTERFACE)
  14390.     
  14391.     interface DECLSPEC_UUID("0c733ab9-2a1c-11ce-ade5-00aa0044773d")
  14392.     IRegisterProvider : public IUnknown
  14393.     {
  14394.     public:
  14395.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetURLMapping( 
  14396.             /* [in] */ LPCOLESTR pwszURL,
  14397.             /* [in] */ DWORD dwReserved,
  14398.             /* [out] */ CLSID __RPC_FAR *pclsidProvider) = 0;
  14399.         
  14400.         virtual HRESULT STDMETHODCALLTYPE SetURLMapping( 
  14401.             /* [unique][in] */ LPCOLESTR pwszURL,
  14402.             /* [in] */ DWORD dwReserved,
  14403.             /* [unique][in] */ REFCLSID rclsidProvider) = 0;
  14404.         
  14405.         virtual HRESULT STDMETHODCALLTYPE UnregisterProvider( 
  14406.             /* [unique][in] */ LPCOLESTR pwszURL,
  14407.             /* [in] */ DWORD dwReserved,
  14408.             /* [unique][in] */ REFCLSID rclsidProvider) = 0;
  14409.         
  14410.     };
  14411.     
  14412. #else     /* C style interface */
  14413.  
  14414.     typedef struct IRegisterProviderVtbl
  14415.     {
  14416.         BEGIN_INTERFACE
  14417.         
  14418.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14419.             IRegisterProvider __RPC_FAR * This,
  14420.             /* [in] */ REFIID riid,
  14421.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14422.         
  14423.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14424.             IRegisterProvider __RPC_FAR * This);
  14425.         
  14426.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14427.             IRegisterProvider __RPC_FAR * This);
  14428.         
  14429.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetURLMapping )( 
  14430.             IRegisterProvider __RPC_FAR * This,
  14431.             /* [in] */ LPCOLESTR pwszURL,
  14432.             /* [in] */ DWORD dwReserved,
  14433.             /* [out] */ CLSID __RPC_FAR *pclsidProvider);
  14434.         
  14435.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetURLMapping )( 
  14436.             IRegisterProvider __RPC_FAR * This,
  14437.             /* [unique][in] */ LPCOLESTR pwszURL,
  14438.             /* [in] */ DWORD dwReserved,
  14439.             /* [unique][in] */ REFCLSID rclsidProvider);
  14440.         
  14441.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UnregisterProvider )( 
  14442.             IRegisterProvider __RPC_FAR * This,
  14443.             /* [unique][in] */ LPCOLESTR pwszURL,
  14444.             /* [in] */ DWORD dwReserved,
  14445.             /* [unique][in] */ REFCLSID rclsidProvider);
  14446.         
  14447.         END_INTERFACE
  14448.     } IRegisterProviderVtbl;
  14449.  
  14450.     interface IRegisterProvider
  14451.     {
  14452.         CONST_VTBL struct IRegisterProviderVtbl __RPC_FAR *lpVtbl;
  14453.     };
  14454.  
  14455.     
  14456.  
  14457. #ifdef COBJMACROS
  14458.  
  14459.  
  14460. #define IRegisterProvider_QueryInterface(This,riid,ppvObject)    \
  14461.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14462.  
  14463. #define IRegisterProvider_AddRef(This)    \
  14464.     (This)->lpVtbl -> AddRef(This)
  14465.  
  14466. #define IRegisterProvider_Release(This)    \
  14467.     (This)->lpVtbl -> Release(This)
  14468.  
  14469.  
  14470. #define IRegisterProvider_GetURLMapping(This,pwszURL,dwReserved,pclsidProvider)    \
  14471.     (This)->lpVtbl -> GetURLMapping(This,pwszURL,dwReserved,pclsidProvider)
  14472.  
  14473. #define IRegisterProvider_SetURLMapping(This,pwszURL,dwReserved,rclsidProvider)    \
  14474.     (This)->lpVtbl -> SetURLMapping(This,pwszURL,dwReserved,rclsidProvider)
  14475.  
  14476. #define IRegisterProvider_UnregisterProvider(This,pwszURL,dwReserved,rclsidProvider)    \
  14477.     (This)->lpVtbl -> UnregisterProvider(This,pwszURL,dwReserved,rclsidProvider)
  14478.  
  14479. #endif /* COBJMACROS */
  14480.  
  14481.  
  14482. #endif     /* C style interface */
  14483.  
  14484.  
  14485.  
  14486. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRegisterProvider_RemoteGetURLMapping_Proxy( 
  14487.     IRegisterProvider __RPC_FAR * This,
  14488.     /* [in] */ LPCOLESTR pwszURL,
  14489.     /* [in] */ DWORD dwReserved,
  14490.     /* [out] */ CLSID __RPC_FAR *pclsidProvider);
  14491.  
  14492.  
  14493. void __RPC_STUB IRegisterProvider_RemoteGetURLMapping_Stub(
  14494.     IRpcStubBuffer *This,
  14495.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14496.     PRPC_MESSAGE _pRpcMessage,
  14497.     DWORD *_pdwStubPhase);
  14498.  
  14499.  
  14500. HRESULT STDMETHODCALLTYPE IRegisterProvider_SetURLMapping_Proxy( 
  14501.     IRegisterProvider __RPC_FAR * This,
  14502.     /* [unique][in] */ LPCOLESTR pwszURL,
  14503.     /* [in] */ DWORD dwReserved,
  14504.     /* [unique][in] */ REFCLSID rclsidProvider);
  14505.  
  14506.  
  14507. void __RPC_STUB IRegisterProvider_SetURLMapping_Stub(
  14508.     IRpcStubBuffer *This,
  14509.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14510.     PRPC_MESSAGE _pRpcMessage,
  14511.     DWORD *_pdwStubPhase);
  14512.  
  14513.  
  14514. HRESULT STDMETHODCALLTYPE IRegisterProvider_UnregisterProvider_Proxy( 
  14515.     IRegisterProvider __RPC_FAR * This,
  14516.     /* [unique][in] */ LPCOLESTR pwszURL,
  14517.     /* [in] */ DWORD dwReserved,
  14518.     /* [unique][in] */ REFCLSID rclsidProvider);
  14519.  
  14520.  
  14521. void __RPC_STUB IRegisterProvider_UnregisterProvider_Stub(
  14522.     IRpcStubBuffer *This,
  14523.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14524.     PRPC_MESSAGE _pRpcMessage,
  14525.     DWORD *_pdwStubPhase);
  14526.  
  14527.  
  14528.  
  14529. #endif     /* __IRegisterProvider_INTERFACE_DEFINED__ */
  14530.  
  14531.  
  14532. #ifndef __IGetSession_INTERFACE_DEFINED__
  14533. #define __IGetSession_INTERFACE_DEFINED__
  14534.  
  14535. /****************************************
  14536.  * Generated header for interface: IGetSession
  14537.  * at Thu Nov 12 23:35:28 1998
  14538.  * using MIDL 3.01.75
  14539.  ****************************************/
  14540. /* [unique][uuid][object] */ 
  14541.  
  14542.  
  14543.  
  14544. EXTERN_C const IID IID_IGetSession;
  14545.  
  14546. #if defined(__cplusplus) && !defined(CINTERFACE)
  14547.     
  14548.     interface DECLSPEC_UUID("0c733aba-2a1c-11ce-ade5-00aa0044773d")
  14549.     IGetSession : public IUnknown
  14550.     {
  14551.     public:
  14552.         virtual HRESULT STDMETHODCALLTYPE GetSession( 
  14553.             /* [in] */ REFIID riid,
  14554.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession) = 0;
  14555.         
  14556.     };
  14557.     
  14558. #else     /* C style interface */
  14559.  
  14560.     typedef struct IGetSessionVtbl
  14561.     {
  14562.         BEGIN_INTERFACE
  14563.         
  14564.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14565.             IGetSession __RPC_FAR * This,
  14566.             /* [in] */ REFIID riid,
  14567.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14568.         
  14569.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14570.             IGetSession __RPC_FAR * This);
  14571.         
  14572.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14573.             IGetSession __RPC_FAR * This);
  14574.         
  14575.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSession )( 
  14576.             IGetSession __RPC_FAR * This,
  14577.             /* [in] */ REFIID riid,
  14578.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  14579.         
  14580.         END_INTERFACE
  14581.     } IGetSessionVtbl;
  14582.  
  14583.     interface IGetSession
  14584.     {
  14585.         CONST_VTBL struct IGetSessionVtbl __RPC_FAR *lpVtbl;
  14586.     };
  14587.  
  14588.     
  14589.  
  14590. #ifdef COBJMACROS
  14591.  
  14592.  
  14593. #define IGetSession_QueryInterface(This,riid,ppvObject)    \
  14594.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14595.  
  14596. #define IGetSession_AddRef(This)    \
  14597.     (This)->lpVtbl -> AddRef(This)
  14598.  
  14599. #define IGetSession_Release(This)    \
  14600.     (This)->lpVtbl -> Release(This)
  14601.  
  14602.  
  14603. #define IGetSession_GetSession(This,riid,ppSession)    \
  14604.     (This)->lpVtbl -> GetSession(This,riid,ppSession)
  14605.  
  14606. #endif /* COBJMACROS */
  14607.  
  14608.  
  14609. #endif     /* C style interface */
  14610.  
  14611.  
  14612.  
  14613. HRESULT STDMETHODCALLTYPE IGetSession_GetSession_Proxy( 
  14614.     IGetSession __RPC_FAR * This,
  14615.     /* [in] */ REFIID riid,
  14616.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  14617.  
  14618.  
  14619. void __RPC_STUB IGetSession_GetSession_Stub(
  14620.     IRpcStubBuffer *This,
  14621.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14622.     PRPC_MESSAGE _pRpcMessage,
  14623.     DWORD *_pdwStubPhase);
  14624.  
  14625.  
  14626.  
  14627. #endif     /* __IGetSession_INTERFACE_DEFINED__ */
  14628.  
  14629.  
  14630. #ifndef __IGetSourceRow_INTERFACE_DEFINED__
  14631. #define __IGetSourceRow_INTERFACE_DEFINED__
  14632.  
  14633. /****************************************
  14634.  * Generated header for interface: IGetSourceRow
  14635.  * at Thu Nov 12 23:35:28 1998
  14636.  * using MIDL 3.01.75
  14637.  ****************************************/
  14638. /* [unique][uuid][object][local] */ 
  14639.  
  14640.  
  14641.  
  14642. EXTERN_C const IID IID_IGetSourceRow;
  14643.  
  14644. #if defined(__cplusplus) && !defined(CINTERFACE)
  14645.     
  14646.     interface DECLSPEC_UUID("0c733abb-2a1c-11ce-ade5-00aa0044773d")
  14647.     IGetSourceRow : public IUnknown
  14648.     {
  14649.     public:
  14650.         virtual HRESULT STDMETHODCALLTYPE GetSourceRow( 
  14651.             /* [in] */ REFIID riid,
  14652.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRow) = 0;
  14653.         
  14654.     };
  14655.     
  14656. #else     /* C style interface */
  14657.  
  14658.     typedef struct IGetSourceRowVtbl
  14659.     {
  14660.         BEGIN_INTERFACE
  14661.         
  14662.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14663.             IGetSourceRow __RPC_FAR * This,
  14664.             /* [in] */ REFIID riid,
  14665.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14666.         
  14667.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14668.             IGetSourceRow __RPC_FAR * This);
  14669.         
  14670.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14671.             IGetSourceRow __RPC_FAR * This);
  14672.         
  14673.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceRow )( 
  14674.             IGetSourceRow __RPC_FAR * This,
  14675.             /* [in] */ REFIID riid,
  14676.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRow);
  14677.         
  14678.         END_INTERFACE
  14679.     } IGetSourceRowVtbl;
  14680.  
  14681.     interface IGetSourceRow
  14682.     {
  14683.         CONST_VTBL struct IGetSourceRowVtbl __RPC_FAR *lpVtbl;
  14684.     };
  14685.  
  14686.     
  14687.  
  14688. #ifdef COBJMACROS
  14689.  
  14690.  
  14691. #define IGetSourceRow_QueryInterface(This,riid,ppvObject)    \
  14692.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14693.  
  14694. #define IGetSourceRow_AddRef(This)    \
  14695.     (This)->lpVtbl -> AddRef(This)
  14696.  
  14697. #define IGetSourceRow_Release(This)    \
  14698.     (This)->lpVtbl -> Release(This)
  14699.  
  14700.  
  14701. #define IGetSourceRow_GetSourceRow(This,riid,ppRow)    \
  14702.     (This)->lpVtbl -> GetSourceRow(This,riid,ppRow)
  14703.  
  14704. #endif /* COBJMACROS */
  14705.  
  14706.  
  14707. #endif     /* C style interface */
  14708.  
  14709.  
  14710.  
  14711. HRESULT STDMETHODCALLTYPE IGetSourceRow_GetSourceRow_Proxy( 
  14712.     IGetSourceRow __RPC_FAR * This,
  14713.     /* [in] */ REFIID riid,
  14714.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRow);
  14715.  
  14716.  
  14717. void __RPC_STUB IGetSourceRow_GetSourceRow_Stub(
  14718.     IRpcStubBuffer *This,
  14719.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14720.     PRPC_MESSAGE _pRpcMessage,
  14721.     DWORD *_pdwStubPhase);
  14722.  
  14723.  
  14724.  
  14725. #endif     /* __IGetSourceRow_INTERFACE_DEFINED__ */
  14726.  
  14727.  
  14728. #ifndef __IRowsetCurrentIndex_INTERFACE_DEFINED__
  14729. #define __IRowsetCurrentIndex_INTERFACE_DEFINED__
  14730.  
  14731. /****************************************
  14732.  * Generated header for interface: IRowsetCurrentIndex
  14733.  * at Thu Nov 12 23:35:28 1998
  14734.  * using MIDL 3.01.75
  14735.  ****************************************/
  14736. /* [unique][uuid][object][local] */ 
  14737.  
  14738.  
  14739.  
  14740. EXTERN_C const IID IID_IRowsetCurrentIndex;
  14741.  
  14742. #if defined(__cplusplus) && !defined(CINTERFACE)
  14743.     
  14744.     interface DECLSPEC_UUID("0c733abd-2a1c-11ce-ade5-00aa0044773d")
  14745.     IRowsetCurrentIndex : public IRowsetIndex
  14746.     {
  14747.     public:
  14748.         virtual HRESULT STDMETHODCALLTYPE GetIndex( 
  14749.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID) = 0;
  14750.         
  14751.         virtual HRESULT STDMETHODCALLTYPE SetIndex( 
  14752.             /* [in] */ DBID __RPC_FAR *pIndexID) = 0;
  14753.         
  14754.     };
  14755.     
  14756. #else     /* C style interface */
  14757.  
  14758.     typedef struct IRowsetCurrentIndexVtbl
  14759.     {
  14760.         BEGIN_INTERFACE
  14761.         
  14762.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14763.             IRowsetCurrentIndex __RPC_FAR * This,
  14764.             /* [in] */ REFIID riid,
  14765.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14766.         
  14767.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14768.             IRowsetCurrentIndex __RPC_FAR * This);
  14769.         
  14770.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14771.             IRowsetCurrentIndex __RPC_FAR * This);
  14772.         
  14773.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIndexInfo )( 
  14774.             IRowsetCurrentIndex __RPC_FAR * This,
  14775.             /* [out][in] */ ULONG __RPC_FAR *pcKeyColumns,
  14776.             /* [size_is][size_is][out] */ DBINDEXCOLUMNDESC __RPC_FAR *__RPC_FAR *prgIndexColumnDesc,
  14777.             /* [out][in] */ ULONG __RPC_FAR *pcIndexProperties,
  14778.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgIndexProperties);
  14779.         
  14780.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Seek )( 
  14781.             IRowsetCurrentIndex __RPC_FAR * This,
  14782.             /* [in] */ HACCESSOR hAccessor,
  14783.             /* [in] */ ULONG cKeyValues,
  14784.             /* [in] */ void __RPC_FAR *pData,
  14785.             /* [in] */ DBSEEK dwSeekOptions);
  14786.         
  14787.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetRange )( 
  14788.             IRowsetCurrentIndex __RPC_FAR * This,
  14789.             /* [in] */ HACCESSOR hAccessor,
  14790.             /* [in] */ ULONG cStartKeyColumns,
  14791.             /* [in] */ void __RPC_FAR *pStartData,
  14792.             /* [in] */ ULONG cEndKeyColumns,
  14793.             /* [in] */ void __RPC_FAR *pEndData,
  14794.             /* [in] */ DBRANGE dwRangeOptions);
  14795.         
  14796.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIndex )( 
  14797.             IRowsetCurrentIndex __RPC_FAR * This,
  14798.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID);
  14799.         
  14800.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetIndex )( 
  14801.             IRowsetCurrentIndex __RPC_FAR * This,
  14802.             /* [in] */ DBID __RPC_FAR *pIndexID);
  14803.         
  14804.         END_INTERFACE
  14805.     } IRowsetCurrentIndexVtbl;
  14806.  
  14807.     interface IRowsetCurrentIndex
  14808.     {
  14809.         CONST_VTBL struct IRowsetCurrentIndexVtbl __RPC_FAR *lpVtbl;
  14810.     };
  14811.  
  14812.     
  14813.  
  14814. #ifdef COBJMACROS
  14815.  
  14816.  
  14817. #define IRowsetCurrentIndex_QueryInterface(This,riid,ppvObject)    \
  14818.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14819.  
  14820. #define IRowsetCurrentIndex_AddRef(This)    \
  14821.     (This)->lpVtbl -> AddRef(This)
  14822.  
  14823. #define IRowsetCurrentIndex_Release(This)    \
  14824.     (This)->lpVtbl -> Release(This)
  14825.  
  14826.  
  14827. #define IRowsetCurrentIndex_GetIndexInfo(This,pcKeyColumns,prgIndexColumnDesc,pcIndexProperties,prgIndexProperties)    \
  14828.     (This)->lpVtbl -> GetIndexInfo(This,pcKeyColumns,prgIndexColumnDesc,pcIndexProperties,prgIndexProperties)
  14829.  
  14830. #define IRowsetCurrentIndex_Seek(This,hAccessor,cKeyValues,pData,dwSeekOptions)    \
  14831.     (This)->lpVtbl -> Seek(This,hAccessor,cKeyValues,pData,dwSeekOptions)
  14832.  
  14833. #define IRowsetCurrentIndex_SetRange(This,hAccessor,cStartKeyColumns,pStartData,cEndKeyColumns,pEndData,dwRangeOptions)    \
  14834.     (This)->lpVtbl -> SetRange(This,hAccessor,cStartKeyColumns,pStartData,cEndKeyColumns,pEndData,dwRangeOptions)
  14835.  
  14836.  
  14837. #define IRowsetCurrentIndex_GetIndex(This,ppIndexID)    \
  14838.     (This)->lpVtbl -> GetIndex(This,ppIndexID)
  14839.  
  14840. #define IRowsetCurrentIndex_SetIndex(This,pIndexID)    \
  14841.     (This)->lpVtbl -> SetIndex(This,pIndexID)
  14842.  
  14843. #endif /* COBJMACROS */
  14844.  
  14845.  
  14846. #endif     /* C style interface */
  14847.  
  14848.  
  14849.  
  14850. HRESULT STDMETHODCALLTYPE IRowsetCurrentIndex_GetIndex_Proxy( 
  14851.     IRowsetCurrentIndex __RPC_FAR * This,
  14852.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID);
  14853.  
  14854.  
  14855. void __RPC_STUB IRowsetCurrentIndex_GetIndex_Stub(
  14856.     IRpcStubBuffer *This,
  14857.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14858.     PRPC_MESSAGE _pRpcMessage,
  14859.     DWORD *_pdwStubPhase);
  14860.  
  14861.  
  14862. HRESULT STDMETHODCALLTYPE IRowsetCurrentIndex_SetIndex_Proxy( 
  14863.     IRowsetCurrentIndex __RPC_FAR * This,
  14864.     /* [in] */ DBID __RPC_FAR *pIndexID);
  14865.  
  14866.  
  14867. void __RPC_STUB IRowsetCurrentIndex_SetIndex_Stub(
  14868.     IRpcStubBuffer *This,
  14869.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14870.     PRPC_MESSAGE _pRpcMessage,
  14871.     DWORD *_pdwStubPhase);
  14872.  
  14873.  
  14874.  
  14875. #endif     /* __IRowsetCurrentIndex_INTERFACE_DEFINED__ */
  14876.  
  14877.  
  14878. /****************************************
  14879.  * Generated header for interface: __MIDL_itf_oledb_0242
  14880.  * at Thu Nov 12 23:35:28 1998
  14881.  * using MIDL 3.01.75
  14882.  ****************************************/
  14883. /* [local] */ 
  14884.  
  14885.  
  14886. #endif // OLEDBVER >= 0x0210
  14887. //@@@- V2.1
  14888. //
  14889. // IID values
  14890. //
  14891.  
  14892. // IID_IAccessor                 = {0x0c733a8c,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14893. // IID_IRowset                   = {0x0c733a7c,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14894. // IID_IRowsetInfo               = {0x0c733a55,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14895. // IID_IRowsetLocate             = {0x0c733a7d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14896. // IID_IRowsetResynch            = {0x0c733a84,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14897. // IID_IRowsetScroll             = {0x0c733a7e,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14898. // IID_IRowsetChange             = {0x0c733a05,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14899. // IID_IRowsetUpdate             = {0x0c733a6d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14900. // IID_IRowsetIdentity           = {0x0c733a09,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14901. // IID_IRowsetNotify             = {0x0c733a83,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14902. // IID_IRowsetIndex              = {0x0c733a82,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14903. // IID_ICommand                  = {0x0c733a63,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14904. // IID_IMultipleResults          = {0x0c733a90,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14905. // IID_IConvertType              = {0x0c733a88,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14906. // IID_ICommandPrepare           = {0x0c733a26,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14907. // IID_ICommandProperties        = {0x0c733a79,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14908. // IID_ICommandText              = {0x0c733a27,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14909. // IID_ICommandWithParameters    = {0x0c733a64,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14910. // IID_IColumnsRowset            = {0x0c733a10,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14911. // IID_IColumnsInfo              = {0x0c733a11,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14912. // IID_IDBCreateCommand          = {0x0c733a1d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14913. // IID_IDBCreateSession          = {0x0c733a5d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14914. // IID_ISourcesRowset            = {0x0c733a1e,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14915. // IID_IDBProperties             = {0x0c733a8a,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14916. // IID_IDBInitialize             = {0x0c733a8b,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14917. // IID_IDBInfo                   = {0x0c733a89,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14918. // IID_IDBDataSourceAdmin        = {0x0c733a7a,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14919. // IID_ISessionProperties        = {0x0c733a85,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14920. // IID_IIndexDefinition          = {0x0c733a68,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14921. // IID_ITableDefinition          = {0x0c733a86,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14922. // IID_IOpenRowset               = {0x0c733a69,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14923. // IID_IDBSchemaRowset           = {0x0c733a7b,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14924. // IID_IErrorRecords             = {0x0c733a67,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14925. // IID_IErrorLookup              = {0x0c733a66,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14926. // IID_ISQLErrorInfo             = {0x0c733a74,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14927. // IID_IGetDataSource            = {0x0c733a75,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14928. // IID_ITransactionLocal         = {0x0c733a5f,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14929. // IID_ITransactionJoin          = {0x0c733a5e,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14930. // IID_ITransactionObject        = {0x0c733a60,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14931. //@@@+ V1.5
  14932. #if( OLEDBVER >= 0x0150 )
  14933. //IID_IChapteredRowset           = {0x0c733a93,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14934. //IID_IDBAsynchNotify            = {0x0c733a96,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14935. //IID_IDBAsynchStatus            = {0x0c733a95,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14936. //IID_IRowsetFind                = {0x0c733a9d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14937. //IID_IRowPosition               = {0x0c733a94,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14938. //IID_IRowPositionChange         = {0x0997a571,0x126e,0x11d0,{0x9f,0x8a,0x00,0xa0,0xc9,0xa0,0x63,0x1e}}
  14939. //IID_IViewRowset                = {0x0c733a97,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14940. //IID_IViewChapter               = {0x0c733a98,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14941. //IID_IViewSort                  = {0x0c733a9a,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14942. //IID_IViewFilter                = {0x0c733a9b,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14943. //IID_IRowsetView                = {0x0c733a99,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14944. #endif // OLEDBVER >= 0x0150
  14945. //@@@- V1.5
  14946. //@@@+ V2.0
  14947. #if( OLEDBVER >= 0x0200 )
  14948. // IID_IMDDataset                = {0xa07cccd1,0x8148,0x11d0,{0x87,0xbb,0x00,0xc0,0x4f,0xc3,0x39,0x42}}
  14949. // IID_IMDFind                   = {0xa07cccd2,0x8148,0x11d0,{0x87,0xbb,0x00,0xc0,0x4f,0xc3,0x39,0x42}}
  14950. // IID_IMDRangeRowset            = {0x0c733aa0,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14951. // IID_IAlterTable               = {0x0c733aa5,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14952. // IID_IAlterIndex               = {0x0c733aa6,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14953. // IID_ICommandPersist           = {0x0c733aa7,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14954. // IID_IRowsetChapterMember      = {0x0c733aa8,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14955. // IID_IRowsetRefresh            = {0x0c733aa9,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14956. // IID_IParentRowset             = {0x0c733aaa,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14957. #endif // OLEDBVER >= 0x0200
  14958. //@@@- V2.0
  14959. //@@@+ V2.1
  14960. #if( OLEDBVER >= 0x0210 )
  14961. // IID_ITrusteeAdmin                = {0c733aa1,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14962. // IID_ITrusteeGroupAdmin        = {0c733aa2,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14963. // IID_IObjectAccessControl        = {0c733aa3,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14964. // IID_ISecurityInfo                = {0c733aa4,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14965. // IID_IRow                        = {0c733ab4,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14966. // IID_IRowChange                = {0c733ab5,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14967. // IID_IRowSchemaChange            = {0c733aae,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14968. // IID_IGetRow                    = {0c733aaf,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14969. // IID_IScopedOperations            = {0c733ab0,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14970. // IID_IBindResource                = {0c733ab1,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14971. // IID_ICreateRow                = {0c733ab2,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14972. // IID_IDBResetProperties        = {0c733ab3,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14973. // IID_IColumnsInfo2                = {0c733ab8,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14974. // IID_IRegisterProvider         = {0c733ab9,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14975. // IID_IGetSession                 = {0c733aba,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14976. // IID_IGetSourceRow                 = {0c733abb,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14977. // IID_ITableCreation             = {0c733abc,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14978. // IID_IRowsetCurrentIndex         = {0c733abd,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14979. #endif // OLEDBVER >= 0x0210
  14980. //@@@- V2.1
  14981. #include <poppack.h>     // restore original structure packing
  14982.  
  14983.  
  14984. extern RPC_IF_HANDLE __MIDL_itf_oledb_0242_v0_0_c_ifspec;
  14985. extern RPC_IF_HANDLE __MIDL_itf_oledb_0242_v0_0_s_ifspec;
  14986.  
  14987. #ifdef OLEDBPROXY
  14988. /* Additional Prototypes for ALL interfaces */
  14989.  
  14990. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  14991. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  14992. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  14993. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  14994.  
  14995. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long __RPC_FAR *, unsigned long            , VARIANT __RPC_FAR * ); 
  14996. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  14997. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  14998. void                      __RPC_USER  VARIANT_UserFree(     unsigned long __RPC_FAR *, VARIANT __RPC_FAR * ); 
  14999.  
  15000. /* [local] */ HRESULT STDMETHODCALLTYPE IAccessor_AddRefAccessor_Proxy( 
  15001.     IAccessor __RPC_FAR * This,
  15002.     /* [in] */ HACCESSOR hAccessor,
  15003.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount);
  15004.  
  15005.  
  15006. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_AddRefAccessor_Stub( 
  15007.     IAccessor __RPC_FAR * This,
  15008.     /* [in] */ HACCESSOR hAccessor,
  15009.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount,
  15010.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15011.  
  15012. /* [local] */ HRESULT STDMETHODCALLTYPE IAccessor_CreateAccessor_Proxy( 
  15013.     IAccessor __RPC_FAR * This,
  15014.     /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  15015.     /* [in] */ ULONG cBindings,
  15016.     /* [size_is][in] */ const DBBINDING __RPC_FAR rgBindings[  ],
  15017.     /* [in] */ ULONG cbRowSize,
  15018.     /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  15019.     /* [size_is][out] */ DBBINDSTATUS __RPC_FAR rgStatus[  ]);
  15020.  
  15021.  
  15022. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_CreateAccessor_Stub( 
  15023.     IAccessor __RPC_FAR * This,
  15024.     /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  15025.     /* [in] */ ULONG cBindings,
  15026.     /* [size_is][unique][in] */ DBBINDING __RPC_FAR *rgBindings,
  15027.     /* [in] */ ULONG cbRowSize,
  15028.     /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  15029.     /* [size_is][unique][out][in] */ DBBINDSTATUS __RPC_FAR *rgStatus,
  15030.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15031.  
  15032. /* [local] */ HRESULT STDMETHODCALLTYPE IAccessor_GetBindings_Proxy( 
  15033.     IAccessor __RPC_FAR * This,
  15034.     /* [in] */ HACCESSOR hAccessor,
  15035.     /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  15036.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  15037.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings);
  15038.  
  15039.  
  15040. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_GetBindings_Stub( 
  15041.     IAccessor __RPC_FAR * This,
  15042.     /* [in] */ HACCESSOR hAccessor,
  15043.     /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  15044.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  15045.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings,
  15046.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15047.  
  15048. /* [local] */ HRESULT STDMETHODCALLTYPE IAccessor_ReleaseAccessor_Proxy( 
  15049.     IAccessor __RPC_FAR * This,
  15050.     /* [in] */ HACCESSOR hAccessor,
  15051.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount);
  15052.  
  15053.  
  15054. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_ReleaseAccessor_Stub( 
  15055.     IAccessor __RPC_FAR * This,
  15056.     /* [in] */ HACCESSOR hAccessor,
  15057.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount,
  15058.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15059.  
  15060. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetProperties_Proxy( 
  15061.     IRowsetInfo __RPC_FAR * This,
  15062.     /* [in] */ const ULONG cPropertyIDSets,
  15063.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15064.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15065.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  15066.  
  15067.  
  15068. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetProperties_Stub( 
  15069.     IRowsetInfo __RPC_FAR * This,
  15070.     /* [in] */ ULONG cPropertyIDSets,
  15071.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15072.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15073.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  15074.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15075.  
  15076. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetReferencedRowset_Proxy( 
  15077.     IRowsetInfo __RPC_FAR * This,
  15078.     /* [in] */ ULONG iOrdinal,
  15079.     /* [in] */ REFIID riid,
  15080.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset);
  15081.  
  15082.  
  15083. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetReferencedRowset_Stub( 
  15084.     IRowsetInfo __RPC_FAR * This,
  15085.     /* [in] */ ULONG iOrdinal,
  15086.     /* [in] */ REFIID riid,
  15087.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset,
  15088.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15089.  
  15090. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetSpecification_Proxy( 
  15091.     IRowsetInfo __RPC_FAR * This,
  15092.     /* [in] */ REFIID riid,
  15093.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification);
  15094.  
  15095.  
  15096. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetSpecification_Stub( 
  15097.     IRowsetInfo __RPC_FAR * This,
  15098.     /* [in] */ REFIID riid,
  15099.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification,
  15100.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15101.  
  15102. /* [local] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_AddRefChapter_Proxy( 
  15103.     IChapteredRowset __RPC_FAR * This,
  15104.     /* [in] */ HCHAPTER hChapter,
  15105.     /* [out] */ ULONG __RPC_FAR *pcRefCount);
  15106.  
  15107.  
  15108. /* [call_as] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_AddRefChapter_Stub( 
  15109.     IChapteredRowset __RPC_FAR * This,
  15110.     /* [in] */ HCHAPTER hChapter,
  15111.     /* [out] */ ULONG __RPC_FAR *pcRefCount,
  15112.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15113.  
  15114. /* [local] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_ReleaseChapter_Proxy( 
  15115.     IChapteredRowset __RPC_FAR * This,
  15116.     /* [in] */ HCHAPTER hChapter,
  15117.     /* [out] */ ULONG __RPC_FAR *pcRefCount);
  15118.  
  15119.  
  15120. /* [call_as] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_ReleaseChapter_Stub( 
  15121.     IChapteredRowset __RPC_FAR * This,
  15122.     /* [in] */ HCHAPTER hChapter,
  15123.     /* [out] */ ULONG __RPC_FAR *pcRefCount,
  15124.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15125.  
  15126. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_ClearRowPosition_Proxy( 
  15127.     IRowPosition __RPC_FAR * This);
  15128.  
  15129.  
  15130. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_ClearRowPosition_Stub( 
  15131.     IRowPosition __RPC_FAR * This,
  15132.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15133.  
  15134. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_GetRowPosition_Proxy( 
  15135.     IRowPosition __RPC_FAR * This,
  15136.     /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  15137.     /* [out] */ HROW __RPC_FAR *phRow,
  15138.     /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags);
  15139.  
  15140.  
  15141. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_GetRowPosition_Stub( 
  15142.     IRowPosition __RPC_FAR * This,
  15143.     /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  15144.     /* [out] */ HROW __RPC_FAR *phRow,
  15145.     /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags,
  15146.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15147.  
  15148. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_GetRowset_Proxy( 
  15149.     IRowPosition __RPC_FAR * This,
  15150.     /* [in] */ REFIID riid,
  15151.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15152.  
  15153.  
  15154. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_GetRowset_Stub( 
  15155.     IRowPosition __RPC_FAR * This,
  15156.     /* [in] */ REFIID riid,
  15157.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15158.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15159.  
  15160. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_Initialize_Proxy( 
  15161.     IRowPosition __RPC_FAR * This,
  15162.     /* [in] */ IUnknown __RPC_FAR *pRowset);
  15163.  
  15164.  
  15165. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_Initialize_Stub( 
  15166.     IRowPosition __RPC_FAR * This,
  15167.     /* [in] */ IUnknown __RPC_FAR *pRowset,
  15168.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15169.  
  15170. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_SetRowPosition_Proxy( 
  15171.     IRowPosition __RPC_FAR * This,
  15172.     /* [in] */ HCHAPTER hChapter,
  15173.     /* [in] */ HROW hRow,
  15174.     /* [in] */ DBPOSITIONFLAGS dwPositionFlags);
  15175.  
  15176.  
  15177. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_SetRowPosition_Stub( 
  15178.     IRowPosition __RPC_FAR * This,
  15179.     /* [in] */ HCHAPTER hChapter,
  15180.     /* [in] */ HROW hRow,
  15181.     /* [in] */ DBPOSITIONFLAGS dwPositionFlags,
  15182.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15183.  
  15184. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPositionChange_OnRowPositionChange_Proxy( 
  15185.     IRowPositionChange __RPC_FAR * This,
  15186.     /* [in] */ DBREASON eReason,
  15187.     /* [in] */ DBEVENTPHASE ePhase,
  15188.     /* [in] */ BOOL fCantDeny);
  15189.  
  15190.  
  15191. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPositionChange_OnRowPositionChange_Stub( 
  15192.     IRowPositionChange __RPC_FAR * This,
  15193.     /* [in] */ DBREASON eReason,
  15194.     /* [in] */ DBEVENTPHASE ePhase,
  15195.     /* [in] */ BOOL fCantDeny,
  15196.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15197.  
  15198. /* [local] */ HRESULT STDMETHODCALLTYPE IViewRowset_GetSpecification_Proxy( 
  15199.     IViewRowset __RPC_FAR * This,
  15200.     /* [in] */ REFIID riid,
  15201.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject);
  15202.  
  15203.  
  15204. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewRowset_GetSpecification_Stub( 
  15205.     IViewRowset __RPC_FAR * This,
  15206.     /* [in] */ REFIID riid,
  15207.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject,
  15208.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15209.  
  15210. /* [local] */ HRESULT STDMETHODCALLTYPE IViewRowset_OpenViewRowset_Proxy( 
  15211.     IViewRowset __RPC_FAR * This,
  15212.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15213.     /* [in] */ REFIID riid,
  15214.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15215.  
  15216.  
  15217. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewRowset_OpenViewRowset_Stub( 
  15218.     IViewRowset __RPC_FAR * This,
  15219.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15220.     /* [in] */ REFIID riid,
  15221.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15222.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15223.  
  15224. /* [local] */ HRESULT STDMETHODCALLTYPE IViewChapter_GetSpecification_Proxy( 
  15225.     IViewChapter __RPC_FAR * This,
  15226.     /* [in] */ REFIID riid,
  15227.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15228.  
  15229.  
  15230. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewChapter_GetSpecification_Stub( 
  15231.     IViewChapter __RPC_FAR * This,
  15232.     /* [in] */ REFIID riid,
  15233.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15234.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15235.  
  15236. /* [local] */ HRESULT STDMETHODCALLTYPE IViewChapter_OpenViewChapter_Proxy( 
  15237.     IViewChapter __RPC_FAR * This,
  15238.     /* [in] */ HCHAPTER hSource,
  15239.     /* [out] */ HCHAPTER __RPC_FAR *phViewChapter);
  15240.  
  15241.  
  15242. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewChapter_OpenViewChapter_Stub( 
  15243.     IViewChapter __RPC_FAR * This,
  15244.     /* [in] */ HCHAPTER hSource,
  15245.     /* [out] */ HCHAPTER __RPC_FAR *phViewChapter,
  15246.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15247.  
  15248. /* [local] */ HRESULT STDMETHODCALLTYPE IViewSort_GetSortOrder_Proxy( 
  15249.     IViewSort __RPC_FAR * This,
  15250.     /* [out] */ ULONG __RPC_FAR *pcValues,
  15251.     /* [out] */ ULONG __RPC_FAR *__RPC_FAR prgColumns[  ],
  15252.     /* [out] */ DBSORT __RPC_FAR *__RPC_FAR prgOrders[  ]);
  15253.  
  15254.  
  15255. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewSort_GetSortOrder_Stub( 
  15256.     IViewSort __RPC_FAR * This,
  15257.     /* [out][in] */ ULONG __RPC_FAR *pcValues,
  15258.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgColumns,
  15259.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgOrders,
  15260.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15261.  
  15262. /* [local] */ HRESULT STDMETHODCALLTYPE IViewSort_SetSortOrder_Proxy( 
  15263.     IViewSort __RPC_FAR * This,
  15264.     /* [in] */ ULONG cValues,
  15265.     /* [size_is][in] */ const ULONG __RPC_FAR rgColumns[  ],
  15266.     /* [size_is][in] */ const DBSORT __RPC_FAR rgOrders[  ]);
  15267.  
  15268.  
  15269. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewSort_SetSortOrder_Stub( 
  15270.     IViewSort __RPC_FAR * This,
  15271.     /* [in] */ ULONG cValues,
  15272.     /* [size_is][in] */ const ULONG __RPC_FAR *rgColumns,
  15273.     /* [size_is][in] */ const DBSORT __RPC_FAR *rgOrders,
  15274.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15275.  
  15276. /* [local] */ HRESULT STDMETHODCALLTYPE IViewFilter_GetFilterBindings_Proxy( 
  15277.     IViewFilter __RPC_FAR * This,
  15278.     /* [out] */ ULONG __RPC_FAR *pcBindings,
  15279.     /* [out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings);
  15280.  
  15281.  
  15282. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewFilter_GetFilterBindings_Stub( 
  15283.     IViewFilter __RPC_FAR * This,
  15284.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  15285.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings,
  15286.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15287.  
  15288. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetView_CreateView_Proxy( 
  15289.     IRowsetView __RPC_FAR * This,
  15290.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15291.     /* [in] */ REFIID riid,
  15292.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView);
  15293.  
  15294.  
  15295. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetView_CreateView_Stub( 
  15296.     IRowsetView __RPC_FAR * This,
  15297.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15298.     /* [in] */ REFIID riid,
  15299.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView,
  15300.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15301.  
  15302. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetView_GetView_Proxy( 
  15303.     IRowsetView __RPC_FAR * This,
  15304.     /* [in] */ HCHAPTER hChapter,
  15305.     /* [in] */ REFIID riid,
  15306.     /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  15307.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView);
  15308.  
  15309.  
  15310. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetView_GetView_Stub( 
  15311.     IRowsetView __RPC_FAR * This,
  15312.     /* [in] */ HCHAPTER hChapter,
  15313.     /* [in] */ REFIID riid,
  15314.     /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  15315.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView,
  15316.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15317.  
  15318. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetIdentity_IsSameRow_Proxy( 
  15319.     IRowsetIdentity __RPC_FAR * This,
  15320.     /* [in] */ HROW hThisRow,
  15321.     /* [in] */ HROW hThatRow);
  15322.  
  15323.  
  15324. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetIdentity_IsSameRow_Stub( 
  15325.     IRowsetIdentity __RPC_FAR * This,
  15326.     /* [in] */ HROW hThisRow,
  15327.     /* [in] */ HROW hThatRow,
  15328.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15329.  
  15330. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnFieldChange_Proxy( 
  15331.     IRowsetNotify __RPC_FAR * This,
  15332.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15333.     /* [in] */ HROW hRow,
  15334.     /* [in] */ ULONG cColumns,
  15335.     /* [size_is][in] */ ULONG __RPC_FAR rgColumns[  ],
  15336.     /* [in] */ DBREASON eReason,
  15337.     /* [in] */ DBEVENTPHASE ePhase,
  15338.     /* [in] */ BOOL fCantDeny);
  15339.  
  15340.  
  15341. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnFieldChange_Stub( 
  15342.     IRowsetNotify __RPC_FAR * This,
  15343.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15344.     /* [in] */ HROW hRow,
  15345.     /* [in] */ ULONG cColumns,
  15346.     /* [size_is][in] */ ULONG __RPC_FAR *rgColumns,
  15347.     /* [in] */ DBREASON eReason,
  15348.     /* [in] */ DBEVENTPHASE ePhase,
  15349.     /* [in] */ BOOL fCantDeny,
  15350.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15351.  
  15352. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnRowChange_Proxy( 
  15353.     IRowsetNotify __RPC_FAR * This,
  15354.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15355.     /* [in] */ ULONG cRows,
  15356.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  15357.     /* [in] */ DBREASON eReason,
  15358.     /* [in] */ DBEVENTPHASE ePhase,
  15359.     /* [in] */ BOOL fCantDeny);
  15360.  
  15361.  
  15362. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnRowChange_Stub( 
  15363.     IRowsetNotify __RPC_FAR * This,
  15364.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15365.     /* [in] */ ULONG cRows,
  15366.     /* [size_is][in] */ const HROW __RPC_FAR *rghRows,
  15367.     /* [in] */ DBREASON eReason,
  15368.     /* [in] */ DBEVENTPHASE ePhase,
  15369.     /* [in] */ BOOL fCantDeny,
  15370.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15371.  
  15372. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnRowsetChange_Proxy( 
  15373.     IRowsetNotify __RPC_FAR * This,
  15374.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15375.     /* [in] */ DBREASON eReason,
  15376.     /* [in] */ DBEVENTPHASE ePhase,
  15377.     /* [in] */ BOOL fCantDeny);
  15378.  
  15379.  
  15380. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnRowsetChange_Stub( 
  15381.     IRowsetNotify __RPC_FAR * This,
  15382.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15383.     /* [in] */ DBREASON eReason,
  15384.     /* [in] */ DBEVENTPHASE ePhase,
  15385.     /* [in] */ BOOL fCantDeny,
  15386.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15387.  
  15388. /* [local] */ HRESULT STDMETHODCALLTYPE ICommand_Cancel_Proxy( 
  15389.     ICommand __RPC_FAR * This);
  15390.  
  15391.  
  15392. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_Cancel_Stub( 
  15393.     ICommand __RPC_FAR * This,
  15394.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15395.  
  15396. /* [local] */ HRESULT STDMETHODCALLTYPE ICommand_Execute_Proxy( 
  15397.     ICommand __RPC_FAR * This,
  15398.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15399.     /* [in] */ REFIID riid,
  15400.     /* [out][in] */ DBPARAMS __RPC_FAR *pParams,
  15401.     /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  15402.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15403.  
  15404.  
  15405. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_Execute_Stub( 
  15406.     ICommand __RPC_FAR * This,
  15407.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15408.     /* [in] */ REFIID riid,
  15409.     /* [in] */ HACCESSOR hAccessor,
  15410.     /* [in] */ ULONG cParamSets,
  15411.     /* [in] */ ULONG cbData,
  15412.     /* [size_is][unique][out][in] */ BYTE __RPC_FAR *pbData,
  15413.     /* [unique][out][in] */ LONG __RPC_FAR *pcRowsAffected,
  15414.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15415.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15416.  
  15417. /* [local] */ HRESULT STDMETHODCALLTYPE ICommand_GetDBSession_Proxy( 
  15418.     ICommand __RPC_FAR * This,
  15419.     /* [in] */ REFIID riid,
  15420.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  15421.  
  15422.  
  15423. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_GetDBSession_Stub( 
  15424.     ICommand __RPC_FAR * This,
  15425.     /* [in] */ REFIID riid,
  15426.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession,
  15427.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15428.  
  15429. /* [local] */ HRESULT STDMETHODCALLTYPE IMultipleResults_GetResult_Proxy( 
  15430.     IMultipleResults __RPC_FAR * This,
  15431.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15432.     /* [in] */ LONG reserved,
  15433.     /* [in] */ REFIID riid,
  15434.     /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  15435.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15436.  
  15437.  
  15438. /* [call_as] */ HRESULT STDMETHODCALLTYPE IMultipleResults_GetResult_Stub( 
  15439.     IMultipleResults __RPC_FAR * This,
  15440.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15441.     /* [in] */ LONG reserved,
  15442.     /* [in] */ REFIID riid,
  15443.     /* [unique][out][in] */ LONG __RPC_FAR *pcRowsAffected,
  15444.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15445.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15446.  
  15447. /* [local] */ HRESULT STDMETHODCALLTYPE IConvertType_CanConvert_Proxy( 
  15448.     IConvertType __RPC_FAR * This,
  15449.     /* [in] */ DBTYPE wFromType,
  15450.     /* [in] */ DBTYPE wToType,
  15451.     /* [in] */ DBCONVERTFLAGS dwConvertFlags);
  15452.  
  15453.  
  15454. /* [call_as] */ HRESULT STDMETHODCALLTYPE IConvertType_CanConvert_Stub( 
  15455.     IConvertType __RPC_FAR * This,
  15456.     /* [in] */ DBTYPE wFromType,
  15457.     /* [in] */ DBTYPE wToType,
  15458.     /* [in] */ DBCONVERTFLAGS dwConvertFlags,
  15459.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15460.  
  15461. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_Prepare_Proxy( 
  15462.     ICommandPrepare __RPC_FAR * This,
  15463.     /* [in] */ ULONG cExpectedRuns);
  15464.  
  15465.  
  15466. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_Prepare_Stub( 
  15467.     ICommandPrepare __RPC_FAR * This,
  15468.     /* [in] */ ULONG cExpectedRuns,
  15469.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15470.  
  15471. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_Unprepare_Proxy( 
  15472.     ICommandPrepare __RPC_FAR * This);
  15473.  
  15474.  
  15475. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_Unprepare_Stub( 
  15476.     ICommandPrepare __RPC_FAR * This,
  15477.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15478.  
  15479. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandProperties_GetProperties_Proxy( 
  15480.     ICommandProperties __RPC_FAR * This,
  15481.     /* [in] */ const ULONG cPropertyIDSets,
  15482.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15483.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15484.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  15485.  
  15486.  
  15487. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandProperties_GetProperties_Stub( 
  15488.     ICommandProperties __RPC_FAR * This,
  15489.     /* [in] */ const ULONG cPropertyIDSets,
  15490.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15491.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15492.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  15493.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15494.  
  15495. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandProperties_SetProperties_Proxy( 
  15496.     ICommandProperties __RPC_FAR * This,
  15497.     /* [in] */ ULONG cPropertySets,
  15498.     /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  15499.  
  15500.  
  15501. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandProperties_SetProperties_Stub( 
  15502.     ICommandProperties __RPC_FAR * This,
  15503.     /* [in] */ ULONG cPropertySets,
  15504.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15505.     /* [in] */ ULONG cTotalProps,
  15506.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15507.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15508.  
  15509. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandText_GetCommandText_Proxy( 
  15510.     ICommandText __RPC_FAR * This,
  15511.     /* [out][in] */ GUID __RPC_FAR *pguidDialect,
  15512.     /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand);
  15513.  
  15514.  
  15515. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandText_GetCommandText_Stub( 
  15516.     ICommandText __RPC_FAR * This,
  15517.     /* [unique][out][in] */ GUID __RPC_FAR *pguidDialect,
  15518.     /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand,
  15519.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15520.  
  15521. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandText_SetCommandText_Proxy( 
  15522.     ICommandText __RPC_FAR * This,
  15523.     /* [in] */ REFGUID rguidDialect,
  15524.     /* [unique][in] */ LPCOLESTR pwszCommand);
  15525.  
  15526.  
  15527. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandText_SetCommandText_Stub( 
  15528.     ICommandText __RPC_FAR * This,
  15529.     /* [in] */ REFGUID rguidDialect,
  15530.     /* [unique][in] */ LPCOLESTR pwszCommand,
  15531.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15532.  
  15533. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_GetParameterInfo_Proxy( 
  15534.     ICommandWithParameters __RPC_FAR * This,
  15535.     /* [out][in] */ ULONG __RPC_FAR *pcParams,
  15536.     /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  15537.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer);
  15538.  
  15539.  
  15540. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_GetParameterInfo_Stub( 
  15541.     ICommandWithParameters __RPC_FAR * This,
  15542.     /* [out][in] */ ULONG __RPC_FAR *pcParams,
  15543.     /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  15544.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  15545.     /* [out][in] */ ULONG __RPC_FAR *pcbNamesBuffer,
  15546.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer,
  15547.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15548.  
  15549. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_MapParameterNames_Proxy( 
  15550.     ICommandWithParameters __RPC_FAR * This,
  15551.     /* [in] */ ULONG cParamNames,
  15552.     /* [size_is][in] */ const OLECHAR __RPC_FAR *__RPC_FAR rgParamNames[  ],
  15553.     /* [size_is][out] */ LONG __RPC_FAR rgParamOrdinals[  ]);
  15554.  
  15555.  
  15556. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_MapParameterNames_Stub( 
  15557.     ICommandWithParameters __RPC_FAR * This,
  15558.     /* [in] */ ULONG cParamNames,
  15559.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgParamNames,
  15560.     /* [size_is][out] */ LONG __RPC_FAR *rgParamOrdinals,
  15561.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15562.  
  15563. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_SetParameterInfo_Proxy( 
  15564.     ICommandWithParameters __RPC_FAR * This,
  15565.     /* [in] */ ULONG cParams,
  15566.     /* [size_is][unique][in] */ const ULONG __RPC_FAR rgParamOrdinals[  ],
  15567.     /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR rgParamBindInfo[  ]);
  15568.  
  15569.  
  15570. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_SetParameterInfo_Stub( 
  15571.     ICommandWithParameters __RPC_FAR * This,
  15572.     /* [in] */ ULONG cParams,
  15573.     /* [size_is][unique][in] */ const ULONG __RPC_FAR *rgParamOrdinals,
  15574.     /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR *rgParamBindInfo,
  15575.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15576.  
  15577. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_GetAvailableColumns_Proxy( 
  15578.     IColumnsRowset __RPC_FAR * This,
  15579.     /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  15580.     /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns);
  15581.  
  15582.  
  15583. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_GetAvailableColumns_Stub( 
  15584.     IColumnsRowset __RPC_FAR * This,
  15585.     /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  15586.     /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns,
  15587.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15588.  
  15589. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_GetColumnsRowset_Proxy( 
  15590.     IColumnsRowset __RPC_FAR * This,
  15591.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15592.     /* [in] */ ULONG cOptColumns,
  15593.     /* [size_is][in] */ const DBID __RPC_FAR rgOptColumns[  ],
  15594.     /* [in] */ REFIID riid,
  15595.     /* [in] */ ULONG cPropertySets,
  15596.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  15597.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset);
  15598.  
  15599.  
  15600. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_GetColumnsRowset_Stub( 
  15601.     IColumnsRowset __RPC_FAR * This,
  15602.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15603.     /* [in] */ ULONG cOptColumns,
  15604.     /* [size_is][unique][in] */ const DBID __RPC_FAR *rgOptColumns,
  15605.     /* [in] */ REFIID riid,
  15606.     /* [in] */ ULONG cPropertySets,
  15607.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15608.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset,
  15609.     /* [in] */ ULONG cTotalProps,
  15610.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15611.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15612.  
  15613. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_GetColumnInfo_Proxy( 
  15614.     IColumnsInfo __RPC_FAR * This,
  15615.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  15616.     /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  15617.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  15618.  
  15619.  
  15620. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_GetColumnInfo_Stub( 
  15621.     IColumnsInfo __RPC_FAR * This,
  15622.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  15623.     /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  15624.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  15625.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgcolumnidOffsets,
  15626.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  15627.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer,
  15628.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15629.  
  15630. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_MapColumnIDs_Proxy( 
  15631.     IColumnsInfo __RPC_FAR * This,
  15632.     /* [in] */ ULONG cColumnIDs,
  15633.     /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  15634.     /* [size_is][out] */ ULONG __RPC_FAR rgColumns[  ]);
  15635.  
  15636.  
  15637. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_MapColumnIDs_Stub( 
  15638.     IColumnsInfo __RPC_FAR * This,
  15639.     /* [in] */ ULONG cColumnIDs,
  15640.     /* [size_is][in] */ const DBID __RPC_FAR *rgColumnIDs,
  15641.     /* [size_is][out] */ ULONG __RPC_FAR *rgColumns,
  15642.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15643.  
  15644. /* [local] */ HRESULT STDMETHODCALLTYPE IDBCreateCommand_CreateCommand_Proxy( 
  15645.     IDBCreateCommand __RPC_FAR * This,
  15646.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15647.     /* [in] */ REFIID riid,
  15648.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand);
  15649.  
  15650.  
  15651. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBCreateCommand_CreateCommand_Stub( 
  15652.     IDBCreateCommand __RPC_FAR * This,
  15653.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15654.     /* [in] */ REFIID riid,
  15655.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand,
  15656.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15657.  
  15658. /* [local] */ HRESULT STDMETHODCALLTYPE IDBCreateSession_CreateSession_Proxy( 
  15659.     IDBCreateSession __RPC_FAR * This,
  15660.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15661.     /* [in] */ REFIID riid,
  15662.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession);
  15663.  
  15664.  
  15665. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBCreateSession_CreateSession_Stub( 
  15666.     IDBCreateSession __RPC_FAR * This,
  15667.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15668.     /* [in] */ REFIID riid,
  15669.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession,
  15670.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15671.  
  15672. /* [local] */ HRESULT STDMETHODCALLTYPE ISourcesRowset_GetSourcesRowset_Proxy( 
  15673.     ISourcesRowset __RPC_FAR * This,
  15674.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15675.     /* [in] */ REFIID riid,
  15676.     /* [in] */ ULONG cPropertySets,
  15677.     /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgProperties[  ],
  15678.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset);
  15679.  
  15680.  
  15681. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISourcesRowset_GetSourcesRowset_Stub( 
  15682.     ISourcesRowset __RPC_FAR * This,
  15683.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15684.     /* [in] */ REFIID riid,
  15685.     /* [in] */ ULONG cPropertySets,
  15686.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgProperties,
  15687.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset,
  15688.     /* [in] */ ULONG cTotalProps,
  15689.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15690.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15691.  
  15692. /* [local] */ HRESULT STDMETHODCALLTYPE IDBProperties_GetProperties_Proxy( 
  15693.     IDBProperties __RPC_FAR * This,
  15694.     /* [in] */ ULONG cPropertyIDSets,
  15695.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15696.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15697.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  15698.  
  15699.  
  15700. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_GetProperties_Stub( 
  15701.     IDBProperties __RPC_FAR * This,
  15702.     /* [in] */ ULONG cPropertyIDSets,
  15703.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15704.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15705.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  15706.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15707.  
  15708. /* [local] */ HRESULT STDMETHODCALLTYPE IDBProperties_GetPropertyInfo_Proxy( 
  15709.     IDBProperties __RPC_FAR * This,
  15710.     /* [in] */ ULONG cPropertyIDSets,
  15711.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15712.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  15713.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  15714.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  15715.  
  15716.  
  15717. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_GetPropertyInfo_Stub( 
  15718.     IDBProperties __RPC_FAR * This,
  15719.     /* [in] */ ULONG cPropertyIDSets,
  15720.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15721.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  15722.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  15723.     /* [out][in] */ ULONG __RPC_FAR *pcOffsets,
  15724.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgDescOffsets,
  15725.     /* [out][in] */ ULONG __RPC_FAR *pcbDescBuffer,
  15726.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer,
  15727.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15728.  
  15729. /* [local] */ HRESULT STDMETHODCALLTYPE IDBProperties_SetProperties_Proxy( 
  15730.     IDBProperties __RPC_FAR * This,
  15731.     /* [in] */ ULONG cPropertySets,
  15732.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  15733.  
  15734.  
  15735. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_SetProperties_Stub( 
  15736.     IDBProperties __RPC_FAR * This,
  15737.     /* [in] */ ULONG cPropertySets,
  15738.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15739.     /* [in] */ ULONG cTotalProps,
  15740.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15741.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15742.  
  15743. /* [local] */ HRESULT STDMETHODCALLTYPE IDBInitialize_Initialize_Proxy( 
  15744.     IDBInitialize __RPC_FAR * This);
  15745.  
  15746.  
  15747. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInitialize_Initialize_Stub( 
  15748.     IDBInitialize __RPC_FAR * This,
  15749.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15750.  
  15751. /* [local] */ HRESULT STDMETHODCALLTYPE IDBInitialize_Uninitialize_Proxy( 
  15752.     IDBInitialize __RPC_FAR * This);
  15753.  
  15754.  
  15755. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInitialize_Uninitialize_Stub( 
  15756.     IDBInitialize __RPC_FAR * This,
  15757.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15758.  
  15759. /* [local] */ HRESULT STDMETHODCALLTYPE IDBInfo_GetKeywords_Proxy( 
  15760.     IDBInfo __RPC_FAR * This,
  15761.     /* [out] */ LPOLESTR __RPC_FAR *ppwszKeywords);
  15762.  
  15763.  
  15764. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInfo_GetKeywords_Stub( 
  15765.     IDBInfo __RPC_FAR * This,
  15766.     /* [unique][out][in] */ LPOLESTR __RPC_FAR *ppwszKeywords,
  15767.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15768.  
  15769. /* [local] */ HRESULT STDMETHODCALLTYPE IDBInfo_GetLiteralInfo_Proxy( 
  15770.     IDBInfo __RPC_FAR * This,
  15771.     /* [in] */ ULONG cLiterals,
  15772.     /* [size_is][in] */ const DBLITERAL __RPC_FAR rgLiterals[  ],
  15773.     /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  15774.     /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  15775.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer);
  15776.  
  15777.  
  15778. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInfo_GetLiteralInfo_Stub( 
  15779.     IDBInfo __RPC_FAR * This,
  15780.     /* [in] */ ULONG cLiterals,
  15781.     /* [size_is][unique][in] */ const DBLITERAL __RPC_FAR *rgLiterals,
  15782.     /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  15783.     /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  15784.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgLVOffsets,
  15785.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgICOffsets,
  15786.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgISCOffsets,
  15787.     /* [out][in] */ ULONG __RPC_FAR *pcbCharBuffer,
  15788.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer,
  15789.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15790.  
  15791. /* [local] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_CreateDataSource_Proxy( 
  15792.     IDBDataSourceAdmin __RPC_FAR * This,
  15793.     /* [in] */ ULONG cPropertySets,
  15794.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  15795.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15796.     /* [in] */ REFIID riid,
  15797.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession);
  15798.  
  15799.  
  15800. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_CreateDataSource_Stub( 
  15801.     IDBDataSourceAdmin __RPC_FAR * This,
  15802.     /* [in] */ ULONG cPropertySets,
  15803.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15804.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15805.     /* [in] */ REFIID riid,
  15806.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession,
  15807.     /* [in] */ ULONG cTotalProps,
  15808.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15809.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15810.  
  15811. /* [local] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_DestroyDataSource_Proxy( 
  15812.     IDBDataSourceAdmin __RPC_FAR * This);
  15813.  
  15814.  
  15815. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_DestroyDataSource_Stub( 
  15816.     IDBDataSourceAdmin __RPC_FAR * This,
  15817.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15818.  
  15819. /* [local] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_GetCreationProperties_Proxy( 
  15820.     IDBDataSourceAdmin __RPC_FAR * This,
  15821.     /* [in] */ ULONG cPropertyIDSets,
  15822.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15823.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  15824.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  15825.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  15826.  
  15827.  
  15828. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_GetCreationProperties_Stub( 
  15829.     IDBDataSourceAdmin __RPC_FAR * This,
  15830.     /* [in] */ ULONG cPropertyIDSets,
  15831.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15832.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  15833.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  15834.     /* [out][in] */ ULONG __RPC_FAR *pcOffsets,
  15835.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgDescOffsets,
  15836.     /* [out][in] */ ULONG __RPC_FAR *pcbDescBuffer,
  15837.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer,
  15838.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15839.  
  15840. /* [local] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_ModifyDataSource_Proxy( 
  15841.     IDBDataSourceAdmin __RPC_FAR * This,
  15842.     /* [in] */ ULONG cPropertySets,
  15843.     /* [size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  15844.  
  15845.  
  15846. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_ModifyDataSource_Stub( 
  15847.     IDBDataSourceAdmin __RPC_FAR * This,
  15848.     /* [in] */ ULONG cPropertySets,
  15849.     /* [size_is][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15850.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15851.  
  15852. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnLowResource_Proxy( 
  15853.     IDBAsynchNotify __RPC_FAR * This,
  15854.     /* [in] */ DWORD dwReserved);
  15855.  
  15856.  
  15857. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnLowResource_Stub( 
  15858.     IDBAsynchNotify __RPC_FAR * This,
  15859.     /* [in] */ DWORD dwReserved,
  15860.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15861.  
  15862. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnProgress_Proxy( 
  15863.     IDBAsynchNotify __RPC_FAR * This,
  15864.     /* [in] */ HCHAPTER hChapter,
  15865.     /* [in] */ DBASYNCHOP eOperation,
  15866.     /* [in] */ ULONG ulProgress,
  15867.     /* [in] */ ULONG ulProgressMax,
  15868.     /* [in] */ DBASYNCHPHASE eAsynchPhase,
  15869.     /* [in] */ LPOLESTR pwszStatusText);
  15870.  
  15871.  
  15872. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnProgress_Stub( 
  15873.     IDBAsynchNotify __RPC_FAR * This,
  15874.     /* [in] */ HCHAPTER hChapter,
  15875.     /* [in] */ DBASYNCHOP eOperation,
  15876.     /* [in] */ ULONG ulProgress,
  15877.     /* [in] */ ULONG ulProgressMax,
  15878.     /* [in] */ DBASYNCHPHASE eAsynchPhase,
  15879.     /* [in] */ LPOLESTR pwszStatusText,
  15880.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15881.  
  15882. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnStop_Proxy( 
  15883.     IDBAsynchNotify __RPC_FAR * This,
  15884.     /* [in] */ HCHAPTER hChapter,
  15885.     /* [in] */ DBASYNCHOP eOperation,
  15886.     /* [in] */ HRESULT hrStatus,
  15887.     /* [in] */ LPOLESTR pwszStatusText);
  15888.  
  15889.  
  15890. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnStop_Stub( 
  15891.     IDBAsynchNotify __RPC_FAR * This,
  15892.     /* [in] */ HCHAPTER hChapter,
  15893.     /* [in] */ DBASYNCHOP eOperation,
  15894.     /* [in] */ HRESULT hrStatus,
  15895.     /* [in] */ LPOLESTR pwszStatusText,
  15896.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15897.  
  15898. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_Abort_Proxy( 
  15899.     IDBAsynchStatus __RPC_FAR * This,
  15900.     /* [in] */ HCHAPTER hChapter,
  15901.     /* [in] */ DBASYNCHOP eOperation);
  15902.  
  15903.  
  15904. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_Abort_Stub( 
  15905.     IDBAsynchStatus __RPC_FAR * This,
  15906.     /* [in] */ HCHAPTER hChapter,
  15907.     /* [in] */ DBASYNCHOP eOperation,
  15908.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15909.  
  15910. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_GetStatus_Proxy( 
  15911.     IDBAsynchStatus __RPC_FAR * This,
  15912.     /* [in] */ HCHAPTER hChapter,
  15913.     /* [in] */ DBASYNCHOP eOperation,
  15914.     /* [out] */ ULONG __RPC_FAR *pulProgress,
  15915.     /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  15916.     /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  15917.     /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText);
  15918.  
  15919.  
  15920. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_GetStatus_Stub( 
  15921.     IDBAsynchStatus __RPC_FAR * This,
  15922.     /* [in] */ HCHAPTER hChapter,
  15923.     /* [in] */ DBASYNCHOP eOperation,
  15924.     /* [out] */ ULONG __RPC_FAR *pulProgress,
  15925.     /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  15926.     /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  15927.     /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText,
  15928.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15929.  
  15930. /* [local] */ HRESULT STDMETHODCALLTYPE ISessionProperties_GetProperties_Proxy( 
  15931.     ISessionProperties __RPC_FAR * This,
  15932.     /* [in] */ ULONG cPropertyIDSets,
  15933.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15934.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15935.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  15936.  
  15937.  
  15938. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISessionProperties_GetProperties_Stub( 
  15939.     ISessionProperties __RPC_FAR * This,
  15940.     /* [in] */ ULONG cPropertyIDSets,
  15941.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15942.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15943.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  15944.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15945.  
  15946. /* [local] */ HRESULT STDMETHODCALLTYPE ISessionProperties_SetProperties_Proxy( 
  15947.     ISessionProperties __RPC_FAR * This,
  15948.     /* [in] */ ULONG cPropertySets,
  15949.     /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  15950.  
  15951.  
  15952. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISessionProperties_SetProperties_Stub( 
  15953.     ISessionProperties __RPC_FAR * This,
  15954.     /* [in] */ ULONG cPropertySets,
  15955.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15956.     /* [in] */ ULONG cTotalProps,
  15957.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15958.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15959.  
  15960. /* [local] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_CreateIndex_Proxy( 
  15961.     IIndexDefinition __RPC_FAR * This,
  15962.     /* [in] */ DBID __RPC_FAR *pTableID,
  15963.     /* [in] */ DBID __RPC_FAR *pIndexID,
  15964.     /* [in] */ ULONG cIndexColumnDescs,
  15965.     /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR rgIndexColumnDescs[  ],
  15966.     /* [in] */ ULONG cPropertySets,
  15967.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  15968.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID);
  15969.  
  15970.  
  15971. /* [call_as] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_CreateIndex_Stub( 
  15972.     IIndexDefinition __RPC_FAR * This,
  15973.     /* [in] */ DBID __RPC_FAR *pTableID,
  15974.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  15975.     /* [in] */ ULONG cIndexColumnDescs,
  15976.     /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR *rgIndexColumnDescs,
  15977.     /* [in] */ ULONG cPropertySets,
  15978.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15979.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID,
  15980.     /* [in] */ ULONG cTotalProps,
  15981.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15982.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15983.  
  15984. /* [local] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_DropIndex_Proxy( 
  15985.     IIndexDefinition __RPC_FAR * This,
  15986.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  15987.     /* [unique][in] */ DBID __RPC_FAR *pIndexID);
  15988.  
  15989.  
  15990. /* [call_as] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_DropIndex_Stub( 
  15991.     IIndexDefinition __RPC_FAR * This,
  15992.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  15993.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  15994.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15995.  
  15996. /* [local] */ HRESULT STDMETHODCALLTYPE ITableDefinition_CreateTable_Proxy( 
  15997.     ITableDefinition __RPC_FAR * This,
  15998.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15999.     /* [in] */ DBID __RPC_FAR *pTableID,
  16000.     /* [in] */ ULONG cColumnDescs,
  16001.     /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  16002.     /* [in] */ REFIID riid,
  16003.     /* [in] */ ULONG cPropertySets,
  16004.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  16005.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  16006.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  16007.  
  16008.  
  16009. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_CreateTable_Stub( 
  16010.     ITableDefinition __RPC_FAR * This,
  16011.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16012.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16013.     /* [in] */ ULONG cColumnDescs,
  16014.     /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR *rgColumnDescs,
  16015.     /* [in] */ REFIID riid,
  16016.     /* [in] */ ULONG cPropertySets,
  16017.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  16018.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  16019.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  16020.     /* [in] */ ULONG cTotalProps,
  16021.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  16022.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16023.  
  16024. /* [local] */ HRESULT STDMETHODCALLTYPE ITableDefinition_DropTable_Proxy( 
  16025.     ITableDefinition __RPC_FAR * This,
  16026.     /* [unique][in] */ DBID __RPC_FAR *pTableID);
  16027.  
  16028.  
  16029. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_DropTable_Stub( 
  16030.     ITableDefinition __RPC_FAR * This,
  16031.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16032.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16033.  
  16034. /* [local] */ HRESULT STDMETHODCALLTYPE ITableDefinition_AddColumn_Proxy( 
  16035.     ITableDefinition __RPC_FAR * This,
  16036.     /* [in] */ DBID __RPC_FAR *pTableID,
  16037.     /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  16038.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID);
  16039.  
  16040.  
  16041. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_AddColumn_Stub( 
  16042.     ITableDefinition __RPC_FAR * This,
  16043.     /* [in] */ DBID __RPC_FAR *pTableID,
  16044.     /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  16045.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID,
  16046.     /* [in] */ ULONG cTotalProps,
  16047.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  16048.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16049.  
  16050. /* [local] */ HRESULT STDMETHODCALLTYPE ITableDefinition_DropColumn_Proxy( 
  16051.     ITableDefinition __RPC_FAR * This,
  16052.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16053.     /* [unique][in] */ DBID __RPC_FAR *pColumnID);
  16054.  
  16055.  
  16056. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_DropColumn_Stub( 
  16057.     ITableDefinition __RPC_FAR * This,
  16058.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16059.     /* [unique][in] */ DBID __RPC_FAR *pColumnID,
  16060.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16061.  
  16062. /* [local] */ HRESULT STDMETHODCALLTYPE IOpenRowset_OpenRowset_Proxy( 
  16063.     IOpenRowset __RPC_FAR * This,
  16064.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16065.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16066.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  16067.     /* [in] */ REFIID riid,
  16068.     /* [in] */ ULONG cPropertySets,
  16069.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  16070.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  16071.  
  16072.  
  16073. /* [call_as] */ HRESULT STDMETHODCALLTYPE IOpenRowset_OpenRowset_Stub( 
  16074.     IOpenRowset __RPC_FAR * This,
  16075.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16076.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16077.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  16078.     /* [in] */ REFIID riid,
  16079.     /* [in] */ ULONG cPropertySets,
  16080.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  16081.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  16082.     /* [in] */ ULONG cTotalProps,
  16083.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  16084.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16085.  
  16086. /* [local] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_GetRowset_Proxy( 
  16087.     IDBSchemaRowset __RPC_FAR * This,
  16088.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16089.     /* [in] */ REFGUID rguidSchema,
  16090.     /* [in] */ ULONG cRestrictions,
  16091.     /* [size_is][in] */ const VARIANT __RPC_FAR rgRestrictions[  ],
  16092.     /* [in] */ REFIID riid,
  16093.     /* [in] */ ULONG cPropertySets,
  16094.     /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  16095.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  16096.  
  16097.  
  16098. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_GetRowset_Stub( 
  16099.     IDBSchemaRowset __RPC_FAR * This,
  16100.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16101.     /* [in] */ REFGUID rguidSchema,
  16102.     /* [in] */ ULONG cRestrictions,
  16103.     /* [size_is][unique][in] */ const VARIANT __RPC_FAR *rgRestrictions,
  16104.     /* [in] */ REFIID riid,
  16105.     /* [in] */ ULONG cPropertySets,
  16106.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  16107.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  16108.     /* [in] */ ULONG cTotalProps,
  16109.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  16110.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16111.  
  16112. /* [local] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_GetSchemas_Proxy( 
  16113.     IDBSchemaRowset __RPC_FAR * This,
  16114.     /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  16115.     /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  16116.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport);
  16117.  
  16118.  
  16119. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_GetSchemas_Stub( 
  16120.     IDBSchemaRowset __RPC_FAR * This,
  16121.     /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  16122.     /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  16123.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport,
  16124.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16125.  
  16126. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_AddErrorRecord_Proxy( 
  16127.     IErrorRecords __RPC_FAR * This,
  16128.     /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  16129.     /* [in] */ DWORD dwLookupID,
  16130.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  16131.     /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  16132.     /* [in] */ DWORD dwDynamicErrorID);
  16133.  
  16134.  
  16135. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_AddErrorRecord_Stub( 
  16136.     IErrorRecords __RPC_FAR * This,
  16137.     /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  16138.     /* [in] */ DWORD dwLookupID,
  16139.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  16140.     /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  16141.     /* [in] */ DWORD dwDynamicErrorID,
  16142.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16143.  
  16144. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetBasicErrorInfo_Proxy( 
  16145.     IErrorRecords __RPC_FAR * This,
  16146.     /* [in] */ ULONG ulRecordNum,
  16147.     /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo);
  16148.  
  16149.  
  16150. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetBasicErrorInfo_Stub( 
  16151.     IErrorRecords __RPC_FAR * This,
  16152.     /* [in] */ ULONG ulRecordNum,
  16153.     /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo,
  16154.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16155.  
  16156. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetCustomErrorObject_Proxy( 
  16157.     IErrorRecords __RPC_FAR * This,
  16158.     /* [in] */ ULONG ulRecordNum,
  16159.     /* [in] */ REFIID riid,
  16160.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject);
  16161.  
  16162.  
  16163. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetCustomErrorObject_Stub( 
  16164.     IErrorRecords __RPC_FAR * This,
  16165.     /* [in] */ ULONG ulRecordNum,
  16166.     /* [in] */ REFIID riid,
  16167.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject,
  16168.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16169.  
  16170. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetErrorInfo_Proxy( 
  16171.     IErrorRecords __RPC_FAR * This,
  16172.     /* [in] */ ULONG ulRecordNum,
  16173.     /* [in] */ LCID lcid,
  16174.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo);
  16175.  
  16176.  
  16177. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetErrorInfo_Stub( 
  16178.     IErrorRecords __RPC_FAR * This,
  16179.     /* [in] */ ULONG ulRecordNum,
  16180.     /* [in] */ LCID lcid,
  16181.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo,
  16182.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16183.  
  16184. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetErrorParameters_Proxy( 
  16185.     IErrorRecords __RPC_FAR * This,
  16186.     /* [in] */ ULONG ulRecordNum,
  16187.     /* [out] */ DISPPARAMS __RPC_FAR *pdispparams);
  16188.  
  16189.  
  16190. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetErrorParameters_Stub( 
  16191.     IErrorRecords __RPC_FAR * This,
  16192.     /* [in] */ ULONG ulRecordNum,
  16193.     /* [out] */ DISPPARAMS __RPC_FAR *pdispparams,
  16194.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16195.  
  16196. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetRecordCount_Proxy( 
  16197.     IErrorRecords __RPC_FAR * This,
  16198.     /* [out] */ ULONG __RPC_FAR *pcRecords);
  16199.  
  16200.  
  16201. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetRecordCount_Stub( 
  16202.     IErrorRecords __RPC_FAR * This,
  16203.     /* [out] */ ULONG __RPC_FAR *pcRecords,
  16204.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16205.  
  16206. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorLookup_GetErrorDescription_Proxy( 
  16207.     IErrorLookup __RPC_FAR * This,
  16208.     /* [in] */ HRESULT hrError,
  16209.     /* [in] */ DWORD dwLookupID,
  16210.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  16211.     /* [in] */ LCID lcid,
  16212.     /* [out] */ BSTR __RPC_FAR *pbstrSource,
  16213.     /* [out] */ BSTR __RPC_FAR *pbstrDescription);
  16214.  
  16215.  
  16216. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_GetErrorDescription_Stub( 
  16217.     IErrorLookup __RPC_FAR * This,
  16218.     /* [in] */ HRESULT hrError,
  16219.     /* [in] */ DWORD dwLookupID,
  16220.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  16221.     /* [in] */ LCID lcid,
  16222.     /* [out] */ BSTR __RPC_FAR *pbstrSource,
  16223.     /* [out] */ BSTR __RPC_FAR *pbstrDescription,
  16224.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16225.  
  16226. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorLookup_GetHelpInfo_Proxy( 
  16227.     IErrorLookup __RPC_FAR * This,
  16228.     /* [in] */ HRESULT hrError,
  16229.     /* [in] */ DWORD dwLookupID,
  16230.     /* [in] */ LCID lcid,
  16231.     /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  16232.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext);
  16233.  
  16234.  
  16235. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_GetHelpInfo_Stub( 
  16236.     IErrorLookup __RPC_FAR * This,
  16237.     /* [in] */ HRESULT hrError,
  16238.     /* [in] */ DWORD dwLookupID,
  16239.     /* [in] */ LCID lcid,
  16240.     /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  16241.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  16242.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16243.  
  16244. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorLookup_ReleaseErrors_Proxy( 
  16245.     IErrorLookup __RPC_FAR * This,
  16246.     /* [in] */ const DWORD dwDynamicErrorID);
  16247.  
  16248.  
  16249. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_ReleaseErrors_Stub( 
  16250.     IErrorLookup __RPC_FAR * This,
  16251.     /* [in] */ const DWORD dwDynamicErrorID,
  16252.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16253.  
  16254. /* [local] */ HRESULT STDMETHODCALLTYPE ISQLErrorInfo_GetSQLInfo_Proxy( 
  16255.     ISQLErrorInfo __RPC_FAR * This,
  16256.     /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  16257.     /* [out] */ LONG __RPC_FAR *plNativeError);
  16258.  
  16259.  
  16260. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISQLErrorInfo_GetSQLInfo_Stub( 
  16261.     ISQLErrorInfo __RPC_FAR * This,
  16262.     /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  16263.     /* [out] */ LONG __RPC_FAR *plNativeError,
  16264.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16265.  
  16266. /* [local] */ HRESULT STDMETHODCALLTYPE IGetDataSource_GetDataSource_Proxy( 
  16267.     IGetDataSource __RPC_FAR * This,
  16268.     /* [in] */ REFIID riid,
  16269.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource);
  16270.  
  16271.  
  16272. /* [call_as] */ HRESULT STDMETHODCALLTYPE IGetDataSource_GetDataSource_Stub( 
  16273.     IGetDataSource __RPC_FAR * This,
  16274.     /* [in] */ REFIID riid,
  16275.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource,
  16276.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16277.  
  16278. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_GetOptionsObject_Proxy( 
  16279.     ITransactionLocal __RPC_FAR * This,
  16280.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  16281.  
  16282.  
  16283. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_GetOptionsObject_Stub( 
  16284.     ITransactionLocal __RPC_FAR * This,
  16285.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions,
  16286.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16287.  
  16288. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_StartTransaction_Proxy( 
  16289.     ITransactionLocal __RPC_FAR * This,
  16290.     /* [in] */ ISOLEVEL isoLevel,
  16291.     /* [in] */ ULONG isoFlags,
  16292.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  16293.     /* [out] */ ULONG __RPC_FAR *pulTransactionLevel);
  16294.  
  16295.  
  16296. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_StartTransaction_Stub( 
  16297.     ITransactionLocal __RPC_FAR * This,
  16298.     /* [in] */ ISOLEVEL isoLevel,
  16299.     /* [in] */ ULONG isoFlags,
  16300.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  16301.     /* [unique][out][in] */ ULONG __RPC_FAR *pulTransactionLevel,
  16302.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16303.  
  16304. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_GetOptionsObject_Proxy( 
  16305.     ITransactionJoin __RPC_FAR * This,
  16306.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  16307.  
  16308.  
  16309. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_GetOptionsObject_Stub( 
  16310.     ITransactionJoin __RPC_FAR * This,
  16311.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions,
  16312.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16313.  
  16314. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_JoinTransaction_Proxy( 
  16315.     ITransactionJoin __RPC_FAR * This,
  16316.     /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  16317.     /* [in] */ ISOLEVEL isoLevel,
  16318.     /* [in] */ ULONG isoFlags,
  16319.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions);
  16320.  
  16321.  
  16322. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_JoinTransaction_Stub( 
  16323.     ITransactionJoin __RPC_FAR * This,
  16324.     /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  16325.     /* [in] */ ISOLEVEL isoLevel,
  16326.     /* [in] */ ULONG isoFlags,
  16327.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  16328.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16329.  
  16330. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionObject_GetTransactionObject_Proxy( 
  16331.     ITransactionObject __RPC_FAR * This,
  16332.     /* [in] */ ULONG ulTransactionLevel,
  16333.     /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject);
  16334.  
  16335.  
  16336. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionObject_GetTransactionObject_Stub( 
  16337.     ITransactionObject __RPC_FAR * This,
  16338.     /* [in] */ ULONG ulTransactionLevel,
  16339.     /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject,
  16340.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16341.  
  16342. /* [local] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Copy_Proxy( 
  16343.     IScopedOperations __RPC_FAR * This,
  16344.     /* [in] */ ULONG cRows,
  16345.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  16346.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  16347.     /* [in] */ DWORD dwCopyFlags,
  16348.     /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16349.     /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  16350.     /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  16351.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16352.  
  16353.  
  16354. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Copy_Stub( 
  16355.     IScopedOperations __RPC_FAR * This,
  16356.     /* [in] */ ULONG cRows,
  16357.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszSourceURLs,
  16358.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszDestURLs,
  16359.     /* [in] */ DWORD dwCopyFlags,
  16360.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16361.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus,
  16362.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgulNewURLOffsets,
  16363.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  16364.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16365.  
  16366. /* [local] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Move_Proxy( 
  16367.     IScopedOperations __RPC_FAR * This,
  16368.     /* [in] */ ULONG cRows,
  16369.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  16370.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  16371.     /* [in] */ DWORD dwMoveFlags,
  16372.     /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16373.     /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  16374.     /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  16375.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16376.  
  16377.  
  16378. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Move_Stub( 
  16379.     IScopedOperations __RPC_FAR * This,
  16380.     /* [in] */ ULONG cRows,
  16381.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszSourceURLs,
  16382.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszDestURLs,
  16383.     /* [in] */ DWORD dwMoveFlags,
  16384.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16385.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus,
  16386.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgulNewURLOffsets,
  16387.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  16388.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16389.  
  16390. /* [local] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Delete_Proxy( 
  16391.     IScopedOperations __RPC_FAR * This,
  16392.     /* [in] */ ULONG cRows,
  16393.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszURLs[  ],
  16394.     /* [in] */ DWORD dwDeleteFlags,
  16395.     /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]);
  16396.  
  16397.  
  16398. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Delete_Stub( 
  16399.     IScopedOperations __RPC_FAR * This,
  16400.     /* [in] */ ULONG cRows,
  16401.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszURLs,
  16402.     /* [in] */ DWORD dwDeleteFlags,
  16403.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus);
  16404.  
  16405. /* [local] */ HRESULT STDMETHODCALLTYPE IScopedOperations_OpenRowset_Proxy( 
  16406.     IScopedOperations __RPC_FAR * This,
  16407.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16408.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16409.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  16410.     /* [in] */ REFIID riid,
  16411.     /* [in] */ ULONG cPropertySets,
  16412.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  16413.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  16414.  
  16415.  
  16416. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_OpenRowset_Stub( 
  16417.     IScopedOperations __RPC_FAR * This,
  16418.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16419.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16420.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  16421.     /* [in] */ REFIID riid,
  16422.     /* [in] */ ULONG cPropertySets,
  16423.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  16424.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  16425.     /* [in] */ ULONG cTotalProps,
  16426.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus);
  16427.  
  16428. /* [local] */ HRESULT STDMETHODCALLTYPE IBindResource_Bind_Proxy( 
  16429.     IBindResource __RPC_FAR * This,
  16430.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16431.     /* [in] */ LPCOLESTR pwszURL,
  16432.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  16433.     /* [in] */ REFGUID rguid,
  16434.     /* [in] */ REFIID riid,
  16435.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16436.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  16437.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  16438.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  16439.  
  16440.  
  16441. /* [call_as] */ HRESULT STDMETHODCALLTYPE IBindResource_Bind_Stub( 
  16442.     IBindResource __RPC_FAR * This,
  16443.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16444.     /* [in] */ LPCOLESTR pwszURL,
  16445.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  16446.     /* [in] */ REFGUID rguid,
  16447.     /* [in] */ REFIID riid,
  16448.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16449.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  16450.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  16451.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  16452.  
  16453. /* [local] */ HRESULT STDMETHODCALLTYPE ICreateRow_CreateRow_Proxy( 
  16454.     ICreateRow __RPC_FAR * This,
  16455.     /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  16456.     /* [in] */ LPCOLESTR pwszURL,
  16457.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  16458.     /* [in] */ REFGUID rguid,
  16459.     /* [in] */ REFIID riid,
  16460.     /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16461.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  16462.     /* [out][in] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  16463.     /* [out] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  16464.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  16465.  
  16466.  
  16467. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICreateRow_CreateRow_Stub( 
  16468.     ICreateRow __RPC_FAR * This,
  16469.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16470.     /* [in] */ LPCOLESTR pwszURL,
  16471.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  16472.     /* [in] */ REFGUID rguid,
  16473.     /* [in] */ REFIID riid,
  16474.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16475.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  16476.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  16477.     /* [unique][out][in] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  16478.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  16479.  
  16480. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsInfo2_GetRestrictedColumnInfo_Proxy( 
  16481.     IColumnsInfo2 __RPC_FAR * This,
  16482.     /* [in] */ ULONG cColumnIDMasks,
  16483.     /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDMasks[  ],
  16484.     /* [in] */ DWORD dwFlags,
  16485.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  16486.     /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  16487.     /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  16488.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16489.  
  16490.  
  16491. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo2_GetRestrictedColumnInfo_Stub( 
  16492.     IColumnsInfo2 __RPC_FAR * This,
  16493.     /* [in] */ ULONG cColumnIDMasks,
  16494.     /* [size_is][unique][in] */ const DBID __RPC_FAR *rgColumnIDMasks,
  16495.     /* [in] */ DWORD dwFlags,
  16496.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  16497.     /* [size_is][size_is][unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  16498.     /* [size_is][size_is][unique][out][in] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  16499.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  16500.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgcolumnidOffsets,
  16501.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  16502.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16503.  
  16504. /* [local] */ HRESULT STDMETHODCALLTYPE IRegisterProvider_GetURLMapping_Proxy( 
  16505.     IRegisterProvider __RPC_FAR * This,
  16506.     /* [in] */ LPCOLESTR pwszURL,
  16507.     /* [in] */ DWORD dwReserved,
  16508.     /* [out] */ CLSID __RPC_FAR *pclsidProvider);
  16509.  
  16510.  
  16511. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRegisterProvider_GetURLMapping_Stub( 
  16512.     IRegisterProvider __RPC_FAR * This,
  16513.     /* [in] */ LPCOLESTR pwszURL,
  16514.     /* [in] */ DWORD dwReserved,
  16515.     /* [out] */ CLSID __RPC_FAR *pclsidProvider);
  16516.  
  16517.  
  16518.  
  16519. #endif // OLEDBPROXY
  16520. /* end of Additional Prototypes */
  16521.  
  16522. #ifdef __cplusplus
  16523. }
  16524. #endif
  16525.  
  16526. #endif
  16527.