home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 32 / IOPROG_32.ISO / SOFT / SqlEval7 / devtools / include / oledb.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-08-27  |  578.6 KB  |  16,526 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 Wed Aug 26 14:08:54 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 Wed Aug 26 14:08:54 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 Wed Aug 26 14:08:54 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. #endif // OLEDBVER >= 0x0210
  1960. //@@@- V2.1
  1961. #define DB_IMP_LEVEL_ANONYMOUS       0x00
  1962. #define DB_IMP_LEVEL_IDENTIFY        0x01
  1963. #define DB_IMP_LEVEL_IMPERSONATE     0x02
  1964. #define DB_IMP_LEVEL_DELEGATE        0x03
  1965. #define DBPROMPT_PROMPT              0x01
  1966. #define DBPROMPT_COMPLETE            0x02
  1967. #define DBPROMPT_COMPLETEREQUIRED    0x03
  1968. #define DBPROMPT_NOPROMPT            0x04
  1969. #define DB_PROT_LEVEL_NONE           0x00
  1970. #define DB_PROT_LEVEL_CONNECT        0x01
  1971. #define DB_PROT_LEVEL_CALL           0x02
  1972. #define DB_PROT_LEVEL_PKT            0x03
  1973. #define DB_PROT_LEVEL_PKT_INTEGRITY  0x04
  1974. #define DB_PROT_LEVEL_PKT_PRIVACY    0x05
  1975. #define DB_MODE_READ                 0x01
  1976. #define DB_MODE_WRITE                0x02
  1977. #define DB_MODE_READWRITE            0x03
  1978. #define DB_MODE_SHARE_DENY_READ      0x04
  1979. #define DB_MODE_SHARE_DENY_WRITE     0x08
  1980. #define DB_MODE_SHARE_EXCLUSIVE        0x0c
  1981. #define DB_MODE_SHARE_DENY_NONE        0x10
  1982. #define DBCOMPUTEMODE_COMPUTED       0x01
  1983. #define DBCOMPUTEMODE_DYNAMIC        0x02
  1984. #define DBCOMPUTEMODE_NOTCOMPUTED    0x03
  1985. #define DBPROPVAL_DF_INITIALLY_DEFERRED      0x01
  1986. #define DBPROPVAL_DF_INITIALLY_IMMEDIATE     0x02
  1987. #define DBPROPVAL_DF_NOT_DEFERRABLE            0x03
  1988. typedef struct  tagDBPARAMS
  1989.     {
  1990.     void __RPC_FAR *pData;
  1991.     ULONG cParamSets;
  1992.     HACCESSOR hAccessor;
  1993.     }    DBPARAMS;
  1994.  
  1995. typedef DWORD DBPARAMFLAGS;
  1996.  
  1997.  
  1998. enum DBPARAMFLAGSENUM
  1999.     {    DBPARAMFLAGS_ISINPUT    = 0x1,
  2000.     DBPARAMFLAGS_ISOUTPUT    = 0x2,
  2001.     DBPARAMFLAGS_ISSIGNED    = 0x10,
  2002.     DBPARAMFLAGS_ISNULLABLE    = 0x40,
  2003.     DBPARAMFLAGS_ISLONG    = 0x80
  2004.     };
  2005. //@@@+ V2.0
  2006. #if( OLEDBVER >= 0x0200 )
  2007.  
  2008. enum DBPARAMFLAGSENUM20
  2009.     {    DBPARAMFLAGS_SCALEISNEGATIVE    = 0x100
  2010.     };
  2011. #endif // OLEDBVER >= 0x0200
  2012. //@@@- V2.0
  2013. typedef struct  tagDBPARAMINFO
  2014.     {
  2015.     DBPARAMFLAGS dwFlags;
  2016.     ULONG iOrdinal;
  2017.     LPOLESTR pwszName;
  2018.     ITypeInfo __RPC_FAR *pTypeInfo;
  2019.     ULONG ulParamSize;
  2020.     DBTYPE wType;
  2021.     BYTE bPrecision;
  2022.     BYTE bScale;
  2023.     }    DBPARAMINFO;
  2024.  
  2025. typedef DWORD DBPROPID;
  2026.  
  2027. typedef struct  tagDBPROPIDSET
  2028.     {
  2029.     /* [size_is] */ DBPROPID __RPC_FAR *rgPropertyIDs;
  2030.     ULONG cPropertyIDs;
  2031.     GUID guidPropertySet;
  2032.     }    DBPROPIDSET;
  2033.  
  2034. typedef DWORD DBPROPFLAGS;
  2035.  
  2036.  
  2037. enum DBPROPFLAGSENUM
  2038.     {    DBPROPFLAGS_NOTSUPPORTED    = 0,
  2039.     DBPROPFLAGS_COLUMN    = 0x1,
  2040.     DBPROPFLAGS_DATASOURCE    = 0x2,
  2041.     DBPROPFLAGS_DATASOURCECREATE    = 0x4,
  2042.     DBPROPFLAGS_DATASOURCEINFO    = 0x8,
  2043.     DBPROPFLAGS_DBINIT    = 0x10,
  2044.     DBPROPFLAGS_INDEX    = 0x20,
  2045.     DBPROPFLAGS_ROWSET    = 0x40,
  2046.     DBPROPFLAGS_TABLE    = 0x80,
  2047.     DBPROPFLAGS_COLUMNOK    = 0x100,
  2048.     DBPROPFLAGS_READ    = 0x200,
  2049.     DBPROPFLAGS_WRITE    = 0x400,
  2050.     DBPROPFLAGS_REQUIRED    = 0x800,
  2051.     DBPROPFLAGS_SESSION    = 0x1000
  2052.     };
  2053. //@@@+ V2.1
  2054. #if( OLEDBVER >= 0x0210 )
  2055.  
  2056. enum DBPROPFLAGSENUM21
  2057.     {    DBPROPFLAGS_TRUSTEE    = 0x2000
  2058.     };
  2059. #endif // OLEDBVER >= 0x0210
  2060. //@@@- V2.1
  2061. typedef struct  tagDBPROPINFO
  2062.     {
  2063.     LPOLESTR pwszDescription;
  2064.     DBPROPID dwPropertyID;
  2065.     DBPROPFLAGS dwFlags;
  2066.     VARTYPE vtType;
  2067.     VARIANT vValues;
  2068.     }    DBPROPINFO;
  2069.  
  2070. #if 0 
  2071. //DBPROPINFO is an unaligned structure. MIDL workaround. 42212352
  2072. typedef DBPROPINFO __RPC_FAR *PDBPROPINFO;
  2073.  
  2074. #else
  2075. typedef DBPROPINFO UNALIGNED __RPC_FAR * PDBPROPINFO;
  2076. #endif
  2077. typedef struct  tagDBPROPINFOSET
  2078.     {
  2079.     /* [size_is] */ PDBPROPINFO rgPropertyInfos;
  2080.     ULONG cPropertyInfos;
  2081.     GUID guidPropertySet;
  2082.     }    DBPROPINFOSET;
  2083.  
  2084. typedef DWORD DBPROPOPTIONS;
  2085.  
  2086. // DBPROPOPTIONS_SETIFCHEAP is deprecated; use DBPROPOPTIONS_OPTIONAL instead.
  2087.  
  2088. enum DBPROPOPTIONSENUM
  2089.     {    DBPROPOPTIONS_REQUIRED    = 0,
  2090.     DBPROPOPTIONS_SETIFCHEAP    = 0x1,
  2091.     DBPROPOPTIONS_OPTIONAL    = 0x1
  2092.     };
  2093. typedef DWORD DBPROPSTATUS;
  2094.  
  2095.  
  2096. enum DBPROPSTATUSENUM
  2097.     {    DBPROPSTATUS_OK    = 0,
  2098.     DBPROPSTATUS_NOTSUPPORTED    = 1,
  2099.     DBPROPSTATUS_BADVALUE    = 2,
  2100.     DBPROPSTATUS_BADOPTION    = 3,
  2101.     DBPROPSTATUS_BADCOLUMN    = 4,
  2102.     DBPROPSTATUS_NOTALLSETTABLE    = 5,
  2103.     DBPROPSTATUS_NOTSETTABLE    = 6,
  2104.     DBPROPSTATUS_NOTSET    = 7,
  2105.     DBPROPSTATUS_CONFLICTING    = 8
  2106.     };
  2107. //@@@+ V2.1
  2108. #if( OLEDBVER >= 0x0210 )
  2109.  
  2110. enum DBPROPSTATUSENUM21
  2111.     {    DBPROPSTATUS_NOTAVAILABLE    = 9
  2112.     };
  2113. #endif // OLEDBVER >= 0x0210
  2114. //@@@- V2.1
  2115. typedef struct  tagDBPROP
  2116.     {
  2117.     DBPROPID dwPropertyID;
  2118.     DBPROPOPTIONS dwOptions;
  2119.     DBPROPSTATUS dwStatus;
  2120.     DBID colid;
  2121.     VARIANT vValue;
  2122.     }    DBPROP;
  2123.  
  2124. typedef struct  tagDBPROPSET
  2125.     {
  2126.     /* [size_is] */ DBPROP __RPC_FAR *rgProperties;
  2127.     ULONG cProperties;
  2128.     GUID guidPropertySet;
  2129.     }    DBPROPSET;
  2130.  
  2131. #define DBPARAMTYPE_INPUT            0x01
  2132. #define DBPARAMTYPE_INPUTOUTPUT        0x02
  2133. #define DBPARAMTYPE_OUTPUT            0x03
  2134. #define DBPARAMTYPE_RETURNVALUE        0x04
  2135. #define DB_PT_UNKNOWN                0x01
  2136. #define DB_PT_PROCEDURE                0x02
  2137. #define DB_PT_FUNCTION                0x03
  2138. #define DB_REMOTE                    0x01
  2139. #define DB_LOCAL_SHARED                0x02
  2140. #define DB_LOCAL_EXCLUSIVE            0x03
  2141. #define DB_COLLATION_ASC                0x01
  2142. #define DB_COLLATION_DESC            0x02
  2143. #define DB_UNSEARCHABLE                0x01
  2144. #define DB_LIKE_ONLY                    0x02
  2145. #define DB_ALL_EXCEPT_LIKE            0x03
  2146. #define DB_SEARCHABLE                0x04
  2147. //@@@+ V2.0
  2148. #if( OLEDBVER >= 0x0200 )
  2149. #define MDTREEOP_CHILDREN            0x01
  2150. #define MDTREEOP_SIBLINGS            0x02
  2151. #define MDTREEOP_PARENT              0x04
  2152. #define MDTREEOP_SELF                0x08
  2153. #define MDTREEOP_DESCENDANTS         0x10
  2154. #define MDTREEOP_ANCESTORS            0x20
  2155. #define MD_DIMTYPE_UNKNOWN           0x00
  2156. #define MD_DIMTYPE_TIME              0x01
  2157. #define MD_DIMTYPE_MEASURE           0x02
  2158. #define MD_DIMTYPE_OTHER             0x03
  2159. #define MDLEVEL_TYPE_UNKNOWN         0x0000
  2160. #define MDLEVEL_TYPE_REGULAR         0x0000
  2161. #define MDLEVEL_TYPE_ALL             0x0001
  2162. #define MDLEVEL_TYPE_CALCULATED      0x0002
  2163. #define MDLEVEL_TYPE_TIME            0x0004
  2164. #define MDLEVEL_TYPE_RESERVED1       0x0008
  2165. #define MDLEVEL_TYPE_TIME_YEARS      0x0014
  2166. #define MDLEVEL_TYPE_TIME_HALF_YEAR  0x0024
  2167. #define MDLEVEL_TYPE_TIME_QUARTERS   0x0044
  2168. #define MDLEVEL_TYPE_TIME_MONTHS     0x0084
  2169. #define MDLEVEL_TYPE_TIME_WEEKS      0x0104
  2170. #define MDLEVEL_TYPE_TIME_DAYS       0x0204
  2171. #define MDLEVEL_TYPE_TIME_HOURS      0x0304
  2172. #define MDLEVEL_TYPE_TIME_MINUTES    0x0404
  2173. #define MDLEVEL_TYPE_TIME_SECONDS    0x0804
  2174. #define MDLEVEL_TYPE_TIME_UNDEFINED  0x1004
  2175. #define MDMEASURE_AGGR_UNKNOWN       0x00
  2176. #define MDMEASURE_AGGR_SUM           0x01
  2177. #define MDMEASURE_AGGR_COUNT         0x02
  2178. #define MDMEASURE_AGGR_MIN           0x03
  2179. #define MDMEASURE_AGGR_MAX           0x04
  2180. #define MDMEASURE_AGGR_AVG           0x05
  2181. #define MDMEASURE_AGGR_VAR           0x06
  2182. #define MDMEASURE_AGGR_STD           0x07
  2183. #define MDMEASURE_AGGR_CALCULATED    0x7f
  2184. #define MDPROP_MEMBER                0x01
  2185. #define MDPROP_CELL                  0x02
  2186. #define MDMEMBER_TYPE_UNKNOWN        0x00
  2187. #define MDMEMBER_TYPE_REGULAR        0x01
  2188. #define MDMEMBER_TYPE_ALL            0x02
  2189. #define MDMEMBER_TYPE_MEASURE        0x03
  2190. #define MDMEMBER_TYPE_FORMULA        0x04
  2191. #define MDMEMBER_TYPE_RESERVE1       0x05
  2192. #define MDMEMBER_TYPE_RESERVE2       0x06
  2193. #define MDMEMBER_TYPE_RESERVE3       0x07
  2194. #define MDMEMBER_TYPE_RESERVE4       0x08
  2195. #define MDDISPINFO_DRILLED_DOWN                0x00010000
  2196. #define MDDISPINFO_PARENT_SAME_AS_PREV        0x00020000
  2197. #endif // OLEDBVER >= 0x0200
  2198. //@@@- V2.0
  2199. typedef DWORD DBINDEX_COL_ORDER;
  2200.  
  2201.  
  2202. enum DBINDEX_COL_ORDERENUM
  2203.     {    DBINDEX_COL_ORDER_ASC    = 0,
  2204.     DBINDEX_COL_ORDER_DESC    = DBINDEX_COL_ORDER_ASC + 1
  2205.     };
  2206. typedef struct  tagDBINDEXCOLUMNDESC
  2207.     {
  2208.     DBID __RPC_FAR *pColumnID;
  2209.     DBINDEX_COL_ORDER eIndexColOrder;
  2210.     }    DBINDEXCOLUMNDESC;
  2211.  
  2212. typedef struct  tagDBCOLUMNDESC
  2213.     {
  2214.     LPOLESTR pwszTypeName;
  2215.     ITypeInfo __RPC_FAR *pTypeInfo;
  2216.     /* [size_is] */ DBPROPSET __RPC_FAR *rgPropertySets;
  2217.     CLSID __RPC_FAR *pclsid;
  2218.     ULONG cPropertySets;
  2219.     ULONG ulColumnSize;
  2220.     DBID dbcid;
  2221.     DBTYPE wType;
  2222.     BYTE bPrecision;
  2223.     BYTE bScale;
  2224.     }    DBCOLUMNDESC;
  2225.  
  2226. //@@@+ V2.1
  2227. #if( OLEDBVER >= 0x0210 )
  2228. typedef struct  tagDBCOLUMNACCESS
  2229.     {
  2230.     void __RPC_FAR *pData;
  2231.     DBID columnid;
  2232.     ULONG cbDataLen;
  2233.     DBSTATUS dwStatus;
  2234.     ULONG cbMaxLen;
  2235.     DWORD dwReserved;
  2236.     DBTYPE wType;
  2237.     BYTE bPrecision;
  2238.     BYTE bScale;
  2239.     }    DBCOLUMNACCESS;
  2240.  
  2241. #endif // OLEDBVER >= 0x0210
  2242. //@@@- V2.1
  2243. //@@@+ V2.0
  2244. #if( OLEDBVER >= 0x0200 )
  2245. typedef DWORD DBCOLUMNDESCFLAGS;
  2246.  
  2247.  
  2248. enum DBCOLUMNDESCFLAGSENUM
  2249.     {    DBCOLUMNDESCFLAGS_TYPENAME    = 0x1,
  2250.     DBCOLUMNDESCFLAGS_ITYPEINFO    = 0x2,
  2251.     DBCOLUMNDESCFLAGS_PROPERTIES    = 0x4,
  2252.     DBCOLUMNDESCFLAGS_CLSID    = 0x8,
  2253.     DBCOLUMNDESCFLAGS_COLSIZE    = 0x10,
  2254.     DBCOLUMNDESCFLAGS_DBCID    = 0x20,
  2255.     DBCOLUMNDESCFLAGS_WTYPE    = 0x40,
  2256.     DBCOLUMNDESCFLAGS_PRECISION    = 0x80,
  2257.     DBCOLUMNDESCFLAGS_SCALE    = 0x100
  2258.     };
  2259. #endif // OLEDBVER >= 0x0200
  2260. //@@@- V2.0
  2261. typedef DWORD DBEVENTPHASE;
  2262.  
  2263.  
  2264. enum DBEVENTPHASEENUM
  2265.     {    DBEVENTPHASE_OKTODO    = 0,
  2266.     DBEVENTPHASE_ABOUTTODO    = DBEVENTPHASE_OKTODO + 1,
  2267.     DBEVENTPHASE_SYNCHAFTER    = DBEVENTPHASE_ABOUTTODO + 1,
  2268.     DBEVENTPHASE_FAILEDTODO    = DBEVENTPHASE_SYNCHAFTER + 1,
  2269.     DBEVENTPHASE_DIDEVENT    = DBEVENTPHASE_FAILEDTODO + 1
  2270.     };
  2271. typedef DWORD DBREASON;
  2272.  
  2273.  
  2274. enum DBREASONENUM
  2275.     {    DBREASON_ROWSET_FETCHPOSITIONCHANGE    = 0,
  2276.     DBREASON_ROWSET_RELEASE    = DBREASON_ROWSET_FETCHPOSITIONCHANGE + 1,
  2277.     DBREASON_COLUMN_SET    = DBREASON_ROWSET_RELEASE + 1,
  2278.     DBREASON_COLUMN_RECALCULATED    = DBREASON_COLUMN_SET + 1,
  2279.     DBREASON_ROW_ACTIVATE    = DBREASON_COLUMN_RECALCULATED + 1,
  2280.     DBREASON_ROW_RELEASE    = DBREASON_ROW_ACTIVATE + 1,
  2281.     DBREASON_ROW_DELETE    = DBREASON_ROW_RELEASE + 1,
  2282.     DBREASON_ROW_FIRSTCHANGE    = DBREASON_ROW_DELETE + 1,
  2283.     DBREASON_ROW_INSERT    = DBREASON_ROW_FIRSTCHANGE + 1,
  2284.     DBREASON_ROW_RESYNCH    = DBREASON_ROW_INSERT + 1,
  2285.     DBREASON_ROW_UNDOCHANGE    = DBREASON_ROW_RESYNCH + 1,
  2286.     DBREASON_ROW_UNDOINSERT    = DBREASON_ROW_UNDOCHANGE + 1,
  2287.     DBREASON_ROW_UNDODELETE    = DBREASON_ROW_UNDOINSERT + 1,
  2288.     DBREASON_ROW_UPDATE    = DBREASON_ROW_UNDODELETE + 1,
  2289.     DBREASON_ROWSET_CHANGED    = DBREASON_ROW_UPDATE + 1
  2290.     };
  2291. //@@@+ V1.5
  2292. #if( OLEDBVER >= 0x0150 )
  2293.  
  2294. enum DBREASONENUM15
  2295.     {    DBREASON_ROWPOSITION_CHANGED    = DBREASON_ROWSET_CHANGED + 1,
  2296.     DBREASON_ROWPOSITION_CHAPTERCHANGED    = DBREASON_ROWPOSITION_CHANGED + 1,
  2297.     DBREASON_ROWPOSITION_CLEARED    = DBREASON_ROWPOSITION_CHAPTERCHANGED + 1,
  2298.     DBREASON_ROW_ASYNCHINSERT    = DBREASON_ROWPOSITION_CLEARED + 1
  2299.     };
  2300. #endif // OLEDBVER >= 0x0150
  2301. //@@@- V1.5
  2302. //@@@+ V1.5
  2303. #if( OLEDBVER >= 0x0150 )
  2304. typedef DWORD DBCOMPAREOP;
  2305.  
  2306.  
  2307. enum DBCOMPAREOPSENUM
  2308.     {    DBCOMPAREOPS_LT    = 0,
  2309.     DBCOMPAREOPS_LE    = 1,
  2310.     DBCOMPAREOPS_EQ    = 2,
  2311.     DBCOMPAREOPS_GE    = 3,
  2312.     DBCOMPAREOPS_GT    = 4,
  2313.     DBCOMPAREOPS_BEGINSWITH    = 5,
  2314.     DBCOMPAREOPS_CONTAINS    = 6,
  2315.     DBCOMPAREOPS_NE    = 7,
  2316.     DBCOMPAREOPS_IGNORE    = 8,
  2317.     DBCOMPAREOPS_CASESENSITIVE    = 0x1000,
  2318.     DBCOMPAREOPS_CASEINSENSITIVE    = 0x2000
  2319.     };
  2320. //@@@+ V2.0
  2321. #if( OLEDBVER >= 0x0200 )
  2322.  
  2323. enum DBCOMPAREOPSENUM20
  2324.     {    DBCOMPAREOPS_NOTBEGINSWITH    = 9,
  2325.     DBCOMPAREOPS_NOTCONTAINS    = 10
  2326.     };
  2327. #endif // OLEDBVER >= 0x0200
  2328. //@@@- V2.0
  2329. typedef DWORD DBASYNCHOP;
  2330.  
  2331.  
  2332. enum DBASYNCHOPENUM
  2333.     {    DBASYNCHOP_OPEN    = 0
  2334.     };
  2335. typedef DWORD DBASYNCHPHASE;
  2336.  
  2337.  
  2338. enum DBASYNCHPHASEENUM
  2339.     {    DBASYNCHPHASE_INITIALIZATION    = 0,
  2340.     DBASYNCHPHASE_POPULATION    = DBASYNCHPHASE_INITIALIZATION + 1,
  2341.     DBASYNCHPHASE_COMPLETE    = DBASYNCHPHASE_POPULATION + 1,
  2342.     DBASYNCHPHASE_CANCELED    = DBASYNCHPHASE_COMPLETE + 1
  2343.     };
  2344. #define DB_COUNTUNAVAILABLE -1
  2345. #endif // OLEDBVER >= 0x0150
  2346. //@@@- V1.5
  2347. typedef DWORD DBSORT;
  2348.  
  2349.  
  2350. enum DBSORTENUM
  2351.     {    DBSORT_ASCENDING    = 0,
  2352.     DBSORT_DESCENDING    = DBSORT_ASCENDING + 1
  2353.     };
  2354. #if( OLEDBVER >= 0x0200 )
  2355. typedef DWORD DBCOMMANDPERSISTFLAG;
  2356.  
  2357.  
  2358. enum DBCOMMANDPERSISTFLAGENUM
  2359.     {    DBCOMMANDPERSISTFLAG_NOSAVE    = 0x1
  2360.     };
  2361. #endif // OLEDBVER >= 0x0200
  2362. //@@@- V2.0
  2363. #if( OLEDBVER >= 0x0210 )
  2364.  
  2365. enum DBCOMMANDPERSISTFLAGENUM21
  2366.     {    DBCOMMANDPERSISTFLAG_DEFAULT    = 0,
  2367.     DBCOMMANDPERSISTFLAG_PERSISTVIEW    = 0x2,
  2368.     DBCOMMANDPERSISTFLAG_PERSISTPROCEDURE    = 0x4
  2369.     };
  2370. typedef DWORD DBCONSTRAINTTYPE;
  2371.  
  2372.  
  2373. enum DBCONSTRAINTTYPEENUM
  2374.     {    DBCONSTRAINTTYPE_UNIQUE    = 0,
  2375.     DBCONSTRAINTTYPE_FOREIGNKEY    = 0x1,
  2376.     DBCONSTRAINTTYPE_PRIMARYKEY    = 0x2,
  2377.     DBCONSTRAINTTYPE_CHECK    = 0x3
  2378.     };
  2379. typedef DWORD DBUPDELRULE;
  2380.  
  2381.  
  2382. enum DBUPDELRULEENUM
  2383.     {    DBUPDELRULE_NOACTION    = 0,
  2384.     DBUPDELRULE_CASCADE    = 0x1,
  2385.     DBUPDELRULE_SETNULL    = 0x2,
  2386.     DBUPDELRULE_SETDEFAULT    = 0x3
  2387.     };
  2388. typedef DWORD DBMATCHTYPE;
  2389.  
  2390.  
  2391. enum DBMATCHTYPEENUM
  2392.     {    DBMATCHTYPE_FULL    = 0,
  2393.     DBMATCHTYPE_NONE    = 0x1,
  2394.     DBMATCHTYPE_PARTIAL    = 0x2
  2395.     };
  2396. typedef DWORD DBDEFERRABILITY;
  2397.  
  2398.  
  2399. enum DBDEFERRABILITYENUM
  2400.     {    DBDEFERRABILITY_DEFERRED    = 0x1,
  2401.     DBDEFERRABILITY_DEFERRABLE    = 0x2
  2402.     };
  2403. typedef struct  tagDBCONSTRAINTDESC
  2404.     {
  2405.     DBID __RPC_FAR *pConstraintID;
  2406.     DBCONSTRAINTTYPE ConstraintType;
  2407.     ULONG cColumns;
  2408.     /* [size_is] */ DBID __RPC_FAR *rgColumnList;
  2409.     DBID __RPC_FAR *pReferencedTableID;
  2410.     ULONG cForeignKeyColumns;
  2411.     /* [size_is] */ DBID __RPC_FAR *rgForeignKeyColumnList;
  2412.     OLECHAR __RPC_FAR *pwszConstraintText;
  2413.     DBUPDELRULE UpdateRule;
  2414.     DBUPDELRULE DeleteRule;
  2415.     DBMATCHTYPE MatchType;
  2416.     DBDEFERRABILITY Deferrability;
  2417.     ULONG cReserved;
  2418.     /* [size_is] */ DBPROPSET __RPC_FAR *rgReserved;
  2419.     }    DBCONSTRAINTDESC;
  2420.  
  2421. #endif // OLEDBVER >= 0x0210
  2422. //@@@- V2.1
  2423. //@@@+ V2.0
  2424. #if( OLEDBVER >= 0x0200 )
  2425. #define MDFF_BOLD                    0x01
  2426. #define MDFF_ITALIC                  0x02
  2427. #define MDFF_UNDERLINE               0x04
  2428. #define MDFF_STRIKEOUT               0x08
  2429. typedef struct  tagMDAXISINFO
  2430.     {
  2431.     ULONG cbSize;
  2432.     ULONG iAxis;
  2433.     ULONG cDimensions;
  2434.     ULONG cCoordinates;
  2435.     ULONG __RPC_FAR *rgcColumns;
  2436.     LPOLESTR __RPC_FAR *rgpwszDimensionNames;
  2437.     }    MDAXISINFO;
  2438.  
  2439. #define PMDAXISINFO_GETAT(rgAxisInfo, iAxis) ((MDAXISINFO *)(((BYTE *)(rgAxisInfo)) +((iAxis) * (rgAxisInfo)[0].cbSize)))
  2440. #define MDAXISINFO_GETAT(rgAxisInfo, iAxis) (*PMDAXISINFO_GETAT((rgAxisInfo), (iAxis)))
  2441. #define MDAXIS_COLUMNS               0x00000000
  2442. #define MDAXIS_ROWS                  0x00000001
  2443. #define MDAXIS_PAGES                 0x00000002
  2444. #define MDAXIS_SECTIONS              0x00000003
  2445. #define MDAXIS_CHAPTERS              0x00000004
  2446. #define MDAXIS_SLICERS               0xffffffff
  2447. #endif // OLEDBVER >= 0x0200
  2448. //@@@- V2.0
  2449.  
  2450.  
  2451. extern RPC_IF_HANDLE DBStructureDefinitions_v0_0_c_ifspec;
  2452. extern RPC_IF_HANDLE DBStructureDefinitions_v0_0_s_ifspec;
  2453. #endif /* __DBStructureDefinitions_INTERFACE_DEFINED__ */
  2454.  
  2455. #ifndef __IAccessor_INTERFACE_DEFINED__
  2456. #define __IAccessor_INTERFACE_DEFINED__
  2457.  
  2458. /****************************************
  2459.  * Generated header for interface: IAccessor
  2460.  * at Wed Aug 26 14:08:54 1998
  2461.  * using MIDL 3.01.75
  2462.  ****************************************/
  2463. /* [unique][uuid][object] */ 
  2464.  
  2465.  
  2466. typedef DWORD DBACCESSORFLAGS;
  2467.  
  2468.  
  2469. enum DBACCESSORFLAGSENUM
  2470.     {    DBACCESSOR_INVALID    = 0,
  2471.     DBACCESSOR_PASSBYREF    = 0x1,
  2472.     DBACCESSOR_ROWDATA    = 0x2,
  2473.     DBACCESSOR_PARAMETERDATA    = 0x4,
  2474.     DBACCESSOR_OPTIMIZED    = 0x8,
  2475.     DBACCESSOR_INHERITED    = 0x10
  2476.     };
  2477. typedef DWORD DBBINDSTATUS;
  2478.  
  2479.  
  2480. enum DBBINDSTATUSENUM
  2481.     {    DBBINDSTATUS_OK    = 0,
  2482.     DBBINDSTATUS_BADORDINAL    = 1,
  2483.     DBBINDSTATUS_UNSUPPORTEDCONVERSION    = 2,
  2484.     DBBINDSTATUS_BADBINDINFO    = 3,
  2485.     DBBINDSTATUS_BADSTORAGEFLAGS    = 4,
  2486.     DBBINDSTATUS_NOINTERFACE    = 5,
  2487.     DBBINDSTATUS_MULTIPLESTORAGE    = 6
  2488.     };
  2489.  
  2490. EXTERN_C const IID IID_IAccessor;
  2491.  
  2492. #if defined(__cplusplus) && !defined(CINTERFACE)
  2493.     
  2494.     interface DECLSPEC_UUID("0c733a8c-2a1c-11ce-ade5-00aa0044773d")
  2495.     IAccessor : public IUnknown
  2496.     {
  2497.     public:
  2498.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddRefAccessor( 
  2499.             /* [in] */ HACCESSOR hAccessor,
  2500.             /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount) = 0;
  2501.         
  2502.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateAccessor( 
  2503.             /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  2504.             /* [in] */ ULONG cBindings,
  2505.             /* [size_is][in] */ const DBBINDING __RPC_FAR rgBindings[  ],
  2506.             /* [in] */ ULONG cbRowSize,
  2507.             /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  2508.             /* [size_is][out] */ DBBINDSTATUS __RPC_FAR rgStatus[  ]) = 0;
  2509.         
  2510.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetBindings( 
  2511.             /* [in] */ HACCESSOR hAccessor,
  2512.             /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  2513.             /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  2514.             /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings) = 0;
  2515.         
  2516.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ReleaseAccessor( 
  2517.             /* [in] */ HACCESSOR hAccessor,
  2518.             /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount) = 0;
  2519.         
  2520.     };
  2521.     
  2522. #else     /* C style interface */
  2523.  
  2524.     typedef struct IAccessorVtbl
  2525.     {
  2526.         BEGIN_INTERFACE
  2527.         
  2528.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2529.             IAccessor __RPC_FAR * This,
  2530.             /* [in] */ REFIID riid,
  2531.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2532.         
  2533.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2534.             IAccessor __RPC_FAR * This);
  2535.         
  2536.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2537.             IAccessor __RPC_FAR * This);
  2538.         
  2539.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefAccessor )( 
  2540.             IAccessor __RPC_FAR * This,
  2541.             /* [in] */ HACCESSOR hAccessor,
  2542.             /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount);
  2543.         
  2544.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateAccessor )( 
  2545.             IAccessor __RPC_FAR * This,
  2546.             /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  2547.             /* [in] */ ULONG cBindings,
  2548.             /* [size_is][in] */ const DBBINDING __RPC_FAR rgBindings[  ],
  2549.             /* [in] */ ULONG cbRowSize,
  2550.             /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  2551.             /* [size_is][out] */ DBBINDSTATUS __RPC_FAR rgStatus[  ]);
  2552.         
  2553.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBindings )( 
  2554.             IAccessor __RPC_FAR * This,
  2555.             /* [in] */ HACCESSOR hAccessor,
  2556.             /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  2557.             /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  2558.             /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings);
  2559.         
  2560.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseAccessor )( 
  2561.             IAccessor __RPC_FAR * This,
  2562.             /* [in] */ HACCESSOR hAccessor,
  2563.             /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount);
  2564.         
  2565.         END_INTERFACE
  2566.     } IAccessorVtbl;
  2567.  
  2568.     interface IAccessor
  2569.     {
  2570.         CONST_VTBL struct IAccessorVtbl __RPC_FAR *lpVtbl;
  2571.     };
  2572.  
  2573.     
  2574.  
  2575. #ifdef COBJMACROS
  2576.  
  2577.  
  2578. #define IAccessor_QueryInterface(This,riid,ppvObject)    \
  2579.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2580.  
  2581. #define IAccessor_AddRef(This)    \
  2582.     (This)->lpVtbl -> AddRef(This)
  2583.  
  2584. #define IAccessor_Release(This)    \
  2585.     (This)->lpVtbl -> Release(This)
  2586.  
  2587.  
  2588. #define IAccessor_AddRefAccessor(This,hAccessor,pcRefCount)    \
  2589.     (This)->lpVtbl -> AddRefAccessor(This,hAccessor,pcRefCount)
  2590.  
  2591. #define IAccessor_CreateAccessor(This,dwAccessorFlags,cBindings,rgBindings,cbRowSize,phAccessor,rgStatus)    \
  2592.     (This)->lpVtbl -> CreateAccessor(This,dwAccessorFlags,cBindings,rgBindings,cbRowSize,phAccessor,rgStatus)
  2593.  
  2594. #define IAccessor_GetBindings(This,hAccessor,pdwAccessorFlags,pcBindings,prgBindings)    \
  2595.     (This)->lpVtbl -> GetBindings(This,hAccessor,pdwAccessorFlags,pcBindings,prgBindings)
  2596.  
  2597. #define IAccessor_ReleaseAccessor(This,hAccessor,pcRefCount)    \
  2598.     (This)->lpVtbl -> ReleaseAccessor(This,hAccessor,pcRefCount)
  2599.  
  2600. #endif /* COBJMACROS */
  2601.  
  2602.  
  2603. #endif     /* C style interface */
  2604.  
  2605.  
  2606.  
  2607. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_RemoteAddRefAccessor_Proxy( 
  2608.     IAccessor __RPC_FAR * This,
  2609.     /* [in] */ HACCESSOR hAccessor,
  2610.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount,
  2611.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  2612.  
  2613.  
  2614. void __RPC_STUB IAccessor_RemoteAddRefAccessor_Stub(
  2615.     IRpcStubBuffer *This,
  2616.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2617.     PRPC_MESSAGE _pRpcMessage,
  2618.     DWORD *_pdwStubPhase);
  2619.  
  2620.  
  2621. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_RemoteCreateAccessor_Proxy( 
  2622.     IAccessor __RPC_FAR * This,
  2623.     /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  2624.     /* [in] */ ULONG cBindings,
  2625.     /* [size_is][unique][in] */ DBBINDING __RPC_FAR *rgBindings,
  2626.     /* [in] */ ULONG cbRowSize,
  2627.     /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  2628.     /* [size_is][unique][out][in] */ DBBINDSTATUS __RPC_FAR *rgStatus,
  2629.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  2630.  
  2631.  
  2632. void __RPC_STUB IAccessor_RemoteCreateAccessor_Stub(
  2633.     IRpcStubBuffer *This,
  2634.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2635.     PRPC_MESSAGE _pRpcMessage,
  2636.     DWORD *_pdwStubPhase);
  2637.  
  2638.  
  2639. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_RemoteGetBindings_Proxy( 
  2640.     IAccessor __RPC_FAR * This,
  2641.     /* [in] */ HACCESSOR hAccessor,
  2642.     /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  2643.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  2644.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings,
  2645.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  2646.  
  2647.  
  2648. void __RPC_STUB IAccessor_RemoteGetBindings_Stub(
  2649.     IRpcStubBuffer *This,
  2650.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2651.     PRPC_MESSAGE _pRpcMessage,
  2652.     DWORD *_pdwStubPhase);
  2653.  
  2654.  
  2655. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_RemoteReleaseAccessor_Proxy( 
  2656.     IAccessor __RPC_FAR * This,
  2657.     /* [in] */ HACCESSOR hAccessor,
  2658.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount,
  2659.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  2660.  
  2661.  
  2662. void __RPC_STUB IAccessor_RemoteReleaseAccessor_Stub(
  2663.     IRpcStubBuffer *This,
  2664.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2665.     PRPC_MESSAGE _pRpcMessage,
  2666.     DWORD *_pdwStubPhase);
  2667.  
  2668.  
  2669.  
  2670. #endif     /* __IAccessor_INTERFACE_DEFINED__ */
  2671.  
  2672.  
  2673. #ifndef __IRowset_INTERFACE_DEFINED__
  2674. #define __IRowset_INTERFACE_DEFINED__
  2675.  
  2676. /****************************************
  2677.  * Generated header for interface: IRowset
  2678.  * at Wed Aug 26 14:08:54 1998
  2679.  * using MIDL 3.01.75
  2680.  ****************************************/
  2681. /* [unique][uuid][object][local] */ 
  2682.  
  2683.  
  2684. typedef DWORD DBROWOPTIONS;
  2685.  
  2686.  
  2687. EXTERN_C const IID IID_IRowset;
  2688.  
  2689. #if defined(__cplusplus) && !defined(CINTERFACE)
  2690.     
  2691.     interface DECLSPEC_UUID("0c733a7c-2a1c-11ce-ade5-00aa0044773d")
  2692.     IRowset : public IUnknown
  2693.     {
  2694.     public:
  2695.         virtual HRESULT STDMETHODCALLTYPE AddRefRows( 
  2696.             /* [in] */ ULONG cRows,
  2697.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2698.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2699.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]) = 0;
  2700.         
  2701.         virtual HRESULT STDMETHODCALLTYPE GetData( 
  2702.             /* [in] */ HROW hRow,
  2703.             /* [in] */ HACCESSOR hAccessor,
  2704.             /* [out] */ void __RPC_FAR *pData) = 0;
  2705.         
  2706.         virtual HRESULT STDMETHODCALLTYPE GetNextRows( 
  2707.             /* [in] */ HCHAPTER hReserved,
  2708.             /* [in] */ LONG lRowsOffset,
  2709.             /* [in] */ LONG cRows,
  2710.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  2711.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows) = 0;
  2712.         
  2713.         virtual HRESULT STDMETHODCALLTYPE ReleaseRows( 
  2714.             /* [in] */ ULONG cRows,
  2715.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2716.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  2717.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2718.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]) = 0;
  2719.         
  2720.         virtual HRESULT STDMETHODCALLTYPE RestartPosition( 
  2721.             /* [in] */ HCHAPTER hReserved) = 0;
  2722.         
  2723.     };
  2724.     
  2725. #else     /* C style interface */
  2726.  
  2727.     typedef struct IRowsetVtbl
  2728.     {
  2729.         BEGIN_INTERFACE
  2730.         
  2731.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2732.             IRowset __RPC_FAR * This,
  2733.             /* [in] */ REFIID riid,
  2734.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2735.         
  2736.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2737.             IRowset __RPC_FAR * This);
  2738.         
  2739.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2740.             IRowset __RPC_FAR * This);
  2741.         
  2742.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefRows )( 
  2743.             IRowset __RPC_FAR * This,
  2744.             /* [in] */ ULONG cRows,
  2745.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2746.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2747.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  2748.         
  2749.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetData )( 
  2750.             IRowset __RPC_FAR * This,
  2751.             /* [in] */ HROW hRow,
  2752.             /* [in] */ HACCESSOR hAccessor,
  2753.             /* [out] */ void __RPC_FAR *pData);
  2754.         
  2755.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRows )( 
  2756.             IRowset __RPC_FAR * This,
  2757.             /* [in] */ HCHAPTER hReserved,
  2758.             /* [in] */ LONG lRowsOffset,
  2759.             /* [in] */ LONG cRows,
  2760.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  2761.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  2762.         
  2763.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseRows )( 
  2764.             IRowset __RPC_FAR * This,
  2765.             /* [in] */ ULONG cRows,
  2766.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2767.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  2768.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2769.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  2770.         
  2771.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RestartPosition )( 
  2772.             IRowset __RPC_FAR * This,
  2773.             /* [in] */ HCHAPTER hReserved);
  2774.         
  2775.         END_INTERFACE
  2776.     } IRowsetVtbl;
  2777.  
  2778.     interface IRowset
  2779.     {
  2780.         CONST_VTBL struct IRowsetVtbl __RPC_FAR *lpVtbl;
  2781.     };
  2782.  
  2783.     
  2784.  
  2785. #ifdef COBJMACROS
  2786.  
  2787.  
  2788. #define IRowset_QueryInterface(This,riid,ppvObject)    \
  2789.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2790.  
  2791. #define IRowset_AddRef(This)    \
  2792.     (This)->lpVtbl -> AddRef(This)
  2793.  
  2794. #define IRowset_Release(This)    \
  2795.     (This)->lpVtbl -> Release(This)
  2796.  
  2797.  
  2798. #define IRowset_AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)    \
  2799.     (This)->lpVtbl -> AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)
  2800.  
  2801. #define IRowset_GetData(This,hRow,hAccessor,pData)    \
  2802.     (This)->lpVtbl -> GetData(This,hRow,hAccessor,pData)
  2803.  
  2804. #define IRowset_GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  2805.     (This)->lpVtbl -> GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)
  2806.  
  2807. #define IRowset_ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)    \
  2808.     (This)->lpVtbl -> ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)
  2809.  
  2810. #define IRowset_RestartPosition(This,hReserved)    \
  2811.     (This)->lpVtbl -> RestartPosition(This,hReserved)
  2812.  
  2813. #endif /* COBJMACROS */
  2814.  
  2815.  
  2816. #endif     /* C style interface */
  2817.  
  2818.  
  2819.  
  2820. HRESULT STDMETHODCALLTYPE IRowset_AddRefRows_Proxy( 
  2821.     IRowset __RPC_FAR * This,
  2822.     /* [in] */ ULONG cRows,
  2823.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2824.     /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2825.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  2826.  
  2827.  
  2828. void __RPC_STUB IRowset_AddRefRows_Stub(
  2829.     IRpcStubBuffer *This,
  2830.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2831.     PRPC_MESSAGE _pRpcMessage,
  2832.     DWORD *_pdwStubPhase);
  2833.  
  2834.  
  2835. HRESULT STDMETHODCALLTYPE IRowset_GetData_Proxy( 
  2836.     IRowset __RPC_FAR * This,
  2837.     /* [in] */ HROW hRow,
  2838.     /* [in] */ HACCESSOR hAccessor,
  2839.     /* [out] */ void __RPC_FAR *pData);
  2840.  
  2841.  
  2842. void __RPC_STUB IRowset_GetData_Stub(
  2843.     IRpcStubBuffer *This,
  2844.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2845.     PRPC_MESSAGE _pRpcMessage,
  2846.     DWORD *_pdwStubPhase);
  2847.  
  2848.  
  2849. HRESULT STDMETHODCALLTYPE IRowset_GetNextRows_Proxy( 
  2850.     IRowset __RPC_FAR * This,
  2851.     /* [in] */ HCHAPTER hReserved,
  2852.     /* [in] */ LONG lRowsOffset,
  2853.     /* [in] */ LONG cRows,
  2854.     /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  2855.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  2856.  
  2857.  
  2858. void __RPC_STUB IRowset_GetNextRows_Stub(
  2859.     IRpcStubBuffer *This,
  2860.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2861.     PRPC_MESSAGE _pRpcMessage,
  2862.     DWORD *_pdwStubPhase);
  2863.  
  2864.  
  2865. HRESULT STDMETHODCALLTYPE IRowset_ReleaseRows_Proxy( 
  2866.     IRowset __RPC_FAR * This,
  2867.     /* [in] */ ULONG cRows,
  2868.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  2869.     /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  2870.     /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  2871.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  2872.  
  2873.  
  2874. void __RPC_STUB IRowset_ReleaseRows_Stub(
  2875.     IRpcStubBuffer *This,
  2876.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2877.     PRPC_MESSAGE _pRpcMessage,
  2878.     DWORD *_pdwStubPhase);
  2879.  
  2880.  
  2881. HRESULT STDMETHODCALLTYPE IRowset_RestartPosition_Proxy( 
  2882.     IRowset __RPC_FAR * This,
  2883.     /* [in] */ HCHAPTER hReserved);
  2884.  
  2885.  
  2886. void __RPC_STUB IRowset_RestartPosition_Stub(
  2887.     IRpcStubBuffer *This,
  2888.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2889.     PRPC_MESSAGE _pRpcMessage,
  2890.     DWORD *_pdwStubPhase);
  2891.  
  2892.  
  2893.  
  2894. #endif     /* __IRowset_INTERFACE_DEFINED__ */
  2895.  
  2896.  
  2897. #ifndef __IRowsetInfo_INTERFACE_DEFINED__
  2898. #define __IRowsetInfo_INTERFACE_DEFINED__
  2899.  
  2900. /****************************************
  2901.  * Generated header for interface: IRowsetInfo
  2902.  * at Wed Aug 26 14:08:54 1998
  2903.  * using MIDL 3.01.75
  2904.  ****************************************/
  2905. /* [unique][uuid][object] */ 
  2906.  
  2907.  
  2908.  
  2909. EXTERN_C const IID IID_IRowsetInfo;
  2910.  
  2911. #if defined(__cplusplus) && !defined(CINTERFACE)
  2912.     
  2913.     interface DECLSPEC_UUID("0c733a55-2a1c-11ce-ade5-00aa0044773d")
  2914.     IRowsetInfo : public IUnknown
  2915.     {
  2916.     public:
  2917.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetProperties( 
  2918.             /* [in] */ const ULONG cPropertyIDSets,
  2919.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  2920.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  2921.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  2922.         
  2923.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetReferencedRowset( 
  2924.             /* [in] */ ULONG iOrdinal,
  2925.             /* [in] */ REFIID riid,
  2926.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset) = 0;
  2927.         
  2928.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSpecification( 
  2929.             /* [in] */ REFIID riid,
  2930.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification) = 0;
  2931.         
  2932.     };
  2933.     
  2934. #else     /* C style interface */
  2935.  
  2936.     typedef struct IRowsetInfoVtbl
  2937.     {
  2938.         BEGIN_INTERFACE
  2939.         
  2940.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  2941.             IRowsetInfo __RPC_FAR * This,
  2942.             /* [in] */ REFIID riid,
  2943.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2944.         
  2945.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  2946.             IRowsetInfo __RPC_FAR * This);
  2947.         
  2948.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  2949.             IRowsetInfo __RPC_FAR * This);
  2950.         
  2951.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  2952.             IRowsetInfo __RPC_FAR * This,
  2953.             /* [in] */ const ULONG cPropertyIDSets,
  2954.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  2955.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  2956.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  2957.         
  2958.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetReferencedRowset )( 
  2959.             IRowsetInfo __RPC_FAR * This,
  2960.             /* [in] */ ULONG iOrdinal,
  2961.             /* [in] */ REFIID riid,
  2962.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset);
  2963.         
  2964.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecification )( 
  2965.             IRowsetInfo __RPC_FAR * This,
  2966.             /* [in] */ REFIID riid,
  2967.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification);
  2968.         
  2969.         END_INTERFACE
  2970.     } IRowsetInfoVtbl;
  2971.  
  2972.     interface IRowsetInfo
  2973.     {
  2974.         CONST_VTBL struct IRowsetInfoVtbl __RPC_FAR *lpVtbl;
  2975.     };
  2976.  
  2977.     
  2978.  
  2979. #ifdef COBJMACROS
  2980.  
  2981.  
  2982. #define IRowsetInfo_QueryInterface(This,riid,ppvObject)    \
  2983.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2984.  
  2985. #define IRowsetInfo_AddRef(This)    \
  2986.     (This)->lpVtbl -> AddRef(This)
  2987.  
  2988. #define IRowsetInfo_Release(This)    \
  2989.     (This)->lpVtbl -> Release(This)
  2990.  
  2991.  
  2992. #define IRowsetInfo_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  2993.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  2994.  
  2995. #define IRowsetInfo_GetReferencedRowset(This,iOrdinal,riid,ppReferencedRowset)    \
  2996.     (This)->lpVtbl -> GetReferencedRowset(This,iOrdinal,riid,ppReferencedRowset)
  2997.  
  2998. #define IRowsetInfo_GetSpecification(This,riid,ppSpecification)    \
  2999.     (This)->lpVtbl -> GetSpecification(This,riid,ppSpecification)
  3000.  
  3001. #endif /* COBJMACROS */
  3002.  
  3003.  
  3004. #endif     /* C style interface */
  3005.  
  3006.  
  3007.  
  3008. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_RemoteGetProperties_Proxy( 
  3009.     IRowsetInfo __RPC_FAR * This,
  3010.     /* [in] */ ULONG cPropertyIDSets,
  3011.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  3012.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  3013.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  3014.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3015.  
  3016.  
  3017. void __RPC_STUB IRowsetInfo_RemoteGetProperties_Stub(
  3018.     IRpcStubBuffer *This,
  3019.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3020.     PRPC_MESSAGE _pRpcMessage,
  3021.     DWORD *_pdwStubPhase);
  3022.  
  3023.  
  3024. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_RemoteGetReferencedRowset_Proxy( 
  3025.     IRowsetInfo __RPC_FAR * This,
  3026.     /* [in] */ ULONG iOrdinal,
  3027.     /* [in] */ REFIID riid,
  3028.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset,
  3029.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3030.  
  3031.  
  3032. void __RPC_STUB IRowsetInfo_RemoteGetReferencedRowset_Stub(
  3033.     IRpcStubBuffer *This,
  3034.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3035.     PRPC_MESSAGE _pRpcMessage,
  3036.     DWORD *_pdwStubPhase);
  3037.  
  3038.  
  3039. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_RemoteGetSpecification_Proxy( 
  3040.     IRowsetInfo __RPC_FAR * This,
  3041.     /* [in] */ REFIID riid,
  3042.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification,
  3043.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3044.  
  3045.  
  3046. void __RPC_STUB IRowsetInfo_RemoteGetSpecification_Stub(
  3047.     IRpcStubBuffer *This,
  3048.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3049.     PRPC_MESSAGE _pRpcMessage,
  3050.     DWORD *_pdwStubPhase);
  3051.  
  3052.  
  3053.  
  3054. #endif     /* __IRowsetInfo_INTERFACE_DEFINED__ */
  3055.  
  3056.  
  3057. #ifndef __IRowsetLocate_INTERFACE_DEFINED__
  3058. #define __IRowsetLocate_INTERFACE_DEFINED__
  3059.  
  3060. /****************************************
  3061.  * Generated header for interface: IRowsetLocate
  3062.  * at Wed Aug 26 14:08:54 1998
  3063.  * using MIDL 3.01.75
  3064.  ****************************************/
  3065. /* [unique][uuid][object][local] */ 
  3066.  
  3067.  
  3068. typedef DWORD DBCOMPARE;
  3069.  
  3070.  
  3071. enum DBCOMPAREENUM
  3072.     {    DBCOMPARE_LT    = 0,
  3073.     DBCOMPARE_EQ    = DBCOMPARE_LT + 1,
  3074.     DBCOMPARE_GT    = DBCOMPARE_EQ + 1,
  3075.     DBCOMPARE_NE    = DBCOMPARE_GT + 1,
  3076.     DBCOMPARE_NOTCOMPARABLE    = DBCOMPARE_NE + 1
  3077.     };
  3078.  
  3079. EXTERN_C const IID IID_IRowsetLocate;
  3080.  
  3081. #if defined(__cplusplus) && !defined(CINTERFACE)
  3082.     
  3083.     interface DECLSPEC_UUID("0c733a7d-2a1c-11ce-ade5-00aa0044773d")
  3084.     IRowsetLocate : public IRowset
  3085.     {
  3086.     public:
  3087.         virtual HRESULT STDMETHODCALLTYPE Compare( 
  3088.             /* [in] */ HCHAPTER hReserved,
  3089.             /* [in] */ ULONG cbBookmark1,
  3090.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  3091.             /* [in] */ ULONG cbBookmark2,
  3092.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  3093.             /* [out] */ DBCOMPARE __RPC_FAR *pComparison) = 0;
  3094.         
  3095.         virtual HRESULT STDMETHODCALLTYPE GetRowsAt( 
  3096.             /* [in] */ HWATCHREGION hReserved1,
  3097.             /* [in] */ HCHAPTER hReserved2,
  3098.             /* [in] */ ULONG cbBookmark,
  3099.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3100.             /* [in] */ LONG lRowsOffset,
  3101.             /* [in] */ LONG cRows,
  3102.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3103.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows) = 0;
  3104.         
  3105.         virtual HRESULT STDMETHODCALLTYPE GetRowsByBookmark( 
  3106.             /* [in] */ HCHAPTER hReserved,
  3107.             /* [in] */ ULONG cRows,
  3108.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3109.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3110.             /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  3111.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]) = 0;
  3112.         
  3113.         virtual HRESULT STDMETHODCALLTYPE Hash( 
  3114.             /* [in] */ HCHAPTER hReserved,
  3115.             /* [in] */ ULONG cBookmarks,
  3116.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3117.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3118.             /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  3119.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]) = 0;
  3120.         
  3121.     };
  3122.     
  3123. #else     /* C style interface */
  3124.  
  3125.     typedef struct IRowsetLocateVtbl
  3126.     {
  3127.         BEGIN_INTERFACE
  3128.         
  3129.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3130.             IRowsetLocate __RPC_FAR * This,
  3131.             /* [in] */ REFIID riid,
  3132.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3133.         
  3134.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3135.             IRowsetLocate __RPC_FAR * This);
  3136.         
  3137.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3138.             IRowsetLocate __RPC_FAR * This);
  3139.         
  3140.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefRows )( 
  3141.             IRowsetLocate __RPC_FAR * This,
  3142.             /* [in] */ ULONG cRows,
  3143.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3144.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  3145.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3146.         
  3147.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetData )( 
  3148.             IRowsetLocate __RPC_FAR * This,
  3149.             /* [in] */ HROW hRow,
  3150.             /* [in] */ HACCESSOR hAccessor,
  3151.             /* [out] */ void __RPC_FAR *pData);
  3152.         
  3153.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRows )( 
  3154.             IRowsetLocate __RPC_FAR * This,
  3155.             /* [in] */ HCHAPTER hReserved,
  3156.             /* [in] */ LONG lRowsOffset,
  3157.             /* [in] */ LONG cRows,
  3158.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3159.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3160.         
  3161.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseRows )( 
  3162.             IRowsetLocate __RPC_FAR * This,
  3163.             /* [in] */ ULONG cRows,
  3164.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3165.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  3166.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  3167.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3168.         
  3169.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RestartPosition )( 
  3170.             IRowsetLocate __RPC_FAR * This,
  3171.             /* [in] */ HCHAPTER hReserved);
  3172.         
  3173.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Compare )( 
  3174.             IRowsetLocate __RPC_FAR * This,
  3175.             /* [in] */ HCHAPTER hReserved,
  3176.             /* [in] */ ULONG cbBookmark1,
  3177.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  3178.             /* [in] */ ULONG cbBookmark2,
  3179.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  3180.             /* [out] */ DBCOMPARE __RPC_FAR *pComparison);
  3181.         
  3182.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAt )( 
  3183.             IRowsetLocate __RPC_FAR * This,
  3184.             /* [in] */ HWATCHREGION hReserved1,
  3185.             /* [in] */ HCHAPTER hReserved2,
  3186.             /* [in] */ ULONG cbBookmark,
  3187.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3188.             /* [in] */ LONG lRowsOffset,
  3189.             /* [in] */ LONG cRows,
  3190.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3191.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3192.         
  3193.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsByBookmark )( 
  3194.             IRowsetLocate __RPC_FAR * This,
  3195.             /* [in] */ HCHAPTER hReserved,
  3196.             /* [in] */ ULONG cRows,
  3197.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3198.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3199.             /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  3200.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3201.         
  3202.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Hash )( 
  3203.             IRowsetLocate __RPC_FAR * This,
  3204.             /* [in] */ HCHAPTER hReserved,
  3205.             /* [in] */ ULONG cBookmarks,
  3206.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3207.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3208.             /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  3209.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]);
  3210.         
  3211.         END_INTERFACE
  3212.     } IRowsetLocateVtbl;
  3213.  
  3214.     interface IRowsetLocate
  3215.     {
  3216.         CONST_VTBL struct IRowsetLocateVtbl __RPC_FAR *lpVtbl;
  3217.     };
  3218.  
  3219.     
  3220.  
  3221. #ifdef COBJMACROS
  3222.  
  3223.  
  3224. #define IRowsetLocate_QueryInterface(This,riid,ppvObject)    \
  3225.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3226.  
  3227. #define IRowsetLocate_AddRef(This)    \
  3228.     (This)->lpVtbl -> AddRef(This)
  3229.  
  3230. #define IRowsetLocate_Release(This)    \
  3231.     (This)->lpVtbl -> Release(This)
  3232.  
  3233.  
  3234. #define IRowsetLocate_AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)    \
  3235.     (This)->lpVtbl -> AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)
  3236.  
  3237. #define IRowsetLocate_GetData(This,hRow,hAccessor,pData)    \
  3238.     (This)->lpVtbl -> GetData(This,hRow,hAccessor,pData)
  3239.  
  3240. #define IRowsetLocate_GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3241.     (This)->lpVtbl -> GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3242.  
  3243. #define IRowsetLocate_ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)    \
  3244.     (This)->lpVtbl -> ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)
  3245.  
  3246. #define IRowsetLocate_RestartPosition(This,hReserved)    \
  3247.     (This)->lpVtbl -> RestartPosition(This,hReserved)
  3248.  
  3249.  
  3250. #define IRowsetLocate_Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)    \
  3251.     (This)->lpVtbl -> Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)
  3252.  
  3253. #define IRowsetLocate_GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3254.     (This)->lpVtbl -> GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3255.  
  3256. #define IRowsetLocate_GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)    \
  3257.     (This)->lpVtbl -> GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)
  3258.  
  3259. #define IRowsetLocate_Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)    \
  3260.     (This)->lpVtbl -> Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)
  3261.  
  3262. #endif /* COBJMACROS */
  3263.  
  3264.  
  3265. #endif     /* C style interface */
  3266.  
  3267.  
  3268.  
  3269. HRESULT STDMETHODCALLTYPE IRowsetLocate_Compare_Proxy( 
  3270.     IRowsetLocate __RPC_FAR * This,
  3271.     /* [in] */ HCHAPTER hReserved,
  3272.     /* [in] */ ULONG cbBookmark1,
  3273.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  3274.     /* [in] */ ULONG cbBookmark2,
  3275.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  3276.     /* [out] */ DBCOMPARE __RPC_FAR *pComparison);
  3277.  
  3278.  
  3279. void __RPC_STUB IRowsetLocate_Compare_Stub(
  3280.     IRpcStubBuffer *This,
  3281.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3282.     PRPC_MESSAGE _pRpcMessage,
  3283.     DWORD *_pdwStubPhase);
  3284.  
  3285.  
  3286. HRESULT STDMETHODCALLTYPE IRowsetLocate_GetRowsAt_Proxy( 
  3287.     IRowsetLocate __RPC_FAR * This,
  3288.     /* [in] */ HWATCHREGION hReserved1,
  3289.     /* [in] */ HCHAPTER hReserved2,
  3290.     /* [in] */ ULONG cbBookmark,
  3291.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3292.     /* [in] */ LONG lRowsOffset,
  3293.     /* [in] */ LONG cRows,
  3294.     /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3295.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3296.  
  3297.  
  3298. void __RPC_STUB IRowsetLocate_GetRowsAt_Stub(
  3299.     IRpcStubBuffer *This,
  3300.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3301.     PRPC_MESSAGE _pRpcMessage,
  3302.     DWORD *_pdwStubPhase);
  3303.  
  3304.  
  3305. HRESULT STDMETHODCALLTYPE IRowsetLocate_GetRowsByBookmark_Proxy( 
  3306.     IRowsetLocate __RPC_FAR * This,
  3307.     /* [in] */ HCHAPTER hReserved,
  3308.     /* [in] */ ULONG cRows,
  3309.     /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3310.     /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3311.     /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  3312.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3313.  
  3314.  
  3315. void __RPC_STUB IRowsetLocate_GetRowsByBookmark_Stub(
  3316.     IRpcStubBuffer *This,
  3317.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3318.     PRPC_MESSAGE _pRpcMessage,
  3319.     DWORD *_pdwStubPhase);
  3320.  
  3321.  
  3322. HRESULT STDMETHODCALLTYPE IRowsetLocate_Hash_Proxy( 
  3323.     IRowsetLocate __RPC_FAR * This,
  3324.     /* [in] */ HCHAPTER hReserved,
  3325.     /* [in] */ ULONG cBookmarks,
  3326.     /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3327.     /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3328.     /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  3329.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]);
  3330.  
  3331.  
  3332. void __RPC_STUB IRowsetLocate_Hash_Stub(
  3333.     IRpcStubBuffer *This,
  3334.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3335.     PRPC_MESSAGE _pRpcMessage,
  3336.     DWORD *_pdwStubPhase);
  3337.  
  3338.  
  3339.  
  3340. #endif     /* __IRowsetLocate_INTERFACE_DEFINED__ */
  3341.  
  3342.  
  3343. #ifndef __IRowsetResynch_INTERFACE_DEFINED__
  3344. #define __IRowsetResynch_INTERFACE_DEFINED__
  3345.  
  3346. /****************************************
  3347.  * Generated header for interface: IRowsetResynch
  3348.  * at Wed Aug 26 14:08:54 1998
  3349.  * using MIDL 3.01.75
  3350.  ****************************************/
  3351. /* [unique][uuid][object][local] */ 
  3352.  
  3353.  
  3354.  
  3355. EXTERN_C const IID IID_IRowsetResynch;
  3356.  
  3357. #if defined(__cplusplus) && !defined(CINTERFACE)
  3358.     
  3359.     interface DECLSPEC_UUID("0c733a84-2a1c-11ce-ade5-00aa0044773d")
  3360.     IRowsetResynch : public IUnknown
  3361.     {
  3362.     public:
  3363.         virtual HRESULT STDMETHODCALLTYPE GetVisibleData( 
  3364.             /* [in] */ HROW hRow,
  3365.             /* [in] */ HACCESSOR hAccessor,
  3366.             /* [out] */ void __RPC_FAR *pData) = 0;
  3367.         
  3368.         virtual HRESULT STDMETHODCALLTYPE ResynchRows( 
  3369.             /* [in] */ ULONG cRows,
  3370.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3371.             /* [out] */ ULONG __RPC_FAR *pcRowsResynched,
  3372.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsResynched,
  3373.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus) = 0;
  3374.         
  3375.     };
  3376.     
  3377. #else     /* C style interface */
  3378.  
  3379.     typedef struct IRowsetResynchVtbl
  3380.     {
  3381.         BEGIN_INTERFACE
  3382.         
  3383.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3384.             IRowsetResynch __RPC_FAR * This,
  3385.             /* [in] */ REFIID riid,
  3386.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3387.         
  3388.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3389.             IRowsetResynch __RPC_FAR * This);
  3390.         
  3391.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3392.             IRowsetResynch __RPC_FAR * This);
  3393.         
  3394.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVisibleData )( 
  3395.             IRowsetResynch __RPC_FAR * This,
  3396.             /* [in] */ HROW hRow,
  3397.             /* [in] */ HACCESSOR hAccessor,
  3398.             /* [out] */ void __RPC_FAR *pData);
  3399.         
  3400.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ResynchRows )( 
  3401.             IRowsetResynch __RPC_FAR * This,
  3402.             /* [in] */ ULONG cRows,
  3403.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3404.             /* [out] */ ULONG __RPC_FAR *pcRowsResynched,
  3405.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsResynched,
  3406.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  3407.         
  3408.         END_INTERFACE
  3409.     } IRowsetResynchVtbl;
  3410.  
  3411.     interface IRowsetResynch
  3412.     {
  3413.         CONST_VTBL struct IRowsetResynchVtbl __RPC_FAR *lpVtbl;
  3414.     };
  3415.  
  3416.     
  3417.  
  3418. #ifdef COBJMACROS
  3419.  
  3420.  
  3421. #define IRowsetResynch_QueryInterface(This,riid,ppvObject)    \
  3422.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3423.  
  3424. #define IRowsetResynch_AddRef(This)    \
  3425.     (This)->lpVtbl -> AddRef(This)
  3426.  
  3427. #define IRowsetResynch_Release(This)    \
  3428.     (This)->lpVtbl -> Release(This)
  3429.  
  3430.  
  3431. #define IRowsetResynch_GetVisibleData(This,hRow,hAccessor,pData)    \
  3432.     (This)->lpVtbl -> GetVisibleData(This,hRow,hAccessor,pData)
  3433.  
  3434. #define IRowsetResynch_ResynchRows(This,cRows,rghRows,pcRowsResynched,prghRowsResynched,prgRowStatus)    \
  3435.     (This)->lpVtbl -> ResynchRows(This,cRows,rghRows,pcRowsResynched,prghRowsResynched,prgRowStatus)
  3436.  
  3437. #endif /* COBJMACROS */
  3438.  
  3439.  
  3440. #endif     /* C style interface */
  3441.  
  3442.  
  3443.  
  3444. HRESULT STDMETHODCALLTYPE IRowsetResynch_GetVisibleData_Proxy( 
  3445.     IRowsetResynch __RPC_FAR * This,
  3446.     /* [in] */ HROW hRow,
  3447.     /* [in] */ HACCESSOR hAccessor,
  3448.     /* [out] */ void __RPC_FAR *pData);
  3449.  
  3450.  
  3451. void __RPC_STUB IRowsetResynch_GetVisibleData_Stub(
  3452.     IRpcStubBuffer *This,
  3453.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3454.     PRPC_MESSAGE _pRpcMessage,
  3455.     DWORD *_pdwStubPhase);
  3456.  
  3457.  
  3458. HRESULT STDMETHODCALLTYPE IRowsetResynch_ResynchRows_Proxy( 
  3459.     IRowsetResynch __RPC_FAR * This,
  3460.     /* [in] */ ULONG cRows,
  3461.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3462.     /* [out] */ ULONG __RPC_FAR *pcRowsResynched,
  3463.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsResynched,
  3464.     /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  3465.  
  3466.  
  3467. void __RPC_STUB IRowsetResynch_ResynchRows_Stub(
  3468.     IRpcStubBuffer *This,
  3469.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3470.     PRPC_MESSAGE _pRpcMessage,
  3471.     DWORD *_pdwStubPhase);
  3472.  
  3473.  
  3474.  
  3475. #endif     /* __IRowsetResynch_INTERFACE_DEFINED__ */
  3476.  
  3477.  
  3478. #ifndef __IRowsetScroll_INTERFACE_DEFINED__
  3479. #define __IRowsetScroll_INTERFACE_DEFINED__
  3480.  
  3481. /****************************************
  3482.  * Generated header for interface: IRowsetScroll
  3483.  * at Wed Aug 26 14:08:54 1998
  3484.  * using MIDL 3.01.75
  3485.  ****************************************/
  3486. /* [unique][uuid][object][local] */ 
  3487.  
  3488.  
  3489.  
  3490. EXTERN_C const IID IID_IRowsetScroll;
  3491.  
  3492. #if defined(__cplusplus) && !defined(CINTERFACE)
  3493.     
  3494.     interface DECLSPEC_UUID("0c733a7e-2a1c-11ce-ade5-00aa0044773d")
  3495.     IRowsetScroll : public IRowsetLocate
  3496.     {
  3497.     public:
  3498.         virtual HRESULT STDMETHODCALLTYPE GetApproximatePosition( 
  3499.             /* [in] */ HCHAPTER hReserved,
  3500.             /* [in] */ ULONG cbBookmark,
  3501.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3502.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  3503.             /* [out] */ ULONG __RPC_FAR *pcRows) = 0;
  3504.         
  3505.         virtual HRESULT STDMETHODCALLTYPE GetRowsAtRatio( 
  3506.             /* [in] */ HWATCHREGION hReserved1,
  3507.             /* [in] */ HCHAPTER hReserved2,
  3508.             /* [in] */ ULONG ulNumerator,
  3509.             /* [in] */ ULONG ulDenominator,
  3510.             /* [in] */ LONG cRows,
  3511.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3512.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows) = 0;
  3513.         
  3514.     };
  3515.     
  3516. #else     /* C style interface */
  3517.  
  3518.     typedef struct IRowsetScrollVtbl
  3519.     {
  3520.         BEGIN_INTERFACE
  3521.         
  3522.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3523.             IRowsetScroll __RPC_FAR * This,
  3524.             /* [in] */ REFIID riid,
  3525.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3526.         
  3527.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3528.             IRowsetScroll __RPC_FAR * This);
  3529.         
  3530.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3531.             IRowsetScroll __RPC_FAR * This);
  3532.         
  3533.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefRows )( 
  3534.             IRowsetScroll __RPC_FAR * This,
  3535.             /* [in] */ ULONG cRows,
  3536.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3537.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  3538.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3539.         
  3540.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetData )( 
  3541.             IRowsetScroll __RPC_FAR * This,
  3542.             /* [in] */ HROW hRow,
  3543.             /* [in] */ HACCESSOR hAccessor,
  3544.             /* [out] */ void __RPC_FAR *pData);
  3545.         
  3546.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRows )( 
  3547.             IRowsetScroll __RPC_FAR * This,
  3548.             /* [in] */ HCHAPTER hReserved,
  3549.             /* [in] */ LONG lRowsOffset,
  3550.             /* [in] */ LONG cRows,
  3551.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3552.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3553.         
  3554.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseRows )( 
  3555.             IRowsetScroll __RPC_FAR * This,
  3556.             /* [in] */ ULONG cRows,
  3557.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  3558.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  3559.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  3560.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3561.         
  3562.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RestartPosition )( 
  3563.             IRowsetScroll __RPC_FAR * This,
  3564.             /* [in] */ HCHAPTER hReserved);
  3565.         
  3566.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Compare )( 
  3567.             IRowsetScroll __RPC_FAR * This,
  3568.             /* [in] */ HCHAPTER hReserved,
  3569.             /* [in] */ ULONG cbBookmark1,
  3570.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  3571.             /* [in] */ ULONG cbBookmark2,
  3572.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  3573.             /* [out] */ DBCOMPARE __RPC_FAR *pComparison);
  3574.         
  3575.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAt )( 
  3576.             IRowsetScroll __RPC_FAR * This,
  3577.             /* [in] */ HWATCHREGION hReserved1,
  3578.             /* [in] */ HCHAPTER hReserved2,
  3579.             /* [in] */ ULONG cbBookmark,
  3580.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3581.             /* [in] */ LONG lRowsOffset,
  3582.             /* [in] */ LONG cRows,
  3583.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3584.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3585.         
  3586.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsByBookmark )( 
  3587.             IRowsetScroll __RPC_FAR * This,
  3588.             /* [in] */ HCHAPTER hReserved,
  3589.             /* [in] */ ULONG cRows,
  3590.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3591.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3592.             /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  3593.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  3594.         
  3595.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Hash )( 
  3596.             IRowsetScroll __RPC_FAR * This,
  3597.             /* [in] */ HCHAPTER hReserved,
  3598.             /* [in] */ ULONG cBookmarks,
  3599.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  3600.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  3601.             /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  3602.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]);
  3603.         
  3604.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetApproximatePosition )( 
  3605.             IRowsetScroll __RPC_FAR * This,
  3606.             /* [in] */ HCHAPTER hReserved,
  3607.             /* [in] */ ULONG cbBookmark,
  3608.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3609.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  3610.             /* [out] */ ULONG __RPC_FAR *pcRows);
  3611.         
  3612.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAtRatio )( 
  3613.             IRowsetScroll __RPC_FAR * This,
  3614.             /* [in] */ HWATCHREGION hReserved1,
  3615.             /* [in] */ HCHAPTER hReserved2,
  3616.             /* [in] */ ULONG ulNumerator,
  3617.             /* [in] */ ULONG ulDenominator,
  3618.             /* [in] */ LONG cRows,
  3619.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3620.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3621.         
  3622.         END_INTERFACE
  3623.     } IRowsetScrollVtbl;
  3624.  
  3625.     interface IRowsetScroll
  3626.     {
  3627.         CONST_VTBL struct IRowsetScrollVtbl __RPC_FAR *lpVtbl;
  3628.     };
  3629.  
  3630.     
  3631.  
  3632. #ifdef COBJMACROS
  3633.  
  3634.  
  3635. #define IRowsetScroll_QueryInterface(This,riid,ppvObject)    \
  3636.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3637.  
  3638. #define IRowsetScroll_AddRef(This)    \
  3639.     (This)->lpVtbl -> AddRef(This)
  3640.  
  3641. #define IRowsetScroll_Release(This)    \
  3642.     (This)->lpVtbl -> Release(This)
  3643.  
  3644.  
  3645. #define IRowsetScroll_AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)    \
  3646.     (This)->lpVtbl -> AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)
  3647.  
  3648. #define IRowsetScroll_GetData(This,hRow,hAccessor,pData)    \
  3649.     (This)->lpVtbl -> GetData(This,hRow,hAccessor,pData)
  3650.  
  3651. #define IRowsetScroll_GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3652.     (This)->lpVtbl -> GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3653.  
  3654. #define IRowsetScroll_ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)    \
  3655.     (This)->lpVtbl -> ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)
  3656.  
  3657. #define IRowsetScroll_RestartPosition(This,hReserved)    \
  3658.     (This)->lpVtbl -> RestartPosition(This,hReserved)
  3659.  
  3660.  
  3661. #define IRowsetScroll_Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)    \
  3662.     (This)->lpVtbl -> Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)
  3663.  
  3664. #define IRowsetScroll_GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3665.     (This)->lpVtbl -> GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3666.  
  3667. #define IRowsetScroll_GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)    \
  3668.     (This)->lpVtbl -> GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)
  3669.  
  3670. #define IRowsetScroll_Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)    \
  3671.     (This)->lpVtbl -> Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)
  3672.  
  3673.  
  3674. #define IRowsetScroll_GetApproximatePosition(This,hReserved,cbBookmark,pBookmark,pulPosition,pcRows)    \
  3675.     (This)->lpVtbl -> GetApproximatePosition(This,hReserved,cbBookmark,pBookmark,pulPosition,pcRows)
  3676.  
  3677. #define IRowsetScroll_GetRowsAtRatio(This,hReserved1,hReserved2,ulNumerator,ulDenominator,cRows,pcRowsObtained,prghRows)    \
  3678.     (This)->lpVtbl -> GetRowsAtRatio(This,hReserved1,hReserved2,ulNumerator,ulDenominator,cRows,pcRowsObtained,prghRows)
  3679.  
  3680. #endif /* COBJMACROS */
  3681.  
  3682.  
  3683. #endif     /* C style interface */
  3684.  
  3685.  
  3686.  
  3687. HRESULT STDMETHODCALLTYPE IRowsetScroll_GetApproximatePosition_Proxy( 
  3688.     IRowsetScroll __RPC_FAR * This,
  3689.     /* [in] */ HCHAPTER hReserved,
  3690.     /* [in] */ ULONG cbBookmark,
  3691.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3692.     /* [out] */ ULONG __RPC_FAR *pulPosition,
  3693.     /* [out] */ ULONG __RPC_FAR *pcRows);
  3694.  
  3695.  
  3696. void __RPC_STUB IRowsetScroll_GetApproximatePosition_Stub(
  3697.     IRpcStubBuffer *This,
  3698.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3699.     PRPC_MESSAGE _pRpcMessage,
  3700.     DWORD *_pdwStubPhase);
  3701.  
  3702.  
  3703. HRESULT STDMETHODCALLTYPE IRowsetScroll_GetRowsAtRatio_Proxy( 
  3704.     IRowsetScroll __RPC_FAR * This,
  3705.     /* [in] */ HWATCHREGION hReserved1,
  3706.     /* [in] */ HCHAPTER hReserved2,
  3707.     /* [in] */ ULONG ulNumerator,
  3708.     /* [in] */ ULONG ulDenominator,
  3709.     /* [in] */ LONG cRows,
  3710.     /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  3711.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3712.  
  3713.  
  3714. void __RPC_STUB IRowsetScroll_GetRowsAtRatio_Stub(
  3715.     IRpcStubBuffer *This,
  3716.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3717.     PRPC_MESSAGE _pRpcMessage,
  3718.     DWORD *_pdwStubPhase);
  3719.  
  3720.  
  3721.  
  3722. #endif     /* __IRowsetScroll_INTERFACE_DEFINED__ */
  3723.  
  3724.  
  3725. /****************************************
  3726.  * Generated header for interface: __MIDL_itf_oledb_0161
  3727.  * at Wed Aug 26 14:08:54 1998
  3728.  * using MIDL 3.01.75
  3729.  ****************************************/
  3730. /* [local] */ 
  3731.  
  3732.  
  3733. //@@@+ V1.5
  3734. #if( OLEDBVER >= 0x0150 )
  3735.  
  3736.  
  3737. extern RPC_IF_HANDLE __MIDL_itf_oledb_0161_v0_0_c_ifspec;
  3738. extern RPC_IF_HANDLE __MIDL_itf_oledb_0161_v0_0_s_ifspec;
  3739.  
  3740. #ifndef __IChapteredRowset_INTERFACE_DEFINED__
  3741. #define __IChapteredRowset_INTERFACE_DEFINED__
  3742.  
  3743. /****************************************
  3744.  * Generated header for interface: IChapteredRowset
  3745.  * at Wed Aug 26 14:08:54 1998
  3746.  * using MIDL 3.01.75
  3747.  ****************************************/
  3748. /* [unique][uuid][object] */ 
  3749.  
  3750.  
  3751.  
  3752. EXTERN_C const IID IID_IChapteredRowset;
  3753.  
  3754. #if defined(__cplusplus) && !defined(CINTERFACE)
  3755.     
  3756.     interface DECLSPEC_UUID("0c733a93-2a1c-11ce-ade5-00aa0044773d")
  3757.     IChapteredRowset : public IUnknown
  3758.     {
  3759.     public:
  3760.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddRefChapter( 
  3761.             /* [in] */ HCHAPTER hChapter,
  3762.             /* [out] */ ULONG __RPC_FAR *pcRefCount) = 0;
  3763.         
  3764.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ReleaseChapter( 
  3765.             /* [in] */ HCHAPTER hChapter,
  3766.             /* [out] */ ULONG __RPC_FAR *pcRefCount) = 0;
  3767.         
  3768.     };
  3769.     
  3770. #else     /* C style interface */
  3771.  
  3772.     typedef struct IChapteredRowsetVtbl
  3773.     {
  3774.         BEGIN_INTERFACE
  3775.         
  3776.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3777.             IChapteredRowset __RPC_FAR * This,
  3778.             /* [in] */ REFIID riid,
  3779.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3780.         
  3781.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3782.             IChapteredRowset __RPC_FAR * This);
  3783.         
  3784.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3785.             IChapteredRowset __RPC_FAR * This);
  3786.         
  3787.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefChapter )( 
  3788.             IChapteredRowset __RPC_FAR * This,
  3789.             /* [in] */ HCHAPTER hChapter,
  3790.             /* [out] */ ULONG __RPC_FAR *pcRefCount);
  3791.         
  3792.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseChapter )( 
  3793.             IChapteredRowset __RPC_FAR * This,
  3794.             /* [in] */ HCHAPTER hChapter,
  3795.             /* [out] */ ULONG __RPC_FAR *pcRefCount);
  3796.         
  3797.         END_INTERFACE
  3798.     } IChapteredRowsetVtbl;
  3799.  
  3800.     interface IChapteredRowset
  3801.     {
  3802.         CONST_VTBL struct IChapteredRowsetVtbl __RPC_FAR *lpVtbl;
  3803.     };
  3804.  
  3805.     
  3806.  
  3807. #ifdef COBJMACROS
  3808.  
  3809.  
  3810. #define IChapteredRowset_QueryInterface(This,riid,ppvObject)    \
  3811.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3812.  
  3813. #define IChapteredRowset_AddRef(This)    \
  3814.     (This)->lpVtbl -> AddRef(This)
  3815.  
  3816. #define IChapteredRowset_Release(This)    \
  3817.     (This)->lpVtbl -> Release(This)
  3818.  
  3819.  
  3820. #define IChapteredRowset_AddRefChapter(This,hChapter,pcRefCount)    \
  3821.     (This)->lpVtbl -> AddRefChapter(This,hChapter,pcRefCount)
  3822.  
  3823. #define IChapteredRowset_ReleaseChapter(This,hChapter,pcRefCount)    \
  3824.     (This)->lpVtbl -> ReleaseChapter(This,hChapter,pcRefCount)
  3825.  
  3826. #endif /* COBJMACROS */
  3827.  
  3828.  
  3829. #endif     /* C style interface */
  3830.  
  3831.  
  3832.  
  3833. /* [call_as] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_RemoteAddRefChapter_Proxy( 
  3834.     IChapteredRowset __RPC_FAR * This,
  3835.     /* [in] */ HCHAPTER hChapter,
  3836.     /* [out] */ ULONG __RPC_FAR *pcRefCount,
  3837.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3838.  
  3839.  
  3840. void __RPC_STUB IChapteredRowset_RemoteAddRefChapter_Stub(
  3841.     IRpcStubBuffer *This,
  3842.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3843.     PRPC_MESSAGE _pRpcMessage,
  3844.     DWORD *_pdwStubPhase);
  3845.  
  3846.  
  3847. /* [call_as] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_RemoteReleaseChapter_Proxy( 
  3848.     IChapteredRowset __RPC_FAR * This,
  3849.     /* [in] */ HCHAPTER hChapter,
  3850.     /* [out] */ ULONG __RPC_FAR *pcRefCount,
  3851.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  3852.  
  3853.  
  3854. void __RPC_STUB IChapteredRowset_RemoteReleaseChapter_Stub(
  3855.     IRpcStubBuffer *This,
  3856.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3857.     PRPC_MESSAGE _pRpcMessage,
  3858.     DWORD *_pdwStubPhase);
  3859.  
  3860.  
  3861.  
  3862. #endif     /* __IChapteredRowset_INTERFACE_DEFINED__ */
  3863.  
  3864.  
  3865. #ifndef __IRowsetFind_INTERFACE_DEFINED__
  3866. #define __IRowsetFind_INTERFACE_DEFINED__
  3867.  
  3868. /****************************************
  3869.  * Generated header for interface: IRowsetFind
  3870.  * at Wed Aug 26 14:08:54 1998
  3871.  * using MIDL 3.01.75
  3872.  ****************************************/
  3873. /* [unique][uuid][object][local] */ 
  3874.  
  3875.  
  3876.  
  3877. EXTERN_C const IID IID_IRowsetFind;
  3878.  
  3879. #if defined(__cplusplus) && !defined(CINTERFACE)
  3880.     
  3881.     interface DECLSPEC_UUID("0c733a9d-2a1c-11ce-ade5-00aa0044773d")
  3882.     IRowsetFind : public IUnknown
  3883.     {
  3884.     public:
  3885.         virtual HRESULT STDMETHODCALLTYPE FindNextRow( 
  3886.             /* [in] */ HCHAPTER hChapter,
  3887.             /* [in] */ HACCESSOR hAccessor,
  3888.             /* [in] */ void __RPC_FAR *pFindValue,
  3889.             /* [in] */ DBCOMPAREOP CompareOp,
  3890.             /* [in] */ ULONG cbBookmark,
  3891.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3892.             /* [in] */ LONG lRowsOffset,
  3893.             /* [in] */ LONG cRows,
  3894.             /* [out][in] */ ULONG __RPC_FAR *pcRowsObtained,
  3895.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows) = 0;
  3896.         
  3897.     };
  3898.     
  3899. #else     /* C style interface */
  3900.  
  3901.     typedef struct IRowsetFindVtbl
  3902.     {
  3903.         BEGIN_INTERFACE
  3904.         
  3905.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  3906.             IRowsetFind __RPC_FAR * This,
  3907.             /* [in] */ REFIID riid,
  3908.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  3909.         
  3910.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  3911.             IRowsetFind __RPC_FAR * This);
  3912.         
  3913.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  3914.             IRowsetFind __RPC_FAR * This);
  3915.         
  3916.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindNextRow )( 
  3917.             IRowsetFind __RPC_FAR * This,
  3918.             /* [in] */ HCHAPTER hChapter,
  3919.             /* [in] */ HACCESSOR hAccessor,
  3920.             /* [in] */ void __RPC_FAR *pFindValue,
  3921.             /* [in] */ DBCOMPAREOP CompareOp,
  3922.             /* [in] */ ULONG cbBookmark,
  3923.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3924.             /* [in] */ LONG lRowsOffset,
  3925.             /* [in] */ LONG cRows,
  3926.             /* [out][in] */ ULONG __RPC_FAR *pcRowsObtained,
  3927.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3928.         
  3929.         END_INTERFACE
  3930.     } IRowsetFindVtbl;
  3931.  
  3932.     interface IRowsetFind
  3933.     {
  3934.         CONST_VTBL struct IRowsetFindVtbl __RPC_FAR *lpVtbl;
  3935.     };
  3936.  
  3937.     
  3938.  
  3939. #ifdef COBJMACROS
  3940.  
  3941.  
  3942. #define IRowsetFind_QueryInterface(This,riid,ppvObject)    \
  3943.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3944.  
  3945. #define IRowsetFind_AddRef(This)    \
  3946.     (This)->lpVtbl -> AddRef(This)
  3947.  
  3948. #define IRowsetFind_Release(This)    \
  3949.     (This)->lpVtbl -> Release(This)
  3950.  
  3951.  
  3952. #define IRowsetFind_FindNextRow(This,hChapter,hAccessor,pFindValue,CompareOp,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  3953.     (This)->lpVtbl -> FindNextRow(This,hChapter,hAccessor,pFindValue,CompareOp,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)
  3954.  
  3955. #endif /* COBJMACROS */
  3956.  
  3957.  
  3958. #endif     /* C style interface */
  3959.  
  3960.  
  3961.  
  3962. HRESULT STDMETHODCALLTYPE IRowsetFind_FindNextRow_Proxy( 
  3963.     IRowsetFind __RPC_FAR * This,
  3964.     /* [in] */ HCHAPTER hChapter,
  3965.     /* [in] */ HACCESSOR hAccessor,
  3966.     /* [in] */ void __RPC_FAR *pFindValue,
  3967.     /* [in] */ DBCOMPAREOP CompareOp,
  3968.     /* [in] */ ULONG cbBookmark,
  3969.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  3970.     /* [in] */ LONG lRowsOffset,
  3971.     /* [in] */ LONG cRows,
  3972.     /* [out][in] */ ULONG __RPC_FAR *pcRowsObtained,
  3973.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  3974.  
  3975.  
  3976. void __RPC_STUB IRowsetFind_FindNextRow_Stub(
  3977.     IRpcStubBuffer *This,
  3978.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3979.     PRPC_MESSAGE _pRpcMessage,
  3980.     DWORD *_pdwStubPhase);
  3981.  
  3982.  
  3983.  
  3984. #endif     /* __IRowsetFind_INTERFACE_DEFINED__ */
  3985.  
  3986.  
  3987. #ifndef __IRowPosition_INTERFACE_DEFINED__
  3988. #define __IRowPosition_INTERFACE_DEFINED__
  3989.  
  3990. /****************************************
  3991.  * Generated header for interface: IRowPosition
  3992.  * at Wed Aug 26 14:08:54 1998
  3993.  * using MIDL 3.01.75
  3994.  ****************************************/
  3995. /* [unique][uuid][object] */ 
  3996.  
  3997.  
  3998. typedef DWORD DBPOSITIONFLAGS;
  3999.  
  4000.  
  4001. enum DBPOSITIONFLAGSENUM
  4002.     {    DBPOSITION_OK    = 0,
  4003.     DBPOSITION_NOROW    = DBPOSITION_OK + 1,
  4004.     DBPOSITION_BOF    = DBPOSITION_NOROW + 1,
  4005.     DBPOSITION_EOF    = DBPOSITION_BOF + 1
  4006.     };
  4007.  
  4008. EXTERN_C const IID IID_IRowPosition;
  4009.  
  4010. #if defined(__cplusplus) && !defined(CINTERFACE)
  4011.     
  4012.     interface DECLSPEC_UUID("0c733a94-2a1c-11ce-ade5-00aa0044773d")
  4013.     IRowPosition : public IUnknown
  4014.     {
  4015.     public:
  4016.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ClearRowPosition( void) = 0;
  4017.         
  4018.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRowPosition( 
  4019.             /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  4020.             /* [out] */ HROW __RPC_FAR *phRow,
  4021.             /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags) = 0;
  4022.         
  4023.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRowset( 
  4024.             /* [in] */ REFIID riid,
  4025.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  4026.         
  4027.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Initialize( 
  4028.             /* [in] */ IUnknown __RPC_FAR *pRowset) = 0;
  4029.         
  4030.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetRowPosition( 
  4031.             /* [in] */ HCHAPTER hChapter,
  4032.             /* [in] */ HROW hRow,
  4033.             /* [in] */ DBPOSITIONFLAGS dwPositionFlags) = 0;
  4034.         
  4035.     };
  4036.     
  4037. #else     /* C style interface */
  4038.  
  4039.     typedef struct IRowPositionVtbl
  4040.     {
  4041.         BEGIN_INTERFACE
  4042.         
  4043.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4044.             IRowPosition __RPC_FAR * This,
  4045.             /* [in] */ REFIID riid,
  4046.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4047.         
  4048.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4049.             IRowPosition __RPC_FAR * This);
  4050.         
  4051.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4052.             IRowPosition __RPC_FAR * This);
  4053.         
  4054.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearRowPosition )( 
  4055.             IRowPosition __RPC_FAR * This);
  4056.         
  4057.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowPosition )( 
  4058.             IRowPosition __RPC_FAR * This,
  4059.             /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  4060.             /* [out] */ HROW __RPC_FAR *phRow,
  4061.             /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags);
  4062.         
  4063.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowset )( 
  4064.             IRowPosition __RPC_FAR * This,
  4065.             /* [in] */ REFIID riid,
  4066.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  4067.         
  4068.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Initialize )( 
  4069.             IRowPosition __RPC_FAR * This,
  4070.             /* [in] */ IUnknown __RPC_FAR *pRowset);
  4071.         
  4072.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetRowPosition )( 
  4073.             IRowPosition __RPC_FAR * This,
  4074.             /* [in] */ HCHAPTER hChapter,
  4075.             /* [in] */ HROW hRow,
  4076.             /* [in] */ DBPOSITIONFLAGS dwPositionFlags);
  4077.         
  4078.         END_INTERFACE
  4079.     } IRowPositionVtbl;
  4080.  
  4081.     interface IRowPosition
  4082.     {
  4083.         CONST_VTBL struct IRowPositionVtbl __RPC_FAR *lpVtbl;
  4084.     };
  4085.  
  4086.     
  4087.  
  4088. #ifdef COBJMACROS
  4089.  
  4090.  
  4091. #define IRowPosition_QueryInterface(This,riid,ppvObject)    \
  4092.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4093.  
  4094. #define IRowPosition_AddRef(This)    \
  4095.     (This)->lpVtbl -> AddRef(This)
  4096.  
  4097. #define IRowPosition_Release(This)    \
  4098.     (This)->lpVtbl -> Release(This)
  4099.  
  4100.  
  4101. #define IRowPosition_ClearRowPosition(This)    \
  4102.     (This)->lpVtbl -> ClearRowPosition(This)
  4103.  
  4104. #define IRowPosition_GetRowPosition(This,phChapter,phRow,pdwPositionFlags)    \
  4105.     (This)->lpVtbl -> GetRowPosition(This,phChapter,phRow,pdwPositionFlags)
  4106.  
  4107. #define IRowPosition_GetRowset(This,riid,ppRowset)    \
  4108.     (This)->lpVtbl -> GetRowset(This,riid,ppRowset)
  4109.  
  4110. #define IRowPosition_Initialize(This,pRowset)    \
  4111.     (This)->lpVtbl -> Initialize(This,pRowset)
  4112.  
  4113. #define IRowPosition_SetRowPosition(This,hChapter,hRow,dwPositionFlags)    \
  4114.     (This)->lpVtbl -> SetRowPosition(This,hChapter,hRow,dwPositionFlags)
  4115.  
  4116. #endif /* COBJMACROS */
  4117.  
  4118.  
  4119. #endif     /* C style interface */
  4120.  
  4121.  
  4122.  
  4123. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteClearRowPosition_Proxy( 
  4124.     IRowPosition __RPC_FAR * This,
  4125.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4126.  
  4127.  
  4128. void __RPC_STUB IRowPosition_RemoteClearRowPosition_Stub(
  4129.     IRpcStubBuffer *This,
  4130.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4131.     PRPC_MESSAGE _pRpcMessage,
  4132.     DWORD *_pdwStubPhase);
  4133.  
  4134.  
  4135. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteGetRowPosition_Proxy( 
  4136.     IRowPosition __RPC_FAR * This,
  4137.     /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  4138.     /* [out] */ HROW __RPC_FAR *phRow,
  4139.     /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags,
  4140.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4141.  
  4142.  
  4143. void __RPC_STUB IRowPosition_RemoteGetRowPosition_Stub(
  4144.     IRpcStubBuffer *This,
  4145.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4146.     PRPC_MESSAGE _pRpcMessage,
  4147.     DWORD *_pdwStubPhase);
  4148.  
  4149.  
  4150. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteGetRowset_Proxy( 
  4151.     IRowPosition __RPC_FAR * This,
  4152.     /* [in] */ REFIID riid,
  4153.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  4154.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4155.  
  4156.  
  4157. void __RPC_STUB IRowPosition_RemoteGetRowset_Stub(
  4158.     IRpcStubBuffer *This,
  4159.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4160.     PRPC_MESSAGE _pRpcMessage,
  4161.     DWORD *_pdwStubPhase);
  4162.  
  4163.  
  4164. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteInitialize_Proxy( 
  4165.     IRowPosition __RPC_FAR * This,
  4166.     /* [in] */ IUnknown __RPC_FAR *pRowset,
  4167.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4168.  
  4169.  
  4170. void __RPC_STUB IRowPosition_RemoteInitialize_Stub(
  4171.     IRpcStubBuffer *This,
  4172.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4173.     PRPC_MESSAGE _pRpcMessage,
  4174.     DWORD *_pdwStubPhase);
  4175.  
  4176.  
  4177. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_RemoteSetRowPosition_Proxy( 
  4178.     IRowPosition __RPC_FAR * This,
  4179.     /* [in] */ HCHAPTER hChapter,
  4180.     /* [in] */ HROW hRow,
  4181.     /* [in] */ DBPOSITIONFLAGS dwPositionFlags,
  4182.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4183.  
  4184.  
  4185. void __RPC_STUB IRowPosition_RemoteSetRowPosition_Stub(
  4186.     IRpcStubBuffer *This,
  4187.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4188.     PRPC_MESSAGE _pRpcMessage,
  4189.     DWORD *_pdwStubPhase);
  4190.  
  4191.  
  4192.  
  4193. #endif     /* __IRowPosition_INTERFACE_DEFINED__ */
  4194.  
  4195.  
  4196. #ifndef __IRowPositionChange_INTERFACE_DEFINED__
  4197. #define __IRowPositionChange_INTERFACE_DEFINED__
  4198.  
  4199. /****************************************
  4200.  * Generated header for interface: IRowPositionChange
  4201.  * at Wed Aug 26 14:08:54 1998
  4202.  * using MIDL 3.01.75
  4203.  ****************************************/
  4204. /* [unique][uuid][object] */ 
  4205.  
  4206.  
  4207.  
  4208. EXTERN_C const IID IID_IRowPositionChange;
  4209.  
  4210. #if defined(__cplusplus) && !defined(CINTERFACE)
  4211.     
  4212.     interface DECLSPEC_UUID("0997a571-126e-11d0-9f8a-00a0c9a0631e")
  4213.     IRowPositionChange : public IUnknown
  4214.     {
  4215.     public:
  4216.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnRowPositionChange( 
  4217.             /* [in] */ DBREASON eReason,
  4218.             /* [in] */ DBEVENTPHASE ePhase,
  4219.             /* [in] */ BOOL fCantDeny) = 0;
  4220.         
  4221.     };
  4222.     
  4223. #else     /* C style interface */
  4224.  
  4225.     typedef struct IRowPositionChangeVtbl
  4226.     {
  4227.         BEGIN_INTERFACE
  4228.         
  4229.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4230.             IRowPositionChange __RPC_FAR * This,
  4231.             /* [in] */ REFIID riid,
  4232.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4233.         
  4234.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4235.             IRowPositionChange __RPC_FAR * This);
  4236.         
  4237.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4238.             IRowPositionChange __RPC_FAR * This);
  4239.         
  4240.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnRowPositionChange )( 
  4241.             IRowPositionChange __RPC_FAR * This,
  4242.             /* [in] */ DBREASON eReason,
  4243.             /* [in] */ DBEVENTPHASE ePhase,
  4244.             /* [in] */ BOOL fCantDeny);
  4245.         
  4246.         END_INTERFACE
  4247.     } IRowPositionChangeVtbl;
  4248.  
  4249.     interface IRowPositionChange
  4250.     {
  4251.         CONST_VTBL struct IRowPositionChangeVtbl __RPC_FAR *lpVtbl;
  4252.     };
  4253.  
  4254.     
  4255.  
  4256. #ifdef COBJMACROS
  4257.  
  4258.  
  4259. #define IRowPositionChange_QueryInterface(This,riid,ppvObject)    \
  4260.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4261.  
  4262. #define IRowPositionChange_AddRef(This)    \
  4263.     (This)->lpVtbl -> AddRef(This)
  4264.  
  4265. #define IRowPositionChange_Release(This)    \
  4266.     (This)->lpVtbl -> Release(This)
  4267.  
  4268.  
  4269. #define IRowPositionChange_OnRowPositionChange(This,eReason,ePhase,fCantDeny)    \
  4270.     (This)->lpVtbl -> OnRowPositionChange(This,eReason,ePhase,fCantDeny)
  4271.  
  4272. #endif /* COBJMACROS */
  4273.  
  4274.  
  4275. #endif     /* C style interface */
  4276.  
  4277.  
  4278.  
  4279. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPositionChange_RemoteOnRowPositionChange_Proxy( 
  4280.     IRowPositionChange __RPC_FAR * This,
  4281.     /* [in] */ DBREASON eReason,
  4282.     /* [in] */ DBEVENTPHASE ePhase,
  4283.     /* [in] */ BOOL fCantDeny,
  4284.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4285.  
  4286.  
  4287. void __RPC_STUB IRowPositionChange_RemoteOnRowPositionChange_Stub(
  4288.     IRpcStubBuffer *This,
  4289.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4290.     PRPC_MESSAGE _pRpcMessage,
  4291.     DWORD *_pdwStubPhase);
  4292.  
  4293.  
  4294.  
  4295. #endif     /* __IRowPositionChange_INTERFACE_DEFINED__ */
  4296.  
  4297.  
  4298. #ifndef __IViewRowset_INTERFACE_DEFINED__
  4299. #define __IViewRowset_INTERFACE_DEFINED__
  4300.  
  4301. /****************************************
  4302.  * Generated header for interface: IViewRowset
  4303.  * at Wed Aug 26 14:08:54 1998
  4304.  * using MIDL 3.01.75
  4305.  ****************************************/
  4306. /* [unique][uuid][object] */ 
  4307.  
  4308.  
  4309.  
  4310. EXTERN_C const IID IID_IViewRowset;
  4311.  
  4312. #if defined(__cplusplus) && !defined(CINTERFACE)
  4313.     
  4314.     interface DECLSPEC_UUID("0c733a97-2a1c-11ce-ade5-00aa0044773d")
  4315.     IViewRowset : public IUnknown
  4316.     {
  4317.     public:
  4318.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSpecification( 
  4319.             /* [in] */ REFIID riid,
  4320.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject) = 0;
  4321.         
  4322.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenViewRowset( 
  4323.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4324.             /* [in] */ REFIID riid,
  4325.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  4326.         
  4327.     };
  4328.     
  4329. #else     /* C style interface */
  4330.  
  4331.     typedef struct IViewRowsetVtbl
  4332.     {
  4333.         BEGIN_INTERFACE
  4334.         
  4335.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4336.             IViewRowset __RPC_FAR * This,
  4337.             /* [in] */ REFIID riid,
  4338.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4339.         
  4340.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4341.             IViewRowset __RPC_FAR * This);
  4342.         
  4343.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4344.             IViewRowset __RPC_FAR * This);
  4345.         
  4346.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecification )( 
  4347.             IViewRowset __RPC_FAR * This,
  4348.             /* [in] */ REFIID riid,
  4349.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject);
  4350.         
  4351.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenViewRowset )( 
  4352.             IViewRowset __RPC_FAR * This,
  4353.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4354.             /* [in] */ REFIID riid,
  4355.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  4356.         
  4357.         END_INTERFACE
  4358.     } IViewRowsetVtbl;
  4359.  
  4360.     interface IViewRowset
  4361.     {
  4362.         CONST_VTBL struct IViewRowsetVtbl __RPC_FAR *lpVtbl;
  4363.     };
  4364.  
  4365.     
  4366.  
  4367. #ifdef COBJMACROS
  4368.  
  4369.  
  4370. #define IViewRowset_QueryInterface(This,riid,ppvObject)    \
  4371.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4372.  
  4373. #define IViewRowset_AddRef(This)    \
  4374.     (This)->lpVtbl -> AddRef(This)
  4375.  
  4376. #define IViewRowset_Release(This)    \
  4377.     (This)->lpVtbl -> Release(This)
  4378.  
  4379.  
  4380. #define IViewRowset_GetSpecification(This,riid,ppObject)    \
  4381.     (This)->lpVtbl -> GetSpecification(This,riid,ppObject)
  4382.  
  4383. #define IViewRowset_OpenViewRowset(This,pUnkOuter,riid,ppRowset)    \
  4384.     (This)->lpVtbl -> OpenViewRowset(This,pUnkOuter,riid,ppRowset)
  4385.  
  4386. #endif /* COBJMACROS */
  4387.  
  4388.  
  4389. #endif     /* C style interface */
  4390.  
  4391.  
  4392.  
  4393. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewRowset_RemoteGetSpecification_Proxy( 
  4394.     IViewRowset __RPC_FAR * This,
  4395.     /* [in] */ REFIID riid,
  4396.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject,
  4397.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4398.  
  4399.  
  4400. void __RPC_STUB IViewRowset_RemoteGetSpecification_Stub(
  4401.     IRpcStubBuffer *This,
  4402.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4403.     PRPC_MESSAGE _pRpcMessage,
  4404.     DWORD *_pdwStubPhase);
  4405.  
  4406.  
  4407. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewRowset_RemoteOpenViewRowset_Proxy( 
  4408.     IViewRowset __RPC_FAR * This,
  4409.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4410.     /* [in] */ REFIID riid,
  4411.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  4412.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4413.  
  4414.  
  4415. void __RPC_STUB IViewRowset_RemoteOpenViewRowset_Stub(
  4416.     IRpcStubBuffer *This,
  4417.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4418.     PRPC_MESSAGE _pRpcMessage,
  4419.     DWORD *_pdwStubPhase);
  4420.  
  4421.  
  4422.  
  4423. #endif     /* __IViewRowset_INTERFACE_DEFINED__ */
  4424.  
  4425.  
  4426. #ifndef __IViewChapter_INTERFACE_DEFINED__
  4427. #define __IViewChapter_INTERFACE_DEFINED__
  4428.  
  4429. /****************************************
  4430.  * Generated header for interface: IViewChapter
  4431.  * at Wed Aug 26 14:08:54 1998
  4432.  * using MIDL 3.01.75
  4433.  ****************************************/
  4434. /* [unique][uuid][object] */ 
  4435.  
  4436.  
  4437.  
  4438. EXTERN_C const IID IID_IViewChapter;
  4439.  
  4440. #if defined(__cplusplus) && !defined(CINTERFACE)
  4441.     
  4442.     interface DECLSPEC_UUID("0c733a98-2a1c-11ce-ade5-00aa0044773d")
  4443.     IViewChapter : public IUnknown
  4444.     {
  4445.     public:
  4446.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSpecification( 
  4447.             /* [in] */ REFIID riid,
  4448.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  4449.         
  4450.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenViewChapter( 
  4451.             /* [in] */ HCHAPTER hSource,
  4452.             /* [out] */ HCHAPTER __RPC_FAR *phViewChapter) = 0;
  4453.         
  4454.     };
  4455.     
  4456. #else     /* C style interface */
  4457.  
  4458.     typedef struct IViewChapterVtbl
  4459.     {
  4460.         BEGIN_INTERFACE
  4461.         
  4462.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4463.             IViewChapter __RPC_FAR * This,
  4464.             /* [in] */ REFIID riid,
  4465.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4466.         
  4467.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4468.             IViewChapter __RPC_FAR * This);
  4469.         
  4470.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4471.             IViewChapter __RPC_FAR * This);
  4472.         
  4473.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecification )( 
  4474.             IViewChapter __RPC_FAR * This,
  4475.             /* [in] */ REFIID riid,
  4476.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  4477.         
  4478.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenViewChapter )( 
  4479.             IViewChapter __RPC_FAR * This,
  4480.             /* [in] */ HCHAPTER hSource,
  4481.             /* [out] */ HCHAPTER __RPC_FAR *phViewChapter);
  4482.         
  4483.         END_INTERFACE
  4484.     } IViewChapterVtbl;
  4485.  
  4486.     interface IViewChapter
  4487.     {
  4488.         CONST_VTBL struct IViewChapterVtbl __RPC_FAR *lpVtbl;
  4489.     };
  4490.  
  4491.     
  4492.  
  4493. #ifdef COBJMACROS
  4494.  
  4495.  
  4496. #define IViewChapter_QueryInterface(This,riid,ppvObject)    \
  4497.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4498.  
  4499. #define IViewChapter_AddRef(This)    \
  4500.     (This)->lpVtbl -> AddRef(This)
  4501.  
  4502. #define IViewChapter_Release(This)    \
  4503.     (This)->lpVtbl -> Release(This)
  4504.  
  4505.  
  4506. #define IViewChapter_GetSpecification(This,riid,ppRowset)    \
  4507.     (This)->lpVtbl -> GetSpecification(This,riid,ppRowset)
  4508.  
  4509. #define IViewChapter_OpenViewChapter(This,hSource,phViewChapter)    \
  4510.     (This)->lpVtbl -> OpenViewChapter(This,hSource,phViewChapter)
  4511.  
  4512. #endif /* COBJMACROS */
  4513.  
  4514.  
  4515. #endif     /* C style interface */
  4516.  
  4517.  
  4518.  
  4519. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewChapter_RemoteGetSpecification_Proxy( 
  4520.     IViewChapter __RPC_FAR * This,
  4521.     /* [in] */ REFIID riid,
  4522.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  4523.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4524.  
  4525.  
  4526. void __RPC_STUB IViewChapter_RemoteGetSpecification_Stub(
  4527.     IRpcStubBuffer *This,
  4528.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4529.     PRPC_MESSAGE _pRpcMessage,
  4530.     DWORD *_pdwStubPhase);
  4531.  
  4532.  
  4533. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewChapter_RemoteOpenViewChapter_Proxy( 
  4534.     IViewChapter __RPC_FAR * This,
  4535.     /* [in] */ HCHAPTER hSource,
  4536.     /* [out] */ HCHAPTER __RPC_FAR *phViewChapter,
  4537.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4538.  
  4539.  
  4540. void __RPC_STUB IViewChapter_RemoteOpenViewChapter_Stub(
  4541.     IRpcStubBuffer *This,
  4542.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4543.     PRPC_MESSAGE _pRpcMessage,
  4544.     DWORD *_pdwStubPhase);
  4545.  
  4546.  
  4547.  
  4548. #endif     /* __IViewChapter_INTERFACE_DEFINED__ */
  4549.  
  4550.  
  4551. #ifndef __IViewSort_INTERFACE_DEFINED__
  4552. #define __IViewSort_INTERFACE_DEFINED__
  4553.  
  4554. /****************************************
  4555.  * Generated header for interface: IViewSort
  4556.  * at Wed Aug 26 14:08:54 1998
  4557.  * using MIDL 3.01.75
  4558.  ****************************************/
  4559. /* [unique][uuid][object] */ 
  4560.  
  4561.  
  4562.  
  4563. EXTERN_C const IID IID_IViewSort;
  4564.  
  4565. #if defined(__cplusplus) && !defined(CINTERFACE)
  4566.     
  4567.     interface DECLSPEC_UUID("0c733a9a-2a1c-11ce-ade5-00aa0044773d")
  4568.     IViewSort : public IUnknown
  4569.     {
  4570.     public:
  4571.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSortOrder( 
  4572.             /* [out] */ ULONG __RPC_FAR *pcValues,
  4573.             /* [out] */ ULONG __RPC_FAR *__RPC_FAR prgColumns[  ],
  4574.             /* [out] */ DBSORT __RPC_FAR *__RPC_FAR prgOrders[  ]) = 0;
  4575.         
  4576.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetSortOrder( 
  4577.             /* [in] */ ULONG cValues,
  4578.             /* [size_is][in] */ const ULONG __RPC_FAR rgColumns[  ],
  4579.             /* [size_is][in] */ const DBSORT __RPC_FAR rgOrders[  ]) = 0;
  4580.         
  4581.     };
  4582.     
  4583. #else     /* C style interface */
  4584.  
  4585.     typedef struct IViewSortVtbl
  4586.     {
  4587.         BEGIN_INTERFACE
  4588.         
  4589.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4590.             IViewSort __RPC_FAR * This,
  4591.             /* [in] */ REFIID riid,
  4592.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4593.         
  4594.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4595.             IViewSort __RPC_FAR * This);
  4596.         
  4597.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4598.             IViewSort __RPC_FAR * This);
  4599.         
  4600.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSortOrder )( 
  4601.             IViewSort __RPC_FAR * This,
  4602.             /* [out] */ ULONG __RPC_FAR *pcValues,
  4603.             /* [out] */ ULONG __RPC_FAR *__RPC_FAR prgColumns[  ],
  4604.             /* [out] */ DBSORT __RPC_FAR *__RPC_FAR prgOrders[  ]);
  4605.         
  4606.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSortOrder )( 
  4607.             IViewSort __RPC_FAR * This,
  4608.             /* [in] */ ULONG cValues,
  4609.             /* [size_is][in] */ const ULONG __RPC_FAR rgColumns[  ],
  4610.             /* [size_is][in] */ const DBSORT __RPC_FAR rgOrders[  ]);
  4611.         
  4612.         END_INTERFACE
  4613.     } IViewSortVtbl;
  4614.  
  4615.     interface IViewSort
  4616.     {
  4617.         CONST_VTBL struct IViewSortVtbl __RPC_FAR *lpVtbl;
  4618.     };
  4619.  
  4620.     
  4621.  
  4622. #ifdef COBJMACROS
  4623.  
  4624.  
  4625. #define IViewSort_QueryInterface(This,riid,ppvObject)    \
  4626.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4627.  
  4628. #define IViewSort_AddRef(This)    \
  4629.     (This)->lpVtbl -> AddRef(This)
  4630.  
  4631. #define IViewSort_Release(This)    \
  4632.     (This)->lpVtbl -> Release(This)
  4633.  
  4634.  
  4635. #define IViewSort_GetSortOrder(This,pcValues,prgColumns,prgOrders)    \
  4636.     (This)->lpVtbl -> GetSortOrder(This,pcValues,prgColumns,prgOrders)
  4637.  
  4638. #define IViewSort_SetSortOrder(This,cValues,rgColumns,rgOrders)    \
  4639.     (This)->lpVtbl -> SetSortOrder(This,cValues,rgColumns,rgOrders)
  4640.  
  4641. #endif /* COBJMACROS */
  4642.  
  4643.  
  4644. #endif     /* C style interface */
  4645.  
  4646.  
  4647.  
  4648. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewSort_RemoteGetSortOrder_Proxy( 
  4649.     IViewSort __RPC_FAR * This,
  4650.     /* [out][in] */ ULONG __RPC_FAR *pcValues,
  4651.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgColumns,
  4652.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgOrders,
  4653.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4654.  
  4655.  
  4656. void __RPC_STUB IViewSort_RemoteGetSortOrder_Stub(
  4657.     IRpcStubBuffer *This,
  4658.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4659.     PRPC_MESSAGE _pRpcMessage,
  4660.     DWORD *_pdwStubPhase);
  4661.  
  4662.  
  4663. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewSort_RemoteSetSortOrder_Proxy( 
  4664.     IViewSort __RPC_FAR * This,
  4665.     /* [in] */ ULONG cValues,
  4666.     /* [size_is][in] */ const ULONG __RPC_FAR *rgColumns,
  4667.     /* [size_is][in] */ const DBSORT __RPC_FAR *rgOrders,
  4668.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4669.  
  4670.  
  4671. void __RPC_STUB IViewSort_RemoteSetSortOrder_Stub(
  4672.     IRpcStubBuffer *This,
  4673.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4674.     PRPC_MESSAGE _pRpcMessage,
  4675.     DWORD *_pdwStubPhase);
  4676.  
  4677.  
  4678.  
  4679. #endif     /* __IViewSort_INTERFACE_DEFINED__ */
  4680.  
  4681.  
  4682. #ifndef __IViewFilter_INTERFACE_DEFINED__
  4683. #define __IViewFilter_INTERFACE_DEFINED__
  4684.  
  4685. /****************************************
  4686.  * Generated header for interface: IViewFilter
  4687.  * at Wed Aug 26 14:08:54 1998
  4688.  * using MIDL 3.01.75
  4689.  ****************************************/
  4690. /* [unique][uuid][object] */ 
  4691.  
  4692.  
  4693.  
  4694. EXTERN_C const IID IID_IViewFilter;
  4695.  
  4696. #if defined(__cplusplus) && !defined(CINTERFACE)
  4697.     
  4698.     interface DECLSPEC_UUID("0c733a9b-2a1c-11ce-ade5-00aa0044773d")
  4699.     IViewFilter : public IUnknown
  4700.     {
  4701.     public:
  4702.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetFilter( 
  4703.             /* [in] */ HACCESSOR hAccessor,
  4704.             /* [out] */ ULONG __RPC_FAR *pcRows,
  4705.             /* [out] */ DBCOMPAREOP __RPC_FAR *__RPC_FAR pCompareOps[  ],
  4706.             /* [out] */ void __RPC_FAR *pCriteriaData) = 0;
  4707.         
  4708.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetFilterBindings( 
  4709.             /* [out] */ ULONG __RPC_FAR *pcBindings,
  4710.             /* [out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings) = 0;
  4711.         
  4712.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetFilter( 
  4713.             /* [in] */ HACCESSOR hAccessor,
  4714.             /* [in] */ ULONG cRows,
  4715.             /* [in] */ DBCOMPAREOP __RPC_FAR CompareOps[  ],
  4716.             /* [in] */ void __RPC_FAR *pCriteriaData) = 0;
  4717.         
  4718.     };
  4719.     
  4720. #else     /* C style interface */
  4721.  
  4722.     typedef struct IViewFilterVtbl
  4723.     {
  4724.         BEGIN_INTERFACE
  4725.         
  4726.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4727.             IViewFilter __RPC_FAR * This,
  4728.             /* [in] */ REFIID riid,
  4729.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4730.         
  4731.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4732.             IViewFilter __RPC_FAR * This);
  4733.         
  4734.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4735.             IViewFilter __RPC_FAR * This);
  4736.         
  4737.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFilter )( 
  4738.             IViewFilter __RPC_FAR * This,
  4739.             /* [in] */ HACCESSOR hAccessor,
  4740.             /* [out] */ ULONG __RPC_FAR *pcRows,
  4741.             /* [out] */ DBCOMPAREOP __RPC_FAR *__RPC_FAR pCompareOps[  ],
  4742.             /* [out] */ void __RPC_FAR *pCriteriaData);
  4743.         
  4744.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFilterBindings )( 
  4745.             IViewFilter __RPC_FAR * This,
  4746.             /* [out] */ ULONG __RPC_FAR *pcBindings,
  4747.             /* [out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings);
  4748.         
  4749.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFilter )( 
  4750.             IViewFilter __RPC_FAR * This,
  4751.             /* [in] */ HACCESSOR hAccessor,
  4752.             /* [in] */ ULONG cRows,
  4753.             /* [in] */ DBCOMPAREOP __RPC_FAR CompareOps[  ],
  4754.             /* [in] */ void __RPC_FAR *pCriteriaData);
  4755.         
  4756.         END_INTERFACE
  4757.     } IViewFilterVtbl;
  4758.  
  4759.     interface IViewFilter
  4760.     {
  4761.         CONST_VTBL struct IViewFilterVtbl __RPC_FAR *lpVtbl;
  4762.     };
  4763.  
  4764.     
  4765.  
  4766. #ifdef COBJMACROS
  4767.  
  4768.  
  4769. #define IViewFilter_QueryInterface(This,riid,ppvObject)    \
  4770.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4771.  
  4772. #define IViewFilter_AddRef(This)    \
  4773.     (This)->lpVtbl -> AddRef(This)
  4774.  
  4775. #define IViewFilter_Release(This)    \
  4776.     (This)->lpVtbl -> Release(This)
  4777.  
  4778.  
  4779. #define IViewFilter_GetFilter(This,hAccessor,pcRows,pCompareOps,pCriteriaData)    \
  4780.     (This)->lpVtbl -> GetFilter(This,hAccessor,pcRows,pCompareOps,pCriteriaData)
  4781.  
  4782. #define IViewFilter_GetFilterBindings(This,pcBindings,prgBindings)    \
  4783.     (This)->lpVtbl -> GetFilterBindings(This,pcBindings,prgBindings)
  4784.  
  4785. #define IViewFilter_SetFilter(This,hAccessor,cRows,CompareOps,pCriteriaData)    \
  4786.     (This)->lpVtbl -> SetFilter(This,hAccessor,cRows,CompareOps,pCriteriaData)
  4787.  
  4788. #endif /* COBJMACROS */
  4789.  
  4790.  
  4791. #endif     /* C style interface */
  4792.  
  4793.  
  4794.  
  4795. /* [local] */ HRESULT STDMETHODCALLTYPE IViewFilter_GetFilter_Proxy( 
  4796.     IViewFilter __RPC_FAR * This,
  4797.     /* [in] */ HACCESSOR hAccessor,
  4798.     /* [out] */ ULONG __RPC_FAR *pcRows,
  4799.     /* [out] */ DBCOMPAREOP __RPC_FAR *__RPC_FAR pCompareOps[  ],
  4800.     /* [out] */ void __RPC_FAR *pCriteriaData);
  4801.  
  4802.  
  4803. void __RPC_STUB IViewFilter_GetFilter_Stub(
  4804.     IRpcStubBuffer *This,
  4805.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4806.     PRPC_MESSAGE _pRpcMessage,
  4807.     DWORD *_pdwStubPhase);
  4808.  
  4809.  
  4810. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewFilter_RemoteGetFilterBindings_Proxy( 
  4811.     IViewFilter __RPC_FAR * This,
  4812.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  4813.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings,
  4814.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4815.  
  4816.  
  4817. void __RPC_STUB IViewFilter_RemoteGetFilterBindings_Stub(
  4818.     IRpcStubBuffer *This,
  4819.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4820.     PRPC_MESSAGE _pRpcMessage,
  4821.     DWORD *_pdwStubPhase);
  4822.  
  4823.  
  4824. /* [local] */ HRESULT STDMETHODCALLTYPE IViewFilter_SetFilter_Proxy( 
  4825.     IViewFilter __RPC_FAR * This,
  4826.     /* [in] */ HACCESSOR hAccessor,
  4827.     /* [in] */ ULONG cRows,
  4828.     /* [in] */ DBCOMPAREOP __RPC_FAR CompareOps[  ],
  4829.     /* [in] */ void __RPC_FAR *pCriteriaData);
  4830.  
  4831.  
  4832. void __RPC_STUB IViewFilter_SetFilter_Stub(
  4833.     IRpcStubBuffer *This,
  4834.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4835.     PRPC_MESSAGE _pRpcMessage,
  4836.     DWORD *_pdwStubPhase);
  4837.  
  4838.  
  4839.  
  4840. #endif     /* __IViewFilter_INTERFACE_DEFINED__ */
  4841.  
  4842.  
  4843. #ifndef __IRowsetView_INTERFACE_DEFINED__
  4844. #define __IRowsetView_INTERFACE_DEFINED__
  4845.  
  4846. /****************************************
  4847.  * Generated header for interface: IRowsetView
  4848.  * at Wed Aug 26 14:08:54 1998
  4849.  * using MIDL 3.01.75
  4850.  ****************************************/
  4851. /* [unique][uuid][object] */ 
  4852.  
  4853.  
  4854.  
  4855. EXTERN_C const IID IID_IRowsetView;
  4856.  
  4857. #if defined(__cplusplus) && !defined(CINTERFACE)
  4858.     
  4859.     interface DECLSPEC_UUID("0c733a99-2a1c-11ce-ade5-00aa0044773d")
  4860.     IRowsetView : public IUnknown
  4861.     {
  4862.     public:
  4863.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateView( 
  4864.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4865.             /* [in] */ REFIID riid,
  4866.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView) = 0;
  4867.         
  4868.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetView( 
  4869.             /* [in] */ HCHAPTER hChapter,
  4870.             /* [in] */ REFIID riid,
  4871.             /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  4872.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView) = 0;
  4873.         
  4874.     };
  4875.     
  4876. #else     /* C style interface */
  4877.  
  4878.     typedef struct IRowsetViewVtbl
  4879.     {
  4880.         BEGIN_INTERFACE
  4881.         
  4882.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  4883.             IRowsetView __RPC_FAR * This,
  4884.             /* [in] */ REFIID riid,
  4885.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  4886.         
  4887.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  4888.             IRowsetView __RPC_FAR * This);
  4889.         
  4890.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  4891.             IRowsetView __RPC_FAR * This);
  4892.         
  4893.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateView )( 
  4894.             IRowsetView __RPC_FAR * This,
  4895.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4896.             /* [in] */ REFIID riid,
  4897.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView);
  4898.         
  4899.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetView )( 
  4900.             IRowsetView __RPC_FAR * This,
  4901.             /* [in] */ HCHAPTER hChapter,
  4902.             /* [in] */ REFIID riid,
  4903.             /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  4904.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView);
  4905.         
  4906.         END_INTERFACE
  4907.     } IRowsetViewVtbl;
  4908.  
  4909.     interface IRowsetView
  4910.     {
  4911.         CONST_VTBL struct IRowsetViewVtbl __RPC_FAR *lpVtbl;
  4912.     };
  4913.  
  4914.     
  4915.  
  4916. #ifdef COBJMACROS
  4917.  
  4918.  
  4919. #define IRowsetView_QueryInterface(This,riid,ppvObject)    \
  4920.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4921.  
  4922. #define IRowsetView_AddRef(This)    \
  4923.     (This)->lpVtbl -> AddRef(This)
  4924.  
  4925. #define IRowsetView_Release(This)    \
  4926.     (This)->lpVtbl -> Release(This)
  4927.  
  4928.  
  4929. #define IRowsetView_CreateView(This,pUnkOuter,riid,ppView)    \
  4930.     (This)->lpVtbl -> CreateView(This,pUnkOuter,riid,ppView)
  4931.  
  4932. #define IRowsetView_GetView(This,hChapter,riid,phChapterSource,ppView)    \
  4933.     (This)->lpVtbl -> GetView(This,hChapter,riid,phChapterSource,ppView)
  4934.  
  4935. #endif /* COBJMACROS */
  4936.  
  4937.  
  4938. #endif     /* C style interface */
  4939.  
  4940.  
  4941.  
  4942. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetView_RemoteCreateView_Proxy( 
  4943.     IRowsetView __RPC_FAR * This,
  4944.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  4945.     /* [in] */ REFIID riid,
  4946.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView,
  4947.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4948.  
  4949.  
  4950. void __RPC_STUB IRowsetView_RemoteCreateView_Stub(
  4951.     IRpcStubBuffer *This,
  4952.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4953.     PRPC_MESSAGE _pRpcMessage,
  4954.     DWORD *_pdwStubPhase);
  4955.  
  4956.  
  4957. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetView_RemoteGetView_Proxy( 
  4958.     IRowsetView __RPC_FAR * This,
  4959.     /* [in] */ HCHAPTER hChapter,
  4960.     /* [in] */ REFIID riid,
  4961.     /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  4962.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView,
  4963.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  4964.  
  4965.  
  4966. void __RPC_STUB IRowsetView_RemoteGetView_Stub(
  4967.     IRpcStubBuffer *This,
  4968.     IRpcChannelBuffer *_pRpcChannelBuffer,
  4969.     PRPC_MESSAGE _pRpcMessage,
  4970.     DWORD *_pdwStubPhase);
  4971.  
  4972.  
  4973.  
  4974. #endif     /* __IRowsetView_INTERFACE_DEFINED__ */
  4975.  
  4976.  
  4977. /****************************************
  4978.  * Generated header for interface: __MIDL_itf_oledb_0170
  4979.  * at Wed Aug 26 14:08:54 1998
  4980.  * using MIDL 3.01.75
  4981.  ****************************************/
  4982. /* [local] */ 
  4983.  
  4984.  
  4985. #endif // OLEDBVER >= 0x0150
  4986. //@@@- V1.5
  4987. //@@@+ deprecated
  4988. #ifdef deprecated
  4989.  
  4990.  
  4991. extern RPC_IF_HANDLE __MIDL_itf_oledb_0170_v0_0_c_ifspec;
  4992. extern RPC_IF_HANDLE __MIDL_itf_oledb_0170_v0_0_s_ifspec;
  4993.  
  4994. #ifndef __IRowsetExactScroll_INTERFACE_DEFINED__
  4995. #define __IRowsetExactScroll_INTERFACE_DEFINED__
  4996.  
  4997. /****************************************
  4998.  * Generated header for interface: IRowsetExactScroll
  4999.  * at Wed Aug 26 14:08:54 1998
  5000.  * using MIDL 3.01.75
  5001.  ****************************************/
  5002. /* [unique][uuid][object][local] */ 
  5003.  
  5004.  
  5005.  
  5006. EXTERN_C const IID IID_IRowsetExactScroll;
  5007.  
  5008. #if defined(__cplusplus) && !defined(CINTERFACE)
  5009.     
  5010.     interface DECLSPEC_UUID("0c733a7f-2a1c-11ce-ade5-00aa0044773d")
  5011.     IRowsetExactScroll : public IRowsetScroll
  5012.     {
  5013.     public:
  5014.         virtual HRESULT STDMETHODCALLTYPE GetExactPosition( 
  5015.             /* [in] */ HCHAPTER hChapter,
  5016.             /* [in] */ ULONG cbBookmark,
  5017.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5018.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  5019.             /* [out] */ ULONG __RPC_FAR *pcRows) = 0;
  5020.         
  5021.     };
  5022.     
  5023. #else     /* C style interface */
  5024.  
  5025.     typedef struct IRowsetExactScrollVtbl
  5026.     {
  5027.         BEGIN_INTERFACE
  5028.         
  5029.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5030.             IRowsetExactScroll __RPC_FAR * This,
  5031.             /* [in] */ REFIID riid,
  5032.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5033.         
  5034.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5035.             IRowsetExactScroll __RPC_FAR * This);
  5036.         
  5037.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5038.             IRowsetExactScroll __RPC_FAR * This);
  5039.         
  5040.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRefRows )( 
  5041.             IRowsetExactScroll __RPC_FAR * This,
  5042.             /* [in] */ ULONG cRows,
  5043.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5044.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  5045.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5046.         
  5047.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetData )( 
  5048.             IRowsetExactScroll __RPC_FAR * This,
  5049.             /* [in] */ HROW hRow,
  5050.             /* [in] */ HACCESSOR hAccessor,
  5051.             /* [out] */ void __RPC_FAR *pData);
  5052.         
  5053.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextRows )( 
  5054.             IRowsetExactScroll __RPC_FAR * This,
  5055.             /* [in] */ HCHAPTER hReserved,
  5056.             /* [in] */ LONG lRowsOffset,
  5057.             /* [in] */ LONG cRows,
  5058.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  5059.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  5060.         
  5061.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseRows )( 
  5062.             IRowsetExactScroll __RPC_FAR * This,
  5063.             /* [in] */ ULONG cRows,
  5064.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5065.             /* [size_is][in] */ DBROWOPTIONS __RPC_FAR rgRowOptions[  ],
  5066.             /* [size_is][out] */ ULONG __RPC_FAR rgRefCounts[  ],
  5067.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5068.         
  5069.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RestartPosition )( 
  5070.             IRowsetExactScroll __RPC_FAR * This,
  5071.             /* [in] */ HCHAPTER hReserved);
  5072.         
  5073.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Compare )( 
  5074.             IRowsetExactScroll __RPC_FAR * This,
  5075.             /* [in] */ HCHAPTER hReserved,
  5076.             /* [in] */ ULONG cbBookmark1,
  5077.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark1,
  5078.             /* [in] */ ULONG cbBookmark2,
  5079.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark2,
  5080.             /* [out] */ DBCOMPARE __RPC_FAR *pComparison);
  5081.         
  5082.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAt )( 
  5083.             IRowsetExactScroll __RPC_FAR * This,
  5084.             /* [in] */ HWATCHREGION hReserved1,
  5085.             /* [in] */ HCHAPTER hReserved2,
  5086.             /* [in] */ ULONG cbBookmark,
  5087.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5088.             /* [in] */ LONG lRowsOffset,
  5089.             /* [in] */ LONG cRows,
  5090.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  5091.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  5092.         
  5093.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsByBookmark )( 
  5094.             IRowsetExactScroll __RPC_FAR * This,
  5095.             /* [in] */ HCHAPTER hReserved,
  5096.             /* [in] */ ULONG cRows,
  5097.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  5098.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  5099.             /* [size_is][out] */ HROW __RPC_FAR rghRows[  ],
  5100.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5101.         
  5102.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Hash )( 
  5103.             IRowsetExactScroll __RPC_FAR * This,
  5104.             /* [in] */ HCHAPTER hReserved,
  5105.             /* [in] */ ULONG cBookmarks,
  5106.             /* [size_is][in] */ const ULONG __RPC_FAR rgcbBookmarks[  ],
  5107.             /* [size_is][in] */ const BYTE __RPC_FAR *__RPC_FAR rgpBookmarks[  ],
  5108.             /* [size_is][out] */ DWORD __RPC_FAR rgHashedValues[  ],
  5109.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgBookmarkStatus[  ]);
  5110.         
  5111.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetApproximatePosition )( 
  5112.             IRowsetExactScroll __RPC_FAR * This,
  5113.             /* [in] */ HCHAPTER hReserved,
  5114.             /* [in] */ ULONG cbBookmark,
  5115.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5116.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  5117.             /* [out] */ ULONG __RPC_FAR *pcRows);
  5118.         
  5119.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowsAtRatio )( 
  5120.             IRowsetExactScroll __RPC_FAR * This,
  5121.             /* [in] */ HWATCHREGION hReserved1,
  5122.             /* [in] */ HCHAPTER hReserved2,
  5123.             /* [in] */ ULONG ulNumerator,
  5124.             /* [in] */ ULONG ulDenominator,
  5125.             /* [in] */ LONG cRows,
  5126.             /* [out] */ ULONG __RPC_FAR *pcRowsObtained,
  5127.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prghRows);
  5128.         
  5129.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetExactPosition )( 
  5130.             IRowsetExactScroll __RPC_FAR * This,
  5131.             /* [in] */ HCHAPTER hChapter,
  5132.             /* [in] */ ULONG cbBookmark,
  5133.             /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5134.             /* [out] */ ULONG __RPC_FAR *pulPosition,
  5135.             /* [out] */ ULONG __RPC_FAR *pcRows);
  5136.         
  5137.         END_INTERFACE
  5138.     } IRowsetExactScrollVtbl;
  5139.  
  5140.     interface IRowsetExactScroll
  5141.     {
  5142.         CONST_VTBL struct IRowsetExactScrollVtbl __RPC_FAR *lpVtbl;
  5143.     };
  5144.  
  5145.     
  5146.  
  5147. #ifdef COBJMACROS
  5148.  
  5149.  
  5150. #define IRowsetExactScroll_QueryInterface(This,riid,ppvObject)    \
  5151.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5152.  
  5153. #define IRowsetExactScroll_AddRef(This)    \
  5154.     (This)->lpVtbl -> AddRef(This)
  5155.  
  5156. #define IRowsetExactScroll_Release(This)    \
  5157.     (This)->lpVtbl -> Release(This)
  5158.  
  5159.  
  5160. #define IRowsetExactScroll_AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)    \
  5161.     (This)->lpVtbl -> AddRefRows(This,cRows,rghRows,rgRefCounts,rgRowStatus)
  5162.  
  5163. #define IRowsetExactScroll_GetData(This,hRow,hAccessor,pData)    \
  5164.     (This)->lpVtbl -> GetData(This,hRow,hAccessor,pData)
  5165.  
  5166. #define IRowsetExactScroll_GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  5167.     (This)->lpVtbl -> GetNextRows(This,hReserved,lRowsOffset,cRows,pcRowsObtained,prghRows)
  5168.  
  5169. #define IRowsetExactScroll_ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)    \
  5170.     (This)->lpVtbl -> ReleaseRows(This,cRows,rghRows,rgRowOptions,rgRefCounts,rgRowStatus)
  5171.  
  5172. #define IRowsetExactScroll_RestartPosition(This,hReserved)    \
  5173.     (This)->lpVtbl -> RestartPosition(This,hReserved)
  5174.  
  5175.  
  5176. #define IRowsetExactScroll_Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)    \
  5177.     (This)->lpVtbl -> Compare(This,hReserved,cbBookmark1,pBookmark1,cbBookmark2,pBookmark2,pComparison)
  5178.  
  5179. #define IRowsetExactScroll_GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)    \
  5180.     (This)->lpVtbl -> GetRowsAt(This,hReserved1,hReserved2,cbBookmark,pBookmark,lRowsOffset,cRows,pcRowsObtained,prghRows)
  5181.  
  5182. #define IRowsetExactScroll_GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)    \
  5183.     (This)->lpVtbl -> GetRowsByBookmark(This,hReserved,cRows,rgcbBookmarks,rgpBookmarks,rghRows,rgRowStatus)
  5184.  
  5185. #define IRowsetExactScroll_Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)    \
  5186.     (This)->lpVtbl -> Hash(This,hReserved,cBookmarks,rgcbBookmarks,rgpBookmarks,rgHashedValues,rgBookmarkStatus)
  5187.  
  5188.  
  5189. #define IRowsetExactScroll_GetApproximatePosition(This,hReserved,cbBookmark,pBookmark,pulPosition,pcRows)    \
  5190.     (This)->lpVtbl -> GetApproximatePosition(This,hReserved,cbBookmark,pBookmark,pulPosition,pcRows)
  5191.  
  5192. #define IRowsetExactScroll_GetRowsAtRatio(This,hReserved1,hReserved2,ulNumerator,ulDenominator,cRows,pcRowsObtained,prghRows)    \
  5193.     (This)->lpVtbl -> GetRowsAtRatio(This,hReserved1,hReserved2,ulNumerator,ulDenominator,cRows,pcRowsObtained,prghRows)
  5194.  
  5195.  
  5196. #define IRowsetExactScroll_GetExactPosition(This,hChapter,cbBookmark,pBookmark,pulPosition,pcRows)    \
  5197.     (This)->lpVtbl -> GetExactPosition(This,hChapter,cbBookmark,pBookmark,pulPosition,pcRows)
  5198.  
  5199. #endif /* COBJMACROS */
  5200.  
  5201.  
  5202. #endif     /* C style interface */
  5203.  
  5204.  
  5205.  
  5206. HRESULT STDMETHODCALLTYPE IRowsetExactScroll_GetExactPosition_Proxy( 
  5207.     IRowsetExactScroll __RPC_FAR * This,
  5208.     /* [in] */ HCHAPTER hChapter,
  5209.     /* [in] */ ULONG cbBookmark,
  5210.     /* [size_is][in] */ const BYTE __RPC_FAR *pBookmark,
  5211.     /* [out] */ ULONG __RPC_FAR *pulPosition,
  5212.     /* [out] */ ULONG __RPC_FAR *pcRows);
  5213.  
  5214.  
  5215. void __RPC_STUB IRowsetExactScroll_GetExactPosition_Stub(
  5216.     IRpcStubBuffer *This,
  5217.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5218.     PRPC_MESSAGE _pRpcMessage,
  5219.     DWORD *_pdwStubPhase);
  5220.  
  5221.  
  5222.  
  5223. #endif     /* __IRowsetExactScroll_INTERFACE_DEFINED__ */
  5224.  
  5225.  
  5226. /****************************************
  5227.  * Generated header for interface: __MIDL_itf_oledb_0171
  5228.  * at Wed Aug 26 14:08:54 1998
  5229.  * using MIDL 3.01.75
  5230.  ****************************************/
  5231. /* [local] */ 
  5232.  
  5233.  
  5234. #endif // deprecated
  5235. //@@@- deprecated
  5236.  
  5237.  
  5238. extern RPC_IF_HANDLE __MIDL_itf_oledb_0171_v0_0_c_ifspec;
  5239. extern RPC_IF_HANDLE __MIDL_itf_oledb_0171_v0_0_s_ifspec;
  5240.  
  5241. #ifndef __IRowsetChange_INTERFACE_DEFINED__
  5242. #define __IRowsetChange_INTERFACE_DEFINED__
  5243.  
  5244. /****************************************
  5245.  * Generated header for interface: IRowsetChange
  5246.  * at Wed Aug 26 14:08:54 1998
  5247.  * using MIDL 3.01.75
  5248.  ****************************************/
  5249. /* [unique][uuid][object][local] */ 
  5250.  
  5251.  
  5252.  
  5253. EXTERN_C const IID IID_IRowsetChange;
  5254.  
  5255. #if defined(__cplusplus) && !defined(CINTERFACE)
  5256.     
  5257.     interface DECLSPEC_UUID("0c733a05-2a1c-11ce-ade5-00aa0044773d")
  5258.     IRowsetChange : public IUnknown
  5259.     {
  5260.     public:
  5261.         virtual HRESULT STDMETHODCALLTYPE DeleteRows( 
  5262.             /* [in] */ HCHAPTER hReserved,
  5263.             /* [in] */ ULONG cRows,
  5264.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5265.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]) = 0;
  5266.         
  5267.         virtual HRESULT STDMETHODCALLTYPE SetData( 
  5268.             /* [in] */ HROW hRow,
  5269.             /* [in] */ HACCESSOR hAccessor,
  5270.             /* [in] */ void __RPC_FAR *pData) = 0;
  5271.         
  5272.         virtual HRESULT STDMETHODCALLTYPE InsertRow( 
  5273.             /* [in] */ HCHAPTER hReserved,
  5274.             /* [in] */ HACCESSOR hAccessor,
  5275.             /* [in] */ void __RPC_FAR *pData,
  5276.             /* [out] */ HROW __RPC_FAR *phRow) = 0;
  5277.         
  5278.     };
  5279.     
  5280. #else     /* C style interface */
  5281.  
  5282.     typedef struct IRowsetChangeVtbl
  5283.     {
  5284.         BEGIN_INTERFACE
  5285.         
  5286.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5287.             IRowsetChange __RPC_FAR * This,
  5288.             /* [in] */ REFIID riid,
  5289.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5290.         
  5291.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5292.             IRowsetChange __RPC_FAR * This);
  5293.         
  5294.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5295.             IRowsetChange __RPC_FAR * This);
  5296.         
  5297.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteRows )( 
  5298.             IRowsetChange __RPC_FAR * This,
  5299.             /* [in] */ HCHAPTER hReserved,
  5300.             /* [in] */ ULONG cRows,
  5301.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5302.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5303.         
  5304.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetData )( 
  5305.             IRowsetChange __RPC_FAR * This,
  5306.             /* [in] */ HROW hRow,
  5307.             /* [in] */ HACCESSOR hAccessor,
  5308.             /* [in] */ void __RPC_FAR *pData);
  5309.         
  5310.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InsertRow )( 
  5311.             IRowsetChange __RPC_FAR * This,
  5312.             /* [in] */ HCHAPTER hReserved,
  5313.             /* [in] */ HACCESSOR hAccessor,
  5314.             /* [in] */ void __RPC_FAR *pData,
  5315.             /* [out] */ HROW __RPC_FAR *phRow);
  5316.         
  5317.         END_INTERFACE
  5318.     } IRowsetChangeVtbl;
  5319.  
  5320.     interface IRowsetChange
  5321.     {
  5322.         CONST_VTBL struct IRowsetChangeVtbl __RPC_FAR *lpVtbl;
  5323.     };
  5324.  
  5325.     
  5326.  
  5327. #ifdef COBJMACROS
  5328.  
  5329.  
  5330. #define IRowsetChange_QueryInterface(This,riid,ppvObject)    \
  5331.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5332.  
  5333. #define IRowsetChange_AddRef(This)    \
  5334.     (This)->lpVtbl -> AddRef(This)
  5335.  
  5336. #define IRowsetChange_Release(This)    \
  5337.     (This)->lpVtbl -> Release(This)
  5338.  
  5339.  
  5340. #define IRowsetChange_DeleteRows(This,hReserved,cRows,rghRows,rgRowStatus)    \
  5341.     (This)->lpVtbl -> DeleteRows(This,hReserved,cRows,rghRows,rgRowStatus)
  5342.  
  5343. #define IRowsetChange_SetData(This,hRow,hAccessor,pData)    \
  5344.     (This)->lpVtbl -> SetData(This,hRow,hAccessor,pData)
  5345.  
  5346. #define IRowsetChange_InsertRow(This,hReserved,hAccessor,pData,phRow)    \
  5347.     (This)->lpVtbl -> InsertRow(This,hReserved,hAccessor,pData,phRow)
  5348.  
  5349. #endif /* COBJMACROS */
  5350.  
  5351.  
  5352. #endif     /* C style interface */
  5353.  
  5354.  
  5355.  
  5356. HRESULT STDMETHODCALLTYPE IRowsetChange_DeleteRows_Proxy( 
  5357.     IRowsetChange __RPC_FAR * This,
  5358.     /* [in] */ HCHAPTER hReserved,
  5359.     /* [in] */ ULONG cRows,
  5360.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5361.     /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5362.  
  5363.  
  5364. void __RPC_STUB IRowsetChange_DeleteRows_Stub(
  5365.     IRpcStubBuffer *This,
  5366.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5367.     PRPC_MESSAGE _pRpcMessage,
  5368.     DWORD *_pdwStubPhase);
  5369.  
  5370.  
  5371. HRESULT STDMETHODCALLTYPE IRowsetChange_SetData_Proxy( 
  5372.     IRowsetChange __RPC_FAR * This,
  5373.     /* [in] */ HROW hRow,
  5374.     /* [in] */ HACCESSOR hAccessor,
  5375.     /* [in] */ void __RPC_FAR *pData);
  5376.  
  5377.  
  5378. void __RPC_STUB IRowsetChange_SetData_Stub(
  5379.     IRpcStubBuffer *This,
  5380.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5381.     PRPC_MESSAGE _pRpcMessage,
  5382.     DWORD *_pdwStubPhase);
  5383.  
  5384.  
  5385. HRESULT STDMETHODCALLTYPE IRowsetChange_InsertRow_Proxy( 
  5386.     IRowsetChange __RPC_FAR * This,
  5387.     /* [in] */ HCHAPTER hReserved,
  5388.     /* [in] */ HACCESSOR hAccessor,
  5389.     /* [in] */ void __RPC_FAR *pData,
  5390.     /* [out] */ HROW __RPC_FAR *phRow);
  5391.  
  5392.  
  5393. void __RPC_STUB IRowsetChange_InsertRow_Stub(
  5394.     IRpcStubBuffer *This,
  5395.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5396.     PRPC_MESSAGE _pRpcMessage,
  5397.     DWORD *_pdwStubPhase);
  5398.  
  5399.  
  5400.  
  5401. #endif     /* __IRowsetChange_INTERFACE_DEFINED__ */
  5402.  
  5403.  
  5404. #ifndef __IRowsetUpdate_INTERFACE_DEFINED__
  5405. #define __IRowsetUpdate_INTERFACE_DEFINED__
  5406.  
  5407. /****************************************
  5408.  * Generated header for interface: IRowsetUpdate
  5409.  * at Wed Aug 26 14:08:54 1998
  5410.  * using MIDL 3.01.75
  5411.  ****************************************/
  5412. /* [unique][uuid][object][local] */ 
  5413.  
  5414.  
  5415. typedef DWORD DBPENDINGSTATUS;
  5416.  
  5417.  
  5418. enum DBPENDINGSTATUSENUM
  5419.     {    DBPENDINGSTATUS_NEW    = 0x1,
  5420.     DBPENDINGSTATUS_CHANGED    = 0x2,
  5421.     DBPENDINGSTATUS_DELETED    = 0x4,
  5422.     DBPENDINGSTATUS_UNCHANGED    = 0x8,
  5423.     DBPENDINGSTATUS_INVALIDROW    = 0x10
  5424.     };
  5425.  
  5426. EXTERN_C const IID IID_IRowsetUpdate;
  5427.  
  5428. #if defined(__cplusplus) && !defined(CINTERFACE)
  5429.     
  5430.     interface DECLSPEC_UUID("0c733a6d-2a1c-11ce-ade5-00aa0044773d")
  5431.     IRowsetUpdate : public IRowsetChange
  5432.     {
  5433.     public:
  5434.         virtual HRESULT STDMETHODCALLTYPE GetOriginalData( 
  5435.             /* [in] */ HROW hRow,
  5436.             /* [in] */ HACCESSOR hAccessor,
  5437.             /* [out] */ void __RPC_FAR *pData) = 0;
  5438.         
  5439.         virtual HRESULT STDMETHODCALLTYPE GetPendingRows( 
  5440.             /* [in] */ HCHAPTER hReserved,
  5441.             /* [in] */ DBPENDINGSTATUS dwRowStatus,
  5442.             /* [out][in] */ ULONG __RPC_FAR *pcPendingRows,
  5443.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgPendingRows,
  5444.             /* [size_is][size_is][out] */ DBPENDINGSTATUS __RPC_FAR *__RPC_FAR *prgPendingStatus) = 0;
  5445.         
  5446.         virtual HRESULT STDMETHODCALLTYPE GetRowStatus( 
  5447.             /* [in] */ HCHAPTER hReserved,
  5448.             /* [in] */ ULONG cRows,
  5449.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5450.             /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgPendingStatus[  ]) = 0;
  5451.         
  5452.         virtual HRESULT STDMETHODCALLTYPE Undo( 
  5453.             /* [in] */ HCHAPTER hReserved,
  5454.             /* [in] */ ULONG cRows,
  5455.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5456.             /* [out][in] */ ULONG __RPC_FAR *pcRowsUndone,
  5457.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRowsUndone,
  5458.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus) = 0;
  5459.         
  5460.         virtual HRESULT STDMETHODCALLTYPE Update( 
  5461.             /* [in] */ HCHAPTER hReserved,
  5462.             /* [in] */ ULONG cRows,
  5463.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5464.             /* [out][in] */ ULONG __RPC_FAR *pcRows,
  5465.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRows,
  5466.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus) = 0;
  5467.         
  5468.     };
  5469.     
  5470. #else     /* C style interface */
  5471.  
  5472.     typedef struct IRowsetUpdateVtbl
  5473.     {
  5474.         BEGIN_INTERFACE
  5475.         
  5476.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5477.             IRowsetUpdate __RPC_FAR * This,
  5478.             /* [in] */ REFIID riid,
  5479.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5480.         
  5481.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5482.             IRowsetUpdate __RPC_FAR * This);
  5483.         
  5484.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5485.             IRowsetUpdate __RPC_FAR * This);
  5486.         
  5487.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteRows )( 
  5488.             IRowsetUpdate __RPC_FAR * This,
  5489.             /* [in] */ HCHAPTER hReserved,
  5490.             /* [in] */ ULONG cRows,
  5491.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5492.             /* [size_is][out] */ DBROWSTATUS __RPC_FAR rgRowStatus[  ]);
  5493.         
  5494.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetData )( 
  5495.             IRowsetUpdate __RPC_FAR * This,
  5496.             /* [in] */ HROW hRow,
  5497.             /* [in] */ HACCESSOR hAccessor,
  5498.             /* [in] */ void __RPC_FAR *pData);
  5499.         
  5500.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InsertRow )( 
  5501.             IRowsetUpdate __RPC_FAR * This,
  5502.             /* [in] */ HCHAPTER hReserved,
  5503.             /* [in] */ HACCESSOR hAccessor,
  5504.             /* [in] */ void __RPC_FAR *pData,
  5505.             /* [out] */ HROW __RPC_FAR *phRow);
  5506.         
  5507.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetOriginalData )( 
  5508.             IRowsetUpdate __RPC_FAR * This,
  5509.             /* [in] */ HROW hRow,
  5510.             /* [in] */ HACCESSOR hAccessor,
  5511.             /* [out] */ void __RPC_FAR *pData);
  5512.         
  5513.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPendingRows )( 
  5514.             IRowsetUpdate __RPC_FAR * This,
  5515.             /* [in] */ HCHAPTER hReserved,
  5516.             /* [in] */ DBPENDINGSTATUS dwRowStatus,
  5517.             /* [out][in] */ ULONG __RPC_FAR *pcPendingRows,
  5518.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgPendingRows,
  5519.             /* [size_is][size_is][out] */ DBPENDINGSTATUS __RPC_FAR *__RPC_FAR *prgPendingStatus);
  5520.         
  5521.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowStatus )( 
  5522.             IRowsetUpdate __RPC_FAR * This,
  5523.             /* [in] */ HCHAPTER hReserved,
  5524.             /* [in] */ ULONG cRows,
  5525.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5526.             /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgPendingStatus[  ]);
  5527.         
  5528.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Undo )( 
  5529.             IRowsetUpdate __RPC_FAR * This,
  5530.             /* [in] */ HCHAPTER hReserved,
  5531.             /* [in] */ ULONG cRows,
  5532.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5533.             /* [out][in] */ ULONG __RPC_FAR *pcRowsUndone,
  5534.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRowsUndone,
  5535.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  5536.         
  5537.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
  5538.             IRowsetUpdate __RPC_FAR * This,
  5539.             /* [in] */ HCHAPTER hReserved,
  5540.             /* [in] */ ULONG cRows,
  5541.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5542.             /* [out][in] */ ULONG __RPC_FAR *pcRows,
  5543.             /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRows,
  5544.             /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  5545.         
  5546.         END_INTERFACE
  5547.     } IRowsetUpdateVtbl;
  5548.  
  5549.     interface IRowsetUpdate
  5550.     {
  5551.         CONST_VTBL struct IRowsetUpdateVtbl __RPC_FAR *lpVtbl;
  5552.     };
  5553.  
  5554.     
  5555.  
  5556. #ifdef COBJMACROS
  5557.  
  5558.  
  5559. #define IRowsetUpdate_QueryInterface(This,riid,ppvObject)    \
  5560.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5561.  
  5562. #define IRowsetUpdate_AddRef(This)    \
  5563.     (This)->lpVtbl -> AddRef(This)
  5564.  
  5565. #define IRowsetUpdate_Release(This)    \
  5566.     (This)->lpVtbl -> Release(This)
  5567.  
  5568.  
  5569. #define IRowsetUpdate_DeleteRows(This,hReserved,cRows,rghRows,rgRowStatus)    \
  5570.     (This)->lpVtbl -> DeleteRows(This,hReserved,cRows,rghRows,rgRowStatus)
  5571.  
  5572. #define IRowsetUpdate_SetData(This,hRow,hAccessor,pData)    \
  5573.     (This)->lpVtbl -> SetData(This,hRow,hAccessor,pData)
  5574.  
  5575. #define IRowsetUpdate_InsertRow(This,hReserved,hAccessor,pData,phRow)    \
  5576.     (This)->lpVtbl -> InsertRow(This,hReserved,hAccessor,pData,phRow)
  5577.  
  5578.  
  5579. #define IRowsetUpdate_GetOriginalData(This,hRow,hAccessor,pData)    \
  5580.     (This)->lpVtbl -> GetOriginalData(This,hRow,hAccessor,pData)
  5581.  
  5582. #define IRowsetUpdate_GetPendingRows(This,hReserved,dwRowStatus,pcPendingRows,prgPendingRows,prgPendingStatus)    \
  5583.     (This)->lpVtbl -> GetPendingRows(This,hReserved,dwRowStatus,pcPendingRows,prgPendingRows,prgPendingStatus)
  5584.  
  5585. #define IRowsetUpdate_GetRowStatus(This,hReserved,cRows,rghRows,rgPendingStatus)    \
  5586.     (This)->lpVtbl -> GetRowStatus(This,hReserved,cRows,rghRows,rgPendingStatus)
  5587.  
  5588. #define IRowsetUpdate_Undo(This,hReserved,cRows,rghRows,pcRowsUndone,prgRowsUndone,prgRowStatus)    \
  5589.     (This)->lpVtbl -> Undo(This,hReserved,cRows,rghRows,pcRowsUndone,prgRowsUndone,prgRowStatus)
  5590.  
  5591. #define IRowsetUpdate_Update(This,hReserved,cRows,rghRows,pcRows,prgRows,prgRowStatus)    \
  5592.     (This)->lpVtbl -> Update(This,hReserved,cRows,rghRows,pcRows,prgRows,prgRowStatus)
  5593.  
  5594. #endif /* COBJMACROS */
  5595.  
  5596.  
  5597. #endif     /* C style interface */
  5598.  
  5599.  
  5600.  
  5601. HRESULT STDMETHODCALLTYPE IRowsetUpdate_GetOriginalData_Proxy( 
  5602.     IRowsetUpdate __RPC_FAR * This,
  5603.     /* [in] */ HROW hRow,
  5604.     /* [in] */ HACCESSOR hAccessor,
  5605.     /* [out] */ void __RPC_FAR *pData);
  5606.  
  5607.  
  5608. void __RPC_STUB IRowsetUpdate_GetOriginalData_Stub(
  5609.     IRpcStubBuffer *This,
  5610.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5611.     PRPC_MESSAGE _pRpcMessage,
  5612.     DWORD *_pdwStubPhase);
  5613.  
  5614.  
  5615. HRESULT STDMETHODCALLTYPE IRowsetUpdate_GetPendingRows_Proxy( 
  5616.     IRowsetUpdate __RPC_FAR * This,
  5617.     /* [in] */ HCHAPTER hReserved,
  5618.     /* [in] */ DBPENDINGSTATUS dwRowStatus,
  5619.     /* [out][in] */ ULONG __RPC_FAR *pcPendingRows,
  5620.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgPendingRows,
  5621.     /* [size_is][size_is][out] */ DBPENDINGSTATUS __RPC_FAR *__RPC_FAR *prgPendingStatus);
  5622.  
  5623.  
  5624. void __RPC_STUB IRowsetUpdate_GetPendingRows_Stub(
  5625.     IRpcStubBuffer *This,
  5626.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5627.     PRPC_MESSAGE _pRpcMessage,
  5628.     DWORD *_pdwStubPhase);
  5629.  
  5630.  
  5631. HRESULT STDMETHODCALLTYPE IRowsetUpdate_GetRowStatus_Proxy( 
  5632.     IRowsetUpdate __RPC_FAR * This,
  5633.     /* [in] */ HCHAPTER hReserved,
  5634.     /* [in] */ ULONG cRows,
  5635.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5636.     /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgPendingStatus[  ]);
  5637.  
  5638.  
  5639. void __RPC_STUB IRowsetUpdate_GetRowStatus_Stub(
  5640.     IRpcStubBuffer *This,
  5641.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5642.     PRPC_MESSAGE _pRpcMessage,
  5643.     DWORD *_pdwStubPhase);
  5644.  
  5645.  
  5646. HRESULT STDMETHODCALLTYPE IRowsetUpdate_Undo_Proxy( 
  5647.     IRowsetUpdate __RPC_FAR * This,
  5648.     /* [in] */ HCHAPTER hReserved,
  5649.     /* [in] */ ULONG cRows,
  5650.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5651.     /* [out][in] */ ULONG __RPC_FAR *pcRowsUndone,
  5652.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRowsUndone,
  5653.     /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  5654.  
  5655.  
  5656. void __RPC_STUB IRowsetUpdate_Undo_Stub(
  5657.     IRpcStubBuffer *This,
  5658.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5659.     PRPC_MESSAGE _pRpcMessage,
  5660.     DWORD *_pdwStubPhase);
  5661.  
  5662.  
  5663. HRESULT STDMETHODCALLTYPE IRowsetUpdate_Update_Proxy( 
  5664.     IRowsetUpdate __RPC_FAR * This,
  5665.     /* [in] */ HCHAPTER hReserved,
  5666.     /* [in] */ ULONG cRows,
  5667.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5668.     /* [out][in] */ ULONG __RPC_FAR *pcRows,
  5669.     /* [size_is][size_is][out] */ HROW __RPC_FAR *__RPC_FAR *prgRows,
  5670.     /* [size_is][size_is][out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  5671.  
  5672.  
  5673. void __RPC_STUB IRowsetUpdate_Update_Stub(
  5674.     IRpcStubBuffer *This,
  5675.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5676.     PRPC_MESSAGE _pRpcMessage,
  5677.     DWORD *_pdwStubPhase);
  5678.  
  5679.  
  5680.  
  5681. #endif     /* __IRowsetUpdate_INTERFACE_DEFINED__ */
  5682.  
  5683.  
  5684. #ifndef __IRowsetIdentity_INTERFACE_DEFINED__
  5685. #define __IRowsetIdentity_INTERFACE_DEFINED__
  5686.  
  5687. /****************************************
  5688.  * Generated header for interface: IRowsetIdentity
  5689.  * at Wed Aug 26 14:08:54 1998
  5690.  * using MIDL 3.01.75
  5691.  ****************************************/
  5692. /* [unique][uuid][object] */ 
  5693.  
  5694.  
  5695.  
  5696. EXTERN_C const IID IID_IRowsetIdentity;
  5697.  
  5698. #if defined(__cplusplus) && !defined(CINTERFACE)
  5699.     
  5700.     interface DECLSPEC_UUID("0c733a09-2a1c-11ce-ade5-00aa0044773d")
  5701.     IRowsetIdentity : public IUnknown
  5702.     {
  5703.     public:
  5704.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE IsSameRow( 
  5705.             /* [in] */ HROW hThisRow,
  5706.             /* [in] */ HROW hThatRow) = 0;
  5707.         
  5708.     };
  5709.     
  5710. #else     /* C style interface */
  5711.  
  5712.     typedef struct IRowsetIdentityVtbl
  5713.     {
  5714.         BEGIN_INTERFACE
  5715.         
  5716.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5717.             IRowsetIdentity __RPC_FAR * This,
  5718.             /* [in] */ REFIID riid,
  5719.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5720.         
  5721.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5722.             IRowsetIdentity __RPC_FAR * This);
  5723.         
  5724.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5725.             IRowsetIdentity __RPC_FAR * This);
  5726.         
  5727.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsSameRow )( 
  5728.             IRowsetIdentity __RPC_FAR * This,
  5729.             /* [in] */ HROW hThisRow,
  5730.             /* [in] */ HROW hThatRow);
  5731.         
  5732.         END_INTERFACE
  5733.     } IRowsetIdentityVtbl;
  5734.  
  5735.     interface IRowsetIdentity
  5736.     {
  5737.         CONST_VTBL struct IRowsetIdentityVtbl __RPC_FAR *lpVtbl;
  5738.     };
  5739.  
  5740.     
  5741.  
  5742. #ifdef COBJMACROS
  5743.  
  5744.  
  5745. #define IRowsetIdentity_QueryInterface(This,riid,ppvObject)    \
  5746.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5747.  
  5748. #define IRowsetIdentity_AddRef(This)    \
  5749.     (This)->lpVtbl -> AddRef(This)
  5750.  
  5751. #define IRowsetIdentity_Release(This)    \
  5752.     (This)->lpVtbl -> Release(This)
  5753.  
  5754.  
  5755. #define IRowsetIdentity_IsSameRow(This,hThisRow,hThatRow)    \
  5756.     (This)->lpVtbl -> IsSameRow(This,hThisRow,hThatRow)
  5757.  
  5758. #endif /* COBJMACROS */
  5759.  
  5760.  
  5761. #endif     /* C style interface */
  5762.  
  5763.  
  5764.  
  5765. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetIdentity_RemoteIsSameRow_Proxy( 
  5766.     IRowsetIdentity __RPC_FAR * This,
  5767.     /* [in] */ HROW hThisRow,
  5768.     /* [in] */ HROW hThatRow,
  5769.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  5770.  
  5771.  
  5772. void __RPC_STUB IRowsetIdentity_RemoteIsSameRow_Stub(
  5773.     IRpcStubBuffer *This,
  5774.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5775.     PRPC_MESSAGE _pRpcMessage,
  5776.     DWORD *_pdwStubPhase);
  5777.  
  5778.  
  5779.  
  5780. #endif     /* __IRowsetIdentity_INTERFACE_DEFINED__ */
  5781.  
  5782.  
  5783. #ifndef __IRowsetNotify_INTERFACE_DEFINED__
  5784. #define __IRowsetNotify_INTERFACE_DEFINED__
  5785.  
  5786. /****************************************
  5787.  * Generated header for interface: IRowsetNotify
  5788.  * at Wed Aug 26 14:08:54 1998
  5789.  * using MIDL 3.01.75
  5790.  ****************************************/
  5791. /* [unique][uuid][object] */ 
  5792.  
  5793.  
  5794.  
  5795. EXTERN_C const IID IID_IRowsetNotify;
  5796.  
  5797. #if defined(__cplusplus) && !defined(CINTERFACE)
  5798.     
  5799.     interface DECLSPEC_UUID("0c733a83-2a1c-11ce-ade5-00aa0044773d")
  5800.     IRowsetNotify : public IUnknown
  5801.     {
  5802.     public:
  5803.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnFieldChange( 
  5804.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5805.             /* [in] */ HROW hRow,
  5806.             /* [in] */ ULONG cColumns,
  5807.             /* [size_is][in] */ ULONG __RPC_FAR rgColumns[  ],
  5808.             /* [in] */ DBREASON eReason,
  5809.             /* [in] */ DBEVENTPHASE ePhase,
  5810.             /* [in] */ BOOL fCantDeny) = 0;
  5811.         
  5812.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnRowChange( 
  5813.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5814.             /* [in] */ ULONG cRows,
  5815.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5816.             /* [in] */ DBREASON eReason,
  5817.             /* [in] */ DBEVENTPHASE ePhase,
  5818.             /* [in] */ BOOL fCantDeny) = 0;
  5819.         
  5820.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnRowsetChange( 
  5821.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5822.             /* [in] */ DBREASON eReason,
  5823.             /* [in] */ DBEVENTPHASE ePhase,
  5824.             /* [in] */ BOOL fCantDeny) = 0;
  5825.         
  5826.     };
  5827.     
  5828. #else     /* C style interface */
  5829.  
  5830.     typedef struct IRowsetNotifyVtbl
  5831.     {
  5832.         BEGIN_INTERFACE
  5833.         
  5834.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  5835.             IRowsetNotify __RPC_FAR * This,
  5836.             /* [in] */ REFIID riid,
  5837.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  5838.         
  5839.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  5840.             IRowsetNotify __RPC_FAR * This);
  5841.         
  5842.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  5843.             IRowsetNotify __RPC_FAR * This);
  5844.         
  5845.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnFieldChange )( 
  5846.             IRowsetNotify __RPC_FAR * This,
  5847.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5848.             /* [in] */ HROW hRow,
  5849.             /* [in] */ ULONG cColumns,
  5850.             /* [size_is][in] */ ULONG __RPC_FAR rgColumns[  ],
  5851.             /* [in] */ DBREASON eReason,
  5852.             /* [in] */ DBEVENTPHASE ePhase,
  5853.             /* [in] */ BOOL fCantDeny);
  5854.         
  5855.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnRowChange )( 
  5856.             IRowsetNotify __RPC_FAR * This,
  5857.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5858.             /* [in] */ ULONG cRows,
  5859.             /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  5860.             /* [in] */ DBREASON eReason,
  5861.             /* [in] */ DBEVENTPHASE ePhase,
  5862.             /* [in] */ BOOL fCantDeny);
  5863.         
  5864.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnRowsetChange )( 
  5865.             IRowsetNotify __RPC_FAR * This,
  5866.             /* [in] */ IRowset __RPC_FAR *pRowset,
  5867.             /* [in] */ DBREASON eReason,
  5868.             /* [in] */ DBEVENTPHASE ePhase,
  5869.             /* [in] */ BOOL fCantDeny);
  5870.         
  5871.         END_INTERFACE
  5872.     } IRowsetNotifyVtbl;
  5873.  
  5874.     interface IRowsetNotify
  5875.     {
  5876.         CONST_VTBL struct IRowsetNotifyVtbl __RPC_FAR *lpVtbl;
  5877.     };
  5878.  
  5879.     
  5880.  
  5881. #ifdef COBJMACROS
  5882.  
  5883.  
  5884. #define IRowsetNotify_QueryInterface(This,riid,ppvObject)    \
  5885.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5886.  
  5887. #define IRowsetNotify_AddRef(This)    \
  5888.     (This)->lpVtbl -> AddRef(This)
  5889.  
  5890. #define IRowsetNotify_Release(This)    \
  5891.     (This)->lpVtbl -> Release(This)
  5892.  
  5893.  
  5894. #define IRowsetNotify_OnFieldChange(This,pRowset,hRow,cColumns,rgColumns,eReason,ePhase,fCantDeny)    \
  5895.     (This)->lpVtbl -> OnFieldChange(This,pRowset,hRow,cColumns,rgColumns,eReason,ePhase,fCantDeny)
  5896.  
  5897. #define IRowsetNotify_OnRowChange(This,pRowset,cRows,rghRows,eReason,ePhase,fCantDeny)    \
  5898.     (This)->lpVtbl -> OnRowChange(This,pRowset,cRows,rghRows,eReason,ePhase,fCantDeny)
  5899.  
  5900. #define IRowsetNotify_OnRowsetChange(This,pRowset,eReason,ePhase,fCantDeny)    \
  5901.     (This)->lpVtbl -> OnRowsetChange(This,pRowset,eReason,ePhase,fCantDeny)
  5902.  
  5903. #endif /* COBJMACROS */
  5904.  
  5905.  
  5906. #endif     /* C style interface */
  5907.  
  5908.  
  5909.  
  5910. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_RemoteOnFieldChange_Proxy( 
  5911.     IRowsetNotify __RPC_FAR * This,
  5912.     /* [in] */ IRowset __RPC_FAR *pRowset,
  5913.     /* [in] */ HROW hRow,
  5914.     /* [in] */ ULONG cColumns,
  5915.     /* [size_is][in] */ ULONG __RPC_FAR *rgColumns,
  5916.     /* [in] */ DBREASON eReason,
  5917.     /* [in] */ DBEVENTPHASE ePhase,
  5918.     /* [in] */ BOOL fCantDeny,
  5919.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  5920.  
  5921.  
  5922. void __RPC_STUB IRowsetNotify_RemoteOnFieldChange_Stub(
  5923.     IRpcStubBuffer *This,
  5924.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5925.     PRPC_MESSAGE _pRpcMessage,
  5926.     DWORD *_pdwStubPhase);
  5927.  
  5928.  
  5929. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_RemoteOnRowChange_Proxy( 
  5930.     IRowsetNotify __RPC_FAR * This,
  5931.     /* [in] */ IRowset __RPC_FAR *pRowset,
  5932.     /* [in] */ ULONG cRows,
  5933.     /* [size_is][in] */ const HROW __RPC_FAR *rghRows,
  5934.     /* [in] */ DBREASON eReason,
  5935.     /* [in] */ DBEVENTPHASE ePhase,
  5936.     /* [in] */ BOOL fCantDeny,
  5937.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  5938.  
  5939.  
  5940. void __RPC_STUB IRowsetNotify_RemoteOnRowChange_Stub(
  5941.     IRpcStubBuffer *This,
  5942.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5943.     PRPC_MESSAGE _pRpcMessage,
  5944.     DWORD *_pdwStubPhase);
  5945.  
  5946.  
  5947. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_RemoteOnRowsetChange_Proxy( 
  5948.     IRowsetNotify __RPC_FAR * This,
  5949.     /* [in] */ IRowset __RPC_FAR *pRowset,
  5950.     /* [in] */ DBREASON eReason,
  5951.     /* [in] */ DBEVENTPHASE ePhase,
  5952.     /* [in] */ BOOL fCantDeny,
  5953.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  5954.  
  5955.  
  5956. void __RPC_STUB IRowsetNotify_RemoteOnRowsetChange_Stub(
  5957.     IRpcStubBuffer *This,
  5958.     IRpcChannelBuffer *_pRpcChannelBuffer,
  5959.     PRPC_MESSAGE _pRpcMessage,
  5960.     DWORD *_pdwStubPhase);
  5961.  
  5962.  
  5963.  
  5964. #endif     /* __IRowsetNotify_INTERFACE_DEFINED__ */
  5965.  
  5966.  
  5967. #ifndef __IRowsetIndex_INTERFACE_DEFINED__
  5968. #define __IRowsetIndex_INTERFACE_DEFINED__
  5969.  
  5970. /****************************************
  5971.  * Generated header for interface: IRowsetIndex
  5972.  * at Wed Aug 26 14:08:54 1998
  5973.  * using MIDL 3.01.75
  5974.  ****************************************/
  5975. /* [unique][uuid][object][local] */ 
  5976.  
  5977.  
  5978. typedef DWORD DBSEEK;
  5979.  
  5980.  
  5981. enum DBSEEKENUM
  5982.     {    DBSEEK_INVALID    = 0,
  5983.     DBSEEK_FIRSTEQ    = 0x1,
  5984.     DBSEEK_LASTEQ    = 0x2,
  5985.     DBSEEK_AFTEREQ    = 0x4,
  5986.     DBSEEK_AFTER    = 0x8,
  5987.     DBSEEK_BEFOREEQ    = 0x10,
  5988.     DBSEEK_BEFORE    = 0x20
  5989.     };
  5990. #define    DBSEEK_GE    DBSEEK_AFTEREQ
  5991. #define    DBSEEK_GT    DBSEEK_AFTER
  5992. #define    DBSEEK_LE    DBSEEK_BEFOREEQ
  5993. #define    DBSEEK_LT    DBSEEK_BEFORE
  5994. typedef DWORD DBRANGE;
  5995.  
  5996.  
  5997. enum DBRANGEENUM
  5998.     {    DBRANGE_INCLUSIVESTART    = 0,
  5999.     DBRANGE_INCLUSIVEEND    = 0,
  6000.     DBRANGE_EXCLUSIVESTART    = 0x1,
  6001.     DBRANGE_EXCLUSIVEEND    = 0x2,
  6002.     DBRANGE_EXCLUDENULLS    = 0x4,
  6003.     DBRANGE_PREFIX    = 0x8,
  6004.     DBRANGE_MATCH    = 0x10
  6005.     };
  6006. //@@@+ V2.0
  6007. #if( OLEDBVER >= 0x0200 )
  6008.  
  6009. enum DBRANGEENUM20
  6010.     {    DBRANGE_MATCH_N_SHIFT    = 0x18,
  6011.     DBRANGE_MATCH_N_MASK    = 0xff
  6012.     };
  6013. #endif // OLEDBVER >= 0x0200
  6014. //@@@- V2.0
  6015.  
  6016. EXTERN_C const IID IID_IRowsetIndex;
  6017.  
  6018. #if defined(__cplusplus) && !defined(CINTERFACE)
  6019.     
  6020.     interface DECLSPEC_UUID("0c733a82-2a1c-11ce-ade5-00aa0044773d")
  6021.     IRowsetIndex : public IUnknown
  6022.     {
  6023.     public:
  6024.         virtual HRESULT STDMETHODCALLTYPE GetIndexInfo( 
  6025.             /* [out][in] */ ULONG __RPC_FAR *pcKeyColumns,
  6026.             /* [size_is][size_is][out] */ DBINDEXCOLUMNDESC __RPC_FAR *__RPC_FAR *prgIndexColumnDesc,
  6027.             /* [out][in] */ ULONG __RPC_FAR *pcIndexProperties,
  6028.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgIndexProperties) = 0;
  6029.         
  6030.         virtual HRESULT STDMETHODCALLTYPE Seek( 
  6031.             /* [in] */ HACCESSOR hAccessor,
  6032.             /* [in] */ ULONG cKeyValues,
  6033.             /* [in] */ void __RPC_FAR *pData,
  6034.             /* [in] */ DBSEEK dwSeekOptions) = 0;
  6035.         
  6036.         virtual HRESULT STDMETHODCALLTYPE SetRange( 
  6037.             /* [in] */ HACCESSOR hAccessor,
  6038.             /* [in] */ ULONG cStartKeyColumns,
  6039.             /* [in] */ void __RPC_FAR *pStartData,
  6040.             /* [in] */ ULONG cEndKeyColumns,
  6041.             /* [in] */ void __RPC_FAR *pEndData,
  6042.             /* [in] */ DBRANGE dwRangeOptions) = 0;
  6043.         
  6044.     };
  6045.     
  6046. #else     /* C style interface */
  6047.  
  6048.     typedef struct IRowsetIndexVtbl
  6049.     {
  6050.         BEGIN_INTERFACE
  6051.         
  6052.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6053.             IRowsetIndex __RPC_FAR * This,
  6054.             /* [in] */ REFIID riid,
  6055.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6056.         
  6057.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6058.             IRowsetIndex __RPC_FAR * This);
  6059.         
  6060.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6061.             IRowsetIndex __RPC_FAR * This);
  6062.         
  6063.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIndexInfo )( 
  6064.             IRowsetIndex __RPC_FAR * This,
  6065.             /* [out][in] */ ULONG __RPC_FAR *pcKeyColumns,
  6066.             /* [size_is][size_is][out] */ DBINDEXCOLUMNDESC __RPC_FAR *__RPC_FAR *prgIndexColumnDesc,
  6067.             /* [out][in] */ ULONG __RPC_FAR *pcIndexProperties,
  6068.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgIndexProperties);
  6069.         
  6070.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Seek )( 
  6071.             IRowsetIndex __RPC_FAR * This,
  6072.             /* [in] */ HACCESSOR hAccessor,
  6073.             /* [in] */ ULONG cKeyValues,
  6074.             /* [in] */ void __RPC_FAR *pData,
  6075.             /* [in] */ DBSEEK dwSeekOptions);
  6076.         
  6077.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetRange )( 
  6078.             IRowsetIndex __RPC_FAR * This,
  6079.             /* [in] */ HACCESSOR hAccessor,
  6080.             /* [in] */ ULONG cStartKeyColumns,
  6081.             /* [in] */ void __RPC_FAR *pStartData,
  6082.             /* [in] */ ULONG cEndKeyColumns,
  6083.             /* [in] */ void __RPC_FAR *pEndData,
  6084.             /* [in] */ DBRANGE dwRangeOptions);
  6085.         
  6086.         END_INTERFACE
  6087.     } IRowsetIndexVtbl;
  6088.  
  6089.     interface IRowsetIndex
  6090.     {
  6091.         CONST_VTBL struct IRowsetIndexVtbl __RPC_FAR *lpVtbl;
  6092.     };
  6093.  
  6094.     
  6095.  
  6096. #ifdef COBJMACROS
  6097.  
  6098.  
  6099. #define IRowsetIndex_QueryInterface(This,riid,ppvObject)    \
  6100.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6101.  
  6102. #define IRowsetIndex_AddRef(This)    \
  6103.     (This)->lpVtbl -> AddRef(This)
  6104.  
  6105. #define IRowsetIndex_Release(This)    \
  6106.     (This)->lpVtbl -> Release(This)
  6107.  
  6108.  
  6109. #define IRowsetIndex_GetIndexInfo(This,pcKeyColumns,prgIndexColumnDesc,pcIndexProperties,prgIndexProperties)    \
  6110.     (This)->lpVtbl -> GetIndexInfo(This,pcKeyColumns,prgIndexColumnDesc,pcIndexProperties,prgIndexProperties)
  6111.  
  6112. #define IRowsetIndex_Seek(This,hAccessor,cKeyValues,pData,dwSeekOptions)    \
  6113.     (This)->lpVtbl -> Seek(This,hAccessor,cKeyValues,pData,dwSeekOptions)
  6114.  
  6115. #define IRowsetIndex_SetRange(This,hAccessor,cStartKeyColumns,pStartData,cEndKeyColumns,pEndData,dwRangeOptions)    \
  6116.     (This)->lpVtbl -> SetRange(This,hAccessor,cStartKeyColumns,pStartData,cEndKeyColumns,pEndData,dwRangeOptions)
  6117.  
  6118. #endif /* COBJMACROS */
  6119.  
  6120.  
  6121. #endif     /* C style interface */
  6122.  
  6123.  
  6124.  
  6125. HRESULT STDMETHODCALLTYPE IRowsetIndex_GetIndexInfo_Proxy( 
  6126.     IRowsetIndex __RPC_FAR * This,
  6127.     /* [out][in] */ ULONG __RPC_FAR *pcKeyColumns,
  6128.     /* [size_is][size_is][out] */ DBINDEXCOLUMNDESC __RPC_FAR *__RPC_FAR *prgIndexColumnDesc,
  6129.     /* [out][in] */ ULONG __RPC_FAR *pcIndexProperties,
  6130.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgIndexProperties);
  6131.  
  6132.  
  6133. void __RPC_STUB IRowsetIndex_GetIndexInfo_Stub(
  6134.     IRpcStubBuffer *This,
  6135.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6136.     PRPC_MESSAGE _pRpcMessage,
  6137.     DWORD *_pdwStubPhase);
  6138.  
  6139.  
  6140. HRESULT STDMETHODCALLTYPE IRowsetIndex_Seek_Proxy( 
  6141.     IRowsetIndex __RPC_FAR * This,
  6142.     /* [in] */ HACCESSOR hAccessor,
  6143.     /* [in] */ ULONG cKeyValues,
  6144.     /* [in] */ void __RPC_FAR *pData,
  6145.     /* [in] */ DBSEEK dwSeekOptions);
  6146.  
  6147.  
  6148. void __RPC_STUB IRowsetIndex_Seek_Stub(
  6149.     IRpcStubBuffer *This,
  6150.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6151.     PRPC_MESSAGE _pRpcMessage,
  6152.     DWORD *_pdwStubPhase);
  6153.  
  6154.  
  6155. HRESULT STDMETHODCALLTYPE IRowsetIndex_SetRange_Proxy( 
  6156.     IRowsetIndex __RPC_FAR * This,
  6157.     /* [in] */ HACCESSOR hAccessor,
  6158.     /* [in] */ ULONG cStartKeyColumns,
  6159.     /* [in] */ void __RPC_FAR *pStartData,
  6160.     /* [in] */ ULONG cEndKeyColumns,
  6161.     /* [in] */ void __RPC_FAR *pEndData,
  6162.     /* [in] */ DBRANGE dwRangeOptions);
  6163.  
  6164.  
  6165. void __RPC_STUB IRowsetIndex_SetRange_Stub(
  6166.     IRpcStubBuffer *This,
  6167.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6168.     PRPC_MESSAGE _pRpcMessage,
  6169.     DWORD *_pdwStubPhase);
  6170.  
  6171.  
  6172.  
  6173. #endif     /* __IRowsetIndex_INTERFACE_DEFINED__ */
  6174.  
  6175.  
  6176. #ifndef __ICommand_INTERFACE_DEFINED__
  6177. #define __ICommand_INTERFACE_DEFINED__
  6178.  
  6179. /****************************************
  6180.  * Generated header for interface: ICommand
  6181.  * at Wed Aug 26 14:08:54 1998
  6182.  * using MIDL 3.01.75
  6183.  ****************************************/
  6184. /* [unique][uuid][object] */ 
  6185.  
  6186.  
  6187.  
  6188. EXTERN_C const IID IID_ICommand;
  6189.  
  6190. #if defined(__cplusplus) && !defined(CINTERFACE)
  6191.     
  6192.     interface DECLSPEC_UUID("0c733a63-2a1c-11ce-ade5-00aa0044773d")
  6193.     ICommand : public IUnknown
  6194.     {
  6195.     public:
  6196.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Cancel( void) = 0;
  6197.         
  6198.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Execute( 
  6199.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6200.             /* [in] */ REFIID riid,
  6201.             /* [out][in] */ DBPARAMS __RPC_FAR *pParams,
  6202.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6203.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  6204.         
  6205.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDBSession( 
  6206.             /* [in] */ REFIID riid,
  6207.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession) = 0;
  6208.         
  6209.     };
  6210.     
  6211. #else     /* C style interface */
  6212.  
  6213.     typedef struct ICommandVtbl
  6214.     {
  6215.         BEGIN_INTERFACE
  6216.         
  6217.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6218.             ICommand __RPC_FAR * This,
  6219.             /* [in] */ REFIID riid,
  6220.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6221.         
  6222.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6223.             ICommand __RPC_FAR * This);
  6224.         
  6225.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6226.             ICommand __RPC_FAR * This);
  6227.         
  6228.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Cancel )( 
  6229.             ICommand __RPC_FAR * This);
  6230.         
  6231.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
  6232.             ICommand __RPC_FAR * This,
  6233.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6234.             /* [in] */ REFIID riid,
  6235.             /* [out][in] */ DBPARAMS __RPC_FAR *pParams,
  6236.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6237.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  6238.         
  6239.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDBSession )( 
  6240.             ICommand __RPC_FAR * This,
  6241.             /* [in] */ REFIID riid,
  6242.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  6243.         
  6244.         END_INTERFACE
  6245.     } ICommandVtbl;
  6246.  
  6247.     interface ICommand
  6248.     {
  6249.         CONST_VTBL struct ICommandVtbl __RPC_FAR *lpVtbl;
  6250.     };
  6251.  
  6252.     
  6253.  
  6254. #ifdef COBJMACROS
  6255.  
  6256.  
  6257. #define ICommand_QueryInterface(This,riid,ppvObject)    \
  6258.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6259.  
  6260. #define ICommand_AddRef(This)    \
  6261.     (This)->lpVtbl -> AddRef(This)
  6262.  
  6263. #define ICommand_Release(This)    \
  6264.     (This)->lpVtbl -> Release(This)
  6265.  
  6266.  
  6267. #define ICommand_Cancel(This)    \
  6268.     (This)->lpVtbl -> Cancel(This)
  6269.  
  6270. #define ICommand_Execute(This,pUnkOuter,riid,pParams,pcRowsAffected,ppRowset)    \
  6271.     (This)->lpVtbl -> Execute(This,pUnkOuter,riid,pParams,pcRowsAffected,ppRowset)
  6272.  
  6273. #define ICommand_GetDBSession(This,riid,ppSession)    \
  6274.     (This)->lpVtbl -> GetDBSession(This,riid,ppSession)
  6275.  
  6276. #endif /* COBJMACROS */
  6277.  
  6278.  
  6279. #endif     /* C style interface */
  6280.  
  6281.  
  6282.  
  6283. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_RemoteCancel_Proxy( 
  6284.     ICommand __RPC_FAR * This,
  6285.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6286.  
  6287.  
  6288. void __RPC_STUB ICommand_RemoteCancel_Stub(
  6289.     IRpcStubBuffer *This,
  6290.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6291.     PRPC_MESSAGE _pRpcMessage,
  6292.     DWORD *_pdwStubPhase);
  6293.  
  6294.  
  6295. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_RemoteExecute_Proxy( 
  6296.     ICommand __RPC_FAR * This,
  6297.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6298.     /* [in] */ REFIID riid,
  6299.     /* [in] */ HACCESSOR hAccessor,
  6300.     /* [in] */ ULONG cParamSets,
  6301.     /* [in] */ ULONG cbData,
  6302.     /* [size_is][unique][out][in] */ BYTE __RPC_FAR *pbData,
  6303.     /* [unique][out][in] */ LONG __RPC_FAR *pcRowsAffected,
  6304.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  6305.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6306.  
  6307.  
  6308. void __RPC_STUB ICommand_RemoteExecute_Stub(
  6309.     IRpcStubBuffer *This,
  6310.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6311.     PRPC_MESSAGE _pRpcMessage,
  6312.     DWORD *_pdwStubPhase);
  6313.  
  6314.  
  6315. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_RemoteGetDBSession_Proxy( 
  6316.     ICommand __RPC_FAR * This,
  6317.     /* [in] */ REFIID riid,
  6318.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession,
  6319.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6320.  
  6321.  
  6322. void __RPC_STUB ICommand_RemoteGetDBSession_Stub(
  6323.     IRpcStubBuffer *This,
  6324.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6325.     PRPC_MESSAGE _pRpcMessage,
  6326.     DWORD *_pdwStubPhase);
  6327.  
  6328.  
  6329.  
  6330. #endif     /* __ICommand_INTERFACE_DEFINED__ */
  6331.  
  6332.  
  6333. #ifndef __IMultipleResults_INTERFACE_DEFINED__
  6334. #define __IMultipleResults_INTERFACE_DEFINED__
  6335.  
  6336. /****************************************
  6337.  * Generated header for interface: IMultipleResults
  6338.  * at Wed Aug 26 14:08:54 1998
  6339.  * using MIDL 3.01.75
  6340.  ****************************************/
  6341. /* [unique][uuid][object] */ 
  6342.  
  6343.  
  6344.  
  6345. EXTERN_C const IID IID_IMultipleResults;
  6346.  
  6347. #if defined(__cplusplus) && !defined(CINTERFACE)
  6348.     
  6349.     interface DECLSPEC_UUID("0c733a90-2a1c-11ce-ade5-00aa0044773d")
  6350.     IMultipleResults : public IUnknown
  6351.     {
  6352.     public:
  6353.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetResult( 
  6354.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6355.             /* [in] */ LONG reserved,
  6356.             /* [in] */ REFIID riid,
  6357.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6358.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  6359.         
  6360.     };
  6361.     
  6362. #else     /* C style interface */
  6363.  
  6364.     typedef struct IMultipleResultsVtbl
  6365.     {
  6366.         BEGIN_INTERFACE
  6367.         
  6368.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6369.             IMultipleResults __RPC_FAR * This,
  6370.             /* [in] */ REFIID riid,
  6371.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6372.         
  6373.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6374.             IMultipleResults __RPC_FAR * This);
  6375.         
  6376.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6377.             IMultipleResults __RPC_FAR * This);
  6378.         
  6379.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetResult )( 
  6380.             IMultipleResults __RPC_FAR * This,
  6381.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6382.             /* [in] */ LONG reserved,
  6383.             /* [in] */ REFIID riid,
  6384.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6385.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  6386.         
  6387.         END_INTERFACE
  6388.     } IMultipleResultsVtbl;
  6389.  
  6390.     interface IMultipleResults
  6391.     {
  6392.         CONST_VTBL struct IMultipleResultsVtbl __RPC_FAR *lpVtbl;
  6393.     };
  6394.  
  6395.     
  6396.  
  6397. #ifdef COBJMACROS
  6398.  
  6399.  
  6400. #define IMultipleResults_QueryInterface(This,riid,ppvObject)    \
  6401.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6402.  
  6403. #define IMultipleResults_AddRef(This)    \
  6404.     (This)->lpVtbl -> AddRef(This)
  6405.  
  6406. #define IMultipleResults_Release(This)    \
  6407.     (This)->lpVtbl -> Release(This)
  6408.  
  6409.  
  6410. #define IMultipleResults_GetResult(This,pUnkOuter,reserved,riid,pcRowsAffected,ppRowset)    \
  6411.     (This)->lpVtbl -> GetResult(This,pUnkOuter,reserved,riid,pcRowsAffected,ppRowset)
  6412.  
  6413. #endif /* COBJMACROS */
  6414.  
  6415.  
  6416. #endif     /* C style interface */
  6417.  
  6418.  
  6419.  
  6420. /* [call_as] */ HRESULT STDMETHODCALLTYPE IMultipleResults_RemoteGetResult_Proxy( 
  6421.     IMultipleResults __RPC_FAR * This,
  6422.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6423.     /* [in] */ LONG reserved,
  6424.     /* [in] */ REFIID riid,
  6425.     /* [unique][out][in] */ LONG __RPC_FAR *pcRowsAffected,
  6426.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  6427.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6428.  
  6429.  
  6430. void __RPC_STUB IMultipleResults_RemoteGetResult_Stub(
  6431.     IRpcStubBuffer *This,
  6432.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6433.     PRPC_MESSAGE _pRpcMessage,
  6434.     DWORD *_pdwStubPhase);
  6435.  
  6436.  
  6437.  
  6438. #endif     /* __IMultipleResults_INTERFACE_DEFINED__ */
  6439.  
  6440.  
  6441. #ifndef __IConvertType_INTERFACE_DEFINED__
  6442. #define __IConvertType_INTERFACE_DEFINED__
  6443.  
  6444. /****************************************
  6445.  * Generated header for interface: IConvertType
  6446.  * at Wed Aug 26 14:08:54 1998
  6447.  * using MIDL 3.01.75
  6448.  ****************************************/
  6449. /* [unique][uuid][object] */ 
  6450.  
  6451.  
  6452. typedef DWORD DBCONVERTFLAGS;
  6453.  
  6454.  
  6455. enum DBCONVERTFLAGSENUM
  6456.     {    DBCONVERTFLAGS_COLUMN    = 0,
  6457.     DBCONVERTFLAGS_PARAMETER    = 0x1
  6458.     };
  6459. //@@@+ V2.0
  6460. #if( OLEDBVER >= 0x0200 )
  6461.  
  6462. enum DBCONVERTFLAGSENUM20
  6463.     {    DBCONVERTFLAGS_ISLONG    = 0x2,
  6464.     DBCONVERTFLAGS_ISFIXEDLENGTH    = 0x4,
  6465.     DBCONVERTFLAGS_FROMVARIANT    = 0x8
  6466.     };
  6467. #endif // OLEDBVER >= 0x0200
  6468. //@@@- V2.0
  6469.  
  6470. EXTERN_C const IID IID_IConvertType;
  6471.  
  6472. #if defined(__cplusplus) && !defined(CINTERFACE)
  6473.     
  6474.     interface DECLSPEC_UUID("0c733a88-2a1c-11ce-ade5-00aa0044773d")
  6475.     IConvertType : public IUnknown
  6476.     {
  6477.     public:
  6478.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CanConvert( 
  6479.             /* [in] */ DBTYPE wFromType,
  6480.             /* [in] */ DBTYPE wToType,
  6481.             /* [in] */ DBCONVERTFLAGS dwConvertFlags) = 0;
  6482.         
  6483.     };
  6484.     
  6485. #else     /* C style interface */
  6486.  
  6487.     typedef struct IConvertTypeVtbl
  6488.     {
  6489.         BEGIN_INTERFACE
  6490.         
  6491.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6492.             IConvertType __RPC_FAR * This,
  6493.             /* [in] */ REFIID riid,
  6494.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6495.         
  6496.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6497.             IConvertType __RPC_FAR * This);
  6498.         
  6499.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6500.             IConvertType __RPC_FAR * This);
  6501.         
  6502.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CanConvert )( 
  6503.             IConvertType __RPC_FAR * This,
  6504.             /* [in] */ DBTYPE wFromType,
  6505.             /* [in] */ DBTYPE wToType,
  6506.             /* [in] */ DBCONVERTFLAGS dwConvertFlags);
  6507.         
  6508.         END_INTERFACE
  6509.     } IConvertTypeVtbl;
  6510.  
  6511.     interface IConvertType
  6512.     {
  6513.         CONST_VTBL struct IConvertTypeVtbl __RPC_FAR *lpVtbl;
  6514.     };
  6515.  
  6516.     
  6517.  
  6518. #ifdef COBJMACROS
  6519.  
  6520.  
  6521. #define IConvertType_QueryInterface(This,riid,ppvObject)    \
  6522.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6523.  
  6524. #define IConvertType_AddRef(This)    \
  6525.     (This)->lpVtbl -> AddRef(This)
  6526.  
  6527. #define IConvertType_Release(This)    \
  6528.     (This)->lpVtbl -> Release(This)
  6529.  
  6530.  
  6531. #define IConvertType_CanConvert(This,wFromType,wToType,dwConvertFlags)    \
  6532.     (This)->lpVtbl -> CanConvert(This,wFromType,wToType,dwConvertFlags)
  6533.  
  6534. #endif /* COBJMACROS */
  6535.  
  6536.  
  6537. #endif     /* C style interface */
  6538.  
  6539.  
  6540.  
  6541. /* [call_as] */ HRESULT STDMETHODCALLTYPE IConvertType_RemoteCanConvert_Proxy( 
  6542.     IConvertType __RPC_FAR * This,
  6543.     /* [in] */ DBTYPE wFromType,
  6544.     /* [in] */ DBTYPE wToType,
  6545.     /* [in] */ DBCONVERTFLAGS dwConvertFlags,
  6546.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6547.  
  6548.  
  6549. void __RPC_STUB IConvertType_RemoteCanConvert_Stub(
  6550.     IRpcStubBuffer *This,
  6551.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6552.     PRPC_MESSAGE _pRpcMessage,
  6553.     DWORD *_pdwStubPhase);
  6554.  
  6555.  
  6556.  
  6557. #endif     /* __IConvertType_INTERFACE_DEFINED__ */
  6558.  
  6559.  
  6560. #ifndef __ICommandPrepare_INTERFACE_DEFINED__
  6561. #define __ICommandPrepare_INTERFACE_DEFINED__
  6562.  
  6563. /****************************************
  6564.  * Generated header for interface: ICommandPrepare
  6565.  * at Wed Aug 26 14:08:54 1998
  6566.  * using MIDL 3.01.75
  6567.  ****************************************/
  6568. /* [unique][uuid][object] */ 
  6569.  
  6570.  
  6571.  
  6572. EXTERN_C const IID IID_ICommandPrepare;
  6573.  
  6574. #if defined(__cplusplus) && !defined(CINTERFACE)
  6575.     
  6576.     interface DECLSPEC_UUID("0c733a26-2a1c-11ce-ade5-00aa0044773d")
  6577.     ICommandPrepare : public IUnknown
  6578.     {
  6579.     public:
  6580.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Prepare( 
  6581.             /* [in] */ ULONG cExpectedRuns) = 0;
  6582.         
  6583.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Unprepare( void) = 0;
  6584.         
  6585.     };
  6586.     
  6587. #else     /* C style interface */
  6588.  
  6589.     typedef struct ICommandPrepareVtbl
  6590.     {
  6591.         BEGIN_INTERFACE
  6592.         
  6593.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6594.             ICommandPrepare __RPC_FAR * This,
  6595.             /* [in] */ REFIID riid,
  6596.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6597.         
  6598.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6599.             ICommandPrepare __RPC_FAR * This);
  6600.         
  6601.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6602.             ICommandPrepare __RPC_FAR * This);
  6603.         
  6604.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Prepare )( 
  6605.             ICommandPrepare __RPC_FAR * This,
  6606.             /* [in] */ ULONG cExpectedRuns);
  6607.         
  6608.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Unprepare )( 
  6609.             ICommandPrepare __RPC_FAR * This);
  6610.         
  6611.         END_INTERFACE
  6612.     } ICommandPrepareVtbl;
  6613.  
  6614.     interface ICommandPrepare
  6615.     {
  6616.         CONST_VTBL struct ICommandPrepareVtbl __RPC_FAR *lpVtbl;
  6617.     };
  6618.  
  6619.     
  6620.  
  6621. #ifdef COBJMACROS
  6622.  
  6623.  
  6624. #define ICommandPrepare_QueryInterface(This,riid,ppvObject)    \
  6625.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6626.  
  6627. #define ICommandPrepare_AddRef(This)    \
  6628.     (This)->lpVtbl -> AddRef(This)
  6629.  
  6630. #define ICommandPrepare_Release(This)    \
  6631.     (This)->lpVtbl -> Release(This)
  6632.  
  6633.  
  6634. #define ICommandPrepare_Prepare(This,cExpectedRuns)    \
  6635.     (This)->lpVtbl -> Prepare(This,cExpectedRuns)
  6636.  
  6637. #define ICommandPrepare_Unprepare(This)    \
  6638.     (This)->lpVtbl -> Unprepare(This)
  6639.  
  6640. #endif /* COBJMACROS */
  6641.  
  6642.  
  6643. #endif     /* C style interface */
  6644.  
  6645.  
  6646.  
  6647. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_RemotePrepare_Proxy( 
  6648.     ICommandPrepare __RPC_FAR * This,
  6649.     /* [in] */ ULONG cExpectedRuns,
  6650.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6651.  
  6652.  
  6653. void __RPC_STUB ICommandPrepare_RemotePrepare_Stub(
  6654.     IRpcStubBuffer *This,
  6655.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6656.     PRPC_MESSAGE _pRpcMessage,
  6657.     DWORD *_pdwStubPhase);
  6658.  
  6659.  
  6660. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_RemoteUnprepare_Proxy( 
  6661.     ICommandPrepare __RPC_FAR * This,
  6662.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6663.  
  6664.  
  6665. void __RPC_STUB ICommandPrepare_RemoteUnprepare_Stub(
  6666.     IRpcStubBuffer *This,
  6667.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6668.     PRPC_MESSAGE _pRpcMessage,
  6669.     DWORD *_pdwStubPhase);
  6670.  
  6671.  
  6672.  
  6673. #endif     /* __ICommandPrepare_INTERFACE_DEFINED__ */
  6674.  
  6675.  
  6676. #ifndef __ICommandProperties_INTERFACE_DEFINED__
  6677. #define __ICommandProperties_INTERFACE_DEFINED__
  6678.  
  6679. /****************************************
  6680.  * Generated header for interface: ICommandProperties
  6681.  * at Wed Aug 26 14:08:54 1998
  6682.  * using MIDL 3.01.75
  6683.  ****************************************/
  6684. /* [unique][uuid][object] */ 
  6685.  
  6686.  
  6687.  
  6688. EXTERN_C const IID IID_ICommandProperties;
  6689.  
  6690. #if defined(__cplusplus) && !defined(CINTERFACE)
  6691.     
  6692.     interface DECLSPEC_UUID("0c733a79-2a1c-11ce-ade5-00aa0044773d")
  6693.     ICommandProperties : public IUnknown
  6694.     {
  6695.     public:
  6696.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetProperties( 
  6697.             /* [in] */ const ULONG cPropertyIDSets,
  6698.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  6699.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  6700.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  6701.         
  6702.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetProperties( 
  6703.             /* [in] */ ULONG cPropertySets,
  6704.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  6705.         
  6706.     };
  6707.     
  6708. #else     /* C style interface */
  6709.  
  6710.     typedef struct ICommandPropertiesVtbl
  6711.     {
  6712.         BEGIN_INTERFACE
  6713.         
  6714.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6715.             ICommandProperties __RPC_FAR * This,
  6716.             /* [in] */ REFIID riid,
  6717.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6718.         
  6719.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6720.             ICommandProperties __RPC_FAR * This);
  6721.         
  6722.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6723.             ICommandProperties __RPC_FAR * This);
  6724.         
  6725.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  6726.             ICommandProperties __RPC_FAR * This,
  6727.             /* [in] */ const ULONG cPropertyIDSets,
  6728.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  6729.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  6730.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  6731.         
  6732.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProperties )( 
  6733.             ICommandProperties __RPC_FAR * This,
  6734.             /* [in] */ ULONG cPropertySets,
  6735.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  6736.         
  6737.         END_INTERFACE
  6738.     } ICommandPropertiesVtbl;
  6739.  
  6740.     interface ICommandProperties
  6741.     {
  6742.         CONST_VTBL struct ICommandPropertiesVtbl __RPC_FAR *lpVtbl;
  6743.     };
  6744.  
  6745.     
  6746.  
  6747. #ifdef COBJMACROS
  6748.  
  6749.  
  6750. #define ICommandProperties_QueryInterface(This,riid,ppvObject)    \
  6751.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6752.  
  6753. #define ICommandProperties_AddRef(This)    \
  6754.     (This)->lpVtbl -> AddRef(This)
  6755.  
  6756. #define ICommandProperties_Release(This)    \
  6757.     (This)->lpVtbl -> Release(This)
  6758.  
  6759.  
  6760. #define ICommandProperties_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  6761.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  6762.  
  6763. #define ICommandProperties_SetProperties(This,cPropertySets,rgPropertySets)    \
  6764.     (This)->lpVtbl -> SetProperties(This,cPropertySets,rgPropertySets)
  6765.  
  6766. #endif /* COBJMACROS */
  6767.  
  6768.  
  6769. #endif     /* C style interface */
  6770.  
  6771.  
  6772.  
  6773. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandProperties_RemoteGetProperties_Proxy( 
  6774.     ICommandProperties __RPC_FAR * This,
  6775.     /* [in] */ const ULONG cPropertyIDSets,
  6776.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  6777.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  6778.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  6779.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6780.  
  6781.  
  6782. void __RPC_STUB ICommandProperties_RemoteGetProperties_Stub(
  6783.     IRpcStubBuffer *This,
  6784.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6785.     PRPC_MESSAGE _pRpcMessage,
  6786.     DWORD *_pdwStubPhase);
  6787.  
  6788.  
  6789. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandProperties_RemoteSetProperties_Proxy( 
  6790.     ICommandProperties __RPC_FAR * This,
  6791.     /* [in] */ ULONG cPropertySets,
  6792.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  6793.     /* [in] */ ULONG cTotalProps,
  6794.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  6795.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6796.  
  6797.  
  6798. void __RPC_STUB ICommandProperties_RemoteSetProperties_Stub(
  6799.     IRpcStubBuffer *This,
  6800.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6801.     PRPC_MESSAGE _pRpcMessage,
  6802.     DWORD *_pdwStubPhase);
  6803.  
  6804.  
  6805.  
  6806. #endif     /* __ICommandProperties_INTERFACE_DEFINED__ */
  6807.  
  6808.  
  6809. #ifndef __ICommandText_INTERFACE_DEFINED__
  6810. #define __ICommandText_INTERFACE_DEFINED__
  6811.  
  6812. /****************************************
  6813.  * Generated header for interface: ICommandText
  6814.  * at Wed Aug 26 14:08:54 1998
  6815.  * using MIDL 3.01.75
  6816.  ****************************************/
  6817. /* [unique][uuid][object] */ 
  6818.  
  6819.  
  6820.  
  6821. EXTERN_C const IID IID_ICommandText;
  6822.  
  6823. #if defined(__cplusplus) && !defined(CINTERFACE)
  6824.     
  6825.     interface DECLSPEC_UUID("0c733a27-2a1c-11ce-ade5-00aa0044773d")
  6826.     ICommandText : public ICommand
  6827.     {
  6828.     public:
  6829.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetCommandText( 
  6830.             /* [out][in] */ GUID __RPC_FAR *pguidDialect,
  6831.             /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand) = 0;
  6832.         
  6833.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetCommandText( 
  6834.             /* [in] */ REFGUID rguidDialect,
  6835.             /* [unique][in] */ LPCOLESTR pwszCommand) = 0;
  6836.         
  6837.     };
  6838.     
  6839. #else     /* C style interface */
  6840.  
  6841.     typedef struct ICommandTextVtbl
  6842.     {
  6843.         BEGIN_INTERFACE
  6844.         
  6845.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  6846.             ICommandText __RPC_FAR * This,
  6847.             /* [in] */ REFIID riid,
  6848.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  6849.         
  6850.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  6851.             ICommandText __RPC_FAR * This);
  6852.         
  6853.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  6854.             ICommandText __RPC_FAR * This);
  6855.         
  6856.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Cancel )( 
  6857.             ICommandText __RPC_FAR * This);
  6858.         
  6859.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
  6860.             ICommandText __RPC_FAR * This,
  6861.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  6862.             /* [in] */ REFIID riid,
  6863.             /* [out][in] */ DBPARAMS __RPC_FAR *pParams,
  6864.             /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  6865.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  6866.         
  6867.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDBSession )( 
  6868.             ICommandText __RPC_FAR * This,
  6869.             /* [in] */ REFIID riid,
  6870.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  6871.         
  6872.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCommandText )( 
  6873.             ICommandText __RPC_FAR * This,
  6874.             /* [out][in] */ GUID __RPC_FAR *pguidDialect,
  6875.             /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand);
  6876.         
  6877.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCommandText )( 
  6878.             ICommandText __RPC_FAR * This,
  6879.             /* [in] */ REFGUID rguidDialect,
  6880.             /* [unique][in] */ LPCOLESTR pwszCommand);
  6881.         
  6882.         END_INTERFACE
  6883.     } ICommandTextVtbl;
  6884.  
  6885.     interface ICommandText
  6886.     {
  6887.         CONST_VTBL struct ICommandTextVtbl __RPC_FAR *lpVtbl;
  6888.     };
  6889.  
  6890.     
  6891.  
  6892. #ifdef COBJMACROS
  6893.  
  6894.  
  6895. #define ICommandText_QueryInterface(This,riid,ppvObject)    \
  6896.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6897.  
  6898. #define ICommandText_AddRef(This)    \
  6899.     (This)->lpVtbl -> AddRef(This)
  6900.  
  6901. #define ICommandText_Release(This)    \
  6902.     (This)->lpVtbl -> Release(This)
  6903.  
  6904.  
  6905. #define ICommandText_Cancel(This)    \
  6906.     (This)->lpVtbl -> Cancel(This)
  6907.  
  6908. #define ICommandText_Execute(This,pUnkOuter,riid,pParams,pcRowsAffected,ppRowset)    \
  6909.     (This)->lpVtbl -> Execute(This,pUnkOuter,riid,pParams,pcRowsAffected,ppRowset)
  6910.  
  6911. #define ICommandText_GetDBSession(This,riid,ppSession)    \
  6912.     (This)->lpVtbl -> GetDBSession(This,riid,ppSession)
  6913.  
  6914.  
  6915. #define ICommandText_GetCommandText(This,pguidDialect,ppwszCommand)    \
  6916.     (This)->lpVtbl -> GetCommandText(This,pguidDialect,ppwszCommand)
  6917.  
  6918. #define ICommandText_SetCommandText(This,rguidDialect,pwszCommand)    \
  6919.     (This)->lpVtbl -> SetCommandText(This,rguidDialect,pwszCommand)
  6920.  
  6921. #endif /* COBJMACROS */
  6922.  
  6923.  
  6924. #endif     /* C style interface */
  6925.  
  6926.  
  6927.  
  6928. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandText_RemoteGetCommandText_Proxy( 
  6929.     ICommandText __RPC_FAR * This,
  6930.     /* [unique][out][in] */ GUID __RPC_FAR *pguidDialect,
  6931.     /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand,
  6932.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6933.  
  6934.  
  6935. void __RPC_STUB ICommandText_RemoteGetCommandText_Stub(
  6936.     IRpcStubBuffer *This,
  6937.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6938.     PRPC_MESSAGE _pRpcMessage,
  6939.     DWORD *_pdwStubPhase);
  6940.  
  6941.  
  6942. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandText_RemoteSetCommandText_Proxy( 
  6943.     ICommandText __RPC_FAR * This,
  6944.     /* [in] */ REFGUID rguidDialect,
  6945.     /* [unique][in] */ LPCOLESTR pwszCommand,
  6946.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  6947.  
  6948.  
  6949. void __RPC_STUB ICommandText_RemoteSetCommandText_Stub(
  6950.     IRpcStubBuffer *This,
  6951.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6952.     PRPC_MESSAGE _pRpcMessage,
  6953.     DWORD *_pdwStubPhase);
  6954.  
  6955.  
  6956.  
  6957. #endif     /* __ICommandText_INTERFACE_DEFINED__ */
  6958.  
  6959.  
  6960. #ifndef __ICommandWithParameters_INTERFACE_DEFINED__
  6961. #define __ICommandWithParameters_INTERFACE_DEFINED__
  6962.  
  6963. /****************************************
  6964.  * Generated header for interface: ICommandWithParameters
  6965.  * at Wed Aug 26 14:08:54 1998
  6966.  * using MIDL 3.01.75
  6967.  ****************************************/
  6968. /* [unique][uuid][object] */ 
  6969.  
  6970.  
  6971. typedef struct  tagDBPARAMBINDINFO
  6972.     {
  6973.     LPOLESTR pwszDataSourceType;
  6974.     LPOLESTR pwszName;
  6975.     ULONG ulParamSize;
  6976.     DBPARAMFLAGS dwFlags;
  6977.     BYTE bPrecision;
  6978.     BYTE bScale;
  6979.     }    DBPARAMBINDINFO;
  6980.  
  6981.  
  6982. EXTERN_C const IID IID_ICommandWithParameters;
  6983.  
  6984. #if defined(__cplusplus) && !defined(CINTERFACE)
  6985.     
  6986.     interface DECLSPEC_UUID("0c733a64-2a1c-11ce-ade5-00aa0044773d")
  6987.     ICommandWithParameters : public IUnknown
  6988.     {
  6989.     public:
  6990.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetParameterInfo( 
  6991.             /* [out][in] */ ULONG __RPC_FAR *pcParams,
  6992.             /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  6993.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer) = 0;
  6994.         
  6995.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE MapParameterNames( 
  6996.             /* [in] */ ULONG cParamNames,
  6997.             /* [size_is][in] */ const OLECHAR __RPC_FAR *__RPC_FAR rgParamNames[  ],
  6998.             /* [size_is][out] */ LONG __RPC_FAR rgParamOrdinals[  ]) = 0;
  6999.         
  7000.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetParameterInfo( 
  7001.             /* [in] */ ULONG cParams,
  7002.             /* [size_is][unique][in] */ const ULONG __RPC_FAR rgParamOrdinals[  ],
  7003.             /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR rgParamBindInfo[  ]) = 0;
  7004.         
  7005.     };
  7006.     
  7007. #else     /* C style interface */
  7008.  
  7009.     typedef struct ICommandWithParametersVtbl
  7010.     {
  7011.         BEGIN_INTERFACE
  7012.         
  7013.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7014.             ICommandWithParameters __RPC_FAR * This,
  7015.             /* [in] */ REFIID riid,
  7016.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7017.         
  7018.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7019.             ICommandWithParameters __RPC_FAR * This);
  7020.         
  7021.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7022.             ICommandWithParameters __RPC_FAR * This);
  7023.         
  7024.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetParameterInfo )( 
  7025.             ICommandWithParameters __RPC_FAR * This,
  7026.             /* [out][in] */ ULONG __RPC_FAR *pcParams,
  7027.             /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  7028.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer);
  7029.         
  7030.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MapParameterNames )( 
  7031.             ICommandWithParameters __RPC_FAR * This,
  7032.             /* [in] */ ULONG cParamNames,
  7033.             /* [size_is][in] */ const OLECHAR __RPC_FAR *__RPC_FAR rgParamNames[  ],
  7034.             /* [size_is][out] */ LONG __RPC_FAR rgParamOrdinals[  ]);
  7035.         
  7036.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetParameterInfo )( 
  7037.             ICommandWithParameters __RPC_FAR * This,
  7038.             /* [in] */ ULONG cParams,
  7039.             /* [size_is][unique][in] */ const ULONG __RPC_FAR rgParamOrdinals[  ],
  7040.             /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR rgParamBindInfo[  ]);
  7041.         
  7042.         END_INTERFACE
  7043.     } ICommandWithParametersVtbl;
  7044.  
  7045.     interface ICommandWithParameters
  7046.     {
  7047.         CONST_VTBL struct ICommandWithParametersVtbl __RPC_FAR *lpVtbl;
  7048.     };
  7049.  
  7050.     
  7051.  
  7052. #ifdef COBJMACROS
  7053.  
  7054.  
  7055. #define ICommandWithParameters_QueryInterface(This,riid,ppvObject)    \
  7056.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7057.  
  7058. #define ICommandWithParameters_AddRef(This)    \
  7059.     (This)->lpVtbl -> AddRef(This)
  7060.  
  7061. #define ICommandWithParameters_Release(This)    \
  7062.     (This)->lpVtbl -> Release(This)
  7063.  
  7064.  
  7065. #define ICommandWithParameters_GetParameterInfo(This,pcParams,prgParamInfo,ppNamesBuffer)    \
  7066.     (This)->lpVtbl -> GetParameterInfo(This,pcParams,prgParamInfo,ppNamesBuffer)
  7067.  
  7068. #define ICommandWithParameters_MapParameterNames(This,cParamNames,rgParamNames,rgParamOrdinals)    \
  7069.     (This)->lpVtbl -> MapParameterNames(This,cParamNames,rgParamNames,rgParamOrdinals)
  7070.  
  7071. #define ICommandWithParameters_SetParameterInfo(This,cParams,rgParamOrdinals,rgParamBindInfo)    \
  7072.     (This)->lpVtbl -> SetParameterInfo(This,cParams,rgParamOrdinals,rgParamBindInfo)
  7073.  
  7074. #endif /* COBJMACROS */
  7075.  
  7076.  
  7077. #endif     /* C style interface */
  7078.  
  7079.  
  7080.  
  7081. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_RemoteGetParameterInfo_Proxy( 
  7082.     ICommandWithParameters __RPC_FAR * This,
  7083.     /* [out][in] */ ULONG __RPC_FAR *pcParams,
  7084.     /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  7085.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  7086.     /* [out][in] */ ULONG __RPC_FAR *pcbNamesBuffer,
  7087.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer,
  7088.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7089.  
  7090.  
  7091. void __RPC_STUB ICommandWithParameters_RemoteGetParameterInfo_Stub(
  7092.     IRpcStubBuffer *This,
  7093.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7094.     PRPC_MESSAGE _pRpcMessage,
  7095.     DWORD *_pdwStubPhase);
  7096.  
  7097.  
  7098. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_RemoteMapParameterNames_Proxy( 
  7099.     ICommandWithParameters __RPC_FAR * This,
  7100.     /* [in] */ ULONG cParamNames,
  7101.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgParamNames,
  7102.     /* [size_is][out] */ LONG __RPC_FAR *rgParamOrdinals,
  7103.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7104.  
  7105.  
  7106. void __RPC_STUB ICommandWithParameters_RemoteMapParameterNames_Stub(
  7107.     IRpcStubBuffer *This,
  7108.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7109.     PRPC_MESSAGE _pRpcMessage,
  7110.     DWORD *_pdwStubPhase);
  7111.  
  7112.  
  7113. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_RemoteSetParameterInfo_Proxy( 
  7114.     ICommandWithParameters __RPC_FAR * This,
  7115.     /* [in] */ ULONG cParams,
  7116.     /* [size_is][unique][in] */ const ULONG __RPC_FAR *rgParamOrdinals,
  7117.     /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR *rgParamBindInfo,
  7118.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7119.  
  7120.  
  7121. void __RPC_STUB ICommandWithParameters_RemoteSetParameterInfo_Stub(
  7122.     IRpcStubBuffer *This,
  7123.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7124.     PRPC_MESSAGE _pRpcMessage,
  7125.     DWORD *_pdwStubPhase);
  7126.  
  7127.  
  7128.  
  7129. #endif     /* __ICommandWithParameters_INTERFACE_DEFINED__ */
  7130.  
  7131.  
  7132. #ifndef __IColumnsRowset_INTERFACE_DEFINED__
  7133. #define __IColumnsRowset_INTERFACE_DEFINED__
  7134.  
  7135. /****************************************
  7136.  * Generated header for interface: IColumnsRowset
  7137.  * at Wed Aug 26 14:08:54 1998
  7138.  * using MIDL 3.01.75
  7139.  ****************************************/
  7140. /* [unique][uuid][object] */ 
  7141.  
  7142.  
  7143.  
  7144. EXTERN_C const IID IID_IColumnsRowset;
  7145.  
  7146. #if defined(__cplusplus) && !defined(CINTERFACE)
  7147.     
  7148.     interface DECLSPEC_UUID("0c733a10-2a1c-11ce-ade5-00aa0044773d")
  7149.     IColumnsRowset : public IUnknown
  7150.     {
  7151.     public:
  7152.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetAvailableColumns( 
  7153.             /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  7154.             /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns) = 0;
  7155.         
  7156.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetColumnsRowset( 
  7157.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7158.             /* [in] */ ULONG cOptColumns,
  7159.             /* [size_is][in] */ const DBID __RPC_FAR rgOptColumns[  ],
  7160.             /* [in] */ REFIID riid,
  7161.             /* [in] */ ULONG cPropertySets,
  7162.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  7163.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset) = 0;
  7164.         
  7165.     };
  7166.     
  7167. #else     /* C style interface */
  7168.  
  7169.     typedef struct IColumnsRowsetVtbl
  7170.     {
  7171.         BEGIN_INTERFACE
  7172.         
  7173.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7174.             IColumnsRowset __RPC_FAR * This,
  7175.             /* [in] */ REFIID riid,
  7176.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7177.         
  7178.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7179.             IColumnsRowset __RPC_FAR * This);
  7180.         
  7181.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7182.             IColumnsRowset __RPC_FAR * This);
  7183.         
  7184.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAvailableColumns )( 
  7185.             IColumnsRowset __RPC_FAR * This,
  7186.             /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  7187.             /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns);
  7188.         
  7189.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetColumnsRowset )( 
  7190.             IColumnsRowset __RPC_FAR * This,
  7191.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7192.             /* [in] */ ULONG cOptColumns,
  7193.             /* [size_is][in] */ const DBID __RPC_FAR rgOptColumns[  ],
  7194.             /* [in] */ REFIID riid,
  7195.             /* [in] */ ULONG cPropertySets,
  7196.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  7197.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset);
  7198.         
  7199.         END_INTERFACE
  7200.     } IColumnsRowsetVtbl;
  7201.  
  7202.     interface IColumnsRowset
  7203.     {
  7204.         CONST_VTBL struct IColumnsRowsetVtbl __RPC_FAR *lpVtbl;
  7205.     };
  7206.  
  7207.     
  7208.  
  7209. #ifdef COBJMACROS
  7210.  
  7211.  
  7212. #define IColumnsRowset_QueryInterface(This,riid,ppvObject)    \
  7213.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7214.  
  7215. #define IColumnsRowset_AddRef(This)    \
  7216.     (This)->lpVtbl -> AddRef(This)
  7217.  
  7218. #define IColumnsRowset_Release(This)    \
  7219.     (This)->lpVtbl -> Release(This)
  7220.  
  7221.  
  7222. #define IColumnsRowset_GetAvailableColumns(This,pcOptColumns,prgOptColumns)    \
  7223.     (This)->lpVtbl -> GetAvailableColumns(This,pcOptColumns,prgOptColumns)
  7224.  
  7225. #define IColumnsRowset_GetColumnsRowset(This,pUnkOuter,cOptColumns,rgOptColumns,riid,cPropertySets,rgPropertySets,ppColRowset)    \
  7226.     (This)->lpVtbl -> GetColumnsRowset(This,pUnkOuter,cOptColumns,rgOptColumns,riid,cPropertySets,rgPropertySets,ppColRowset)
  7227.  
  7228. #endif /* COBJMACROS */
  7229.  
  7230.  
  7231. #endif     /* C style interface */
  7232.  
  7233.  
  7234.  
  7235. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_RemoteGetAvailableColumns_Proxy( 
  7236.     IColumnsRowset __RPC_FAR * This,
  7237.     /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  7238.     /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns,
  7239.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7240.  
  7241.  
  7242. void __RPC_STUB IColumnsRowset_RemoteGetAvailableColumns_Stub(
  7243.     IRpcStubBuffer *This,
  7244.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7245.     PRPC_MESSAGE _pRpcMessage,
  7246.     DWORD *_pdwStubPhase);
  7247.  
  7248.  
  7249. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_RemoteGetColumnsRowset_Proxy( 
  7250.     IColumnsRowset __RPC_FAR * This,
  7251.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7252.     /* [in] */ ULONG cOptColumns,
  7253.     /* [size_is][unique][in] */ const DBID __RPC_FAR *rgOptColumns,
  7254.     /* [in] */ REFIID riid,
  7255.     /* [in] */ ULONG cPropertySets,
  7256.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  7257.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset,
  7258.     /* [in] */ ULONG cTotalProps,
  7259.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  7260.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7261.  
  7262.  
  7263. void __RPC_STUB IColumnsRowset_RemoteGetColumnsRowset_Stub(
  7264.     IRpcStubBuffer *This,
  7265.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7266.     PRPC_MESSAGE _pRpcMessage,
  7267.     DWORD *_pdwStubPhase);
  7268.  
  7269.  
  7270.  
  7271. #endif     /* __IColumnsRowset_INTERFACE_DEFINED__ */
  7272.  
  7273.  
  7274. #ifndef __IColumnsInfo_INTERFACE_DEFINED__
  7275. #define __IColumnsInfo_INTERFACE_DEFINED__
  7276.  
  7277. /****************************************
  7278.  * Generated header for interface: IColumnsInfo
  7279.  * at Wed Aug 26 14:08:54 1998
  7280.  * using MIDL 3.01.75
  7281.  ****************************************/
  7282. /* [unique][uuid][object] */ 
  7283.  
  7284.  
  7285.  
  7286. EXTERN_C const IID IID_IColumnsInfo;
  7287.  
  7288. #if defined(__cplusplus) && !defined(CINTERFACE)
  7289.     
  7290.     interface DECLSPEC_UUID("0c733a11-2a1c-11ce-ade5-00aa0044773d")
  7291.     IColumnsInfo : public IUnknown
  7292.     {
  7293.     public:
  7294.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetColumnInfo( 
  7295.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  7296.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  7297.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer) = 0;
  7298.         
  7299.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE MapColumnIDs( 
  7300.             /* [in] */ ULONG cColumnIDs,
  7301.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  7302.             /* [size_is][out] */ ULONG __RPC_FAR rgColumns[  ]) = 0;
  7303.         
  7304.     };
  7305.     
  7306. #else     /* C style interface */
  7307.  
  7308.     typedef struct IColumnsInfoVtbl
  7309.     {
  7310.         BEGIN_INTERFACE
  7311.         
  7312.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7313.             IColumnsInfo __RPC_FAR * This,
  7314.             /* [in] */ REFIID riid,
  7315.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7316.         
  7317.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7318.             IColumnsInfo __RPC_FAR * This);
  7319.         
  7320.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7321.             IColumnsInfo __RPC_FAR * This);
  7322.         
  7323.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetColumnInfo )( 
  7324.             IColumnsInfo __RPC_FAR * This,
  7325.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  7326.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  7327.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  7328.         
  7329.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MapColumnIDs )( 
  7330.             IColumnsInfo __RPC_FAR * This,
  7331.             /* [in] */ ULONG cColumnIDs,
  7332.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  7333.             /* [size_is][out] */ ULONG __RPC_FAR rgColumns[  ]);
  7334.         
  7335.         END_INTERFACE
  7336.     } IColumnsInfoVtbl;
  7337.  
  7338.     interface IColumnsInfo
  7339.     {
  7340.         CONST_VTBL struct IColumnsInfoVtbl __RPC_FAR *lpVtbl;
  7341.     };
  7342.  
  7343.     
  7344.  
  7345. #ifdef COBJMACROS
  7346.  
  7347.  
  7348. #define IColumnsInfo_QueryInterface(This,riid,ppvObject)    \
  7349.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7350.  
  7351. #define IColumnsInfo_AddRef(This)    \
  7352.     (This)->lpVtbl -> AddRef(This)
  7353.  
  7354. #define IColumnsInfo_Release(This)    \
  7355.     (This)->lpVtbl -> Release(This)
  7356.  
  7357.  
  7358. #define IColumnsInfo_GetColumnInfo(This,pcColumns,prgInfo,ppStringsBuffer)    \
  7359.     (This)->lpVtbl -> GetColumnInfo(This,pcColumns,prgInfo,ppStringsBuffer)
  7360.  
  7361. #define IColumnsInfo_MapColumnIDs(This,cColumnIDs,rgColumnIDs,rgColumns)    \
  7362.     (This)->lpVtbl -> MapColumnIDs(This,cColumnIDs,rgColumnIDs,rgColumns)
  7363.  
  7364. #endif /* COBJMACROS */
  7365.  
  7366.  
  7367. #endif     /* C style interface */
  7368.  
  7369.  
  7370.  
  7371. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_RemoteGetColumnInfo_Proxy( 
  7372.     IColumnsInfo __RPC_FAR * This,
  7373.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  7374.     /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  7375.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  7376.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgcolumnidOffsets,
  7377.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  7378.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer,
  7379.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7380.  
  7381.  
  7382. void __RPC_STUB IColumnsInfo_RemoteGetColumnInfo_Stub(
  7383.     IRpcStubBuffer *This,
  7384.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7385.     PRPC_MESSAGE _pRpcMessage,
  7386.     DWORD *_pdwStubPhase);
  7387.  
  7388.  
  7389. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_RemoteMapColumnIDs_Proxy( 
  7390.     IColumnsInfo __RPC_FAR * This,
  7391.     /* [in] */ ULONG cColumnIDs,
  7392.     /* [size_is][in] */ const DBID __RPC_FAR *rgColumnIDs,
  7393.     /* [size_is][out] */ ULONG __RPC_FAR *rgColumns,
  7394.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7395.  
  7396.  
  7397. void __RPC_STUB IColumnsInfo_RemoteMapColumnIDs_Stub(
  7398.     IRpcStubBuffer *This,
  7399.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7400.     PRPC_MESSAGE _pRpcMessage,
  7401.     DWORD *_pdwStubPhase);
  7402.  
  7403.  
  7404.  
  7405. #endif     /* __IColumnsInfo_INTERFACE_DEFINED__ */
  7406.  
  7407.  
  7408. #ifndef __IDBCreateCommand_INTERFACE_DEFINED__
  7409. #define __IDBCreateCommand_INTERFACE_DEFINED__
  7410.  
  7411. /****************************************
  7412.  * Generated header for interface: IDBCreateCommand
  7413.  * at Wed Aug 26 14:08:54 1998
  7414.  * using MIDL 3.01.75
  7415.  ****************************************/
  7416. /* [unique][uuid][object] */ 
  7417.  
  7418.  
  7419.  
  7420. EXTERN_C const IID IID_IDBCreateCommand;
  7421.  
  7422. #if defined(__cplusplus) && !defined(CINTERFACE)
  7423.     
  7424.     interface DECLSPEC_UUID("0c733a1d-2a1c-11ce-ade5-00aa0044773d")
  7425.     IDBCreateCommand : public IUnknown
  7426.     {
  7427.     public:
  7428.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateCommand( 
  7429.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7430.             /* [in] */ REFIID riid,
  7431.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand) = 0;
  7432.         
  7433.     };
  7434.     
  7435. #else     /* C style interface */
  7436.  
  7437.     typedef struct IDBCreateCommandVtbl
  7438.     {
  7439.         BEGIN_INTERFACE
  7440.         
  7441.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7442.             IDBCreateCommand __RPC_FAR * This,
  7443.             /* [in] */ REFIID riid,
  7444.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7445.         
  7446.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7447.             IDBCreateCommand __RPC_FAR * This);
  7448.         
  7449.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7450.             IDBCreateCommand __RPC_FAR * This);
  7451.         
  7452.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateCommand )( 
  7453.             IDBCreateCommand __RPC_FAR * This,
  7454.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7455.             /* [in] */ REFIID riid,
  7456.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand);
  7457.         
  7458.         END_INTERFACE
  7459.     } IDBCreateCommandVtbl;
  7460.  
  7461.     interface IDBCreateCommand
  7462.     {
  7463.         CONST_VTBL struct IDBCreateCommandVtbl __RPC_FAR *lpVtbl;
  7464.     };
  7465.  
  7466.     
  7467.  
  7468. #ifdef COBJMACROS
  7469.  
  7470.  
  7471. #define IDBCreateCommand_QueryInterface(This,riid,ppvObject)    \
  7472.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7473.  
  7474. #define IDBCreateCommand_AddRef(This)    \
  7475.     (This)->lpVtbl -> AddRef(This)
  7476.  
  7477. #define IDBCreateCommand_Release(This)    \
  7478.     (This)->lpVtbl -> Release(This)
  7479.  
  7480.  
  7481. #define IDBCreateCommand_CreateCommand(This,pUnkOuter,riid,ppCommand)    \
  7482.     (This)->lpVtbl -> CreateCommand(This,pUnkOuter,riid,ppCommand)
  7483.  
  7484. #endif /* COBJMACROS */
  7485.  
  7486.  
  7487. #endif     /* C style interface */
  7488.  
  7489.  
  7490.  
  7491. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBCreateCommand_RemoteCreateCommand_Proxy( 
  7492.     IDBCreateCommand __RPC_FAR * This,
  7493.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7494.     /* [in] */ REFIID riid,
  7495.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand,
  7496.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7497.  
  7498.  
  7499. void __RPC_STUB IDBCreateCommand_RemoteCreateCommand_Stub(
  7500.     IRpcStubBuffer *This,
  7501.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7502.     PRPC_MESSAGE _pRpcMessage,
  7503.     DWORD *_pdwStubPhase);
  7504.  
  7505.  
  7506.  
  7507. #endif     /* __IDBCreateCommand_INTERFACE_DEFINED__ */
  7508.  
  7509.  
  7510. #ifndef __IDBCreateSession_INTERFACE_DEFINED__
  7511. #define __IDBCreateSession_INTERFACE_DEFINED__
  7512.  
  7513. /****************************************
  7514.  * Generated header for interface: IDBCreateSession
  7515.  * at Wed Aug 26 14:08:54 1998
  7516.  * using MIDL 3.01.75
  7517.  ****************************************/
  7518. /* [unique][uuid][object] */ 
  7519.  
  7520.  
  7521.  
  7522. EXTERN_C const IID IID_IDBCreateSession;
  7523.  
  7524. #if defined(__cplusplus) && !defined(CINTERFACE)
  7525.     
  7526.     interface DECLSPEC_UUID("0c733a5d-2a1c-11ce-ade5-00aa0044773d")
  7527.     IDBCreateSession : public IUnknown
  7528.     {
  7529.     public:
  7530.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateSession( 
  7531.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7532.             /* [in] */ REFIID riid,
  7533.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession) = 0;
  7534.         
  7535.     };
  7536.     
  7537. #else     /* C style interface */
  7538.  
  7539.     typedef struct IDBCreateSessionVtbl
  7540.     {
  7541.         BEGIN_INTERFACE
  7542.         
  7543.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7544.             IDBCreateSession __RPC_FAR * This,
  7545.             /* [in] */ REFIID riid,
  7546.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7547.         
  7548.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7549.             IDBCreateSession __RPC_FAR * This);
  7550.         
  7551.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7552.             IDBCreateSession __RPC_FAR * This);
  7553.         
  7554.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateSession )( 
  7555.             IDBCreateSession __RPC_FAR * This,
  7556.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7557.             /* [in] */ REFIID riid,
  7558.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession);
  7559.         
  7560.         END_INTERFACE
  7561.     } IDBCreateSessionVtbl;
  7562.  
  7563.     interface IDBCreateSession
  7564.     {
  7565.         CONST_VTBL struct IDBCreateSessionVtbl __RPC_FAR *lpVtbl;
  7566.     };
  7567.  
  7568.     
  7569.  
  7570. #ifdef COBJMACROS
  7571.  
  7572.  
  7573. #define IDBCreateSession_QueryInterface(This,riid,ppvObject)    \
  7574.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7575.  
  7576. #define IDBCreateSession_AddRef(This)    \
  7577.     (This)->lpVtbl -> AddRef(This)
  7578.  
  7579. #define IDBCreateSession_Release(This)    \
  7580.     (This)->lpVtbl -> Release(This)
  7581.  
  7582.  
  7583. #define IDBCreateSession_CreateSession(This,pUnkOuter,riid,ppDBSession)    \
  7584.     (This)->lpVtbl -> CreateSession(This,pUnkOuter,riid,ppDBSession)
  7585.  
  7586. #endif /* COBJMACROS */
  7587.  
  7588.  
  7589. #endif     /* C style interface */
  7590.  
  7591.  
  7592.  
  7593. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBCreateSession_RemoteCreateSession_Proxy( 
  7594.     IDBCreateSession __RPC_FAR * This,
  7595.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7596.     /* [in] */ REFIID riid,
  7597.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession,
  7598.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7599.  
  7600.  
  7601. void __RPC_STUB IDBCreateSession_RemoteCreateSession_Stub(
  7602.     IRpcStubBuffer *This,
  7603.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7604.     PRPC_MESSAGE _pRpcMessage,
  7605.     DWORD *_pdwStubPhase);
  7606.  
  7607.  
  7608.  
  7609. #endif     /* __IDBCreateSession_INTERFACE_DEFINED__ */
  7610.  
  7611.  
  7612. #ifndef __ISourcesRowset_INTERFACE_DEFINED__
  7613. #define __ISourcesRowset_INTERFACE_DEFINED__
  7614.  
  7615. /****************************************
  7616.  * Generated header for interface: ISourcesRowset
  7617.  * at Wed Aug 26 14:08:54 1998
  7618.  * using MIDL 3.01.75
  7619.  ****************************************/
  7620. /* [unique][uuid][object] */ 
  7621.  
  7622.  
  7623. typedef DWORD DBSOURCETYPE;
  7624.  
  7625.  
  7626. enum DBSOURCETYPEENUM
  7627.     {    DBSOURCETYPE_DATASOURCE    = 1,
  7628.     DBSOURCETYPE_ENUMERATOR    = 2
  7629.     };
  7630. //@@@+ V2.0
  7631. #if( OLEDBVER >= 0x0200 )
  7632.  
  7633. enum DBSOURCETYPEENUM20
  7634.     {    DBSOURCETYPE_DATASOURCE_TDP    = 1,
  7635.     DBSOURCETYPE_DATASOURCE_MDP    = 3
  7636.     };
  7637. #endif // OLEDBVER >= 0x0200
  7638. //@@@- V2.0
  7639.  
  7640. EXTERN_C const IID IID_ISourcesRowset;
  7641.  
  7642. #if defined(__cplusplus) && !defined(CINTERFACE)
  7643.     
  7644.     interface DECLSPEC_UUID("0c733a1e-2a1c-11ce-ade5-00aa0044773d")
  7645.     ISourcesRowset : public IUnknown
  7646.     {
  7647.     public:
  7648.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSourcesRowset( 
  7649.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7650.             /* [in] */ REFIID riid,
  7651.             /* [in] */ ULONG cPropertySets,
  7652.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgProperties[  ],
  7653.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset) = 0;
  7654.         
  7655.     };
  7656.     
  7657. #else     /* C style interface */
  7658.  
  7659.     typedef struct ISourcesRowsetVtbl
  7660.     {
  7661.         BEGIN_INTERFACE
  7662.         
  7663.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7664.             ISourcesRowset __RPC_FAR * This,
  7665.             /* [in] */ REFIID riid,
  7666.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7667.         
  7668.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7669.             ISourcesRowset __RPC_FAR * This);
  7670.         
  7671.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7672.             ISourcesRowset __RPC_FAR * This);
  7673.         
  7674.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourcesRowset )( 
  7675.             ISourcesRowset __RPC_FAR * This,
  7676.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7677.             /* [in] */ REFIID riid,
  7678.             /* [in] */ ULONG cPropertySets,
  7679.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgProperties[  ],
  7680.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset);
  7681.         
  7682.         END_INTERFACE
  7683.     } ISourcesRowsetVtbl;
  7684.  
  7685.     interface ISourcesRowset
  7686.     {
  7687.         CONST_VTBL struct ISourcesRowsetVtbl __RPC_FAR *lpVtbl;
  7688.     };
  7689.  
  7690.     
  7691.  
  7692. #ifdef COBJMACROS
  7693.  
  7694.  
  7695. #define ISourcesRowset_QueryInterface(This,riid,ppvObject)    \
  7696.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7697.  
  7698. #define ISourcesRowset_AddRef(This)    \
  7699.     (This)->lpVtbl -> AddRef(This)
  7700.  
  7701. #define ISourcesRowset_Release(This)    \
  7702.     (This)->lpVtbl -> Release(This)
  7703.  
  7704.  
  7705. #define ISourcesRowset_GetSourcesRowset(This,pUnkOuter,riid,cPropertySets,rgProperties,ppSourcesRowset)    \
  7706.     (This)->lpVtbl -> GetSourcesRowset(This,pUnkOuter,riid,cPropertySets,rgProperties,ppSourcesRowset)
  7707.  
  7708. #endif /* COBJMACROS */
  7709.  
  7710.  
  7711. #endif     /* C style interface */
  7712.  
  7713.  
  7714.  
  7715. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISourcesRowset_RemoteGetSourcesRowset_Proxy( 
  7716.     ISourcesRowset __RPC_FAR * This,
  7717.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  7718.     /* [in] */ REFIID riid,
  7719.     /* [in] */ ULONG cPropertySets,
  7720.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgProperties,
  7721.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset,
  7722.     /* [in] */ ULONG cTotalProps,
  7723.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  7724.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7725.  
  7726.  
  7727. void __RPC_STUB ISourcesRowset_RemoteGetSourcesRowset_Stub(
  7728.     IRpcStubBuffer *This,
  7729.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7730.     PRPC_MESSAGE _pRpcMessage,
  7731.     DWORD *_pdwStubPhase);
  7732.  
  7733.  
  7734.  
  7735. #endif     /* __ISourcesRowset_INTERFACE_DEFINED__ */
  7736.  
  7737.  
  7738. #ifndef __IDBProperties_INTERFACE_DEFINED__
  7739. #define __IDBProperties_INTERFACE_DEFINED__
  7740.  
  7741. /****************************************
  7742.  * Generated header for interface: IDBProperties
  7743.  * at Wed Aug 26 14:08:54 1998
  7744.  * using MIDL 3.01.75
  7745.  ****************************************/
  7746. /* [unique][uuid][object] */ 
  7747.  
  7748.  
  7749.  
  7750. EXTERN_C const IID IID_IDBProperties;
  7751.  
  7752. #if defined(__cplusplus) && !defined(CINTERFACE)
  7753.     
  7754.     interface DECLSPEC_UUID("0c733a8a-2a1c-11ce-ade5-00aa0044773d")
  7755.     IDBProperties : public IUnknown
  7756.     {
  7757.     public:
  7758.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetProperties( 
  7759.             /* [in] */ ULONG cPropertyIDSets,
  7760.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  7761.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  7762.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  7763.         
  7764.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetPropertyInfo( 
  7765.             /* [in] */ ULONG cPropertyIDSets,
  7766.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  7767.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  7768.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  7769.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer) = 0;
  7770.         
  7771.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetProperties( 
  7772.             /* [in] */ ULONG cPropertySets,
  7773.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  7774.         
  7775.     };
  7776.     
  7777. #else     /* C style interface */
  7778.  
  7779.     typedef struct IDBPropertiesVtbl
  7780.     {
  7781.         BEGIN_INTERFACE
  7782.         
  7783.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7784.             IDBProperties __RPC_FAR * This,
  7785.             /* [in] */ REFIID riid,
  7786.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7787.         
  7788.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7789.             IDBProperties __RPC_FAR * This);
  7790.         
  7791.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7792.             IDBProperties __RPC_FAR * This);
  7793.         
  7794.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  7795.             IDBProperties __RPC_FAR * This,
  7796.             /* [in] */ ULONG cPropertyIDSets,
  7797.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  7798.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  7799.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  7800.         
  7801.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPropertyInfo )( 
  7802.             IDBProperties __RPC_FAR * This,
  7803.             /* [in] */ ULONG cPropertyIDSets,
  7804.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  7805.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  7806.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  7807.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  7808.         
  7809.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProperties )( 
  7810.             IDBProperties __RPC_FAR * This,
  7811.             /* [in] */ ULONG cPropertySets,
  7812.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  7813.         
  7814.         END_INTERFACE
  7815.     } IDBPropertiesVtbl;
  7816.  
  7817.     interface IDBProperties
  7818.     {
  7819.         CONST_VTBL struct IDBPropertiesVtbl __RPC_FAR *lpVtbl;
  7820.     };
  7821.  
  7822.     
  7823.  
  7824. #ifdef COBJMACROS
  7825.  
  7826.  
  7827. #define IDBProperties_QueryInterface(This,riid,ppvObject)    \
  7828.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7829.  
  7830. #define IDBProperties_AddRef(This)    \
  7831.     (This)->lpVtbl -> AddRef(This)
  7832.  
  7833. #define IDBProperties_Release(This)    \
  7834.     (This)->lpVtbl -> Release(This)
  7835.  
  7836.  
  7837. #define IDBProperties_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  7838.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  7839.  
  7840. #define IDBProperties_GetPropertyInfo(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)    \
  7841.     (This)->lpVtbl -> GetPropertyInfo(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)
  7842.  
  7843. #define IDBProperties_SetProperties(This,cPropertySets,rgPropertySets)    \
  7844.     (This)->lpVtbl -> SetProperties(This,cPropertySets,rgPropertySets)
  7845.  
  7846. #endif /* COBJMACROS */
  7847.  
  7848.  
  7849. #endif     /* C style interface */
  7850.  
  7851.  
  7852.  
  7853. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_RemoteGetProperties_Proxy( 
  7854.     IDBProperties __RPC_FAR * This,
  7855.     /* [in] */ ULONG cPropertyIDSets,
  7856.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  7857.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  7858.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  7859.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7860.  
  7861.  
  7862. void __RPC_STUB IDBProperties_RemoteGetProperties_Stub(
  7863.     IRpcStubBuffer *This,
  7864.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7865.     PRPC_MESSAGE _pRpcMessage,
  7866.     DWORD *_pdwStubPhase);
  7867.  
  7868.  
  7869. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_RemoteGetPropertyInfo_Proxy( 
  7870.     IDBProperties __RPC_FAR * This,
  7871.     /* [in] */ ULONG cPropertyIDSets,
  7872.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  7873.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  7874.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  7875.     /* [out][in] */ ULONG __RPC_FAR *pcOffsets,
  7876.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgDescOffsets,
  7877.     /* [out][in] */ ULONG __RPC_FAR *pcbDescBuffer,
  7878.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer,
  7879.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7880.  
  7881.  
  7882. void __RPC_STUB IDBProperties_RemoteGetPropertyInfo_Stub(
  7883.     IRpcStubBuffer *This,
  7884.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7885.     PRPC_MESSAGE _pRpcMessage,
  7886.     DWORD *_pdwStubPhase);
  7887.  
  7888.  
  7889. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_RemoteSetProperties_Proxy( 
  7890.     IDBProperties __RPC_FAR * This,
  7891.     /* [in] */ ULONG cPropertySets,
  7892.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  7893.     /* [in] */ ULONG cTotalProps,
  7894.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  7895.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7896.  
  7897.  
  7898. void __RPC_STUB IDBProperties_RemoteSetProperties_Stub(
  7899.     IRpcStubBuffer *This,
  7900.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7901.     PRPC_MESSAGE _pRpcMessage,
  7902.     DWORD *_pdwStubPhase);
  7903.  
  7904.  
  7905.  
  7906. #endif     /* __IDBProperties_INTERFACE_DEFINED__ */
  7907.  
  7908.  
  7909. #ifndef __IDBInitialize_INTERFACE_DEFINED__
  7910. #define __IDBInitialize_INTERFACE_DEFINED__
  7911.  
  7912. /****************************************
  7913.  * Generated header for interface: IDBInitialize
  7914.  * at Wed Aug 26 14:08:54 1998
  7915.  * using MIDL 3.01.75
  7916.  ****************************************/
  7917. /* [unique][uuid][object] */ 
  7918.  
  7919.  
  7920.  
  7921. EXTERN_C const IID IID_IDBInitialize;
  7922.  
  7923. #if defined(__cplusplus) && !defined(CINTERFACE)
  7924.     
  7925.     interface DECLSPEC_UUID("0c733a8b-2a1c-11ce-ade5-00aa0044773d")
  7926.     IDBInitialize : public IUnknown
  7927.     {
  7928.     public:
  7929.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Initialize( void) = 0;
  7930.         
  7931.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Uninitialize( void) = 0;
  7932.         
  7933.     };
  7934.     
  7935. #else     /* C style interface */
  7936.  
  7937.     typedef struct IDBInitializeVtbl
  7938.     {
  7939.         BEGIN_INTERFACE
  7940.         
  7941.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  7942.             IDBInitialize __RPC_FAR * This,
  7943.             /* [in] */ REFIID riid,
  7944.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  7945.         
  7946.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  7947.             IDBInitialize __RPC_FAR * This);
  7948.         
  7949.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  7950.             IDBInitialize __RPC_FAR * This);
  7951.         
  7952.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Initialize )( 
  7953.             IDBInitialize __RPC_FAR * This);
  7954.         
  7955.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Uninitialize )( 
  7956.             IDBInitialize __RPC_FAR * This);
  7957.         
  7958.         END_INTERFACE
  7959.     } IDBInitializeVtbl;
  7960.  
  7961.     interface IDBInitialize
  7962.     {
  7963.         CONST_VTBL struct IDBInitializeVtbl __RPC_FAR *lpVtbl;
  7964.     };
  7965.  
  7966.     
  7967.  
  7968. #ifdef COBJMACROS
  7969.  
  7970.  
  7971. #define IDBInitialize_QueryInterface(This,riid,ppvObject)    \
  7972.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7973.  
  7974. #define IDBInitialize_AddRef(This)    \
  7975.     (This)->lpVtbl -> AddRef(This)
  7976.  
  7977. #define IDBInitialize_Release(This)    \
  7978.     (This)->lpVtbl -> Release(This)
  7979.  
  7980.  
  7981. #define IDBInitialize_Initialize(This)    \
  7982.     (This)->lpVtbl -> Initialize(This)
  7983.  
  7984. #define IDBInitialize_Uninitialize(This)    \
  7985.     (This)->lpVtbl -> Uninitialize(This)
  7986.  
  7987. #endif /* COBJMACROS */
  7988.  
  7989.  
  7990. #endif     /* C style interface */
  7991.  
  7992.  
  7993.  
  7994. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInitialize_RemoteInitialize_Proxy( 
  7995.     IDBInitialize __RPC_FAR * This,
  7996.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  7997.  
  7998.  
  7999. void __RPC_STUB IDBInitialize_RemoteInitialize_Stub(
  8000.     IRpcStubBuffer *This,
  8001.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8002.     PRPC_MESSAGE _pRpcMessage,
  8003.     DWORD *_pdwStubPhase);
  8004.  
  8005.  
  8006. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInitialize_RemoteUninitialize_Proxy( 
  8007.     IDBInitialize __RPC_FAR * This,
  8008.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8009.  
  8010.  
  8011. void __RPC_STUB IDBInitialize_RemoteUninitialize_Stub(
  8012.     IRpcStubBuffer *This,
  8013.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8014.     PRPC_MESSAGE _pRpcMessage,
  8015.     DWORD *_pdwStubPhase);
  8016.  
  8017.  
  8018.  
  8019. #endif     /* __IDBInitialize_INTERFACE_DEFINED__ */
  8020.  
  8021.  
  8022. #ifndef __IDBInfo_INTERFACE_DEFINED__
  8023. #define __IDBInfo_INTERFACE_DEFINED__
  8024.  
  8025. /****************************************
  8026.  * Generated header for interface: IDBInfo
  8027.  * at Wed Aug 26 14:08:54 1998
  8028.  * using MIDL 3.01.75
  8029.  ****************************************/
  8030. /* [unique][uuid][object] */ 
  8031.  
  8032.  
  8033. typedef DWORD DBLITERAL;
  8034.  
  8035.  
  8036. enum DBLITERALENUM
  8037.     {    DBLITERAL_INVALID    = 0,
  8038.     DBLITERAL_BINARY_LITERAL    = 1,
  8039.     DBLITERAL_CATALOG_NAME    = 2,
  8040.     DBLITERAL_CATALOG_SEPARATOR    = 3,
  8041.     DBLITERAL_CHAR_LITERAL    = 4,
  8042.     DBLITERAL_COLUMN_ALIAS    = 5,
  8043.     DBLITERAL_COLUMN_NAME    = 6,
  8044.     DBLITERAL_CORRELATION_NAME    = 7,
  8045.     DBLITERAL_CURSOR_NAME    = 8,
  8046.     DBLITERAL_ESCAPE_PERCENT    = 9,
  8047.     DBLITERAL_ESCAPE_UNDERSCORE    = 10,
  8048.     DBLITERAL_INDEX_NAME    = 11,
  8049.     DBLITERAL_LIKE_PERCENT    = 12,
  8050.     DBLITERAL_LIKE_UNDERSCORE    = 13,
  8051.     DBLITERAL_PROCEDURE_NAME    = 14,
  8052.     DBLITERAL_QUOTE    = 15,
  8053.     DBLITERAL_SCHEMA_NAME    = 16,
  8054.     DBLITERAL_TABLE_NAME    = 17,
  8055.     DBLITERAL_TEXT_COMMAND    = 18,
  8056.     DBLITERAL_USER_NAME    = 19,
  8057.     DBLITERAL_VIEW_NAME    = 20
  8058.     };
  8059. //@@@+ V2.0
  8060. #if( OLEDBVER >= 0x0200 )
  8061. #define DBLITERAL_QUOTE_PREFIX DBLITERAL_QUOTE
  8062.  
  8063. enum DBLITERALENUM20
  8064.     {    DBLITERAL_CUBE_NAME    = 21,
  8065.     DBLITERAL_DIMENSION_NAME    = 22,
  8066.     DBLITERAL_HIERARCHY_NAME    = 23,
  8067.     DBLITERAL_LEVEL_NAME    = 24,
  8068.     DBLITERAL_MEMBER_NAME    = 25,
  8069.     DBLITERAL_PROPERTY_NAME    = 26,
  8070.     DBLITERAL_SCHEMA_SEPARATOR    = 27,
  8071.     DBLITERAL_QUOTE_SUFFIX    = 28
  8072.     };
  8073. #endif // OLEDBVER >= 0x0200
  8074. //@@@- V2.0
  8075. //@@@+ V2.1
  8076. #if( OLEDBVER >= 0x0210 )
  8077. #define DBLITERAL_ESCAPE_PERCENT_PREFIX DBLITERAL_ESCAPE_PERCENT
  8078. #define DBLITERAL_ESCAPE_UNDERSCORE_PREFIX DBLITERAL_ESCAPE_UNDERSCORE
  8079.  
  8080. enum DBLITERALENUM21
  8081.     {    DBLITERAL_ESCAPE_PERCENT_SUFFIX    = 29,
  8082.     DBLITERAL_ESCAPE_UNDERSCORE_SUFFIX    = 30
  8083.     };
  8084. #endif // OLEDBVER >= 0x0210
  8085. //@@@- V2.1
  8086. typedef struct  tagDBLITERALINFO
  8087.     {
  8088.     LPOLESTR pwszLiteralValue;
  8089.     LPOLESTR pwszInvalidChars;
  8090.     LPOLESTR pwszInvalidStartingChars;
  8091.     DBLITERAL lt;
  8092.     BOOL fSupported;
  8093.     ULONG cchMaxLen;
  8094.     }    DBLITERALINFO;
  8095.  
  8096.  
  8097. EXTERN_C const IID IID_IDBInfo;
  8098.  
  8099. #if defined(__cplusplus) && !defined(CINTERFACE)
  8100.     
  8101.     interface DECLSPEC_UUID("0c733a89-2a1c-11ce-ade5-00aa0044773d")
  8102.     IDBInfo : public IUnknown
  8103.     {
  8104.     public:
  8105.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetKeywords( 
  8106.             /* [out] */ LPOLESTR __RPC_FAR *ppwszKeywords) = 0;
  8107.         
  8108.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetLiteralInfo( 
  8109.             /* [in] */ ULONG cLiterals,
  8110.             /* [size_is][in] */ const DBLITERAL __RPC_FAR rgLiterals[  ],
  8111.             /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  8112.             /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  8113.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer) = 0;
  8114.         
  8115.     };
  8116.     
  8117. #else     /* C style interface */
  8118.  
  8119.     typedef struct IDBInfoVtbl
  8120.     {
  8121.         BEGIN_INTERFACE
  8122.         
  8123.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8124.             IDBInfo __RPC_FAR * This,
  8125.             /* [in] */ REFIID riid,
  8126.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8127.         
  8128.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8129.             IDBInfo __RPC_FAR * This);
  8130.         
  8131.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8132.             IDBInfo __RPC_FAR * This);
  8133.         
  8134.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetKeywords )( 
  8135.             IDBInfo __RPC_FAR * This,
  8136.             /* [out] */ LPOLESTR __RPC_FAR *ppwszKeywords);
  8137.         
  8138.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLiteralInfo )( 
  8139.             IDBInfo __RPC_FAR * This,
  8140.             /* [in] */ ULONG cLiterals,
  8141.             /* [size_is][in] */ const DBLITERAL __RPC_FAR rgLiterals[  ],
  8142.             /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  8143.             /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  8144.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer);
  8145.         
  8146.         END_INTERFACE
  8147.     } IDBInfoVtbl;
  8148.  
  8149.     interface IDBInfo
  8150.     {
  8151.         CONST_VTBL struct IDBInfoVtbl __RPC_FAR *lpVtbl;
  8152.     };
  8153.  
  8154.     
  8155.  
  8156. #ifdef COBJMACROS
  8157.  
  8158.  
  8159. #define IDBInfo_QueryInterface(This,riid,ppvObject)    \
  8160.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8161.  
  8162. #define IDBInfo_AddRef(This)    \
  8163.     (This)->lpVtbl -> AddRef(This)
  8164.  
  8165. #define IDBInfo_Release(This)    \
  8166.     (This)->lpVtbl -> Release(This)
  8167.  
  8168.  
  8169. #define IDBInfo_GetKeywords(This,ppwszKeywords)    \
  8170.     (This)->lpVtbl -> GetKeywords(This,ppwszKeywords)
  8171.  
  8172. #define IDBInfo_GetLiteralInfo(This,cLiterals,rgLiterals,pcLiteralInfo,prgLiteralInfo,ppCharBuffer)    \
  8173.     (This)->lpVtbl -> GetLiteralInfo(This,cLiterals,rgLiterals,pcLiteralInfo,prgLiteralInfo,ppCharBuffer)
  8174.  
  8175. #endif /* COBJMACROS */
  8176.  
  8177.  
  8178. #endif     /* C style interface */
  8179.  
  8180.  
  8181.  
  8182. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInfo_RemoteGetKeywords_Proxy( 
  8183.     IDBInfo __RPC_FAR * This,
  8184.     /* [unique][out][in] */ LPOLESTR __RPC_FAR *ppwszKeywords,
  8185.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8186.  
  8187.  
  8188. void __RPC_STUB IDBInfo_RemoteGetKeywords_Stub(
  8189.     IRpcStubBuffer *This,
  8190.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8191.     PRPC_MESSAGE _pRpcMessage,
  8192.     DWORD *_pdwStubPhase);
  8193.  
  8194.  
  8195. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInfo_RemoteGetLiteralInfo_Proxy( 
  8196.     IDBInfo __RPC_FAR * This,
  8197.     /* [in] */ ULONG cLiterals,
  8198.     /* [size_is][unique][in] */ const DBLITERAL __RPC_FAR *rgLiterals,
  8199.     /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  8200.     /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  8201.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgLVOffsets,
  8202.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgICOffsets,
  8203.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgISCOffsets,
  8204.     /* [out][in] */ ULONG __RPC_FAR *pcbCharBuffer,
  8205.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer,
  8206.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8207.  
  8208.  
  8209. void __RPC_STUB IDBInfo_RemoteGetLiteralInfo_Stub(
  8210.     IRpcStubBuffer *This,
  8211.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8212.     PRPC_MESSAGE _pRpcMessage,
  8213.     DWORD *_pdwStubPhase);
  8214.  
  8215.  
  8216.  
  8217. #endif     /* __IDBInfo_INTERFACE_DEFINED__ */
  8218.  
  8219.  
  8220. #ifndef __IDBDataSourceAdmin_INTERFACE_DEFINED__
  8221. #define __IDBDataSourceAdmin_INTERFACE_DEFINED__
  8222.  
  8223. /****************************************
  8224.  * Generated header for interface: IDBDataSourceAdmin
  8225.  * at Wed Aug 26 14:08:54 1998
  8226.  * using MIDL 3.01.75
  8227.  ****************************************/
  8228. /* [unique][uuid][object] */ 
  8229.  
  8230.  
  8231.  
  8232. EXTERN_C const IID IID_IDBDataSourceAdmin;
  8233.  
  8234. #if defined(__cplusplus) && !defined(CINTERFACE)
  8235.     
  8236.     interface DECLSPEC_UUID("0c733a7a-2a1c-11ce-ade5-00aa0044773d")
  8237.     IDBDataSourceAdmin : public IUnknown
  8238.     {
  8239.     public:
  8240.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateDataSource( 
  8241.             /* [in] */ ULONG cPropertySets,
  8242.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  8243.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  8244.             /* [in] */ REFIID riid,
  8245.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession) = 0;
  8246.         
  8247.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DestroyDataSource( void) = 0;
  8248.         
  8249.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetCreationProperties( 
  8250.             /* [in] */ ULONG cPropertyIDSets,
  8251.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  8252.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  8253.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  8254.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer) = 0;
  8255.         
  8256.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ModifyDataSource( 
  8257.             /* [in] */ ULONG cPropertySets,
  8258.             /* [size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  8259.         
  8260.     };
  8261.     
  8262. #else     /* C style interface */
  8263.  
  8264.     typedef struct IDBDataSourceAdminVtbl
  8265.     {
  8266.         BEGIN_INTERFACE
  8267.         
  8268.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8269.             IDBDataSourceAdmin __RPC_FAR * This,
  8270.             /* [in] */ REFIID riid,
  8271.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8272.         
  8273.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8274.             IDBDataSourceAdmin __RPC_FAR * This);
  8275.         
  8276.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8277.             IDBDataSourceAdmin __RPC_FAR * This);
  8278.         
  8279.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateDataSource )( 
  8280.             IDBDataSourceAdmin __RPC_FAR * This,
  8281.             /* [in] */ ULONG cPropertySets,
  8282.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  8283.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  8284.             /* [in] */ REFIID riid,
  8285.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession);
  8286.         
  8287.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DestroyDataSource )( 
  8288.             IDBDataSourceAdmin __RPC_FAR * This);
  8289.         
  8290.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCreationProperties )( 
  8291.             IDBDataSourceAdmin __RPC_FAR * This,
  8292.             /* [in] */ ULONG cPropertyIDSets,
  8293.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  8294.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  8295.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  8296.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  8297.         
  8298.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ModifyDataSource )( 
  8299.             IDBDataSourceAdmin __RPC_FAR * This,
  8300.             /* [in] */ ULONG cPropertySets,
  8301.             /* [size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  8302.         
  8303.         END_INTERFACE
  8304.     } IDBDataSourceAdminVtbl;
  8305.  
  8306.     interface IDBDataSourceAdmin
  8307.     {
  8308.         CONST_VTBL struct IDBDataSourceAdminVtbl __RPC_FAR *lpVtbl;
  8309.     };
  8310.  
  8311.     
  8312.  
  8313. #ifdef COBJMACROS
  8314.  
  8315.  
  8316. #define IDBDataSourceAdmin_QueryInterface(This,riid,ppvObject)    \
  8317.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8318.  
  8319. #define IDBDataSourceAdmin_AddRef(This)    \
  8320.     (This)->lpVtbl -> AddRef(This)
  8321.  
  8322. #define IDBDataSourceAdmin_Release(This)    \
  8323.     (This)->lpVtbl -> Release(This)
  8324.  
  8325.  
  8326. #define IDBDataSourceAdmin_CreateDataSource(This,cPropertySets,rgPropertySets,pUnkOuter,riid,ppDBSession)    \
  8327.     (This)->lpVtbl -> CreateDataSource(This,cPropertySets,rgPropertySets,pUnkOuter,riid,ppDBSession)
  8328.  
  8329. #define IDBDataSourceAdmin_DestroyDataSource(This)    \
  8330.     (This)->lpVtbl -> DestroyDataSource(This)
  8331.  
  8332. #define IDBDataSourceAdmin_GetCreationProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)    \
  8333.     (This)->lpVtbl -> GetCreationProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)
  8334.  
  8335. #define IDBDataSourceAdmin_ModifyDataSource(This,cPropertySets,rgPropertySets)    \
  8336.     (This)->lpVtbl -> ModifyDataSource(This,cPropertySets,rgPropertySets)
  8337.  
  8338. #endif /* COBJMACROS */
  8339.  
  8340.  
  8341. #endif     /* C style interface */
  8342.  
  8343.  
  8344.  
  8345. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_RemoteCreateDataSource_Proxy( 
  8346.     IDBDataSourceAdmin __RPC_FAR * This,
  8347.     /* [in] */ ULONG cPropertySets,
  8348.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  8349.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  8350.     /* [in] */ REFIID riid,
  8351.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession,
  8352.     /* [in] */ ULONG cTotalProps,
  8353.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  8354.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8355.  
  8356.  
  8357. void __RPC_STUB IDBDataSourceAdmin_RemoteCreateDataSource_Stub(
  8358.     IRpcStubBuffer *This,
  8359.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8360.     PRPC_MESSAGE _pRpcMessage,
  8361.     DWORD *_pdwStubPhase);
  8362.  
  8363.  
  8364. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_RemoteDestroyDataSource_Proxy( 
  8365.     IDBDataSourceAdmin __RPC_FAR * This,
  8366.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8367.  
  8368.  
  8369. void __RPC_STUB IDBDataSourceAdmin_RemoteDestroyDataSource_Stub(
  8370.     IRpcStubBuffer *This,
  8371.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8372.     PRPC_MESSAGE _pRpcMessage,
  8373.     DWORD *_pdwStubPhase);
  8374.  
  8375.  
  8376. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_RemoteGetCreationProperties_Proxy( 
  8377.     IDBDataSourceAdmin __RPC_FAR * This,
  8378.     /* [in] */ ULONG cPropertyIDSets,
  8379.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  8380.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  8381.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  8382.     /* [out][in] */ ULONG __RPC_FAR *pcOffsets,
  8383.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgDescOffsets,
  8384.     /* [out][in] */ ULONG __RPC_FAR *pcbDescBuffer,
  8385.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer,
  8386.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8387.  
  8388.  
  8389. void __RPC_STUB IDBDataSourceAdmin_RemoteGetCreationProperties_Stub(
  8390.     IRpcStubBuffer *This,
  8391.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8392.     PRPC_MESSAGE _pRpcMessage,
  8393.     DWORD *_pdwStubPhase);
  8394.  
  8395.  
  8396. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_RemoteModifyDataSource_Proxy( 
  8397.     IDBDataSourceAdmin __RPC_FAR * This,
  8398.     /* [in] */ ULONG cPropertySets,
  8399.     /* [size_is][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  8400.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8401.  
  8402.  
  8403. void __RPC_STUB IDBDataSourceAdmin_RemoteModifyDataSource_Stub(
  8404.     IRpcStubBuffer *This,
  8405.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8406.     PRPC_MESSAGE _pRpcMessage,
  8407.     DWORD *_pdwStubPhase);
  8408.  
  8409.  
  8410.  
  8411. #endif     /* __IDBDataSourceAdmin_INTERFACE_DEFINED__ */
  8412.  
  8413.  
  8414. /****************************************
  8415.  * Generated header for interface: __MIDL_itf_oledb_0192
  8416.  * at Wed Aug 26 14:08:54 1998
  8417.  * using MIDL 3.01.75
  8418.  ****************************************/
  8419. /* [local] */ 
  8420.  
  8421.  
  8422. //@@@+ V1.5
  8423. #if( OLEDBVER >= 0x0150 )
  8424.  
  8425.  
  8426. extern RPC_IF_HANDLE __MIDL_itf_oledb_0192_v0_0_c_ifspec;
  8427. extern RPC_IF_HANDLE __MIDL_itf_oledb_0192_v0_0_s_ifspec;
  8428.  
  8429. #ifndef __IDBAsynchNotify_INTERFACE_DEFINED__
  8430. #define __IDBAsynchNotify_INTERFACE_DEFINED__
  8431.  
  8432. /****************************************
  8433.  * Generated header for interface: IDBAsynchNotify
  8434.  * at Wed Aug 26 14:08:54 1998
  8435.  * using MIDL 3.01.75
  8436.  ****************************************/
  8437. /* [unique][uuid][object] */ 
  8438.  
  8439.  
  8440.  
  8441. EXTERN_C const IID IID_IDBAsynchNotify;
  8442.  
  8443. #if defined(__cplusplus) && !defined(CINTERFACE)
  8444.     
  8445.     interface DECLSPEC_UUID("0c733a96-2a1c-11ce-ade5-00aa0044773d")
  8446.     IDBAsynchNotify : public IUnknown
  8447.     {
  8448.     public:
  8449.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnLowResource( 
  8450.             /* [in] */ DWORD dwReserved) = 0;
  8451.         
  8452.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnProgress( 
  8453.             /* [in] */ HCHAPTER hChapter,
  8454.             /* [in] */ DBASYNCHOP eOperation,
  8455.             /* [in] */ ULONG ulProgress,
  8456.             /* [in] */ ULONG ulProgressMax,
  8457.             /* [in] */ DBASYNCHPHASE eAsynchPhase,
  8458.             /* [in] */ LPOLESTR pwszStatusText) = 0;
  8459.         
  8460.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OnStop( 
  8461.             /* [in] */ HCHAPTER hChapter,
  8462.             /* [in] */ DBASYNCHOP eOperation,
  8463.             /* [in] */ HRESULT hrStatus,
  8464.             /* [in] */ LPOLESTR pwszStatusText) = 0;
  8465.         
  8466.     };
  8467.     
  8468. #else     /* C style interface */
  8469.  
  8470.     typedef struct IDBAsynchNotifyVtbl
  8471.     {
  8472.         BEGIN_INTERFACE
  8473.         
  8474.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8475.             IDBAsynchNotify __RPC_FAR * This,
  8476.             /* [in] */ REFIID riid,
  8477.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8478.         
  8479.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8480.             IDBAsynchNotify __RPC_FAR * This);
  8481.         
  8482.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8483.             IDBAsynchNotify __RPC_FAR * This);
  8484.         
  8485.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnLowResource )( 
  8486.             IDBAsynchNotify __RPC_FAR * This,
  8487.             /* [in] */ DWORD dwReserved);
  8488.         
  8489.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnProgress )( 
  8490.             IDBAsynchNotify __RPC_FAR * This,
  8491.             /* [in] */ HCHAPTER hChapter,
  8492.             /* [in] */ DBASYNCHOP eOperation,
  8493.             /* [in] */ ULONG ulProgress,
  8494.             /* [in] */ ULONG ulProgressMax,
  8495.             /* [in] */ DBASYNCHPHASE eAsynchPhase,
  8496.             /* [in] */ LPOLESTR pwszStatusText);
  8497.         
  8498.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnStop )( 
  8499.             IDBAsynchNotify __RPC_FAR * This,
  8500.             /* [in] */ HCHAPTER hChapter,
  8501.             /* [in] */ DBASYNCHOP eOperation,
  8502.             /* [in] */ HRESULT hrStatus,
  8503.             /* [in] */ LPOLESTR pwszStatusText);
  8504.         
  8505.         END_INTERFACE
  8506.     } IDBAsynchNotifyVtbl;
  8507.  
  8508.     interface IDBAsynchNotify
  8509.     {
  8510.         CONST_VTBL struct IDBAsynchNotifyVtbl __RPC_FAR *lpVtbl;
  8511.     };
  8512.  
  8513.     
  8514.  
  8515. #ifdef COBJMACROS
  8516.  
  8517.  
  8518. #define IDBAsynchNotify_QueryInterface(This,riid,ppvObject)    \
  8519.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8520.  
  8521. #define IDBAsynchNotify_AddRef(This)    \
  8522.     (This)->lpVtbl -> AddRef(This)
  8523.  
  8524. #define IDBAsynchNotify_Release(This)    \
  8525.     (This)->lpVtbl -> Release(This)
  8526.  
  8527.  
  8528. #define IDBAsynchNotify_OnLowResource(This,dwReserved)    \
  8529.     (This)->lpVtbl -> OnLowResource(This,dwReserved)
  8530.  
  8531. #define IDBAsynchNotify_OnProgress(This,hChapter,eOperation,ulProgress,ulProgressMax,eAsynchPhase,pwszStatusText)    \
  8532.     (This)->lpVtbl -> OnProgress(This,hChapter,eOperation,ulProgress,ulProgressMax,eAsynchPhase,pwszStatusText)
  8533.  
  8534. #define IDBAsynchNotify_OnStop(This,hChapter,eOperation,hrStatus,pwszStatusText)    \
  8535.     (This)->lpVtbl -> OnStop(This,hChapter,eOperation,hrStatus,pwszStatusText)
  8536.  
  8537. #endif /* COBJMACROS */
  8538.  
  8539.  
  8540. #endif     /* C style interface */
  8541.  
  8542.  
  8543.  
  8544. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_RemoteOnLowResource_Proxy( 
  8545.     IDBAsynchNotify __RPC_FAR * This,
  8546.     /* [in] */ DWORD dwReserved,
  8547.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8548.  
  8549.  
  8550. void __RPC_STUB IDBAsynchNotify_RemoteOnLowResource_Stub(
  8551.     IRpcStubBuffer *This,
  8552.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8553.     PRPC_MESSAGE _pRpcMessage,
  8554.     DWORD *_pdwStubPhase);
  8555.  
  8556.  
  8557. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_RemoteOnProgress_Proxy( 
  8558.     IDBAsynchNotify __RPC_FAR * This,
  8559.     /* [in] */ HCHAPTER hChapter,
  8560.     /* [in] */ DBASYNCHOP eOperation,
  8561.     /* [in] */ ULONG ulProgress,
  8562.     /* [in] */ ULONG ulProgressMax,
  8563.     /* [in] */ DBASYNCHPHASE eAsynchPhase,
  8564.     /* [in] */ LPOLESTR pwszStatusText,
  8565.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8566.  
  8567.  
  8568. void __RPC_STUB IDBAsynchNotify_RemoteOnProgress_Stub(
  8569.     IRpcStubBuffer *This,
  8570.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8571.     PRPC_MESSAGE _pRpcMessage,
  8572.     DWORD *_pdwStubPhase);
  8573.  
  8574.  
  8575. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_RemoteOnStop_Proxy( 
  8576.     IDBAsynchNotify __RPC_FAR * This,
  8577.     /* [in] */ HCHAPTER hChapter,
  8578.     /* [in] */ DBASYNCHOP eOperation,
  8579.     /* [in] */ HRESULT hrStatus,
  8580.     /* [in] */ LPOLESTR pwszStatusText,
  8581.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8582.  
  8583.  
  8584. void __RPC_STUB IDBAsynchNotify_RemoteOnStop_Stub(
  8585.     IRpcStubBuffer *This,
  8586.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8587.     PRPC_MESSAGE _pRpcMessage,
  8588.     DWORD *_pdwStubPhase);
  8589.  
  8590.  
  8591.  
  8592. #endif     /* __IDBAsynchNotify_INTERFACE_DEFINED__ */
  8593.  
  8594.  
  8595. #ifndef __IDBAsynchStatus_INTERFACE_DEFINED__
  8596. #define __IDBAsynchStatus_INTERFACE_DEFINED__
  8597.  
  8598. /****************************************
  8599.  * Generated header for interface: IDBAsynchStatus
  8600.  * at Wed Aug 26 14:08:54 1998
  8601.  * using MIDL 3.01.75
  8602.  ****************************************/
  8603. /* [unique][uuid][object] */ 
  8604.  
  8605.  
  8606.  
  8607. EXTERN_C const IID IID_IDBAsynchStatus;
  8608.  
  8609. #if defined(__cplusplus) && !defined(CINTERFACE)
  8610.     
  8611.     interface DECLSPEC_UUID("0c733a95-2a1c-11ce-ade5-00aa0044773d")
  8612.     IDBAsynchStatus : public IUnknown
  8613.     {
  8614.     public:
  8615.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Abort( 
  8616.             /* [in] */ HCHAPTER hChapter,
  8617.             /* [in] */ DBASYNCHOP eOperation) = 0;
  8618.         
  8619.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetStatus( 
  8620.             /* [in] */ HCHAPTER hChapter,
  8621.             /* [in] */ DBASYNCHOP eOperation,
  8622.             /* [out] */ ULONG __RPC_FAR *pulProgress,
  8623.             /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  8624.             /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  8625.             /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText) = 0;
  8626.         
  8627.     };
  8628.     
  8629. #else     /* C style interface */
  8630.  
  8631.     typedef struct IDBAsynchStatusVtbl
  8632.     {
  8633.         BEGIN_INTERFACE
  8634.         
  8635.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8636.             IDBAsynchStatus __RPC_FAR * This,
  8637.             /* [in] */ REFIID riid,
  8638.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8639.         
  8640.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8641.             IDBAsynchStatus __RPC_FAR * This);
  8642.         
  8643.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8644.             IDBAsynchStatus __RPC_FAR * This);
  8645.         
  8646.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Abort )( 
  8647.             IDBAsynchStatus __RPC_FAR * This,
  8648.             /* [in] */ HCHAPTER hChapter,
  8649.             /* [in] */ DBASYNCHOP eOperation);
  8650.         
  8651.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetStatus )( 
  8652.             IDBAsynchStatus __RPC_FAR * This,
  8653.             /* [in] */ HCHAPTER hChapter,
  8654.             /* [in] */ DBASYNCHOP eOperation,
  8655.             /* [out] */ ULONG __RPC_FAR *pulProgress,
  8656.             /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  8657.             /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  8658.             /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText);
  8659.         
  8660.         END_INTERFACE
  8661.     } IDBAsynchStatusVtbl;
  8662.  
  8663.     interface IDBAsynchStatus
  8664.     {
  8665.         CONST_VTBL struct IDBAsynchStatusVtbl __RPC_FAR *lpVtbl;
  8666.     };
  8667.  
  8668.     
  8669.  
  8670. #ifdef COBJMACROS
  8671.  
  8672.  
  8673. #define IDBAsynchStatus_QueryInterface(This,riid,ppvObject)    \
  8674.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8675.  
  8676. #define IDBAsynchStatus_AddRef(This)    \
  8677.     (This)->lpVtbl -> AddRef(This)
  8678.  
  8679. #define IDBAsynchStatus_Release(This)    \
  8680.     (This)->lpVtbl -> Release(This)
  8681.  
  8682.  
  8683. #define IDBAsynchStatus_Abort(This,hChapter,eOperation)    \
  8684.     (This)->lpVtbl -> Abort(This,hChapter,eOperation)
  8685.  
  8686. #define IDBAsynchStatus_GetStatus(This,hChapter,eOperation,pulProgress,pulProgressMax,peAsynchPhase,ppwszStatusText)    \
  8687.     (This)->lpVtbl -> GetStatus(This,hChapter,eOperation,pulProgress,pulProgressMax,peAsynchPhase,ppwszStatusText)
  8688.  
  8689. #endif /* COBJMACROS */
  8690.  
  8691.  
  8692. #endif     /* C style interface */
  8693.  
  8694.  
  8695.  
  8696. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_RemoteAbort_Proxy( 
  8697.     IDBAsynchStatus __RPC_FAR * This,
  8698.     /* [in] */ HCHAPTER hChapter,
  8699.     /* [in] */ DBASYNCHOP eOperation,
  8700.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8701.  
  8702.  
  8703. void __RPC_STUB IDBAsynchStatus_RemoteAbort_Stub(
  8704.     IRpcStubBuffer *This,
  8705.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8706.     PRPC_MESSAGE _pRpcMessage,
  8707.     DWORD *_pdwStubPhase);
  8708.  
  8709.  
  8710. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_RemoteGetStatus_Proxy( 
  8711.     IDBAsynchStatus __RPC_FAR * This,
  8712.     /* [in] */ HCHAPTER hChapter,
  8713.     /* [in] */ DBASYNCHOP eOperation,
  8714.     /* [out] */ ULONG __RPC_FAR *pulProgress,
  8715.     /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  8716.     /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  8717.     /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText,
  8718.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8719.  
  8720.  
  8721. void __RPC_STUB IDBAsynchStatus_RemoteGetStatus_Stub(
  8722.     IRpcStubBuffer *This,
  8723.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8724.     PRPC_MESSAGE _pRpcMessage,
  8725.     DWORD *_pdwStubPhase);
  8726.  
  8727.  
  8728.  
  8729. #endif     /* __IDBAsynchStatus_INTERFACE_DEFINED__ */
  8730.  
  8731.  
  8732. /****************************************
  8733.  * Generated header for interface: __MIDL_itf_oledb_0194
  8734.  * at Wed Aug 26 14:08:54 1998
  8735.  * using MIDL 3.01.75
  8736.  ****************************************/
  8737. /* [local] */ 
  8738.  
  8739.  
  8740. #endif // OLEDBVER >= 0x0150
  8741. //@@@- V1.5
  8742.  
  8743.  
  8744. extern RPC_IF_HANDLE __MIDL_itf_oledb_0194_v0_0_c_ifspec;
  8745. extern RPC_IF_HANDLE __MIDL_itf_oledb_0194_v0_0_s_ifspec;
  8746.  
  8747. #ifndef __ISessionProperties_INTERFACE_DEFINED__
  8748. #define __ISessionProperties_INTERFACE_DEFINED__
  8749.  
  8750. /****************************************
  8751.  * Generated header for interface: ISessionProperties
  8752.  * at Wed Aug 26 14:08:54 1998
  8753.  * using MIDL 3.01.75
  8754.  ****************************************/
  8755. /* [unique][uuid][object] */ 
  8756.  
  8757.  
  8758.  
  8759. EXTERN_C const IID IID_ISessionProperties;
  8760.  
  8761. #if defined(__cplusplus) && !defined(CINTERFACE)
  8762.     
  8763.     interface DECLSPEC_UUID("0c733a85-2a1c-11ce-ade5-00aa0044773d")
  8764.     ISessionProperties : public IUnknown
  8765.     {
  8766.     public:
  8767.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetProperties( 
  8768.             /* [in] */ ULONG cPropertyIDSets,
  8769.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  8770.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  8771.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  8772.         
  8773.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetProperties( 
  8774.             /* [in] */ ULONG cPropertySets,
  8775.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  8776.         
  8777.     };
  8778.     
  8779. #else     /* C style interface */
  8780.  
  8781.     typedef struct ISessionPropertiesVtbl
  8782.     {
  8783.         BEGIN_INTERFACE
  8784.         
  8785.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8786.             ISessionProperties __RPC_FAR * This,
  8787.             /* [in] */ REFIID riid,
  8788.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8789.         
  8790.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8791.             ISessionProperties __RPC_FAR * This);
  8792.         
  8793.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8794.             ISessionProperties __RPC_FAR * This);
  8795.         
  8796.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  8797.             ISessionProperties __RPC_FAR * This,
  8798.             /* [in] */ ULONG cPropertyIDSets,
  8799.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  8800.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  8801.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  8802.         
  8803.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProperties )( 
  8804.             ISessionProperties __RPC_FAR * This,
  8805.             /* [in] */ ULONG cPropertySets,
  8806.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  8807.         
  8808.         END_INTERFACE
  8809.     } ISessionPropertiesVtbl;
  8810.  
  8811.     interface ISessionProperties
  8812.     {
  8813.         CONST_VTBL struct ISessionPropertiesVtbl __RPC_FAR *lpVtbl;
  8814.     };
  8815.  
  8816.     
  8817.  
  8818. #ifdef COBJMACROS
  8819.  
  8820.  
  8821. #define ISessionProperties_QueryInterface(This,riid,ppvObject)    \
  8822.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8823.  
  8824. #define ISessionProperties_AddRef(This)    \
  8825.     (This)->lpVtbl -> AddRef(This)
  8826.  
  8827. #define ISessionProperties_Release(This)    \
  8828.     (This)->lpVtbl -> Release(This)
  8829.  
  8830.  
  8831. #define ISessionProperties_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  8832.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  8833.  
  8834. #define ISessionProperties_SetProperties(This,cPropertySets,rgPropertySets)    \
  8835.     (This)->lpVtbl -> SetProperties(This,cPropertySets,rgPropertySets)
  8836.  
  8837. #endif /* COBJMACROS */
  8838.  
  8839.  
  8840. #endif     /* C style interface */
  8841.  
  8842.  
  8843.  
  8844. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISessionProperties_RemoteGetProperties_Proxy( 
  8845.     ISessionProperties __RPC_FAR * This,
  8846.     /* [in] */ ULONG cPropertyIDSets,
  8847.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  8848.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  8849.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  8850.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8851.  
  8852.  
  8853. void __RPC_STUB ISessionProperties_RemoteGetProperties_Stub(
  8854.     IRpcStubBuffer *This,
  8855.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8856.     PRPC_MESSAGE _pRpcMessage,
  8857.     DWORD *_pdwStubPhase);
  8858.  
  8859.  
  8860. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISessionProperties_RemoteSetProperties_Proxy( 
  8861.     ISessionProperties __RPC_FAR * This,
  8862.     /* [in] */ ULONG cPropertySets,
  8863.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  8864.     /* [in] */ ULONG cTotalProps,
  8865.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  8866.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8867.  
  8868.  
  8869. void __RPC_STUB ISessionProperties_RemoteSetProperties_Stub(
  8870.     IRpcStubBuffer *This,
  8871.     IRpcChannelBuffer *_pRpcChannelBuffer,
  8872.     PRPC_MESSAGE _pRpcMessage,
  8873.     DWORD *_pdwStubPhase);
  8874.  
  8875.  
  8876.  
  8877. #endif     /* __ISessionProperties_INTERFACE_DEFINED__ */
  8878.  
  8879.  
  8880. #ifndef __IIndexDefinition_INTERFACE_DEFINED__
  8881. #define __IIndexDefinition_INTERFACE_DEFINED__
  8882.  
  8883. /****************************************
  8884.  * Generated header for interface: IIndexDefinition
  8885.  * at Wed Aug 26 14:08:54 1998
  8886.  * using MIDL 3.01.75
  8887.  ****************************************/
  8888. /* [unique][uuid][object] */ 
  8889.  
  8890.  
  8891.  
  8892. EXTERN_C const IID IID_IIndexDefinition;
  8893.  
  8894. #if defined(__cplusplus) && !defined(CINTERFACE)
  8895.     
  8896.     interface DECLSPEC_UUID("0c733a68-2a1c-11ce-ade5-00aa0044773d")
  8897.     IIndexDefinition : public IUnknown
  8898.     {
  8899.     public:
  8900.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateIndex( 
  8901.             /* [in] */ DBID __RPC_FAR *pTableID,
  8902.             /* [in] */ DBID __RPC_FAR *pIndexID,
  8903.             /* [in] */ ULONG cIndexColumnDescs,
  8904.             /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR rgIndexColumnDescs[  ],
  8905.             /* [in] */ ULONG cPropertySets,
  8906.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  8907.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID) = 0;
  8908.         
  8909.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DropIndex( 
  8910.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  8911.             /* [unique][in] */ DBID __RPC_FAR *pIndexID) = 0;
  8912.         
  8913.     };
  8914.     
  8915. #else     /* C style interface */
  8916.  
  8917.     typedef struct IIndexDefinitionVtbl
  8918.     {
  8919.         BEGIN_INTERFACE
  8920.         
  8921.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  8922.             IIndexDefinition __RPC_FAR * This,
  8923.             /* [in] */ REFIID riid,
  8924.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  8925.         
  8926.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  8927.             IIndexDefinition __RPC_FAR * This);
  8928.         
  8929.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  8930.             IIndexDefinition __RPC_FAR * This);
  8931.         
  8932.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateIndex )( 
  8933.             IIndexDefinition __RPC_FAR * This,
  8934.             /* [in] */ DBID __RPC_FAR *pTableID,
  8935.             /* [in] */ DBID __RPC_FAR *pIndexID,
  8936.             /* [in] */ ULONG cIndexColumnDescs,
  8937.             /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR rgIndexColumnDescs[  ],
  8938.             /* [in] */ ULONG cPropertySets,
  8939.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  8940.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID);
  8941.         
  8942.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropIndex )( 
  8943.             IIndexDefinition __RPC_FAR * This,
  8944.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  8945.             /* [unique][in] */ DBID __RPC_FAR *pIndexID);
  8946.         
  8947.         END_INTERFACE
  8948.     } IIndexDefinitionVtbl;
  8949.  
  8950.     interface IIndexDefinition
  8951.     {
  8952.         CONST_VTBL struct IIndexDefinitionVtbl __RPC_FAR *lpVtbl;
  8953.     };
  8954.  
  8955.     
  8956.  
  8957. #ifdef COBJMACROS
  8958.  
  8959.  
  8960. #define IIndexDefinition_QueryInterface(This,riid,ppvObject)    \
  8961.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8962.  
  8963. #define IIndexDefinition_AddRef(This)    \
  8964.     (This)->lpVtbl -> AddRef(This)
  8965.  
  8966. #define IIndexDefinition_Release(This)    \
  8967.     (This)->lpVtbl -> Release(This)
  8968.  
  8969.  
  8970. #define IIndexDefinition_CreateIndex(This,pTableID,pIndexID,cIndexColumnDescs,rgIndexColumnDescs,cPropertySets,rgPropertySets,ppIndexID)    \
  8971.     (This)->lpVtbl -> CreateIndex(This,pTableID,pIndexID,cIndexColumnDescs,rgIndexColumnDescs,cPropertySets,rgPropertySets,ppIndexID)
  8972.  
  8973. #define IIndexDefinition_DropIndex(This,pTableID,pIndexID)    \
  8974.     (This)->lpVtbl -> DropIndex(This,pTableID,pIndexID)
  8975.  
  8976. #endif /* COBJMACROS */
  8977.  
  8978.  
  8979. #endif     /* C style interface */
  8980.  
  8981.  
  8982.  
  8983. /* [call_as] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_RemoteCreateIndex_Proxy( 
  8984.     IIndexDefinition __RPC_FAR * This,
  8985.     /* [in] */ DBID __RPC_FAR *pTableID,
  8986.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  8987.     /* [in] */ ULONG cIndexColumnDescs,
  8988.     /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR *rgIndexColumnDescs,
  8989.     /* [in] */ ULONG cPropertySets,
  8990.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  8991.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID,
  8992.     /* [in] */ ULONG cTotalProps,
  8993.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  8994.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  8995.  
  8996.  
  8997. void __RPC_STUB IIndexDefinition_RemoteCreateIndex_Stub(
  8998.     IRpcStubBuffer *This,
  8999.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9000.     PRPC_MESSAGE _pRpcMessage,
  9001.     DWORD *_pdwStubPhase);
  9002.  
  9003.  
  9004. /* [call_as] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_RemoteDropIndex_Proxy( 
  9005.     IIndexDefinition __RPC_FAR * This,
  9006.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9007.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  9008.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9009.  
  9010.  
  9011. void __RPC_STUB IIndexDefinition_RemoteDropIndex_Stub(
  9012.     IRpcStubBuffer *This,
  9013.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9014.     PRPC_MESSAGE _pRpcMessage,
  9015.     DWORD *_pdwStubPhase);
  9016.  
  9017.  
  9018.  
  9019. #endif     /* __IIndexDefinition_INTERFACE_DEFINED__ */
  9020.  
  9021.  
  9022. #ifndef __ITableDefinition_INTERFACE_DEFINED__
  9023. #define __ITableDefinition_INTERFACE_DEFINED__
  9024.  
  9025. /****************************************
  9026.  * Generated header for interface: ITableDefinition
  9027.  * at Wed Aug 26 14:08:54 1998
  9028.  * using MIDL 3.01.75
  9029.  ****************************************/
  9030. /* [unique][uuid][object] */ 
  9031.  
  9032.  
  9033.  
  9034. EXTERN_C const IID IID_ITableDefinition;
  9035.  
  9036. #if defined(__cplusplus) && !defined(CINTERFACE)
  9037.     
  9038.     interface DECLSPEC_UUID("0c733a86-2a1c-11ce-ade5-00aa0044773d")
  9039.     ITableDefinition : public IUnknown
  9040.     {
  9041.     public:
  9042.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateTable( 
  9043.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9044.             /* [in] */ DBID __RPC_FAR *pTableID,
  9045.             /* [in] */ ULONG cColumnDescs,
  9046.             /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  9047.             /* [in] */ REFIID riid,
  9048.             /* [in] */ ULONG cPropertySets,
  9049.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9050.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  9051.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9052.         
  9053.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DropTable( 
  9054.             /* [unique][in] */ DBID __RPC_FAR *pTableID) = 0;
  9055.         
  9056.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddColumn( 
  9057.             /* [in] */ DBID __RPC_FAR *pTableID,
  9058.             /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  9059.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID) = 0;
  9060.         
  9061.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DropColumn( 
  9062.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9063.             /* [unique][in] */ DBID __RPC_FAR *pColumnID) = 0;
  9064.         
  9065.     };
  9066.     
  9067. #else     /* C style interface */
  9068.  
  9069.     typedef struct ITableDefinitionVtbl
  9070.     {
  9071.         BEGIN_INTERFACE
  9072.         
  9073.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9074.             ITableDefinition __RPC_FAR * This,
  9075.             /* [in] */ REFIID riid,
  9076.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9077.         
  9078.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9079.             ITableDefinition __RPC_FAR * This);
  9080.         
  9081.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9082.             ITableDefinition __RPC_FAR * This);
  9083.         
  9084.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTable )( 
  9085.             ITableDefinition __RPC_FAR * This,
  9086.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9087.             /* [in] */ DBID __RPC_FAR *pTableID,
  9088.             /* [in] */ ULONG cColumnDescs,
  9089.             /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  9090.             /* [in] */ REFIID riid,
  9091.             /* [in] */ ULONG cPropertySets,
  9092.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9093.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  9094.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9095.         
  9096.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropTable )( 
  9097.             ITableDefinition __RPC_FAR * This,
  9098.             /* [unique][in] */ DBID __RPC_FAR *pTableID);
  9099.         
  9100.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
  9101.             ITableDefinition __RPC_FAR * This,
  9102.             /* [in] */ DBID __RPC_FAR *pTableID,
  9103.             /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  9104.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID);
  9105.         
  9106.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropColumn )( 
  9107.             ITableDefinition __RPC_FAR * This,
  9108.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9109.             /* [unique][in] */ DBID __RPC_FAR *pColumnID);
  9110.         
  9111.         END_INTERFACE
  9112.     } ITableDefinitionVtbl;
  9113.  
  9114.     interface ITableDefinition
  9115.     {
  9116.         CONST_VTBL struct ITableDefinitionVtbl __RPC_FAR *lpVtbl;
  9117.     };
  9118.  
  9119.     
  9120.  
  9121. #ifdef COBJMACROS
  9122.  
  9123.  
  9124. #define ITableDefinition_QueryInterface(This,riid,ppvObject)    \
  9125.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9126.  
  9127. #define ITableDefinition_AddRef(This)    \
  9128.     (This)->lpVtbl -> AddRef(This)
  9129.  
  9130. #define ITableDefinition_Release(This)    \
  9131.     (This)->lpVtbl -> Release(This)
  9132.  
  9133.  
  9134. #define ITableDefinition_CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)    \
  9135.     (This)->lpVtbl -> CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)
  9136.  
  9137. #define ITableDefinition_DropTable(This,pTableID)    \
  9138.     (This)->lpVtbl -> DropTable(This,pTableID)
  9139.  
  9140. #define ITableDefinition_AddColumn(This,pTableID,pColumnDesc,ppColumnID)    \
  9141.     (This)->lpVtbl -> AddColumn(This,pTableID,pColumnDesc,ppColumnID)
  9142.  
  9143. #define ITableDefinition_DropColumn(This,pTableID,pColumnID)    \
  9144.     (This)->lpVtbl -> DropColumn(This,pTableID,pColumnID)
  9145.  
  9146. #endif /* COBJMACROS */
  9147.  
  9148.  
  9149. #endif     /* C style interface */
  9150.  
  9151.  
  9152.  
  9153. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_RemoteCreateTable_Proxy( 
  9154.     ITableDefinition __RPC_FAR * This,
  9155.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9156.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9157.     /* [in] */ ULONG cColumnDescs,
  9158.     /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR *rgColumnDescs,
  9159.     /* [in] */ REFIID riid,
  9160.     /* [in] */ ULONG cPropertySets,
  9161.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  9162.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  9163.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  9164.     /* [in] */ ULONG cTotalProps,
  9165.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  9166.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9167.  
  9168.  
  9169. void __RPC_STUB ITableDefinition_RemoteCreateTable_Stub(
  9170.     IRpcStubBuffer *This,
  9171.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9172.     PRPC_MESSAGE _pRpcMessage,
  9173.     DWORD *_pdwStubPhase);
  9174.  
  9175.  
  9176. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_RemoteDropTable_Proxy( 
  9177.     ITableDefinition __RPC_FAR * This,
  9178.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9179.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9180.  
  9181.  
  9182. void __RPC_STUB ITableDefinition_RemoteDropTable_Stub(
  9183.     IRpcStubBuffer *This,
  9184.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9185.     PRPC_MESSAGE _pRpcMessage,
  9186.     DWORD *_pdwStubPhase);
  9187.  
  9188.  
  9189. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_RemoteAddColumn_Proxy( 
  9190.     ITableDefinition __RPC_FAR * This,
  9191.     /* [in] */ DBID __RPC_FAR *pTableID,
  9192.     /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  9193.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID,
  9194.     /* [in] */ ULONG cTotalProps,
  9195.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  9196.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9197.  
  9198.  
  9199. void __RPC_STUB ITableDefinition_RemoteAddColumn_Stub(
  9200.     IRpcStubBuffer *This,
  9201.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9202.     PRPC_MESSAGE _pRpcMessage,
  9203.     DWORD *_pdwStubPhase);
  9204.  
  9205.  
  9206. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_RemoteDropColumn_Proxy( 
  9207.     ITableDefinition __RPC_FAR * This,
  9208.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9209.     /* [unique][in] */ DBID __RPC_FAR *pColumnID,
  9210.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9211.  
  9212.  
  9213. void __RPC_STUB ITableDefinition_RemoteDropColumn_Stub(
  9214.     IRpcStubBuffer *This,
  9215.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9216.     PRPC_MESSAGE _pRpcMessage,
  9217.     DWORD *_pdwStubPhase);
  9218.  
  9219.  
  9220.  
  9221. #endif     /* __ITableDefinition_INTERFACE_DEFINED__ */
  9222.  
  9223.  
  9224. #ifndef __IOpenRowset_INTERFACE_DEFINED__
  9225. #define __IOpenRowset_INTERFACE_DEFINED__
  9226.  
  9227. /****************************************
  9228.  * Generated header for interface: IOpenRowset
  9229.  * at Wed Aug 26 14:08:54 1998
  9230.  * using MIDL 3.01.75
  9231.  ****************************************/
  9232. /* [unique][uuid][object] */ 
  9233.  
  9234.  
  9235.  
  9236. EXTERN_C const IID IID_IOpenRowset;
  9237.  
  9238. #if defined(__cplusplus) && !defined(CINTERFACE)
  9239.     
  9240.     interface DECLSPEC_UUID("0c733a69-2a1c-11ce-ade5-00aa0044773d")
  9241.     IOpenRowset : public IUnknown
  9242.     {
  9243.     public:
  9244.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenRowset( 
  9245.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9246.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9247.             /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  9248.             /* [in] */ REFIID riid,
  9249.             /* [in] */ ULONG cPropertySets,
  9250.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9251.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9252.         
  9253.     };
  9254.     
  9255. #else     /* C style interface */
  9256.  
  9257.     typedef struct IOpenRowsetVtbl
  9258.     {
  9259.         BEGIN_INTERFACE
  9260.         
  9261.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9262.             IOpenRowset __RPC_FAR * This,
  9263.             /* [in] */ REFIID riid,
  9264.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9265.         
  9266.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9267.             IOpenRowset __RPC_FAR * This);
  9268.         
  9269.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9270.             IOpenRowset __RPC_FAR * This);
  9271.         
  9272.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenRowset )( 
  9273.             IOpenRowset __RPC_FAR * This,
  9274.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9275.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9276.             /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  9277.             /* [in] */ REFIID riid,
  9278.             /* [in] */ ULONG cPropertySets,
  9279.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9280.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9281.         
  9282.         END_INTERFACE
  9283.     } IOpenRowsetVtbl;
  9284.  
  9285.     interface IOpenRowset
  9286.     {
  9287.         CONST_VTBL struct IOpenRowsetVtbl __RPC_FAR *lpVtbl;
  9288.     };
  9289.  
  9290.     
  9291.  
  9292. #ifdef COBJMACROS
  9293.  
  9294.  
  9295. #define IOpenRowset_QueryInterface(This,riid,ppvObject)    \
  9296.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9297.  
  9298. #define IOpenRowset_AddRef(This)    \
  9299.     (This)->lpVtbl -> AddRef(This)
  9300.  
  9301. #define IOpenRowset_Release(This)    \
  9302.     (This)->lpVtbl -> Release(This)
  9303.  
  9304.  
  9305. #define IOpenRowset_OpenRowset(This,pUnkOuter,pTableID,pIndexID,riid,cPropertySets,rgPropertySets,ppRowset)    \
  9306.     (This)->lpVtbl -> OpenRowset(This,pUnkOuter,pTableID,pIndexID,riid,cPropertySets,rgPropertySets,ppRowset)
  9307.  
  9308. #endif /* COBJMACROS */
  9309.  
  9310.  
  9311. #endif     /* C style interface */
  9312.  
  9313.  
  9314.  
  9315. /* [call_as] */ HRESULT STDMETHODCALLTYPE IOpenRowset_RemoteOpenRowset_Proxy( 
  9316.     IOpenRowset __RPC_FAR * This,
  9317.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9318.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  9319.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  9320.     /* [in] */ REFIID riid,
  9321.     /* [in] */ ULONG cPropertySets,
  9322.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  9323.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  9324.     /* [in] */ ULONG cTotalProps,
  9325.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  9326.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9327.  
  9328.  
  9329. void __RPC_STUB IOpenRowset_RemoteOpenRowset_Stub(
  9330.     IRpcStubBuffer *This,
  9331.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9332.     PRPC_MESSAGE _pRpcMessage,
  9333.     DWORD *_pdwStubPhase);
  9334.  
  9335.  
  9336.  
  9337. #endif     /* __IOpenRowset_INTERFACE_DEFINED__ */
  9338.  
  9339.  
  9340. #ifndef __IDBSchemaRowset_INTERFACE_DEFINED__
  9341. #define __IDBSchemaRowset_INTERFACE_DEFINED__
  9342.  
  9343. /****************************************
  9344.  * Generated header for interface: IDBSchemaRowset
  9345.  * at Wed Aug 26 14:08:54 1998
  9346.  * using MIDL 3.01.75
  9347.  ****************************************/
  9348. /* [unique][uuid][object] */ 
  9349.  
  9350.  
  9351. #define CRESTRICTIONS_DBSCHEMA_ASSERTIONS                      3
  9352. #define CRESTRICTIONS_DBSCHEMA_CATALOGS                        1
  9353. #define CRESTRICTIONS_DBSCHEMA_CHARACTER_SETS                  3
  9354. #define CRESTRICTIONS_DBSCHEMA_COLLATIONS                      3
  9355. #define CRESTRICTIONS_DBSCHEMA_COLUMNS                         4
  9356. #define CRESTRICTIONS_DBSCHEMA_CHECK_CONSTRAINTS               3
  9357. #define CRESTRICTIONS_DBSCHEMA_CONSTRAINT_COLUMN_USAGE         4
  9358. #define CRESTRICTIONS_DBSCHEMA_CONSTRAINT_TABLE_USAGE          3
  9359. #define CRESTRICTIONS_DBSCHEMA_KEY_COLUMN_USAGE                7
  9360. #define CRESTRICTIONS_DBSCHEMA_REFERENTIAL_CONSTRAINTS         3
  9361. #define CRESTRICTIONS_DBSCHEMA_TABLE_CONSTRAINTS               7
  9362. #define CRESTRICTIONS_DBSCHEMA_COLUMN_DOMAIN_USAGE             4
  9363. #define CRESTRICTIONS_DBSCHEMA_INDEXES                         5
  9364. #define CRESTRICTIONS_DBSCHEMA_OBJECT_ACTIONS                  1
  9365. #define CRESTRICTIONS_DBSCHEMA_OBJECTS                         1
  9366. #define CRESTRICTIONS_DBSCHEMA_COLUMN_PRIVILEGES               6
  9367. #define CRESTRICTIONS_DBSCHEMA_TABLE_PRIVILEGES                5
  9368. #define CRESTRICTIONS_DBSCHEMA_USAGE_PRIVILEGES                6
  9369. #define CRESTRICTIONS_DBSCHEMA_PROCEDURES                      4
  9370. #define CRESTRICTIONS_DBSCHEMA_SCHEMATA                        3
  9371. #define CRESTRICTIONS_DBSCHEMA_SQL_LANGUAGES                   0
  9372. #define CRESTRICTIONS_DBSCHEMA_STATISTICS                      3
  9373. #define CRESTRICTIONS_DBSCHEMA_TABLES                          4
  9374. #define CRESTRICTIONS_DBSCHEMA_TRANSLATIONS                    3
  9375. #define CRESTRICTIONS_DBSCHEMA_PROVIDER_TYPES                  2
  9376. #define CRESTRICTIONS_DBSCHEMA_VIEWS                           3
  9377. #define CRESTRICTIONS_DBSCHEMA_VIEW_COLUMN_USAGE               3
  9378. #define CRESTRICTIONS_DBSCHEMA_VIEW_TABLE_USAGE                3
  9379. #define CRESTRICTIONS_DBSCHEMA_PROCEDURE_PARAMETERS            4
  9380. #define CRESTRICTIONS_DBSCHEMA_FOREIGN_KEYS                    6
  9381. #define CRESTRICTIONS_DBSCHEMA_PRIMARY_KEYS                    3
  9382. #define CRESTRICTIONS_DBSCHEMA_PROCEDURE_COLUMNS               4
  9383. //@@@+ V2.0
  9384. #if( OLEDBVER >= 0x0200 )
  9385. #define CRESTRICTIONS_DBSCHEMA_TABLES_INFO                     4
  9386. #define CRESTRICTIONS_MDSCHEMA_CUBES                           3
  9387. #define CRESTRICTIONS_MDSCHEMA_DIMENSIONS                      5
  9388. #define CRESTRICTIONS_MDSCHEMA_HIERARCHIES                     6
  9389. #define CRESTRICTIONS_MDSCHEMA_LEVELS                          7
  9390. #define CRESTRICTIONS_MDSCHEMA_MEASURES                        5
  9391. #define CRESTRICTIONS_MDSCHEMA_PROPERTIES                      9
  9392. #define CRESTRICTIONS_MDSCHEMA_MEMBERS                         12
  9393. #endif // OLEDBVER >= 0x0200
  9394. //@@@- V2.0
  9395. //@@@+ V2.1
  9396. #if( OLEDBVER >= 0x0210 )
  9397. #define CRESTRICTIONS_DBSCHEMA_TRUSTEE                             4
  9398. #endif // OLEDBVER >= 0x0210
  9399. //@@@- V2.1
  9400.  
  9401. EXTERN_C const IID IID_IDBSchemaRowset;
  9402.  
  9403. #if defined(__cplusplus) && !defined(CINTERFACE)
  9404.     
  9405.     interface DECLSPEC_UUID("0c733a7b-2a1c-11ce-ade5-00aa0044773d")
  9406.     IDBSchemaRowset : public IUnknown
  9407.     {
  9408.     public:
  9409.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRowset( 
  9410.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9411.             /* [in] */ REFGUID rguidSchema,
  9412.             /* [in] */ ULONG cRestrictions,
  9413.             /* [size_is][in] */ const VARIANT __RPC_FAR rgRestrictions[  ],
  9414.             /* [in] */ REFIID riid,
  9415.             /* [in] */ ULONG cPropertySets,
  9416.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9417.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9418.         
  9419.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSchemas( 
  9420.             /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  9421.             /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  9422.             /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport) = 0;
  9423.         
  9424.     };
  9425.     
  9426. #else     /* C style interface */
  9427.  
  9428.     typedef struct IDBSchemaRowsetVtbl
  9429.     {
  9430.         BEGIN_INTERFACE
  9431.         
  9432.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9433.             IDBSchemaRowset __RPC_FAR * This,
  9434.             /* [in] */ REFIID riid,
  9435.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9436.         
  9437.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9438.             IDBSchemaRowset __RPC_FAR * This);
  9439.         
  9440.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9441.             IDBSchemaRowset __RPC_FAR * This);
  9442.         
  9443.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowset )( 
  9444.             IDBSchemaRowset __RPC_FAR * This,
  9445.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9446.             /* [in] */ REFGUID rguidSchema,
  9447.             /* [in] */ ULONG cRestrictions,
  9448.             /* [size_is][in] */ const VARIANT __RPC_FAR rgRestrictions[  ],
  9449.             /* [in] */ REFIID riid,
  9450.             /* [in] */ ULONG cPropertySets,
  9451.             /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9452.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9453.         
  9454.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSchemas )( 
  9455.             IDBSchemaRowset __RPC_FAR * This,
  9456.             /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  9457.             /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  9458.             /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport);
  9459.         
  9460.         END_INTERFACE
  9461.     } IDBSchemaRowsetVtbl;
  9462.  
  9463.     interface IDBSchemaRowset
  9464.     {
  9465.         CONST_VTBL struct IDBSchemaRowsetVtbl __RPC_FAR *lpVtbl;
  9466.     };
  9467.  
  9468.     
  9469.  
  9470. #ifdef COBJMACROS
  9471.  
  9472.  
  9473. #define IDBSchemaRowset_QueryInterface(This,riid,ppvObject)    \
  9474.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9475.  
  9476. #define IDBSchemaRowset_AddRef(This)    \
  9477.     (This)->lpVtbl -> AddRef(This)
  9478.  
  9479. #define IDBSchemaRowset_Release(This)    \
  9480.     (This)->lpVtbl -> Release(This)
  9481.  
  9482.  
  9483. #define IDBSchemaRowset_GetRowset(This,pUnkOuter,rguidSchema,cRestrictions,rgRestrictions,riid,cPropertySets,rgPropertySets,ppRowset)    \
  9484.     (This)->lpVtbl -> GetRowset(This,pUnkOuter,rguidSchema,cRestrictions,rgRestrictions,riid,cPropertySets,rgPropertySets,ppRowset)
  9485.  
  9486. #define IDBSchemaRowset_GetSchemas(This,pcSchemas,prgSchemas,prgRestrictionSupport)    \
  9487.     (This)->lpVtbl -> GetSchemas(This,pcSchemas,prgSchemas,prgRestrictionSupport)
  9488.  
  9489. #endif /* COBJMACROS */
  9490.  
  9491.  
  9492. #endif     /* C style interface */
  9493.  
  9494.  
  9495.  
  9496. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_RemoteGetRowset_Proxy( 
  9497.     IDBSchemaRowset __RPC_FAR * This,
  9498.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9499.     /* [in] */ REFGUID rguidSchema,
  9500.     /* [in] */ ULONG cRestrictions,
  9501.     /* [size_is][unique][in] */ const VARIANT __RPC_FAR *rgRestrictions,
  9502.     /* [in] */ REFIID riid,
  9503.     /* [in] */ ULONG cPropertySets,
  9504.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  9505.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  9506.     /* [in] */ ULONG cTotalProps,
  9507.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  9508.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9509.  
  9510.  
  9511. void __RPC_STUB IDBSchemaRowset_RemoteGetRowset_Stub(
  9512.     IRpcStubBuffer *This,
  9513.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9514.     PRPC_MESSAGE _pRpcMessage,
  9515.     DWORD *_pdwStubPhase);
  9516.  
  9517.  
  9518. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_RemoteGetSchemas_Proxy( 
  9519.     IDBSchemaRowset __RPC_FAR * This,
  9520.     /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  9521.     /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  9522.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport,
  9523.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  9524.  
  9525.  
  9526. void __RPC_STUB IDBSchemaRowset_RemoteGetSchemas_Stub(
  9527.     IRpcStubBuffer *This,
  9528.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9529.     PRPC_MESSAGE _pRpcMessage,
  9530.     DWORD *_pdwStubPhase);
  9531.  
  9532.  
  9533.  
  9534. #endif     /* __IDBSchemaRowset_INTERFACE_DEFINED__ */
  9535.  
  9536.  
  9537. /****************************************
  9538.  * Generated header for interface: __MIDL_itf_oledb_0199
  9539.  * at Wed Aug 26 14:08:54 1998
  9540.  * using MIDL 3.01.75
  9541.  ****************************************/
  9542. /* [local] */ 
  9543.  
  9544.  
  9545. //@@@+ V2.0
  9546. #if( OLEDBVER >= 0x0200 )
  9547.  
  9548.  
  9549. extern RPC_IF_HANDLE __MIDL_itf_oledb_0199_v0_0_c_ifspec;
  9550. extern RPC_IF_HANDLE __MIDL_itf_oledb_0199_v0_0_s_ifspec;
  9551.  
  9552. #ifndef __IMDDataset_INTERFACE_DEFINED__
  9553. #define __IMDDataset_INTERFACE_DEFINED__
  9554.  
  9555. /****************************************
  9556.  * Generated header for interface: IMDDataset
  9557.  * at Wed Aug 26 14:08:54 1998
  9558.  * using MIDL 3.01.75
  9559.  ****************************************/
  9560. /* [unique][uuid][object][local] */ 
  9561.  
  9562.  
  9563.  
  9564. EXTERN_C const IID IID_IMDDataset;
  9565.  
  9566. #if defined(__cplusplus) && !defined(CINTERFACE)
  9567.     
  9568.     interface DECLSPEC_UUID("a07cccd1-8148-11d0-87bb-00c04fc33942")
  9569.     IMDDataset : public IUnknown
  9570.     {
  9571.     public:
  9572.         virtual HRESULT STDMETHODCALLTYPE FreeAxisInfo( 
  9573.             /* [in] */ ULONG cAxes,
  9574.             /* [size_is][in] */ MDAXISINFO __RPC_FAR *rgAxisInfo) = 0;
  9575.         
  9576.         virtual HRESULT STDMETHODCALLTYPE GetAxisInfo( 
  9577.             /* [out][in] */ ULONG __RPC_FAR *pcAxes,
  9578.             /* [size_is][size_is][out] */ MDAXISINFO __RPC_FAR *__RPC_FAR *prgAxisInfo) = 0;
  9579.         
  9580.         virtual HRESULT STDMETHODCALLTYPE GetAxisRowset( 
  9581.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9582.             /* [in] */ ULONG iAxis,
  9583.             /* [in] */ REFIID riid,
  9584.             /* [in] */ ULONG cPropertySets,
  9585.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9586.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9587.         
  9588.         virtual HRESULT STDMETHODCALLTYPE GetCellData( 
  9589.             /* [in] */ HACCESSOR hAccessor,
  9590.             /* [in] */ ULONG ulStartCell,
  9591.             /* [in] */ ULONG ulEndCell,
  9592.             /* [out] */ void __RPC_FAR *pData) = 0;
  9593.         
  9594.         virtual HRESULT STDMETHODCALLTYPE GetSpecification( 
  9595.             /* [in] */ REFIID riid,
  9596.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification) = 0;
  9597.         
  9598.     };
  9599.     
  9600. #else     /* C style interface */
  9601.  
  9602.     typedef struct IMDDatasetVtbl
  9603.     {
  9604.         BEGIN_INTERFACE
  9605.         
  9606.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9607.             IMDDataset __RPC_FAR * This,
  9608.             /* [in] */ REFIID riid,
  9609.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9610.         
  9611.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9612.             IMDDataset __RPC_FAR * This);
  9613.         
  9614.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9615.             IMDDataset __RPC_FAR * This);
  9616.         
  9617.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeAxisInfo )( 
  9618.             IMDDataset __RPC_FAR * This,
  9619.             /* [in] */ ULONG cAxes,
  9620.             /* [size_is][in] */ MDAXISINFO __RPC_FAR *rgAxisInfo);
  9621.         
  9622.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAxisInfo )( 
  9623.             IMDDataset __RPC_FAR * This,
  9624.             /* [out][in] */ ULONG __RPC_FAR *pcAxes,
  9625.             /* [size_is][size_is][out] */ MDAXISINFO __RPC_FAR *__RPC_FAR *prgAxisInfo);
  9626.         
  9627.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAxisRowset )( 
  9628.             IMDDataset __RPC_FAR * This,
  9629.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9630.             /* [in] */ ULONG iAxis,
  9631.             /* [in] */ REFIID riid,
  9632.             /* [in] */ ULONG cPropertySets,
  9633.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9634.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9635.         
  9636.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCellData )( 
  9637.             IMDDataset __RPC_FAR * This,
  9638.             /* [in] */ HACCESSOR hAccessor,
  9639.             /* [in] */ ULONG ulStartCell,
  9640.             /* [in] */ ULONG ulEndCell,
  9641.             /* [out] */ void __RPC_FAR *pData);
  9642.         
  9643.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecification )( 
  9644.             IMDDataset __RPC_FAR * This,
  9645.             /* [in] */ REFIID riid,
  9646.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification);
  9647.         
  9648.         END_INTERFACE
  9649.     } IMDDatasetVtbl;
  9650.  
  9651.     interface IMDDataset
  9652.     {
  9653.         CONST_VTBL struct IMDDatasetVtbl __RPC_FAR *lpVtbl;
  9654.     };
  9655.  
  9656.     
  9657.  
  9658. #ifdef COBJMACROS
  9659.  
  9660.  
  9661. #define IMDDataset_QueryInterface(This,riid,ppvObject)    \
  9662.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9663.  
  9664. #define IMDDataset_AddRef(This)    \
  9665.     (This)->lpVtbl -> AddRef(This)
  9666.  
  9667. #define IMDDataset_Release(This)    \
  9668.     (This)->lpVtbl -> Release(This)
  9669.  
  9670.  
  9671. #define IMDDataset_FreeAxisInfo(This,cAxes,rgAxisInfo)    \
  9672.     (This)->lpVtbl -> FreeAxisInfo(This,cAxes,rgAxisInfo)
  9673.  
  9674. #define IMDDataset_GetAxisInfo(This,pcAxes,prgAxisInfo)    \
  9675.     (This)->lpVtbl -> GetAxisInfo(This,pcAxes,prgAxisInfo)
  9676.  
  9677. #define IMDDataset_GetAxisRowset(This,pUnkOuter,iAxis,riid,cPropertySets,rgPropertySets,ppRowset)    \
  9678.     (This)->lpVtbl -> GetAxisRowset(This,pUnkOuter,iAxis,riid,cPropertySets,rgPropertySets,ppRowset)
  9679.  
  9680. #define IMDDataset_GetCellData(This,hAccessor,ulStartCell,ulEndCell,pData)    \
  9681.     (This)->lpVtbl -> GetCellData(This,hAccessor,ulStartCell,ulEndCell,pData)
  9682.  
  9683. #define IMDDataset_GetSpecification(This,riid,ppSpecification)    \
  9684.     (This)->lpVtbl -> GetSpecification(This,riid,ppSpecification)
  9685.  
  9686. #endif /* COBJMACROS */
  9687.  
  9688.  
  9689. #endif     /* C style interface */
  9690.  
  9691.  
  9692.  
  9693. HRESULT STDMETHODCALLTYPE IMDDataset_FreeAxisInfo_Proxy( 
  9694.     IMDDataset __RPC_FAR * This,
  9695.     /* [in] */ ULONG cAxes,
  9696.     /* [size_is][in] */ MDAXISINFO __RPC_FAR *rgAxisInfo);
  9697.  
  9698.  
  9699. void __RPC_STUB IMDDataset_FreeAxisInfo_Stub(
  9700.     IRpcStubBuffer *This,
  9701.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9702.     PRPC_MESSAGE _pRpcMessage,
  9703.     DWORD *_pdwStubPhase);
  9704.  
  9705.  
  9706. HRESULT STDMETHODCALLTYPE IMDDataset_GetAxisInfo_Proxy( 
  9707.     IMDDataset __RPC_FAR * This,
  9708.     /* [out][in] */ ULONG __RPC_FAR *pcAxes,
  9709.     /* [size_is][size_is][out] */ MDAXISINFO __RPC_FAR *__RPC_FAR *prgAxisInfo);
  9710.  
  9711.  
  9712. void __RPC_STUB IMDDataset_GetAxisInfo_Stub(
  9713.     IRpcStubBuffer *This,
  9714.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9715.     PRPC_MESSAGE _pRpcMessage,
  9716.     DWORD *_pdwStubPhase);
  9717.  
  9718.  
  9719. HRESULT STDMETHODCALLTYPE IMDDataset_GetAxisRowset_Proxy( 
  9720.     IMDDataset __RPC_FAR * This,
  9721.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9722.     /* [in] */ ULONG iAxis,
  9723.     /* [in] */ REFIID riid,
  9724.     /* [in] */ ULONG cPropertySets,
  9725.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9726.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9727.  
  9728.  
  9729. void __RPC_STUB IMDDataset_GetAxisRowset_Stub(
  9730.     IRpcStubBuffer *This,
  9731.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9732.     PRPC_MESSAGE _pRpcMessage,
  9733.     DWORD *_pdwStubPhase);
  9734.  
  9735.  
  9736. HRESULT STDMETHODCALLTYPE IMDDataset_GetCellData_Proxy( 
  9737.     IMDDataset __RPC_FAR * This,
  9738.     /* [in] */ HACCESSOR hAccessor,
  9739.     /* [in] */ ULONG ulStartCell,
  9740.     /* [in] */ ULONG ulEndCell,
  9741.     /* [out] */ void __RPC_FAR *pData);
  9742.  
  9743.  
  9744. void __RPC_STUB IMDDataset_GetCellData_Stub(
  9745.     IRpcStubBuffer *This,
  9746.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9747.     PRPC_MESSAGE _pRpcMessage,
  9748.     DWORD *_pdwStubPhase);
  9749.  
  9750.  
  9751. HRESULT STDMETHODCALLTYPE IMDDataset_GetSpecification_Proxy( 
  9752.     IMDDataset __RPC_FAR * This,
  9753.     /* [in] */ REFIID riid,
  9754.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification);
  9755.  
  9756.  
  9757. void __RPC_STUB IMDDataset_GetSpecification_Stub(
  9758.     IRpcStubBuffer *This,
  9759.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9760.     PRPC_MESSAGE _pRpcMessage,
  9761.     DWORD *_pdwStubPhase);
  9762.  
  9763.  
  9764.  
  9765. #endif     /* __IMDDataset_INTERFACE_DEFINED__ */
  9766.  
  9767.  
  9768. #ifndef __IMDFind_INTERFACE_DEFINED__
  9769. #define __IMDFind_INTERFACE_DEFINED__
  9770.  
  9771. /****************************************
  9772.  * Generated header for interface: IMDFind
  9773.  * at Wed Aug 26 14:08:54 1998
  9774.  * using MIDL 3.01.75
  9775.  ****************************************/
  9776. /* [unique][uuid][object][local] */ 
  9777.  
  9778.  
  9779.  
  9780. EXTERN_C const IID IID_IMDFind;
  9781.  
  9782. #if defined(__cplusplus) && !defined(CINTERFACE)
  9783.     
  9784.     interface DECLSPEC_UUID("a07cccd2-8148-11d0-87bb-00c04fc33942")
  9785.     IMDFind : public IUnknown
  9786.     {
  9787.     public:
  9788.         virtual HRESULT STDMETHODCALLTYPE FindCell( 
  9789.             /* [in] */ ULONG ulStartingOrdinal,
  9790.             /* [in] */ ULONG cMembers,
  9791.             /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9792.             /* [out] */ ULONG __RPC_FAR *pulCellOrdinal) = 0;
  9793.         
  9794.         virtual HRESULT STDMETHODCALLTYPE FindTuple( 
  9795.             /* [in] */ ULONG ulAxisIdentifier,
  9796.             /* [in] */ ULONG ulStartingOrdinal,
  9797.             /* [in] */ ULONG cMembers,
  9798.             /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9799.             /* [out] */ ULONG __RPC_FAR *pulTupleOrdinal) = 0;
  9800.         
  9801.     };
  9802.     
  9803. #else     /* C style interface */
  9804.  
  9805.     typedef struct IMDFindVtbl
  9806.     {
  9807.         BEGIN_INTERFACE
  9808.         
  9809.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9810.             IMDFind __RPC_FAR * This,
  9811.             /* [in] */ REFIID riid,
  9812.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9813.         
  9814.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9815.             IMDFind __RPC_FAR * This);
  9816.         
  9817.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9818.             IMDFind __RPC_FAR * This);
  9819.         
  9820.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindCell )( 
  9821.             IMDFind __RPC_FAR * This,
  9822.             /* [in] */ ULONG ulStartingOrdinal,
  9823.             /* [in] */ ULONG cMembers,
  9824.             /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9825.             /* [out] */ ULONG __RPC_FAR *pulCellOrdinal);
  9826.         
  9827.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindTuple )( 
  9828.             IMDFind __RPC_FAR * This,
  9829.             /* [in] */ ULONG ulAxisIdentifier,
  9830.             /* [in] */ ULONG ulStartingOrdinal,
  9831.             /* [in] */ ULONG cMembers,
  9832.             /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9833.             /* [out] */ ULONG __RPC_FAR *pulTupleOrdinal);
  9834.         
  9835.         END_INTERFACE
  9836.     } IMDFindVtbl;
  9837.  
  9838.     interface IMDFind
  9839.     {
  9840.         CONST_VTBL struct IMDFindVtbl __RPC_FAR *lpVtbl;
  9841.     };
  9842.  
  9843.     
  9844.  
  9845. #ifdef COBJMACROS
  9846.  
  9847.  
  9848. #define IMDFind_QueryInterface(This,riid,ppvObject)    \
  9849.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9850.  
  9851. #define IMDFind_AddRef(This)    \
  9852.     (This)->lpVtbl -> AddRef(This)
  9853.  
  9854. #define IMDFind_Release(This)    \
  9855.     (This)->lpVtbl -> Release(This)
  9856.  
  9857.  
  9858. #define IMDFind_FindCell(This,ulStartingOrdinal,cMembers,rgpwszMember,pulCellOrdinal)    \
  9859.     (This)->lpVtbl -> FindCell(This,ulStartingOrdinal,cMembers,rgpwszMember,pulCellOrdinal)
  9860.  
  9861. #define IMDFind_FindTuple(This,ulAxisIdentifier,ulStartingOrdinal,cMembers,rgpwszMember,pulTupleOrdinal)    \
  9862.     (This)->lpVtbl -> FindTuple(This,ulAxisIdentifier,ulStartingOrdinal,cMembers,rgpwszMember,pulTupleOrdinal)
  9863.  
  9864. #endif /* COBJMACROS */
  9865.  
  9866.  
  9867. #endif     /* C style interface */
  9868.  
  9869.  
  9870.  
  9871. HRESULT STDMETHODCALLTYPE IMDFind_FindCell_Proxy( 
  9872.     IMDFind __RPC_FAR * This,
  9873.     /* [in] */ ULONG ulStartingOrdinal,
  9874.     /* [in] */ ULONG cMembers,
  9875.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9876.     /* [out] */ ULONG __RPC_FAR *pulCellOrdinal);
  9877.  
  9878.  
  9879. void __RPC_STUB IMDFind_FindCell_Stub(
  9880.     IRpcStubBuffer *This,
  9881.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9882.     PRPC_MESSAGE _pRpcMessage,
  9883.     DWORD *_pdwStubPhase);
  9884.  
  9885.  
  9886. HRESULT STDMETHODCALLTYPE IMDFind_FindTuple_Proxy( 
  9887.     IMDFind __RPC_FAR * This,
  9888.     /* [in] */ ULONG ulAxisIdentifier,
  9889.     /* [in] */ ULONG ulStartingOrdinal,
  9890.     /* [in] */ ULONG cMembers,
  9891.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszMember,
  9892.     /* [out] */ ULONG __RPC_FAR *pulTupleOrdinal);
  9893.  
  9894.  
  9895. void __RPC_STUB IMDFind_FindTuple_Stub(
  9896.     IRpcStubBuffer *This,
  9897.     IRpcChannelBuffer *_pRpcChannelBuffer,
  9898.     PRPC_MESSAGE _pRpcMessage,
  9899.     DWORD *_pdwStubPhase);
  9900.  
  9901.  
  9902.  
  9903. #endif     /* __IMDFind_INTERFACE_DEFINED__ */
  9904.  
  9905.  
  9906. #ifndef __IMDRangeRowset_INTERFACE_DEFINED__
  9907. #define __IMDRangeRowset_INTERFACE_DEFINED__
  9908.  
  9909. /****************************************
  9910.  * Generated header for interface: IMDRangeRowset
  9911.  * at Wed Aug 26 14:08:54 1998
  9912.  * using MIDL 3.01.75
  9913.  ****************************************/
  9914. /* [unique][uuid][object][local] */ 
  9915.  
  9916.  
  9917.  
  9918. EXTERN_C const IID IID_IMDRangeRowset;
  9919.  
  9920. #if defined(__cplusplus) && !defined(CINTERFACE)
  9921.     
  9922.     interface DECLSPEC_UUID("0c733aa0-2a1c-11ce-ade5-00aa0044773d")
  9923.     IMDRangeRowset : public IUnknown
  9924.     {
  9925.     public:
  9926.         virtual HRESULT STDMETHODCALLTYPE GetRangeRowset( 
  9927.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9928.             /* [in] */ ULONG ulStartCell,
  9929.             /* [in] */ ULONG ulEndCell,
  9930.             /* [in] */ REFIID riid,
  9931.             /* [in] */ ULONG cPropertySets,
  9932.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9933.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  9934.         
  9935.     };
  9936.     
  9937. #else     /* C style interface */
  9938.  
  9939.     typedef struct IMDRangeRowsetVtbl
  9940.     {
  9941.         BEGIN_INTERFACE
  9942.         
  9943.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  9944.             IMDRangeRowset __RPC_FAR * This,
  9945.             /* [in] */ REFIID riid,
  9946.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  9947.         
  9948.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  9949.             IMDRangeRowset __RPC_FAR * This);
  9950.         
  9951.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  9952.             IMDRangeRowset __RPC_FAR * This);
  9953.         
  9954.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRangeRowset )( 
  9955.             IMDRangeRowset __RPC_FAR * This,
  9956.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  9957.             /* [in] */ ULONG ulStartCell,
  9958.             /* [in] */ ULONG ulEndCell,
  9959.             /* [in] */ REFIID riid,
  9960.             /* [in] */ ULONG cPropertySets,
  9961.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  9962.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  9963.         
  9964.         END_INTERFACE
  9965.     } IMDRangeRowsetVtbl;
  9966.  
  9967.     interface IMDRangeRowset
  9968.     {
  9969.         CONST_VTBL struct IMDRangeRowsetVtbl __RPC_FAR *lpVtbl;
  9970.     };
  9971.  
  9972.     
  9973.  
  9974. #ifdef COBJMACROS
  9975.  
  9976.  
  9977. #define IMDRangeRowset_QueryInterface(This,riid,ppvObject)    \
  9978.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9979.  
  9980. #define IMDRangeRowset_AddRef(This)    \
  9981.     (This)->lpVtbl -> AddRef(This)
  9982.  
  9983. #define IMDRangeRowset_Release(This)    \
  9984.     (This)->lpVtbl -> Release(This)
  9985.  
  9986.  
  9987. #define IMDRangeRowset_GetRangeRowset(This,pUnkOuter,ulStartCell,ulEndCell,riid,cPropertySets,rgPropertySets,ppRowset)    \
  9988.     (This)->lpVtbl -> GetRangeRowset(This,pUnkOuter,ulStartCell,ulEndCell,riid,cPropertySets,rgPropertySets,ppRowset)
  9989.  
  9990. #endif /* COBJMACROS */
  9991.  
  9992.  
  9993. #endif     /* C style interface */
  9994.  
  9995.  
  9996.  
  9997. HRESULT STDMETHODCALLTYPE IMDRangeRowset_GetRangeRowset_Proxy( 
  9998.     IMDRangeRowset __RPC_FAR * This,
  9999.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  10000.     /* [in] */ ULONG ulStartCell,
  10001.     /* [in] */ ULONG ulEndCell,
  10002.     /* [in] */ REFIID riid,
  10003.     /* [in] */ ULONG cPropertySets,
  10004.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  10005.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  10006.  
  10007.  
  10008. void __RPC_STUB IMDRangeRowset_GetRangeRowset_Stub(
  10009.     IRpcStubBuffer *This,
  10010.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10011.     PRPC_MESSAGE _pRpcMessage,
  10012.     DWORD *_pdwStubPhase);
  10013.  
  10014.  
  10015.  
  10016. #endif     /* __IMDRangeRowset_INTERFACE_DEFINED__ */
  10017.  
  10018.  
  10019. #ifndef __IAlterTable_INTERFACE_DEFINED__
  10020. #define __IAlterTable_INTERFACE_DEFINED__
  10021.  
  10022. /****************************************
  10023.  * Generated header for interface: IAlterTable
  10024.  * at Wed Aug 26 14:08:54 1998
  10025.  * using MIDL 3.01.75
  10026.  ****************************************/
  10027. /* [unique][uuid][object][local] */ 
  10028.  
  10029.  
  10030.  
  10031. EXTERN_C const IID IID_IAlterTable;
  10032.  
  10033. #if defined(__cplusplus) && !defined(CINTERFACE)
  10034.     
  10035.     interface DECLSPEC_UUID("0c733aa5-2a1c-11ce-ade5-00aa0044773d")
  10036.     IAlterTable : public IUnknown
  10037.     {
  10038.     public:
  10039.         virtual HRESULT STDMETHODCALLTYPE AlterColumn( 
  10040.             /* [in] */ DBID __RPC_FAR *pTableId,
  10041.             /* [in] */ DBID __RPC_FAR *pColumnId,
  10042.             /* [in] */ DBCOLUMNDESCFLAGS ColumnDescFlags,
  10043.             /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc) = 0;
  10044.         
  10045.         virtual HRESULT STDMETHODCALLTYPE AlterTable( 
  10046.             /* [in] */ DBID __RPC_FAR *pTableId,
  10047.             /* [in] */ DBID __RPC_FAR *pNewTableId,
  10048.             /* [in] */ ULONG cPropertySets,
  10049.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  10050.         
  10051.     };
  10052.     
  10053. #else     /* C style interface */
  10054.  
  10055.     typedef struct IAlterTableVtbl
  10056.     {
  10057.         BEGIN_INTERFACE
  10058.         
  10059.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10060.             IAlterTable __RPC_FAR * This,
  10061.             /* [in] */ REFIID riid,
  10062.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10063.         
  10064.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10065.             IAlterTable __RPC_FAR * This);
  10066.         
  10067.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10068.             IAlterTable __RPC_FAR * This);
  10069.         
  10070.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AlterColumn )( 
  10071.             IAlterTable __RPC_FAR * This,
  10072.             /* [in] */ DBID __RPC_FAR *pTableId,
  10073.             /* [in] */ DBID __RPC_FAR *pColumnId,
  10074.             /* [in] */ DBCOLUMNDESCFLAGS ColumnDescFlags,
  10075.             /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc);
  10076.         
  10077.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AlterTable )( 
  10078.             IAlterTable __RPC_FAR * This,
  10079.             /* [in] */ DBID __RPC_FAR *pTableId,
  10080.             /* [in] */ DBID __RPC_FAR *pNewTableId,
  10081.             /* [in] */ ULONG cPropertySets,
  10082.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  10083.         
  10084.         END_INTERFACE
  10085.     } IAlterTableVtbl;
  10086.  
  10087.     interface IAlterTable
  10088.     {
  10089.         CONST_VTBL struct IAlterTableVtbl __RPC_FAR *lpVtbl;
  10090.     };
  10091.  
  10092.     
  10093.  
  10094. #ifdef COBJMACROS
  10095.  
  10096.  
  10097. #define IAlterTable_QueryInterface(This,riid,ppvObject)    \
  10098.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10099.  
  10100. #define IAlterTable_AddRef(This)    \
  10101.     (This)->lpVtbl -> AddRef(This)
  10102.  
  10103. #define IAlterTable_Release(This)    \
  10104.     (This)->lpVtbl -> Release(This)
  10105.  
  10106.  
  10107. #define IAlterTable_AlterColumn(This,pTableId,pColumnId,ColumnDescFlags,pColumnDesc)    \
  10108.     (This)->lpVtbl -> AlterColumn(This,pTableId,pColumnId,ColumnDescFlags,pColumnDesc)
  10109.  
  10110. #define IAlterTable_AlterTable(This,pTableId,pNewTableId,cPropertySets,rgPropertySets)    \
  10111.     (This)->lpVtbl -> AlterTable(This,pTableId,pNewTableId,cPropertySets,rgPropertySets)
  10112.  
  10113. #endif /* COBJMACROS */
  10114.  
  10115.  
  10116. #endif     /* C style interface */
  10117.  
  10118.  
  10119.  
  10120. HRESULT STDMETHODCALLTYPE IAlterTable_AlterColumn_Proxy( 
  10121.     IAlterTable __RPC_FAR * This,
  10122.     /* [in] */ DBID __RPC_FAR *pTableId,
  10123.     /* [in] */ DBID __RPC_FAR *pColumnId,
  10124.     /* [in] */ DBCOLUMNDESCFLAGS ColumnDescFlags,
  10125.     /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc);
  10126.  
  10127.  
  10128. void __RPC_STUB IAlterTable_AlterColumn_Stub(
  10129.     IRpcStubBuffer *This,
  10130.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10131.     PRPC_MESSAGE _pRpcMessage,
  10132.     DWORD *_pdwStubPhase);
  10133.  
  10134.  
  10135. HRESULT STDMETHODCALLTYPE IAlterTable_AlterTable_Proxy( 
  10136.     IAlterTable __RPC_FAR * This,
  10137.     /* [in] */ DBID __RPC_FAR *pTableId,
  10138.     /* [in] */ DBID __RPC_FAR *pNewTableId,
  10139.     /* [in] */ ULONG cPropertySets,
  10140.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  10141.  
  10142.  
  10143. void __RPC_STUB IAlterTable_AlterTable_Stub(
  10144.     IRpcStubBuffer *This,
  10145.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10146.     PRPC_MESSAGE _pRpcMessage,
  10147.     DWORD *_pdwStubPhase);
  10148.  
  10149.  
  10150.  
  10151. #endif     /* __IAlterTable_INTERFACE_DEFINED__ */
  10152.  
  10153.  
  10154. #ifndef __IAlterIndex_INTERFACE_DEFINED__
  10155. #define __IAlterIndex_INTERFACE_DEFINED__
  10156.  
  10157. /****************************************
  10158.  * Generated header for interface: IAlterIndex
  10159.  * at Wed Aug 26 14:08:54 1998
  10160.  * using MIDL 3.01.75
  10161.  ****************************************/
  10162. /* [unique][uuid][object][local] */ 
  10163.  
  10164.  
  10165.  
  10166. EXTERN_C const IID IID_IAlterIndex;
  10167.  
  10168. #if defined(__cplusplus) && !defined(CINTERFACE)
  10169.     
  10170.     interface DECLSPEC_UUID("0c733aa6-2a1c-11ce-ade5-00aa0044773d")
  10171.     IAlterIndex : public IUnknown
  10172.     {
  10173.     public:
  10174.         virtual HRESULT STDMETHODCALLTYPE AlterIndex( 
  10175.             /* [in] */ DBID __RPC_FAR *pTableId,
  10176.             /* [in] */ DBID __RPC_FAR *pIndexId,
  10177.             /* [in] */ DBID __RPC_FAR *pNewIndexId,
  10178.             /* [in] */ ULONG cPropertySets,
  10179.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySet[  ]) = 0;
  10180.         
  10181.     };
  10182.     
  10183. #else     /* C style interface */
  10184.  
  10185.     typedef struct IAlterIndexVtbl
  10186.     {
  10187.         BEGIN_INTERFACE
  10188.         
  10189.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10190.             IAlterIndex __RPC_FAR * This,
  10191.             /* [in] */ REFIID riid,
  10192.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10193.         
  10194.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10195.             IAlterIndex __RPC_FAR * This);
  10196.         
  10197.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10198.             IAlterIndex __RPC_FAR * This);
  10199.         
  10200.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AlterIndex )( 
  10201.             IAlterIndex __RPC_FAR * This,
  10202.             /* [in] */ DBID __RPC_FAR *pTableId,
  10203.             /* [in] */ DBID __RPC_FAR *pIndexId,
  10204.             /* [in] */ DBID __RPC_FAR *pNewIndexId,
  10205.             /* [in] */ ULONG cPropertySets,
  10206.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySet[  ]);
  10207.         
  10208.         END_INTERFACE
  10209.     } IAlterIndexVtbl;
  10210.  
  10211.     interface IAlterIndex
  10212.     {
  10213.         CONST_VTBL struct IAlterIndexVtbl __RPC_FAR *lpVtbl;
  10214.     };
  10215.  
  10216.     
  10217.  
  10218. #ifdef COBJMACROS
  10219.  
  10220.  
  10221. #define IAlterIndex_QueryInterface(This,riid,ppvObject)    \
  10222.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10223.  
  10224. #define IAlterIndex_AddRef(This)    \
  10225.     (This)->lpVtbl -> AddRef(This)
  10226.  
  10227. #define IAlterIndex_Release(This)    \
  10228.     (This)->lpVtbl -> Release(This)
  10229.  
  10230.  
  10231. #define IAlterIndex_AlterIndex(This,pTableId,pIndexId,pNewIndexId,cPropertySets,rgPropertySet)    \
  10232.     (This)->lpVtbl -> AlterIndex(This,pTableId,pIndexId,pNewIndexId,cPropertySets,rgPropertySet)
  10233.  
  10234. #endif /* COBJMACROS */
  10235.  
  10236.  
  10237. #endif     /* C style interface */
  10238.  
  10239.  
  10240.  
  10241. HRESULT STDMETHODCALLTYPE IAlterIndex_AlterIndex_Proxy( 
  10242.     IAlterIndex __RPC_FAR * This,
  10243.     /* [in] */ DBID __RPC_FAR *pTableId,
  10244.     /* [in] */ DBID __RPC_FAR *pIndexId,
  10245.     /* [in] */ DBID __RPC_FAR *pNewIndexId,
  10246.     /* [in] */ ULONG cPropertySets,
  10247.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySet[  ]);
  10248.  
  10249.  
  10250. void __RPC_STUB IAlterIndex_AlterIndex_Stub(
  10251.     IRpcStubBuffer *This,
  10252.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10253.     PRPC_MESSAGE _pRpcMessage,
  10254.     DWORD *_pdwStubPhase);
  10255.  
  10256.  
  10257.  
  10258. #endif     /* __IAlterIndex_INTERFACE_DEFINED__ */
  10259.  
  10260.  
  10261. #ifndef __IRowsetChapterMember_INTERFACE_DEFINED__
  10262. #define __IRowsetChapterMember_INTERFACE_DEFINED__
  10263.  
  10264. /****************************************
  10265.  * Generated header for interface: IRowsetChapterMember
  10266.  * at Wed Aug 26 14:08:54 1998
  10267.  * using MIDL 3.01.75
  10268.  ****************************************/
  10269. /* [unique][uuid][object][local] */ 
  10270.  
  10271.  
  10272.  
  10273. EXTERN_C const IID IID_IRowsetChapterMember;
  10274.  
  10275. #if defined(__cplusplus) && !defined(CINTERFACE)
  10276.     
  10277.     interface DECLSPEC_UUID("0c733aa8-2a1c-11ce-ade5-00aa0044773d")
  10278.     IRowsetChapterMember : public IUnknown
  10279.     {
  10280.     public:
  10281.         virtual HRESULT STDMETHODCALLTYPE IsRowInChapter( 
  10282.             /* [in] */ HCHAPTER hChapter,
  10283.             /* [in] */ HROW hRow) = 0;
  10284.         
  10285.     };
  10286.     
  10287. #else     /* C style interface */
  10288.  
  10289.     typedef struct IRowsetChapterMemberVtbl
  10290.     {
  10291.         BEGIN_INTERFACE
  10292.         
  10293.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10294.             IRowsetChapterMember __RPC_FAR * This,
  10295.             /* [in] */ REFIID riid,
  10296.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10297.         
  10298.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10299.             IRowsetChapterMember __RPC_FAR * This);
  10300.         
  10301.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10302.             IRowsetChapterMember __RPC_FAR * This);
  10303.         
  10304.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsRowInChapter )( 
  10305.             IRowsetChapterMember __RPC_FAR * This,
  10306.             /* [in] */ HCHAPTER hChapter,
  10307.             /* [in] */ HROW hRow);
  10308.         
  10309.         END_INTERFACE
  10310.     } IRowsetChapterMemberVtbl;
  10311.  
  10312.     interface IRowsetChapterMember
  10313.     {
  10314.         CONST_VTBL struct IRowsetChapterMemberVtbl __RPC_FAR *lpVtbl;
  10315.     };
  10316.  
  10317.     
  10318.  
  10319. #ifdef COBJMACROS
  10320.  
  10321.  
  10322. #define IRowsetChapterMember_QueryInterface(This,riid,ppvObject)    \
  10323.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10324.  
  10325. #define IRowsetChapterMember_AddRef(This)    \
  10326.     (This)->lpVtbl -> AddRef(This)
  10327.  
  10328. #define IRowsetChapterMember_Release(This)    \
  10329.     (This)->lpVtbl -> Release(This)
  10330.  
  10331.  
  10332. #define IRowsetChapterMember_IsRowInChapter(This,hChapter,hRow)    \
  10333.     (This)->lpVtbl -> IsRowInChapter(This,hChapter,hRow)
  10334.  
  10335. #endif /* COBJMACROS */
  10336.  
  10337.  
  10338. #endif     /* C style interface */
  10339.  
  10340.  
  10341.  
  10342. HRESULT STDMETHODCALLTYPE IRowsetChapterMember_IsRowInChapter_Proxy( 
  10343.     IRowsetChapterMember __RPC_FAR * This,
  10344.     /* [in] */ HCHAPTER hChapter,
  10345.     /* [in] */ HROW hRow);
  10346.  
  10347.  
  10348. void __RPC_STUB IRowsetChapterMember_IsRowInChapter_Stub(
  10349.     IRpcStubBuffer *This,
  10350.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10351.     PRPC_MESSAGE _pRpcMessage,
  10352.     DWORD *_pdwStubPhase);
  10353.  
  10354.  
  10355.  
  10356. #endif     /* __IRowsetChapterMember_INTERFACE_DEFINED__ */
  10357.  
  10358.  
  10359. #ifndef __ICommandPersist_INTERFACE_DEFINED__
  10360. #define __ICommandPersist_INTERFACE_DEFINED__
  10361.  
  10362. /****************************************
  10363.  * Generated header for interface: ICommandPersist
  10364.  * at Wed Aug 26 14:08:54 1998
  10365.  * using MIDL 3.01.75
  10366.  ****************************************/
  10367. /* [unique][uuid][object][local] */ 
  10368.  
  10369.  
  10370.  
  10371. EXTERN_C const IID IID_ICommandPersist;
  10372.  
  10373. #if defined(__cplusplus) && !defined(CINTERFACE)
  10374.     
  10375.     interface DECLSPEC_UUID("0c733aa7-2a1c-11ce-ade5-00aa0044773d")
  10376.     ICommandPersist : public IUnknown
  10377.     {
  10378.     public:
  10379.         virtual HRESULT STDMETHODCALLTYPE DeleteCommand( 
  10380.             /* [in] */ DBID __RPC_FAR *pCommandID) = 0;
  10381.         
  10382.         virtual HRESULT STDMETHODCALLTYPE GetCurrentCommand( 
  10383.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppCommandID) = 0;
  10384.         
  10385.         virtual HRESULT STDMETHODCALLTYPE LoadCommand( 
  10386.             /* [in] */ DBID __RPC_FAR *pCommandID,
  10387.             /* [in] */ DWORD dwFlags) = 0;
  10388.         
  10389.         virtual HRESULT STDMETHODCALLTYPE SaveCommand( 
  10390.             /* [in] */ DBID __RPC_FAR *pCommandID,
  10391.             /* [in] */ DWORD dwFlags) = 0;
  10392.         
  10393.     };
  10394.     
  10395. #else     /* C style interface */
  10396.  
  10397.     typedef struct ICommandPersistVtbl
  10398.     {
  10399.         BEGIN_INTERFACE
  10400.         
  10401.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10402.             ICommandPersist __RPC_FAR * This,
  10403.             /* [in] */ REFIID riid,
  10404.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10405.         
  10406.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10407.             ICommandPersist __RPC_FAR * This);
  10408.         
  10409.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10410.             ICommandPersist __RPC_FAR * This);
  10411.         
  10412.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteCommand )( 
  10413.             ICommandPersist __RPC_FAR * This,
  10414.             /* [in] */ DBID __RPC_FAR *pCommandID);
  10415.         
  10416.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCurrentCommand )( 
  10417.             ICommandPersist __RPC_FAR * This,
  10418.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppCommandID);
  10419.         
  10420.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *LoadCommand )( 
  10421.             ICommandPersist __RPC_FAR * This,
  10422.             /* [in] */ DBID __RPC_FAR *pCommandID,
  10423.             /* [in] */ DWORD dwFlags);
  10424.         
  10425.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveCommand )( 
  10426.             ICommandPersist __RPC_FAR * This,
  10427.             /* [in] */ DBID __RPC_FAR *pCommandID,
  10428.             /* [in] */ DWORD dwFlags);
  10429.         
  10430.         END_INTERFACE
  10431.     } ICommandPersistVtbl;
  10432.  
  10433.     interface ICommandPersist
  10434.     {
  10435.         CONST_VTBL struct ICommandPersistVtbl __RPC_FAR *lpVtbl;
  10436.     };
  10437.  
  10438.     
  10439.  
  10440. #ifdef COBJMACROS
  10441.  
  10442.  
  10443. #define ICommandPersist_QueryInterface(This,riid,ppvObject)    \
  10444.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10445.  
  10446. #define ICommandPersist_AddRef(This)    \
  10447.     (This)->lpVtbl -> AddRef(This)
  10448.  
  10449. #define ICommandPersist_Release(This)    \
  10450.     (This)->lpVtbl -> Release(This)
  10451.  
  10452.  
  10453. #define ICommandPersist_DeleteCommand(This,pCommandID)    \
  10454.     (This)->lpVtbl -> DeleteCommand(This,pCommandID)
  10455.  
  10456. #define ICommandPersist_GetCurrentCommand(This,ppCommandID)    \
  10457.     (This)->lpVtbl -> GetCurrentCommand(This,ppCommandID)
  10458.  
  10459. #define ICommandPersist_LoadCommand(This,pCommandID,dwFlags)    \
  10460.     (This)->lpVtbl -> LoadCommand(This,pCommandID,dwFlags)
  10461.  
  10462. #define ICommandPersist_SaveCommand(This,pCommandID,dwFlags)    \
  10463.     (This)->lpVtbl -> SaveCommand(This,pCommandID,dwFlags)
  10464.  
  10465. #endif /* COBJMACROS */
  10466.  
  10467.  
  10468. #endif     /* C style interface */
  10469.  
  10470.  
  10471.  
  10472. HRESULT STDMETHODCALLTYPE ICommandPersist_DeleteCommand_Proxy( 
  10473.     ICommandPersist __RPC_FAR * This,
  10474.     /* [in] */ DBID __RPC_FAR *pCommandID);
  10475.  
  10476.  
  10477. void __RPC_STUB ICommandPersist_DeleteCommand_Stub(
  10478.     IRpcStubBuffer *This,
  10479.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10480.     PRPC_MESSAGE _pRpcMessage,
  10481.     DWORD *_pdwStubPhase);
  10482.  
  10483.  
  10484. HRESULT STDMETHODCALLTYPE ICommandPersist_GetCurrentCommand_Proxy( 
  10485.     ICommandPersist __RPC_FAR * This,
  10486.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppCommandID);
  10487.  
  10488.  
  10489. void __RPC_STUB ICommandPersist_GetCurrentCommand_Stub(
  10490.     IRpcStubBuffer *This,
  10491.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10492.     PRPC_MESSAGE _pRpcMessage,
  10493.     DWORD *_pdwStubPhase);
  10494.  
  10495.  
  10496. HRESULT STDMETHODCALLTYPE ICommandPersist_LoadCommand_Proxy( 
  10497.     ICommandPersist __RPC_FAR * This,
  10498.     /* [in] */ DBID __RPC_FAR *pCommandID,
  10499.     /* [in] */ DWORD dwFlags);
  10500.  
  10501.  
  10502. void __RPC_STUB ICommandPersist_LoadCommand_Stub(
  10503.     IRpcStubBuffer *This,
  10504.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10505.     PRPC_MESSAGE _pRpcMessage,
  10506.     DWORD *_pdwStubPhase);
  10507.  
  10508.  
  10509. HRESULT STDMETHODCALLTYPE ICommandPersist_SaveCommand_Proxy( 
  10510.     ICommandPersist __RPC_FAR * This,
  10511.     /* [in] */ DBID __RPC_FAR *pCommandID,
  10512.     /* [in] */ DWORD dwFlags);
  10513.  
  10514.  
  10515. void __RPC_STUB ICommandPersist_SaveCommand_Stub(
  10516.     IRpcStubBuffer *This,
  10517.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10518.     PRPC_MESSAGE _pRpcMessage,
  10519.     DWORD *_pdwStubPhase);
  10520.  
  10521.  
  10522.  
  10523. #endif     /* __ICommandPersist_INTERFACE_DEFINED__ */
  10524.  
  10525.  
  10526. #ifndef __IRowsetRefresh_INTERFACE_DEFINED__
  10527. #define __IRowsetRefresh_INTERFACE_DEFINED__
  10528.  
  10529. /****************************************
  10530.  * Generated header for interface: IRowsetRefresh
  10531.  * at Wed Aug 26 14:08:54 1998
  10532.  * using MIDL 3.01.75
  10533.  ****************************************/
  10534. /* [unique][uuid][object][local] */ 
  10535.  
  10536.  
  10537.  
  10538. EXTERN_C const IID IID_IRowsetRefresh;
  10539.  
  10540. #if defined(__cplusplus) && !defined(CINTERFACE)
  10541.     
  10542.     interface DECLSPEC_UUID("0c733aa9-2a1c-11ce-ade5-00aa0044773d")
  10543.     IRowsetRefresh : public IUnknown
  10544.     {
  10545.     public:
  10546.         virtual HRESULT STDMETHODCALLTYPE RefreshVisibleData( 
  10547.             /* [in] */ HCHAPTER hChapter,
  10548.             /* [in] */ ULONG cRows,
  10549.             /* [in] */ const HROW __RPC_FAR rghRows[  ],
  10550.             /* [in] */ BOOL fOverWrite,
  10551.             /* [out] */ ULONG __RPC_FAR *pcRowsRefreshed,
  10552.             /* [out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsRefreshed,
  10553.             /* [out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus) = 0;
  10554.         
  10555.         virtual HRESULT STDMETHODCALLTYPE GetLastVisibleData( 
  10556.             /* [in] */ HROW hRow,
  10557.             /* [in] */ HACCESSOR hAccessor,
  10558.             /* [out] */ void __RPC_FAR *pData) = 0;
  10559.         
  10560.     };
  10561.     
  10562. #else     /* C style interface */
  10563.  
  10564.     typedef struct IRowsetRefreshVtbl
  10565.     {
  10566.         BEGIN_INTERFACE
  10567.         
  10568.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10569.             IRowsetRefresh __RPC_FAR * This,
  10570.             /* [in] */ REFIID riid,
  10571.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10572.         
  10573.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10574.             IRowsetRefresh __RPC_FAR * This);
  10575.         
  10576.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10577.             IRowsetRefresh __RPC_FAR * This);
  10578.         
  10579.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RefreshVisibleData )( 
  10580.             IRowsetRefresh __RPC_FAR * This,
  10581.             /* [in] */ HCHAPTER hChapter,
  10582.             /* [in] */ ULONG cRows,
  10583.             /* [in] */ const HROW __RPC_FAR rghRows[  ],
  10584.             /* [in] */ BOOL fOverWrite,
  10585.             /* [out] */ ULONG __RPC_FAR *pcRowsRefreshed,
  10586.             /* [out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsRefreshed,
  10587.             /* [out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  10588.         
  10589.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLastVisibleData )( 
  10590.             IRowsetRefresh __RPC_FAR * This,
  10591.             /* [in] */ HROW hRow,
  10592.             /* [in] */ HACCESSOR hAccessor,
  10593.             /* [out] */ void __RPC_FAR *pData);
  10594.         
  10595.         END_INTERFACE
  10596.     } IRowsetRefreshVtbl;
  10597.  
  10598.     interface IRowsetRefresh
  10599.     {
  10600.         CONST_VTBL struct IRowsetRefreshVtbl __RPC_FAR *lpVtbl;
  10601.     };
  10602.  
  10603.     
  10604.  
  10605. #ifdef COBJMACROS
  10606.  
  10607.  
  10608. #define IRowsetRefresh_QueryInterface(This,riid,ppvObject)    \
  10609.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10610.  
  10611. #define IRowsetRefresh_AddRef(This)    \
  10612.     (This)->lpVtbl -> AddRef(This)
  10613.  
  10614. #define IRowsetRefresh_Release(This)    \
  10615.     (This)->lpVtbl -> Release(This)
  10616.  
  10617.  
  10618. #define IRowsetRefresh_RefreshVisibleData(This,hChapter,cRows,rghRows,fOverWrite,pcRowsRefreshed,prghRowsRefreshed,prgRowStatus)    \
  10619.     (This)->lpVtbl -> RefreshVisibleData(This,hChapter,cRows,rghRows,fOverWrite,pcRowsRefreshed,prghRowsRefreshed,prgRowStatus)
  10620.  
  10621. #define IRowsetRefresh_GetLastVisibleData(This,hRow,hAccessor,pData)    \
  10622.     (This)->lpVtbl -> GetLastVisibleData(This,hRow,hAccessor,pData)
  10623.  
  10624. #endif /* COBJMACROS */
  10625.  
  10626.  
  10627. #endif     /* C style interface */
  10628.  
  10629.  
  10630.  
  10631. HRESULT STDMETHODCALLTYPE IRowsetRefresh_RefreshVisibleData_Proxy( 
  10632.     IRowsetRefresh __RPC_FAR * This,
  10633.     /* [in] */ HCHAPTER hChapter,
  10634.     /* [in] */ ULONG cRows,
  10635.     /* [in] */ const HROW __RPC_FAR rghRows[  ],
  10636.     /* [in] */ BOOL fOverWrite,
  10637.     /* [out] */ ULONG __RPC_FAR *pcRowsRefreshed,
  10638.     /* [out] */ HROW __RPC_FAR *__RPC_FAR *prghRowsRefreshed,
  10639.     /* [out] */ DBROWSTATUS __RPC_FAR *__RPC_FAR *prgRowStatus);
  10640.  
  10641.  
  10642. void __RPC_STUB IRowsetRefresh_RefreshVisibleData_Stub(
  10643.     IRpcStubBuffer *This,
  10644.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10645.     PRPC_MESSAGE _pRpcMessage,
  10646.     DWORD *_pdwStubPhase);
  10647.  
  10648.  
  10649. HRESULT STDMETHODCALLTYPE IRowsetRefresh_GetLastVisibleData_Proxy( 
  10650.     IRowsetRefresh __RPC_FAR * This,
  10651.     /* [in] */ HROW hRow,
  10652.     /* [in] */ HACCESSOR hAccessor,
  10653.     /* [out] */ void __RPC_FAR *pData);
  10654.  
  10655.  
  10656. void __RPC_STUB IRowsetRefresh_GetLastVisibleData_Stub(
  10657.     IRpcStubBuffer *This,
  10658.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10659.     PRPC_MESSAGE _pRpcMessage,
  10660.     DWORD *_pdwStubPhase);
  10661.  
  10662.  
  10663.  
  10664. #endif     /* __IRowsetRefresh_INTERFACE_DEFINED__ */
  10665.  
  10666.  
  10667. #ifndef __IParentRowset_INTERFACE_DEFINED__
  10668. #define __IParentRowset_INTERFACE_DEFINED__
  10669.  
  10670. /****************************************
  10671.  * Generated header for interface: IParentRowset
  10672.  * at Wed Aug 26 14:08:54 1998
  10673.  * using MIDL 3.01.75
  10674.  ****************************************/
  10675. /* [unique][uuid][object][local] */ 
  10676.  
  10677.  
  10678.  
  10679. EXTERN_C const IID IID_IParentRowset;
  10680.  
  10681. #if defined(__cplusplus) && !defined(CINTERFACE)
  10682.     
  10683.     interface DECLSPEC_UUID("0c733aaa-2a1c-11ce-ade5-00aa0044773d")
  10684.     IParentRowset : public IUnknown
  10685.     {
  10686.     public:
  10687.         virtual HRESULT STDMETHODCALLTYPE GetChildRowset( 
  10688.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  10689.             /* [in] */ ULONG iOrdinal,
  10690.             /* [in] */ REFIID riid,
  10691.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  10692.         
  10693.     };
  10694.     
  10695. #else     /* C style interface */
  10696.  
  10697.     typedef struct IParentRowsetVtbl
  10698.     {
  10699.         BEGIN_INTERFACE
  10700.         
  10701.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10702.             IParentRowset __RPC_FAR * This,
  10703.             /* [in] */ REFIID riid,
  10704.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10705.         
  10706.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10707.             IParentRowset __RPC_FAR * This);
  10708.         
  10709.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10710.             IParentRowset __RPC_FAR * This);
  10711.         
  10712.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetChildRowset )( 
  10713.             IParentRowset __RPC_FAR * This,
  10714.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  10715.             /* [in] */ ULONG iOrdinal,
  10716.             /* [in] */ REFIID riid,
  10717.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  10718.         
  10719.         END_INTERFACE
  10720.     } IParentRowsetVtbl;
  10721.  
  10722.     interface IParentRowset
  10723.     {
  10724.         CONST_VTBL struct IParentRowsetVtbl __RPC_FAR *lpVtbl;
  10725.     };
  10726.  
  10727.     
  10728.  
  10729. #ifdef COBJMACROS
  10730.  
  10731.  
  10732. #define IParentRowset_QueryInterface(This,riid,ppvObject)    \
  10733.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10734.  
  10735. #define IParentRowset_AddRef(This)    \
  10736.     (This)->lpVtbl -> AddRef(This)
  10737.  
  10738. #define IParentRowset_Release(This)    \
  10739.     (This)->lpVtbl -> Release(This)
  10740.  
  10741.  
  10742. #define IParentRowset_GetChildRowset(This,pUnkOuter,iOrdinal,riid,ppRowset)    \
  10743.     (This)->lpVtbl -> GetChildRowset(This,pUnkOuter,iOrdinal,riid,ppRowset)
  10744.  
  10745. #endif /* COBJMACROS */
  10746.  
  10747.  
  10748. #endif     /* C style interface */
  10749.  
  10750.  
  10751.  
  10752. HRESULT STDMETHODCALLTYPE IParentRowset_GetChildRowset_Proxy( 
  10753.     IParentRowset __RPC_FAR * This,
  10754.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  10755.     /* [in] */ ULONG iOrdinal,
  10756.     /* [in] */ REFIID riid,
  10757.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  10758.  
  10759.  
  10760. void __RPC_STUB IParentRowset_GetChildRowset_Stub(
  10761.     IRpcStubBuffer *This,
  10762.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10763.     PRPC_MESSAGE _pRpcMessage,
  10764.     DWORD *_pdwStubPhase);
  10765.  
  10766.  
  10767.  
  10768. #endif     /* __IParentRowset_INTERFACE_DEFINED__ */
  10769.  
  10770.  
  10771. /****************************************
  10772.  * Generated header for interface: __MIDL_itf_oledb_0208
  10773.  * at Wed Aug 26 14:08:54 1998
  10774.  * using MIDL 3.01.75
  10775.  ****************************************/
  10776. /* [local] */ 
  10777.  
  10778.  
  10779. #endif // OLEDBVER >= 0x0200
  10780. //@@@- V2.0
  10781.  
  10782.  
  10783. extern RPC_IF_HANDLE __MIDL_itf_oledb_0208_v0_0_c_ifspec;
  10784. extern RPC_IF_HANDLE __MIDL_itf_oledb_0208_v0_0_s_ifspec;
  10785.  
  10786. #ifndef __IErrorRecords_INTERFACE_DEFINED__
  10787. #define __IErrorRecords_INTERFACE_DEFINED__
  10788.  
  10789. /****************************************
  10790.  * Generated header for interface: IErrorRecords
  10791.  * at Wed Aug 26 14:08:54 1998
  10792.  * using MIDL 3.01.75
  10793.  ****************************************/
  10794. /* [unique][uuid][object] */ 
  10795.  
  10796.  
  10797. #define IDENTIFIER_SDK_MASK    0xF0000000
  10798. #define IDENTIFIER_SDK_ERROR    0x10000000
  10799. typedef struct  tagERRORINFO
  10800.     {
  10801.     HRESULT hrError;
  10802.     DWORD dwMinor;
  10803.     CLSID clsid;
  10804.     IID iid;
  10805.     DISPID dispid;
  10806.     }    ERRORINFO;
  10807.  
  10808.  
  10809. EXTERN_C const IID IID_IErrorRecords;
  10810.  
  10811. #if defined(__cplusplus) && !defined(CINTERFACE)
  10812.     
  10813.     interface DECLSPEC_UUID("0c733a67-2a1c-11ce-ade5-00aa0044773d")
  10814.     IErrorRecords : public IUnknown
  10815.     {
  10816.     public:
  10817.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddErrorRecord( 
  10818.             /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  10819.             /* [in] */ DWORD dwLookupID,
  10820.             /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  10821.             /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  10822.             /* [in] */ DWORD dwDynamicErrorID) = 0;
  10823.         
  10824.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetBasicErrorInfo( 
  10825.             /* [in] */ ULONG ulRecordNum,
  10826.             /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo) = 0;
  10827.         
  10828.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetCustomErrorObject( 
  10829.             /* [in] */ ULONG ulRecordNum,
  10830.             /* [in] */ REFIID riid,
  10831.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject) = 0;
  10832.         
  10833.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetErrorInfo( 
  10834.             /* [in] */ ULONG ulRecordNum,
  10835.             /* [in] */ LCID lcid,
  10836.             /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo) = 0;
  10837.         
  10838.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetErrorParameters( 
  10839.             /* [in] */ ULONG ulRecordNum,
  10840.             /* [out] */ DISPPARAMS __RPC_FAR *pdispparams) = 0;
  10841.         
  10842.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRecordCount( 
  10843.             /* [out] */ ULONG __RPC_FAR *pcRecords) = 0;
  10844.         
  10845.     };
  10846.     
  10847. #else     /* C style interface */
  10848.  
  10849.     typedef struct IErrorRecordsVtbl
  10850.     {
  10851.         BEGIN_INTERFACE
  10852.         
  10853.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  10854.             IErrorRecords __RPC_FAR * This,
  10855.             /* [in] */ REFIID riid,
  10856.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  10857.         
  10858.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  10859.             IErrorRecords __RPC_FAR * This);
  10860.         
  10861.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  10862.             IErrorRecords __RPC_FAR * This);
  10863.         
  10864.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddErrorRecord )( 
  10865.             IErrorRecords __RPC_FAR * This,
  10866.             /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  10867.             /* [in] */ DWORD dwLookupID,
  10868.             /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  10869.             /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  10870.             /* [in] */ DWORD dwDynamicErrorID);
  10871.         
  10872.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBasicErrorInfo )( 
  10873.             IErrorRecords __RPC_FAR * This,
  10874.             /* [in] */ ULONG ulRecordNum,
  10875.             /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo);
  10876.         
  10877.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCustomErrorObject )( 
  10878.             IErrorRecords __RPC_FAR * This,
  10879.             /* [in] */ ULONG ulRecordNum,
  10880.             /* [in] */ REFIID riid,
  10881.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject);
  10882.         
  10883.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetErrorInfo )( 
  10884.             IErrorRecords __RPC_FAR * This,
  10885.             /* [in] */ ULONG ulRecordNum,
  10886.             /* [in] */ LCID lcid,
  10887.             /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo);
  10888.         
  10889.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetErrorParameters )( 
  10890.             IErrorRecords __RPC_FAR * This,
  10891.             /* [in] */ ULONG ulRecordNum,
  10892.             /* [out] */ DISPPARAMS __RPC_FAR *pdispparams);
  10893.         
  10894.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRecordCount )( 
  10895.             IErrorRecords __RPC_FAR * This,
  10896.             /* [out] */ ULONG __RPC_FAR *pcRecords);
  10897.         
  10898.         END_INTERFACE
  10899.     } IErrorRecordsVtbl;
  10900.  
  10901.     interface IErrorRecords
  10902.     {
  10903.         CONST_VTBL struct IErrorRecordsVtbl __RPC_FAR *lpVtbl;
  10904.     };
  10905.  
  10906.     
  10907.  
  10908. #ifdef COBJMACROS
  10909.  
  10910.  
  10911. #define IErrorRecords_QueryInterface(This,riid,ppvObject)    \
  10912.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  10913.  
  10914. #define IErrorRecords_AddRef(This)    \
  10915.     (This)->lpVtbl -> AddRef(This)
  10916.  
  10917. #define IErrorRecords_Release(This)    \
  10918.     (This)->lpVtbl -> Release(This)
  10919.  
  10920.  
  10921. #define IErrorRecords_AddErrorRecord(This,pErrorInfo,dwLookupID,pdispparams,punkCustomError,dwDynamicErrorID)    \
  10922.     (This)->lpVtbl -> AddErrorRecord(This,pErrorInfo,dwLookupID,pdispparams,punkCustomError,dwDynamicErrorID)
  10923.  
  10924. #define IErrorRecords_GetBasicErrorInfo(This,ulRecordNum,pErrorInfo)    \
  10925.     (This)->lpVtbl -> GetBasicErrorInfo(This,ulRecordNum,pErrorInfo)
  10926.  
  10927. #define IErrorRecords_GetCustomErrorObject(This,ulRecordNum,riid,ppObject)    \
  10928.     (This)->lpVtbl -> GetCustomErrorObject(This,ulRecordNum,riid,ppObject)
  10929.  
  10930. #define IErrorRecords_GetErrorInfo(This,ulRecordNum,lcid,ppErrorInfo)    \
  10931.     (This)->lpVtbl -> GetErrorInfo(This,ulRecordNum,lcid,ppErrorInfo)
  10932.  
  10933. #define IErrorRecords_GetErrorParameters(This,ulRecordNum,pdispparams)    \
  10934.     (This)->lpVtbl -> GetErrorParameters(This,ulRecordNum,pdispparams)
  10935.  
  10936. #define IErrorRecords_GetRecordCount(This,pcRecords)    \
  10937.     (This)->lpVtbl -> GetRecordCount(This,pcRecords)
  10938.  
  10939. #endif /* COBJMACROS */
  10940.  
  10941.  
  10942. #endif     /* C style interface */
  10943.  
  10944.  
  10945.  
  10946. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteAddErrorRecord_Proxy( 
  10947.     IErrorRecords __RPC_FAR * This,
  10948.     /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  10949.     /* [in] */ DWORD dwLookupID,
  10950.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  10951.     /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  10952.     /* [in] */ DWORD dwDynamicErrorID,
  10953.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  10954.  
  10955.  
  10956. void __RPC_STUB IErrorRecords_RemoteAddErrorRecord_Stub(
  10957.     IRpcStubBuffer *This,
  10958.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10959.     PRPC_MESSAGE _pRpcMessage,
  10960.     DWORD *_pdwStubPhase);
  10961.  
  10962.  
  10963. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetBasicErrorInfo_Proxy( 
  10964.     IErrorRecords __RPC_FAR * This,
  10965.     /* [in] */ ULONG ulRecordNum,
  10966.     /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo,
  10967.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  10968.  
  10969.  
  10970. void __RPC_STUB IErrorRecords_RemoteGetBasicErrorInfo_Stub(
  10971.     IRpcStubBuffer *This,
  10972.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10973.     PRPC_MESSAGE _pRpcMessage,
  10974.     DWORD *_pdwStubPhase);
  10975.  
  10976.  
  10977. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetCustomErrorObject_Proxy( 
  10978.     IErrorRecords __RPC_FAR * This,
  10979.     /* [in] */ ULONG ulRecordNum,
  10980.     /* [in] */ REFIID riid,
  10981.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject,
  10982.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  10983.  
  10984.  
  10985. void __RPC_STUB IErrorRecords_RemoteGetCustomErrorObject_Stub(
  10986.     IRpcStubBuffer *This,
  10987.     IRpcChannelBuffer *_pRpcChannelBuffer,
  10988.     PRPC_MESSAGE _pRpcMessage,
  10989.     DWORD *_pdwStubPhase);
  10990.  
  10991.  
  10992. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetErrorInfo_Proxy( 
  10993.     IErrorRecords __RPC_FAR * This,
  10994.     /* [in] */ ULONG ulRecordNum,
  10995.     /* [in] */ LCID lcid,
  10996.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo,
  10997.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  10998.  
  10999.  
  11000. void __RPC_STUB IErrorRecords_RemoteGetErrorInfo_Stub(
  11001.     IRpcStubBuffer *This,
  11002.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11003.     PRPC_MESSAGE _pRpcMessage,
  11004.     DWORD *_pdwStubPhase);
  11005.  
  11006.  
  11007. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetErrorParameters_Proxy( 
  11008.     IErrorRecords __RPC_FAR * This,
  11009.     /* [in] */ ULONG ulRecordNum,
  11010.     /* [out] */ DISPPARAMS __RPC_FAR *pdispparams,
  11011.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11012.  
  11013.  
  11014. void __RPC_STUB IErrorRecords_RemoteGetErrorParameters_Stub(
  11015.     IRpcStubBuffer *This,
  11016.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11017.     PRPC_MESSAGE _pRpcMessage,
  11018.     DWORD *_pdwStubPhase);
  11019.  
  11020.  
  11021. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_RemoteGetRecordCount_Proxy( 
  11022.     IErrorRecords __RPC_FAR * This,
  11023.     /* [out] */ ULONG __RPC_FAR *pcRecords,
  11024.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11025.  
  11026.  
  11027. void __RPC_STUB IErrorRecords_RemoteGetRecordCount_Stub(
  11028.     IRpcStubBuffer *This,
  11029.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11030.     PRPC_MESSAGE _pRpcMessage,
  11031.     DWORD *_pdwStubPhase);
  11032.  
  11033.  
  11034.  
  11035. #endif     /* __IErrorRecords_INTERFACE_DEFINED__ */
  11036.  
  11037.  
  11038. #ifndef __IErrorLookup_INTERFACE_DEFINED__
  11039. #define __IErrorLookup_INTERFACE_DEFINED__
  11040.  
  11041. /****************************************
  11042.  * Generated header for interface: IErrorLookup
  11043.  * at Wed Aug 26 14:08:54 1998
  11044.  * using MIDL 3.01.75
  11045.  ****************************************/
  11046. /* [unique][uuid][object] */ 
  11047.  
  11048.  
  11049.  
  11050. EXTERN_C const IID IID_IErrorLookup;
  11051.  
  11052. #if defined(__cplusplus) && !defined(CINTERFACE)
  11053.     
  11054.     interface DECLSPEC_UUID("0c733a66-2a1c-11ce-ade5-00aa0044773d")
  11055.     IErrorLookup : public IUnknown
  11056.     {
  11057.     public:
  11058.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetErrorDescription( 
  11059.             /* [in] */ HRESULT hrError,
  11060.             /* [in] */ DWORD dwLookupID,
  11061.             /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  11062.             /* [in] */ LCID lcid,
  11063.             /* [out] */ BSTR __RPC_FAR *pbstrSource,
  11064.             /* [out] */ BSTR __RPC_FAR *pbstrDescription) = 0;
  11065.         
  11066.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetHelpInfo( 
  11067.             /* [in] */ HRESULT hrError,
  11068.             /* [in] */ DWORD dwLookupID,
  11069.             /* [in] */ LCID lcid,
  11070.             /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  11071.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext) = 0;
  11072.         
  11073.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ReleaseErrors( 
  11074.             /* [in] */ const DWORD dwDynamicErrorID) = 0;
  11075.         
  11076.     };
  11077.     
  11078. #else     /* C style interface */
  11079.  
  11080.     typedef struct IErrorLookupVtbl
  11081.     {
  11082.         BEGIN_INTERFACE
  11083.         
  11084.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11085.             IErrorLookup __RPC_FAR * This,
  11086.             /* [in] */ REFIID riid,
  11087.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11088.         
  11089.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11090.             IErrorLookup __RPC_FAR * This);
  11091.         
  11092.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11093.             IErrorLookup __RPC_FAR * This);
  11094.         
  11095.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetErrorDescription )( 
  11096.             IErrorLookup __RPC_FAR * This,
  11097.             /* [in] */ HRESULT hrError,
  11098.             /* [in] */ DWORD dwLookupID,
  11099.             /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  11100.             /* [in] */ LCID lcid,
  11101.             /* [out] */ BSTR __RPC_FAR *pbstrSource,
  11102.             /* [out] */ BSTR __RPC_FAR *pbstrDescription);
  11103.         
  11104.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetHelpInfo )( 
  11105.             IErrorLookup __RPC_FAR * This,
  11106.             /* [in] */ HRESULT hrError,
  11107.             /* [in] */ DWORD dwLookupID,
  11108.             /* [in] */ LCID lcid,
  11109.             /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  11110.             /* [out] */ DWORD __RPC_FAR *pdwHelpContext);
  11111.         
  11112.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseErrors )( 
  11113.             IErrorLookup __RPC_FAR * This,
  11114.             /* [in] */ const DWORD dwDynamicErrorID);
  11115.         
  11116.         END_INTERFACE
  11117.     } IErrorLookupVtbl;
  11118.  
  11119.     interface IErrorLookup
  11120.     {
  11121.         CONST_VTBL struct IErrorLookupVtbl __RPC_FAR *lpVtbl;
  11122.     };
  11123.  
  11124.     
  11125.  
  11126. #ifdef COBJMACROS
  11127.  
  11128.  
  11129. #define IErrorLookup_QueryInterface(This,riid,ppvObject)    \
  11130.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11131.  
  11132. #define IErrorLookup_AddRef(This)    \
  11133.     (This)->lpVtbl -> AddRef(This)
  11134.  
  11135. #define IErrorLookup_Release(This)    \
  11136.     (This)->lpVtbl -> Release(This)
  11137.  
  11138.  
  11139. #define IErrorLookup_GetErrorDescription(This,hrError,dwLookupID,pdispparams,lcid,pbstrSource,pbstrDescription)    \
  11140.     (This)->lpVtbl -> GetErrorDescription(This,hrError,dwLookupID,pdispparams,lcid,pbstrSource,pbstrDescription)
  11141.  
  11142. #define IErrorLookup_GetHelpInfo(This,hrError,dwLookupID,lcid,pbstrHelpFile,pdwHelpContext)    \
  11143.     (This)->lpVtbl -> GetHelpInfo(This,hrError,dwLookupID,lcid,pbstrHelpFile,pdwHelpContext)
  11144.  
  11145. #define IErrorLookup_ReleaseErrors(This,dwDynamicErrorID)    \
  11146.     (This)->lpVtbl -> ReleaseErrors(This,dwDynamicErrorID)
  11147.  
  11148. #endif /* COBJMACROS */
  11149.  
  11150.  
  11151. #endif     /* C style interface */
  11152.  
  11153.  
  11154.  
  11155. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_RemoteGetErrorDescription_Proxy( 
  11156.     IErrorLookup __RPC_FAR * This,
  11157.     /* [in] */ HRESULT hrError,
  11158.     /* [in] */ DWORD dwLookupID,
  11159.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  11160.     /* [in] */ LCID lcid,
  11161.     /* [out] */ BSTR __RPC_FAR *pbstrSource,
  11162.     /* [out] */ BSTR __RPC_FAR *pbstrDescription,
  11163.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11164.  
  11165.  
  11166. void __RPC_STUB IErrorLookup_RemoteGetErrorDescription_Stub(
  11167.     IRpcStubBuffer *This,
  11168.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11169.     PRPC_MESSAGE _pRpcMessage,
  11170.     DWORD *_pdwStubPhase);
  11171.  
  11172.  
  11173. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_RemoteGetHelpInfo_Proxy( 
  11174.     IErrorLookup __RPC_FAR * This,
  11175.     /* [in] */ HRESULT hrError,
  11176.     /* [in] */ DWORD dwLookupID,
  11177.     /* [in] */ LCID lcid,
  11178.     /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  11179.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  11180.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11181.  
  11182.  
  11183. void __RPC_STUB IErrorLookup_RemoteGetHelpInfo_Stub(
  11184.     IRpcStubBuffer *This,
  11185.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11186.     PRPC_MESSAGE _pRpcMessage,
  11187.     DWORD *_pdwStubPhase);
  11188.  
  11189.  
  11190. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_RemoteReleaseErrors_Proxy( 
  11191.     IErrorLookup __RPC_FAR * This,
  11192.     /* [in] */ const DWORD dwDynamicErrorID,
  11193.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11194.  
  11195.  
  11196. void __RPC_STUB IErrorLookup_RemoteReleaseErrors_Stub(
  11197.     IRpcStubBuffer *This,
  11198.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11199.     PRPC_MESSAGE _pRpcMessage,
  11200.     DWORD *_pdwStubPhase);
  11201.  
  11202.  
  11203.  
  11204. #endif     /* __IErrorLookup_INTERFACE_DEFINED__ */
  11205.  
  11206.  
  11207. #ifndef __ISQLErrorInfo_INTERFACE_DEFINED__
  11208. #define __ISQLErrorInfo_INTERFACE_DEFINED__
  11209.  
  11210. /****************************************
  11211.  * Generated header for interface: ISQLErrorInfo
  11212.  * at Wed Aug 26 14:08:54 1998
  11213.  * using MIDL 3.01.75
  11214.  ****************************************/
  11215. /* [unique][uuid][object] */ 
  11216.  
  11217.  
  11218.  
  11219. EXTERN_C const IID IID_ISQLErrorInfo;
  11220.  
  11221. #if defined(__cplusplus) && !defined(CINTERFACE)
  11222.     
  11223.     interface DECLSPEC_UUID("0c733a74-2a1c-11ce-ade5-00aa0044773d")
  11224.     ISQLErrorInfo : public IUnknown
  11225.     {
  11226.     public:
  11227.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetSQLInfo( 
  11228.             /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  11229.             /* [out] */ LONG __RPC_FAR *plNativeError) = 0;
  11230.         
  11231.     };
  11232.     
  11233. #else     /* C style interface */
  11234.  
  11235.     typedef struct ISQLErrorInfoVtbl
  11236.     {
  11237.         BEGIN_INTERFACE
  11238.         
  11239.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11240.             ISQLErrorInfo __RPC_FAR * This,
  11241.             /* [in] */ REFIID riid,
  11242.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11243.         
  11244.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11245.             ISQLErrorInfo __RPC_FAR * This);
  11246.         
  11247.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11248.             ISQLErrorInfo __RPC_FAR * This);
  11249.         
  11250.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSQLInfo )( 
  11251.             ISQLErrorInfo __RPC_FAR * This,
  11252.             /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  11253.             /* [out] */ LONG __RPC_FAR *plNativeError);
  11254.         
  11255.         END_INTERFACE
  11256.     } ISQLErrorInfoVtbl;
  11257.  
  11258.     interface ISQLErrorInfo
  11259.     {
  11260.         CONST_VTBL struct ISQLErrorInfoVtbl __RPC_FAR *lpVtbl;
  11261.     };
  11262.  
  11263.     
  11264.  
  11265. #ifdef COBJMACROS
  11266.  
  11267.  
  11268. #define ISQLErrorInfo_QueryInterface(This,riid,ppvObject)    \
  11269.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11270.  
  11271. #define ISQLErrorInfo_AddRef(This)    \
  11272.     (This)->lpVtbl -> AddRef(This)
  11273.  
  11274. #define ISQLErrorInfo_Release(This)    \
  11275.     (This)->lpVtbl -> Release(This)
  11276.  
  11277.  
  11278. #define ISQLErrorInfo_GetSQLInfo(This,pbstrSQLState,plNativeError)    \
  11279.     (This)->lpVtbl -> GetSQLInfo(This,pbstrSQLState,plNativeError)
  11280.  
  11281. #endif /* COBJMACROS */
  11282.  
  11283.  
  11284. #endif     /* C style interface */
  11285.  
  11286.  
  11287.  
  11288. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISQLErrorInfo_RemoteGetSQLInfo_Proxy( 
  11289.     ISQLErrorInfo __RPC_FAR * This,
  11290.     /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  11291.     /* [out] */ LONG __RPC_FAR *plNativeError,
  11292.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11293.  
  11294.  
  11295. void __RPC_STUB ISQLErrorInfo_RemoteGetSQLInfo_Stub(
  11296.     IRpcStubBuffer *This,
  11297.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11298.     PRPC_MESSAGE _pRpcMessage,
  11299.     DWORD *_pdwStubPhase);
  11300.  
  11301.  
  11302.  
  11303. #endif     /* __ISQLErrorInfo_INTERFACE_DEFINED__ */
  11304.  
  11305.  
  11306. #ifndef __IGetDataSource_INTERFACE_DEFINED__
  11307. #define __IGetDataSource_INTERFACE_DEFINED__
  11308.  
  11309. /****************************************
  11310.  * Generated header for interface: IGetDataSource
  11311.  * at Wed Aug 26 14:08:54 1998
  11312.  * using MIDL 3.01.75
  11313.  ****************************************/
  11314. /* [unique][uuid][object] */ 
  11315.  
  11316.  
  11317.  
  11318. EXTERN_C const IID IID_IGetDataSource;
  11319.  
  11320. #if defined(__cplusplus) && !defined(CINTERFACE)
  11321.     
  11322.     interface DECLSPEC_UUID("0c733a75-2a1c-11ce-ade5-00aa0044773d")
  11323.     IGetDataSource : public IUnknown
  11324.     {
  11325.     public:
  11326.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDataSource( 
  11327.             /* [in] */ REFIID riid,
  11328.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource) = 0;
  11329.         
  11330.     };
  11331.     
  11332. #else     /* C style interface */
  11333.  
  11334.     typedef struct IGetDataSourceVtbl
  11335.     {
  11336.         BEGIN_INTERFACE
  11337.         
  11338.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11339.             IGetDataSource __RPC_FAR * This,
  11340.             /* [in] */ REFIID riid,
  11341.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11342.         
  11343.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11344.             IGetDataSource __RPC_FAR * This);
  11345.         
  11346.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11347.             IGetDataSource __RPC_FAR * This);
  11348.         
  11349.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDataSource )( 
  11350.             IGetDataSource __RPC_FAR * This,
  11351.             /* [in] */ REFIID riid,
  11352.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource);
  11353.         
  11354.         END_INTERFACE
  11355.     } IGetDataSourceVtbl;
  11356.  
  11357.     interface IGetDataSource
  11358.     {
  11359.         CONST_VTBL struct IGetDataSourceVtbl __RPC_FAR *lpVtbl;
  11360.     };
  11361.  
  11362.     
  11363.  
  11364. #ifdef COBJMACROS
  11365.  
  11366.  
  11367. #define IGetDataSource_QueryInterface(This,riid,ppvObject)    \
  11368.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11369.  
  11370. #define IGetDataSource_AddRef(This)    \
  11371.     (This)->lpVtbl -> AddRef(This)
  11372.  
  11373. #define IGetDataSource_Release(This)    \
  11374.     (This)->lpVtbl -> Release(This)
  11375.  
  11376.  
  11377. #define IGetDataSource_GetDataSource(This,riid,ppDataSource)    \
  11378.     (This)->lpVtbl -> GetDataSource(This,riid,ppDataSource)
  11379.  
  11380. #endif /* COBJMACROS */
  11381.  
  11382.  
  11383. #endif     /* C style interface */
  11384.  
  11385.  
  11386.  
  11387. /* [call_as] */ HRESULT STDMETHODCALLTYPE IGetDataSource_RemoteGetDataSource_Proxy( 
  11388.     IGetDataSource __RPC_FAR * This,
  11389.     /* [in] */ REFIID riid,
  11390.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource,
  11391.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11392.  
  11393.  
  11394. void __RPC_STUB IGetDataSource_RemoteGetDataSource_Stub(
  11395.     IRpcStubBuffer *This,
  11396.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11397.     PRPC_MESSAGE _pRpcMessage,
  11398.     DWORD *_pdwStubPhase);
  11399.  
  11400.  
  11401.  
  11402. #endif     /* __IGetDataSource_INTERFACE_DEFINED__ */
  11403.  
  11404.  
  11405. #ifndef __ITransactionLocal_INTERFACE_DEFINED__
  11406. #define __ITransactionLocal_INTERFACE_DEFINED__
  11407.  
  11408. /****************************************
  11409.  * Generated header for interface: ITransactionLocal
  11410.  * at Wed Aug 26 14:08:54 1998
  11411.  * using MIDL 3.01.75
  11412.  ****************************************/
  11413. /* [unique][uuid][object] */ 
  11414.  
  11415.  
  11416.  
  11417. EXTERN_C const IID IID_ITransactionLocal;
  11418.  
  11419. #if defined(__cplusplus) && !defined(CINTERFACE)
  11420.     
  11421.     interface DECLSPEC_UUID("0c733a5f-2a1c-11ce-ade5-00aa0044773d")
  11422.     ITransactionLocal : public ITransaction
  11423.     {
  11424.     public:
  11425.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetOptionsObject( 
  11426.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions) = 0;
  11427.         
  11428.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE StartTransaction( 
  11429.             /* [in] */ ISOLEVEL isoLevel,
  11430.             /* [in] */ ULONG isoFlags,
  11431.             /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  11432.             /* [out] */ ULONG __RPC_FAR *pulTransactionLevel) = 0;
  11433.         
  11434.     };
  11435.     
  11436. #else     /* C style interface */
  11437.  
  11438.     typedef struct ITransactionLocalVtbl
  11439.     {
  11440.         BEGIN_INTERFACE
  11441.         
  11442.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11443.             ITransactionLocal __RPC_FAR * This,
  11444.             /* [in] */ REFIID riid,
  11445.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11446.         
  11447.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11448.             ITransactionLocal __RPC_FAR * This);
  11449.         
  11450.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11451.             ITransactionLocal __RPC_FAR * This);
  11452.         
  11453.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Commit )( 
  11454.             ITransactionLocal __RPC_FAR * This,
  11455.             /* [in] */ BOOL fRetaining,
  11456.             /* [in] */ DWORD grfTC,
  11457.             /* [in] */ DWORD grfRM);
  11458.         
  11459.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Abort )( 
  11460.             ITransactionLocal __RPC_FAR * This,
  11461.             /* [unique][in] */ BOID __RPC_FAR *pboidReason,
  11462.             /* [in] */ BOOL fRetaining,
  11463.             /* [in] */ BOOL fAsync);
  11464.         
  11465.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTransactionInfo )( 
  11466.             ITransactionLocal __RPC_FAR * This,
  11467.             /* [out] */ XACTTRANSINFO __RPC_FAR *pinfo);
  11468.         
  11469.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetOptionsObject )( 
  11470.             ITransactionLocal __RPC_FAR * This,
  11471.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  11472.         
  11473.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *StartTransaction )( 
  11474.             ITransactionLocal __RPC_FAR * This,
  11475.             /* [in] */ ISOLEVEL isoLevel,
  11476.             /* [in] */ ULONG isoFlags,
  11477.             /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  11478.             /* [out] */ ULONG __RPC_FAR *pulTransactionLevel);
  11479.         
  11480.         END_INTERFACE
  11481.     } ITransactionLocalVtbl;
  11482.  
  11483.     interface ITransactionLocal
  11484.     {
  11485.         CONST_VTBL struct ITransactionLocalVtbl __RPC_FAR *lpVtbl;
  11486.     };
  11487.  
  11488.     
  11489.  
  11490. #ifdef COBJMACROS
  11491.  
  11492.  
  11493. #define ITransactionLocal_QueryInterface(This,riid,ppvObject)    \
  11494.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11495.  
  11496. #define ITransactionLocal_AddRef(This)    \
  11497.     (This)->lpVtbl -> AddRef(This)
  11498.  
  11499. #define ITransactionLocal_Release(This)    \
  11500.     (This)->lpVtbl -> Release(This)
  11501.  
  11502.  
  11503. #define ITransactionLocal_Commit(This,fRetaining,grfTC,grfRM)    \
  11504.     (This)->lpVtbl -> Commit(This,fRetaining,grfTC,grfRM)
  11505.  
  11506. #define ITransactionLocal_Abort(This,pboidReason,fRetaining,fAsync)    \
  11507.     (This)->lpVtbl -> Abort(This,pboidReason,fRetaining,fAsync)
  11508.  
  11509. #define ITransactionLocal_GetTransactionInfo(This,pinfo)    \
  11510.     (This)->lpVtbl -> GetTransactionInfo(This,pinfo)
  11511.  
  11512.  
  11513. #define ITransactionLocal_GetOptionsObject(This,ppOptions)    \
  11514.     (This)->lpVtbl -> GetOptionsObject(This,ppOptions)
  11515.  
  11516. #define ITransactionLocal_StartTransaction(This,isoLevel,isoFlags,pOtherOptions,pulTransactionLevel)    \
  11517.     (This)->lpVtbl -> StartTransaction(This,isoLevel,isoFlags,pOtherOptions,pulTransactionLevel)
  11518.  
  11519. #endif /* COBJMACROS */
  11520.  
  11521.  
  11522. #endif     /* C style interface */
  11523.  
  11524.  
  11525.  
  11526. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_RemoteGetOptionsObject_Proxy( 
  11527.     ITransactionLocal __RPC_FAR * This,
  11528.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions,
  11529.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11530.  
  11531.  
  11532. void __RPC_STUB ITransactionLocal_RemoteGetOptionsObject_Stub(
  11533.     IRpcStubBuffer *This,
  11534.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11535.     PRPC_MESSAGE _pRpcMessage,
  11536.     DWORD *_pdwStubPhase);
  11537.  
  11538.  
  11539. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_RemoteStartTransaction_Proxy( 
  11540.     ITransactionLocal __RPC_FAR * This,
  11541.     /* [in] */ ISOLEVEL isoLevel,
  11542.     /* [in] */ ULONG isoFlags,
  11543.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  11544.     /* [unique][out][in] */ ULONG __RPC_FAR *pulTransactionLevel,
  11545.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11546.  
  11547.  
  11548. void __RPC_STUB ITransactionLocal_RemoteStartTransaction_Stub(
  11549.     IRpcStubBuffer *This,
  11550.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11551.     PRPC_MESSAGE _pRpcMessage,
  11552.     DWORD *_pdwStubPhase);
  11553.  
  11554.  
  11555.  
  11556. #endif     /* __ITransactionLocal_INTERFACE_DEFINED__ */
  11557.  
  11558.  
  11559. #ifndef __ITransactionJoin_INTERFACE_DEFINED__
  11560. #define __ITransactionJoin_INTERFACE_DEFINED__
  11561.  
  11562. /****************************************
  11563.  * Generated header for interface: ITransactionJoin
  11564.  * at Wed Aug 26 14:08:54 1998
  11565.  * using MIDL 3.01.75
  11566.  ****************************************/
  11567. /* [unique][uuid][object] */ 
  11568.  
  11569.  
  11570.  
  11571. EXTERN_C const IID IID_ITransactionJoin;
  11572.  
  11573. #if defined(__cplusplus) && !defined(CINTERFACE)
  11574.     
  11575.     interface DECLSPEC_UUID("0c733a5e-2a1c-11ce-ade5-00aa0044773d")
  11576.     ITransactionJoin : public IUnknown
  11577.     {
  11578.     public:
  11579.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetOptionsObject( 
  11580.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions) = 0;
  11581.         
  11582.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE JoinTransaction( 
  11583.             /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  11584.             /* [in] */ ISOLEVEL isoLevel,
  11585.             /* [in] */ ULONG isoFlags,
  11586.             /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions) = 0;
  11587.         
  11588.     };
  11589.     
  11590. #else     /* C style interface */
  11591.  
  11592.     typedef struct ITransactionJoinVtbl
  11593.     {
  11594.         BEGIN_INTERFACE
  11595.         
  11596.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11597.             ITransactionJoin __RPC_FAR * This,
  11598.             /* [in] */ REFIID riid,
  11599.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11600.         
  11601.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11602.             ITransactionJoin __RPC_FAR * This);
  11603.         
  11604.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11605.             ITransactionJoin __RPC_FAR * This);
  11606.         
  11607.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetOptionsObject )( 
  11608.             ITransactionJoin __RPC_FAR * This,
  11609.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  11610.         
  11611.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *JoinTransaction )( 
  11612.             ITransactionJoin __RPC_FAR * This,
  11613.             /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  11614.             /* [in] */ ISOLEVEL isoLevel,
  11615.             /* [in] */ ULONG isoFlags,
  11616.             /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions);
  11617.         
  11618.         END_INTERFACE
  11619.     } ITransactionJoinVtbl;
  11620.  
  11621.     interface ITransactionJoin
  11622.     {
  11623.         CONST_VTBL struct ITransactionJoinVtbl __RPC_FAR *lpVtbl;
  11624.     };
  11625.  
  11626.     
  11627.  
  11628. #ifdef COBJMACROS
  11629.  
  11630.  
  11631. #define ITransactionJoin_QueryInterface(This,riid,ppvObject)    \
  11632.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11633.  
  11634. #define ITransactionJoin_AddRef(This)    \
  11635.     (This)->lpVtbl -> AddRef(This)
  11636.  
  11637. #define ITransactionJoin_Release(This)    \
  11638.     (This)->lpVtbl -> Release(This)
  11639.  
  11640.  
  11641. #define ITransactionJoin_GetOptionsObject(This,ppOptions)    \
  11642.     (This)->lpVtbl -> GetOptionsObject(This,ppOptions)
  11643.  
  11644. #define ITransactionJoin_JoinTransaction(This,punkTransactionCoord,isoLevel,isoFlags,pOtherOptions)    \
  11645.     (This)->lpVtbl -> JoinTransaction(This,punkTransactionCoord,isoLevel,isoFlags,pOtherOptions)
  11646.  
  11647. #endif /* COBJMACROS */
  11648.  
  11649.  
  11650. #endif     /* C style interface */
  11651.  
  11652.  
  11653.  
  11654. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_RemoteGetOptionsObject_Proxy( 
  11655.     ITransactionJoin __RPC_FAR * This,
  11656.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions,
  11657.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11658.  
  11659.  
  11660. void __RPC_STUB ITransactionJoin_RemoteGetOptionsObject_Stub(
  11661.     IRpcStubBuffer *This,
  11662.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11663.     PRPC_MESSAGE _pRpcMessage,
  11664.     DWORD *_pdwStubPhase);
  11665.  
  11666.  
  11667. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_RemoteJoinTransaction_Proxy( 
  11668.     ITransactionJoin __RPC_FAR * This,
  11669.     /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  11670.     /* [in] */ ISOLEVEL isoLevel,
  11671.     /* [in] */ ULONG isoFlags,
  11672.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  11673.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11674.  
  11675.  
  11676. void __RPC_STUB ITransactionJoin_RemoteJoinTransaction_Stub(
  11677.     IRpcStubBuffer *This,
  11678.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11679.     PRPC_MESSAGE _pRpcMessage,
  11680.     DWORD *_pdwStubPhase);
  11681.  
  11682.  
  11683.  
  11684. #endif     /* __ITransactionJoin_INTERFACE_DEFINED__ */
  11685.  
  11686.  
  11687. #ifndef __ITransactionObject_INTERFACE_DEFINED__
  11688. #define __ITransactionObject_INTERFACE_DEFINED__
  11689.  
  11690. /****************************************
  11691.  * Generated header for interface: ITransactionObject
  11692.  * at Wed Aug 26 14:08:54 1998
  11693.  * using MIDL 3.01.75
  11694.  ****************************************/
  11695. /* [unique][uuid][object] */ 
  11696.  
  11697.  
  11698.  
  11699. EXTERN_C const IID IID_ITransactionObject;
  11700.  
  11701. #if defined(__cplusplus) && !defined(CINTERFACE)
  11702.     
  11703.     interface DECLSPEC_UUID("0c733a60-2a1c-11ce-ade5-00aa0044773d")
  11704.     ITransactionObject : public IUnknown
  11705.     {
  11706.     public:
  11707.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetTransactionObject( 
  11708.             /* [in] */ ULONG ulTransactionLevel,
  11709.             /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject) = 0;
  11710.         
  11711.     };
  11712.     
  11713. #else     /* C style interface */
  11714.  
  11715.     typedef struct ITransactionObjectVtbl
  11716.     {
  11717.         BEGIN_INTERFACE
  11718.         
  11719.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11720.             ITransactionObject __RPC_FAR * This,
  11721.             /* [in] */ REFIID riid,
  11722.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11723.         
  11724.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11725.             ITransactionObject __RPC_FAR * This);
  11726.         
  11727.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11728.             ITransactionObject __RPC_FAR * This);
  11729.         
  11730.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTransactionObject )( 
  11731.             ITransactionObject __RPC_FAR * This,
  11732.             /* [in] */ ULONG ulTransactionLevel,
  11733.             /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject);
  11734.         
  11735.         END_INTERFACE
  11736.     } ITransactionObjectVtbl;
  11737.  
  11738.     interface ITransactionObject
  11739.     {
  11740.         CONST_VTBL struct ITransactionObjectVtbl __RPC_FAR *lpVtbl;
  11741.     };
  11742.  
  11743.     
  11744.  
  11745. #ifdef COBJMACROS
  11746.  
  11747.  
  11748. #define ITransactionObject_QueryInterface(This,riid,ppvObject)    \
  11749.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11750.  
  11751. #define ITransactionObject_AddRef(This)    \
  11752.     (This)->lpVtbl -> AddRef(This)
  11753.  
  11754. #define ITransactionObject_Release(This)    \
  11755.     (This)->lpVtbl -> Release(This)
  11756.  
  11757.  
  11758. #define ITransactionObject_GetTransactionObject(This,ulTransactionLevel,ppTransactionObject)    \
  11759.     (This)->lpVtbl -> GetTransactionObject(This,ulTransactionLevel,ppTransactionObject)
  11760.  
  11761. #endif /* COBJMACROS */
  11762.  
  11763.  
  11764. #endif     /* C style interface */
  11765.  
  11766.  
  11767.  
  11768. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionObject_RemoteGetTransactionObject_Proxy( 
  11769.     ITransactionObject __RPC_FAR * This,
  11770.     /* [in] */ ULONG ulTransactionLevel,
  11771.     /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject,
  11772.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  11773.  
  11774.  
  11775. void __RPC_STUB ITransactionObject_RemoteGetTransactionObject_Stub(
  11776.     IRpcStubBuffer *This,
  11777.     IRpcChannelBuffer *_pRpcChannelBuffer,
  11778.     PRPC_MESSAGE _pRpcMessage,
  11779.     DWORD *_pdwStubPhase);
  11780.  
  11781.  
  11782.  
  11783. #endif     /* __ITransactionObject_INTERFACE_DEFINED__ */
  11784.  
  11785.  
  11786. /****************************************
  11787.  * Generated header for interface: __MIDL_itf_oledb_0222
  11788.  * at Wed Aug 26 14:08:54 1998
  11789.  * using MIDL 3.01.75
  11790.  ****************************************/
  11791. /* [local] */ 
  11792.  
  11793.  
  11794. //@@@+ V2.1
  11795. #if( OLEDBVER >= 0x0210 )
  11796. #if 0  // to get around a MIDL limitation
  11797. typedef 
  11798. enum _TRUSTEE_TYPE
  11799.     {    TRUSTEE_IS_UNKNOWN    = 0,
  11800.     TRUSTEE_IS_USER    = TRUSTEE_IS_UNKNOWN + 1,
  11801.     TRUSTEE_IS_GROUP    = TRUSTEE_IS_USER + 1
  11802.     }    TRUSTEE_TYPE;
  11803.  
  11804. typedef 
  11805. enum _TRUSTEE_FORM
  11806.     {    TRUSTEE_IS_SID    = 0,
  11807.     TRUSTEE_IS_NAME    = TRUSTEE_IS_SID + 1
  11808.     }    TRUSTEE_FORM;
  11809.  
  11810. typedef 
  11811. enum _MULTIPLE_TRUSTEE_OPERATION
  11812.     {    NO_MULTIPLE_TRUSTEE    = 0,
  11813.     TRUSTEE_IS_IMPERSONATE    = NO_MULTIPLE_TRUSTEE + 1
  11814.     }    MULTIPLE_TRUSTEE_OPERATION;
  11815.  
  11816. typedef struct _TRUSTEE_A __RPC_FAR *PTRUSTEE_A;
  11817.  
  11818. typedef struct _TRUSTEE_W __RPC_FAR *PTRUSTEE_W;
  11819.  
  11820. typedef struct  _TRUSTEE_W
  11821.     {
  11822.     PTRUSTEE_W pMultipleTrustee;
  11823.     MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
  11824.     TRUSTEE_FORM TrusteeForm;
  11825.     TRUSTEE_TYPE TrusteeType;
  11826.     LPWSTR ptstrName;
  11827.     }    TRUSTEE_W;
  11828.  
  11829. typedef struct  _TRUSTEE_A
  11830.     {
  11831.     PTRUSTEE_A pMultipleTrustee;
  11832.     MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
  11833.     TRUSTEE_FORM TrusteeForm;
  11834.     TRUSTEE_TYPE TrusteeType;
  11835.     LPSTR ptstrName;
  11836.     }    TRUSTEE_A;
  11837.  
  11838. typedef 
  11839. enum _ACCESS_MODE
  11840.     {    NOT_USED_ACCESS    = 0,
  11841.     GRANT_ACCESS    = NOT_USED_ACCESS + 1,
  11842.     SET_ACCESS    = GRANT_ACCESS + 1,
  11843.     DENY_ACCESS    = SET_ACCESS + 1,
  11844.     REVOKE_ACCESS    = DENY_ACCESS + 1,
  11845.     SET_AUDIT_SUCCESS    = REVOKE_ACCESS + 1,
  11846.     SET_AUDIT_FAILURE    = SET_AUDIT_SUCCESS + 1
  11847.     }    ACCESS_MODE;
  11848.  
  11849. typedef 
  11850. enum _SE_OBJECT_TYPE
  11851.     {    SE_UNKNOWN_OBJECT_TYPE    = 0,
  11852.     SE_FILE_OBJECT    = SE_UNKNOWN_OBJECT_TYPE + 1,
  11853.     SE_SERVICE    = SE_FILE_OBJECT + 1,
  11854.     SE_PRINTER    = SE_SERVICE + 1,
  11855.     SE_REGISTRY_KEY    = SE_PRINTER + 1,
  11856.     SE_LMSHARE    = SE_REGISTRY_KEY + 1,
  11857.     SE_KERNEL_OBJECT    = SE_LMSHARE + 1,
  11858.     SE_WINDOW_OBJECT    = SE_KERNEL_OBJECT + 1
  11859.     }    SE_OBJECT_TYPE;
  11860.  
  11861. typedef struct  _EXPLICIT_ACCESS_W
  11862.     {
  11863.     DWORD grfAccessPermissions;
  11864.     ACCESS_MODE grfAccessMode;
  11865.     DWORD grfInheritance;
  11866.     TRUSTEE_W Trustee;
  11867.     }    EXPLICIT_ACCESS_W;
  11868.  
  11869. typedef struct _EXPLICIT_ACCESS_W __RPC_FAR *PEXPLICIT_ACCESS_W;
  11870.  
  11871. typedef struct  _EXPLICIT_ACCESS_A
  11872.     {
  11873.     DWORD grfAccessPermissions;
  11874.     ACCESS_MODE grfAccessMode;
  11875.     DWORD grfInheritance;
  11876.     TRUSTEE_A Trustee;
  11877.     }    EXPLICIT_ACCESS_A;
  11878.  
  11879. typedef struct _EXPLICIT_ACCESS_A __RPC_FAR *PEXPLICIT_ACCESS_A;
  11880.  
  11881. #else
  11882. #include <accctrl.h>
  11883. #endif
  11884.  
  11885.  
  11886. extern RPC_IF_HANDLE __MIDL_itf_oledb_0222_v0_0_c_ifspec;
  11887. extern RPC_IF_HANDLE __MIDL_itf_oledb_0222_v0_0_s_ifspec;
  11888.  
  11889. #ifndef __ITrusteeAdmin_INTERFACE_DEFINED__
  11890. #define __ITrusteeAdmin_INTERFACE_DEFINED__
  11891.  
  11892. /****************************************
  11893.  * Generated header for interface: ITrusteeAdmin
  11894.  * at Wed Aug 26 14:08:54 1998
  11895.  * using MIDL 3.01.75
  11896.  ****************************************/
  11897. /* [unique][uuid][object][local] */ 
  11898.  
  11899.  
  11900.  
  11901. EXTERN_C const IID IID_ITrusteeAdmin;
  11902.  
  11903. #if defined(__cplusplus) && !defined(CINTERFACE)
  11904.     
  11905.     interface DECLSPEC_UUID("0c733aa1-2a1c-11ce-ade5-00aa0044773d")
  11906.     ITrusteeAdmin : public IUnknown
  11907.     {
  11908.     public:
  11909.         virtual HRESULT STDMETHODCALLTYPE CompareTrustees( 
  11910.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee1,
  11911.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee2) = 0;
  11912.         
  11913.         virtual HRESULT STDMETHODCALLTYPE CreateTrustee( 
  11914.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11915.             /* [in] */ ULONG cPropertySets,
  11916.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  11917.         
  11918.         virtual HRESULT STDMETHODCALLTYPE DeleteTrustee( 
  11919.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee) = 0;
  11920.         
  11921.         virtual HRESULT STDMETHODCALLTYPE SetTrusteeProperties( 
  11922.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11923.             /* [in] */ ULONG cPropertySets,
  11924.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]) = 0;
  11925.         
  11926.         virtual HRESULT STDMETHODCALLTYPE GetTrusteeProperties( 
  11927.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11928.             /* [in] */ const ULONG cPropertyIDSets,
  11929.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  11930.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  11931.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets) = 0;
  11932.         
  11933.     };
  11934.     
  11935. #else     /* C style interface */
  11936.  
  11937.     typedef struct ITrusteeAdminVtbl
  11938.     {
  11939.         BEGIN_INTERFACE
  11940.         
  11941.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  11942.             ITrusteeAdmin __RPC_FAR * This,
  11943.             /* [in] */ REFIID riid,
  11944.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  11945.         
  11946.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  11947.             ITrusteeAdmin __RPC_FAR * This);
  11948.         
  11949.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  11950.             ITrusteeAdmin __RPC_FAR * This);
  11951.         
  11952.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CompareTrustees )( 
  11953.             ITrusteeAdmin __RPC_FAR * This,
  11954.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee1,
  11955.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee2);
  11956.         
  11957.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTrustee )( 
  11958.             ITrusteeAdmin __RPC_FAR * This,
  11959.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11960.             /* [in] */ ULONG cPropertySets,
  11961.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  11962.         
  11963.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteTrustee )( 
  11964.             ITrusteeAdmin __RPC_FAR * This,
  11965.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee);
  11966.         
  11967.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTrusteeProperties )( 
  11968.             ITrusteeAdmin __RPC_FAR * This,
  11969.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11970.             /* [in] */ ULONG cPropertySets,
  11971.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  11972.         
  11973.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTrusteeProperties )( 
  11974.             ITrusteeAdmin __RPC_FAR * This,
  11975.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  11976.             /* [in] */ const ULONG cPropertyIDSets,
  11977.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  11978.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  11979.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  11980.         
  11981.         END_INTERFACE
  11982.     } ITrusteeAdminVtbl;
  11983.  
  11984.     interface ITrusteeAdmin
  11985.     {
  11986.         CONST_VTBL struct ITrusteeAdminVtbl __RPC_FAR *lpVtbl;
  11987.     };
  11988.  
  11989.     
  11990.  
  11991. #ifdef COBJMACROS
  11992.  
  11993.  
  11994. #define ITrusteeAdmin_QueryInterface(This,riid,ppvObject)    \
  11995.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  11996.  
  11997. #define ITrusteeAdmin_AddRef(This)    \
  11998.     (This)->lpVtbl -> AddRef(This)
  11999.  
  12000. #define ITrusteeAdmin_Release(This)    \
  12001.     (This)->lpVtbl -> Release(This)
  12002.  
  12003.  
  12004. #define ITrusteeAdmin_CompareTrustees(This,pTrustee1,pTrustee2)    \
  12005.     (This)->lpVtbl -> CompareTrustees(This,pTrustee1,pTrustee2)
  12006.  
  12007. #define ITrusteeAdmin_CreateTrustee(This,pTrustee,cPropertySets,rgPropertySets)    \
  12008.     (This)->lpVtbl -> CreateTrustee(This,pTrustee,cPropertySets,rgPropertySets)
  12009.  
  12010. #define ITrusteeAdmin_DeleteTrustee(This,pTrustee)    \
  12011.     (This)->lpVtbl -> DeleteTrustee(This,pTrustee)
  12012.  
  12013. #define ITrusteeAdmin_SetTrusteeProperties(This,pTrustee,cPropertySets,rgPropertySets)    \
  12014.     (This)->lpVtbl -> SetTrusteeProperties(This,pTrustee,cPropertySets,rgPropertySets)
  12015.  
  12016. #define ITrusteeAdmin_GetTrusteeProperties(This,pTrustee,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  12017.     (This)->lpVtbl -> GetTrusteeProperties(This,pTrustee,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  12018.  
  12019. #endif /* COBJMACROS */
  12020.  
  12021.  
  12022. #endif     /* C style interface */
  12023.  
  12024.  
  12025.  
  12026. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_CompareTrustees_Proxy( 
  12027.     ITrusteeAdmin __RPC_FAR * This,
  12028.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee1,
  12029.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee2);
  12030.  
  12031.  
  12032. void __RPC_STUB ITrusteeAdmin_CompareTrustees_Stub(
  12033.     IRpcStubBuffer *This,
  12034.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12035.     PRPC_MESSAGE _pRpcMessage,
  12036.     DWORD *_pdwStubPhase);
  12037.  
  12038.  
  12039. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_CreateTrustee_Proxy( 
  12040.     ITrusteeAdmin __RPC_FAR * This,
  12041.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12042.     /* [in] */ ULONG cPropertySets,
  12043.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  12044.  
  12045.  
  12046. void __RPC_STUB ITrusteeAdmin_CreateTrustee_Stub(
  12047.     IRpcStubBuffer *This,
  12048.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12049.     PRPC_MESSAGE _pRpcMessage,
  12050.     DWORD *_pdwStubPhase);
  12051.  
  12052.  
  12053. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_DeleteTrustee_Proxy( 
  12054.     ITrusteeAdmin __RPC_FAR * This,
  12055.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee);
  12056.  
  12057.  
  12058. void __RPC_STUB ITrusteeAdmin_DeleteTrustee_Stub(
  12059.     IRpcStubBuffer *This,
  12060.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12061.     PRPC_MESSAGE _pRpcMessage,
  12062.     DWORD *_pdwStubPhase);
  12063.  
  12064.  
  12065. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_SetTrusteeProperties_Proxy( 
  12066.     ITrusteeAdmin __RPC_FAR * This,
  12067.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12068.     /* [in] */ ULONG cPropertySets,
  12069.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  12070.  
  12071.  
  12072. void __RPC_STUB ITrusteeAdmin_SetTrusteeProperties_Stub(
  12073.     IRpcStubBuffer *This,
  12074.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12075.     PRPC_MESSAGE _pRpcMessage,
  12076.     DWORD *_pdwStubPhase);
  12077.  
  12078.  
  12079. HRESULT STDMETHODCALLTYPE ITrusteeAdmin_GetTrusteeProperties_Proxy( 
  12080.     ITrusteeAdmin __RPC_FAR * This,
  12081.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12082.     /* [in] */ const ULONG cPropertyIDSets,
  12083.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  12084.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  12085.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  12086.  
  12087.  
  12088. void __RPC_STUB ITrusteeAdmin_GetTrusteeProperties_Stub(
  12089.     IRpcStubBuffer *This,
  12090.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12091.     PRPC_MESSAGE _pRpcMessage,
  12092.     DWORD *_pdwStubPhase);
  12093.  
  12094.  
  12095.  
  12096. #endif     /* __ITrusteeAdmin_INTERFACE_DEFINED__ */
  12097.  
  12098.  
  12099. #ifndef __ITrusteeGroupAdmin_INTERFACE_DEFINED__
  12100. #define __ITrusteeGroupAdmin_INTERFACE_DEFINED__
  12101.  
  12102. /****************************************
  12103.  * Generated header for interface: ITrusteeGroupAdmin
  12104.  * at Wed Aug 26 14:08:54 1998
  12105.  * using MIDL 3.01.75
  12106.  ****************************************/
  12107. /* [unique][uuid][object][local] */ 
  12108.  
  12109.  
  12110.  
  12111. EXTERN_C const IID IID_ITrusteeGroupAdmin;
  12112.  
  12113. #if defined(__cplusplus) && !defined(CINTERFACE)
  12114.     
  12115.     interface DECLSPEC_UUID("0c733aa2-2a1c-11ce-ade5-00aa0044773d")
  12116.     ITrusteeGroupAdmin : public IUnknown
  12117.     {
  12118.     public:
  12119.         virtual HRESULT STDMETHODCALLTYPE AddMember( 
  12120.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12121.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee) = 0;
  12122.         
  12123.         virtual HRESULT STDMETHODCALLTYPE DeleteMember( 
  12124.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12125.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee) = 0;
  12126.         
  12127.         virtual HRESULT STDMETHODCALLTYPE IsMember( 
  12128.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12129.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee,
  12130.             /* [out] */ BOOL __RPC_FAR *pfStatus) = 0;
  12131.         
  12132.         virtual HRESULT STDMETHODCALLTYPE GetMembers( 
  12133.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12134.             /* [out] */ ULONG __RPC_FAR *pcMembers,
  12135.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMembers) = 0;
  12136.         
  12137.         virtual HRESULT STDMETHODCALLTYPE GetMemberships( 
  12138.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12139.             /* [out] */ ULONG __RPC_FAR *pcMemberships,
  12140.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMemberships) = 0;
  12141.         
  12142.     };
  12143.     
  12144. #else     /* C style interface */
  12145.  
  12146.     typedef struct ITrusteeGroupAdminVtbl
  12147.     {
  12148.         BEGIN_INTERFACE
  12149.         
  12150.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12151.             ITrusteeGroupAdmin __RPC_FAR * This,
  12152.             /* [in] */ REFIID riid,
  12153.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12154.         
  12155.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12156.             ITrusteeGroupAdmin __RPC_FAR * This);
  12157.         
  12158.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12159.             ITrusteeGroupAdmin __RPC_FAR * This);
  12160.         
  12161.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddMember )( 
  12162.             ITrusteeGroupAdmin __RPC_FAR * This,
  12163.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12164.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee);
  12165.         
  12166.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteMember )( 
  12167.             ITrusteeGroupAdmin __RPC_FAR * This,
  12168.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12169.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee);
  12170.         
  12171.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsMember )( 
  12172.             ITrusteeGroupAdmin __RPC_FAR * This,
  12173.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12174.             /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee,
  12175.             /* [out] */ BOOL __RPC_FAR *pfStatus);
  12176.         
  12177.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMembers )( 
  12178.             ITrusteeGroupAdmin __RPC_FAR * This,
  12179.             /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12180.             /* [out] */ ULONG __RPC_FAR *pcMembers,
  12181.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMembers);
  12182.         
  12183.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMemberships )( 
  12184.             ITrusteeGroupAdmin __RPC_FAR * This,
  12185.             /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12186.             /* [out] */ ULONG __RPC_FAR *pcMemberships,
  12187.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMemberships);
  12188.         
  12189.         END_INTERFACE
  12190.     } ITrusteeGroupAdminVtbl;
  12191.  
  12192.     interface ITrusteeGroupAdmin
  12193.     {
  12194.         CONST_VTBL struct ITrusteeGroupAdminVtbl __RPC_FAR *lpVtbl;
  12195.     };
  12196.  
  12197.     
  12198.  
  12199. #ifdef COBJMACROS
  12200.  
  12201.  
  12202. #define ITrusteeGroupAdmin_QueryInterface(This,riid,ppvObject)    \
  12203.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12204.  
  12205. #define ITrusteeGroupAdmin_AddRef(This)    \
  12206.     (This)->lpVtbl -> AddRef(This)
  12207.  
  12208. #define ITrusteeGroupAdmin_Release(This)    \
  12209.     (This)->lpVtbl -> Release(This)
  12210.  
  12211.  
  12212. #define ITrusteeGroupAdmin_AddMember(This,pMembershipTrustee,pMemberTrustee)    \
  12213.     (This)->lpVtbl -> AddMember(This,pMembershipTrustee,pMemberTrustee)
  12214.  
  12215. #define ITrusteeGroupAdmin_DeleteMember(This,pMembershipTrustee,pMemberTrustee)    \
  12216.     (This)->lpVtbl -> DeleteMember(This,pMembershipTrustee,pMemberTrustee)
  12217.  
  12218. #define ITrusteeGroupAdmin_IsMember(This,pMembershipTrustee,pMemberTrustee,pfStatus)    \
  12219.     (This)->lpVtbl -> IsMember(This,pMembershipTrustee,pMemberTrustee,pfStatus)
  12220.  
  12221. #define ITrusteeGroupAdmin_GetMembers(This,pMembershipTrustee,pcMembers,prgMembers)    \
  12222.     (This)->lpVtbl -> GetMembers(This,pMembershipTrustee,pcMembers,prgMembers)
  12223.  
  12224. #define ITrusteeGroupAdmin_GetMemberships(This,pTrustee,pcMemberships,prgMemberships)    \
  12225.     (This)->lpVtbl -> GetMemberships(This,pTrustee,pcMemberships,prgMemberships)
  12226.  
  12227. #endif /* COBJMACROS */
  12228.  
  12229.  
  12230. #endif     /* C style interface */
  12231.  
  12232.  
  12233.  
  12234. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_AddMember_Proxy( 
  12235.     ITrusteeGroupAdmin __RPC_FAR * This,
  12236.     /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12237.     /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee);
  12238.  
  12239.  
  12240. void __RPC_STUB ITrusteeGroupAdmin_AddMember_Stub(
  12241.     IRpcStubBuffer *This,
  12242.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12243.     PRPC_MESSAGE _pRpcMessage,
  12244.     DWORD *_pdwStubPhase);
  12245.  
  12246.  
  12247. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_DeleteMember_Proxy( 
  12248.     ITrusteeGroupAdmin __RPC_FAR * This,
  12249.     /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12250.     /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee);
  12251.  
  12252.  
  12253. void __RPC_STUB ITrusteeGroupAdmin_DeleteMember_Stub(
  12254.     IRpcStubBuffer *This,
  12255.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12256.     PRPC_MESSAGE _pRpcMessage,
  12257.     DWORD *_pdwStubPhase);
  12258.  
  12259.  
  12260. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_IsMember_Proxy( 
  12261.     ITrusteeGroupAdmin __RPC_FAR * This,
  12262.     /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12263.     /* [in] */ TRUSTEE_W __RPC_FAR *pMemberTrustee,
  12264.     /* [out] */ BOOL __RPC_FAR *pfStatus);
  12265.  
  12266.  
  12267. void __RPC_STUB ITrusteeGroupAdmin_IsMember_Stub(
  12268.     IRpcStubBuffer *This,
  12269.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12270.     PRPC_MESSAGE _pRpcMessage,
  12271.     DWORD *_pdwStubPhase);
  12272.  
  12273.  
  12274. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_GetMembers_Proxy( 
  12275.     ITrusteeGroupAdmin __RPC_FAR * This,
  12276.     /* [in] */ TRUSTEE_W __RPC_FAR *pMembershipTrustee,
  12277.     /* [out] */ ULONG __RPC_FAR *pcMembers,
  12278.     /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMembers);
  12279.  
  12280.  
  12281. void __RPC_STUB ITrusteeGroupAdmin_GetMembers_Stub(
  12282.     IRpcStubBuffer *This,
  12283.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12284.     PRPC_MESSAGE _pRpcMessage,
  12285.     DWORD *_pdwStubPhase);
  12286.  
  12287.  
  12288. HRESULT STDMETHODCALLTYPE ITrusteeGroupAdmin_GetMemberships_Proxy( 
  12289.     ITrusteeGroupAdmin __RPC_FAR * This,
  12290.     /* [in] */ TRUSTEE_W __RPC_FAR *pTrustee,
  12291.     /* [out] */ ULONG __RPC_FAR *pcMemberships,
  12292.     /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *prgMemberships);
  12293.  
  12294.  
  12295. void __RPC_STUB ITrusteeGroupAdmin_GetMemberships_Stub(
  12296.     IRpcStubBuffer *This,
  12297.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12298.     PRPC_MESSAGE _pRpcMessage,
  12299.     DWORD *_pdwStubPhase);
  12300.  
  12301.  
  12302.  
  12303. #endif     /* __ITrusteeGroupAdmin_INTERFACE_DEFINED__ */
  12304.  
  12305.  
  12306. #ifndef __IObjectAccessControl_INTERFACE_DEFINED__
  12307. #define __IObjectAccessControl_INTERFACE_DEFINED__
  12308.  
  12309. /****************************************
  12310.  * Generated header for interface: IObjectAccessControl
  12311.  * at Wed Aug 26 14:08:54 1998
  12312.  * using MIDL 3.01.75
  12313.  ****************************************/
  12314. /* [unique][uuid][object][local] */ 
  12315.  
  12316.  
  12317.  
  12318. EXTERN_C const IID IID_IObjectAccessControl;
  12319.  
  12320. #if defined(__cplusplus) && !defined(CINTERFACE)
  12321.     
  12322.     interface DECLSPEC_UUID("0c733aa3-2a1c-11ce-ade5-00aa0044773d")
  12323.     IObjectAccessControl : public IUnknown
  12324.     {
  12325.     public:
  12326.         virtual HRESULT STDMETHODCALLTYPE GetObjectAccessRights( 
  12327.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12328.             /* [out][in] */ ULONG __RPC_FAR *pcAccessEntries,
  12329.             /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *__RPC_FAR *prgAccessEntries) = 0;
  12330.         
  12331.         virtual HRESULT STDMETHODCALLTYPE GetObjectOwner( 
  12332.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12333.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppOwner) = 0;
  12334.         
  12335.         virtual HRESULT STDMETHODCALLTYPE IsObjectAccessAllowed( 
  12336.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12337.             /* [in] */ EXPLICIT_ACCESS_W __RPC_FAR *pAccessEntry,
  12338.             /* [out] */ BOOL __RPC_FAR *pfResult) = 0;
  12339.         
  12340.         virtual HRESULT STDMETHODCALLTYPE SetObjectAccessRights( 
  12341.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12342.             /* [in] */ ULONG cAccessEntries,
  12343.             /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *prgAccessEntries) = 0;
  12344.         
  12345.         virtual HRESULT STDMETHODCALLTYPE SetObjectOwner( 
  12346.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12347.             /* [in] */ TRUSTEE_W __RPC_FAR *pOwner) = 0;
  12348.         
  12349.     };
  12350.     
  12351. #else     /* C style interface */
  12352.  
  12353.     typedef struct IObjectAccessControlVtbl
  12354.     {
  12355.         BEGIN_INTERFACE
  12356.         
  12357.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12358.             IObjectAccessControl __RPC_FAR * This,
  12359.             /* [in] */ REFIID riid,
  12360.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12361.         
  12362.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12363.             IObjectAccessControl __RPC_FAR * This);
  12364.         
  12365.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12366.             IObjectAccessControl __RPC_FAR * This);
  12367.         
  12368.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjectAccessRights )( 
  12369.             IObjectAccessControl __RPC_FAR * This,
  12370.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12371.             /* [out][in] */ ULONG __RPC_FAR *pcAccessEntries,
  12372.             /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *__RPC_FAR *prgAccessEntries);
  12373.         
  12374.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjectOwner )( 
  12375.             IObjectAccessControl __RPC_FAR * This,
  12376.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12377.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppOwner);
  12378.         
  12379.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsObjectAccessAllowed )( 
  12380.             IObjectAccessControl __RPC_FAR * This,
  12381.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12382.             /* [in] */ EXPLICIT_ACCESS_W __RPC_FAR *pAccessEntry,
  12383.             /* [out] */ BOOL __RPC_FAR *pfResult);
  12384.         
  12385.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObjectAccessRights )( 
  12386.             IObjectAccessControl __RPC_FAR * This,
  12387.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12388.             /* [in] */ ULONG cAccessEntries,
  12389.             /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *prgAccessEntries);
  12390.         
  12391.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObjectOwner )( 
  12392.             IObjectAccessControl __RPC_FAR * This,
  12393.             /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12394.             /* [in] */ TRUSTEE_W __RPC_FAR *pOwner);
  12395.         
  12396.         END_INTERFACE
  12397.     } IObjectAccessControlVtbl;
  12398.  
  12399.     interface IObjectAccessControl
  12400.     {
  12401.         CONST_VTBL struct IObjectAccessControlVtbl __RPC_FAR *lpVtbl;
  12402.     };
  12403.  
  12404.     
  12405.  
  12406. #ifdef COBJMACROS
  12407.  
  12408.  
  12409. #define IObjectAccessControl_QueryInterface(This,riid,ppvObject)    \
  12410.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12411.  
  12412. #define IObjectAccessControl_AddRef(This)    \
  12413.     (This)->lpVtbl -> AddRef(This)
  12414.  
  12415. #define IObjectAccessControl_Release(This)    \
  12416.     (This)->lpVtbl -> Release(This)
  12417.  
  12418.  
  12419. #define IObjectAccessControl_GetObjectAccessRights(This,pObject,pcAccessEntries,prgAccessEntries)    \
  12420.     (This)->lpVtbl -> GetObjectAccessRights(This,pObject,pcAccessEntries,prgAccessEntries)
  12421.  
  12422. #define IObjectAccessControl_GetObjectOwner(This,pObject,ppOwner)    \
  12423.     (This)->lpVtbl -> GetObjectOwner(This,pObject,ppOwner)
  12424.  
  12425. #define IObjectAccessControl_IsObjectAccessAllowed(This,pObject,pAccessEntry,pfResult)    \
  12426.     (This)->lpVtbl -> IsObjectAccessAllowed(This,pObject,pAccessEntry,pfResult)
  12427.  
  12428. #define IObjectAccessControl_SetObjectAccessRights(This,pObject,cAccessEntries,prgAccessEntries)    \
  12429.     (This)->lpVtbl -> SetObjectAccessRights(This,pObject,cAccessEntries,prgAccessEntries)
  12430.  
  12431. #define IObjectAccessControl_SetObjectOwner(This,pObject,pOwner)    \
  12432.     (This)->lpVtbl -> SetObjectOwner(This,pObject,pOwner)
  12433.  
  12434. #endif /* COBJMACROS */
  12435.  
  12436.  
  12437. #endif     /* C style interface */
  12438.  
  12439.  
  12440.  
  12441. HRESULT STDMETHODCALLTYPE IObjectAccessControl_GetObjectAccessRights_Proxy( 
  12442.     IObjectAccessControl __RPC_FAR * This,
  12443.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12444.     /* [out][in] */ ULONG __RPC_FAR *pcAccessEntries,
  12445.     /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *__RPC_FAR *prgAccessEntries);
  12446.  
  12447.  
  12448. void __RPC_STUB IObjectAccessControl_GetObjectAccessRights_Stub(
  12449.     IRpcStubBuffer *This,
  12450.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12451.     PRPC_MESSAGE _pRpcMessage,
  12452.     DWORD *_pdwStubPhase);
  12453.  
  12454.  
  12455. HRESULT STDMETHODCALLTYPE IObjectAccessControl_GetObjectOwner_Proxy( 
  12456.     IObjectAccessControl __RPC_FAR * This,
  12457.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12458.     /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppOwner);
  12459.  
  12460.  
  12461. void __RPC_STUB IObjectAccessControl_GetObjectOwner_Stub(
  12462.     IRpcStubBuffer *This,
  12463.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12464.     PRPC_MESSAGE _pRpcMessage,
  12465.     DWORD *_pdwStubPhase);
  12466.  
  12467.  
  12468. HRESULT STDMETHODCALLTYPE IObjectAccessControl_IsObjectAccessAllowed_Proxy( 
  12469.     IObjectAccessControl __RPC_FAR * This,
  12470.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12471.     /* [in] */ EXPLICIT_ACCESS_W __RPC_FAR *pAccessEntry,
  12472.     /* [out] */ BOOL __RPC_FAR *pfResult);
  12473.  
  12474.  
  12475. void __RPC_STUB IObjectAccessControl_IsObjectAccessAllowed_Stub(
  12476.     IRpcStubBuffer *This,
  12477.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12478.     PRPC_MESSAGE _pRpcMessage,
  12479.     DWORD *_pdwStubPhase);
  12480.  
  12481.  
  12482. HRESULT STDMETHODCALLTYPE IObjectAccessControl_SetObjectAccessRights_Proxy( 
  12483.     IObjectAccessControl __RPC_FAR * This,
  12484.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12485.     /* [in] */ ULONG cAccessEntries,
  12486.     /* [out][in] */ EXPLICIT_ACCESS_W __RPC_FAR *prgAccessEntries);
  12487.  
  12488.  
  12489. void __RPC_STUB IObjectAccessControl_SetObjectAccessRights_Stub(
  12490.     IRpcStubBuffer *This,
  12491.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12492.     PRPC_MESSAGE _pRpcMessage,
  12493.     DWORD *_pdwStubPhase);
  12494.  
  12495.  
  12496. HRESULT STDMETHODCALLTYPE IObjectAccessControl_SetObjectOwner_Proxy( 
  12497.     IObjectAccessControl __RPC_FAR * This,
  12498.     /* [in] */ SEC_OBJECT __RPC_FAR *pObject,
  12499.     /* [in] */ TRUSTEE_W __RPC_FAR *pOwner);
  12500.  
  12501.  
  12502. void __RPC_STUB IObjectAccessControl_SetObjectOwner_Stub(
  12503.     IRpcStubBuffer *This,
  12504.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12505.     PRPC_MESSAGE _pRpcMessage,
  12506.     DWORD *_pdwStubPhase);
  12507.  
  12508.  
  12509.  
  12510. #endif     /* __IObjectAccessControl_INTERFACE_DEFINED__ */
  12511.  
  12512.  
  12513. #ifndef __ISecurityInfo_INTERFACE_DEFINED__
  12514. #define __ISecurityInfo_INTERFACE_DEFINED__
  12515.  
  12516. /****************************************
  12517.  * Generated header for interface: ISecurityInfo
  12518.  * at Wed Aug 26 14:08:54 1998
  12519.  * using MIDL 3.01.75
  12520.  ****************************************/
  12521. /* [unique][uuid][object][local] */ 
  12522.  
  12523.  
  12524. //@@@+ V2.1
  12525. #if( OLEDBVER >= 0x0210 )
  12526. typedef DWORD ACCESS_MASK;
  12527.  
  12528.  
  12529. enum ACCESS_MASKENUM
  12530.     {    PERM_DESIGN    = 0x800L,
  12531.     PERM_WITHGRANT    = 0x1000L,
  12532.     PERM_REFERENCE    = 0x2000L,
  12533.     PERM_CREATE    = 0x4000L,
  12534.     PERM_INSERT    = 0x8000L,
  12535.     PERM_DELETE    = 0x10000L,
  12536.     PERM_MAXIMUM_ALLOWED    = 0x2000000L,
  12537.     PERM_ALL    = 0x10000000L,
  12538.     PERM_EXECUTE    = 0x20000000L,
  12539.     PERM_READ    = 0x80000000L,
  12540.     PERM_UPDATE    = 0x40000000L
  12541.     };
  12542. #define PERM_WRITEDESIGN                             11
  12543. #define PERM_READDESIGN                                 10
  12544. #define PERM_WRITEOWNER                                 19
  12545. #define PERM_WRITEPERMISSIONS                        18
  12546. #define PERM_READCONTROL                                17
  12547. #define PERM_DESIGN                             PERM_WRITEDESIGN
  12548. #define PERM_EXCLUSIVE                                9
  12549. #endif // OLEDBVER >= 0x0210
  12550. //@@@- V2.1
  12551.  
  12552. EXTERN_C const IID IID_ISecurityInfo;
  12553.  
  12554. #if defined(__cplusplus) && !defined(CINTERFACE)
  12555.     
  12556.     interface DECLSPEC_UUID("0c733aa4-2a1c-11ce-ade5-00aa0044773d")
  12557.     ISecurityInfo : public IUnknown
  12558.     {
  12559.     public:
  12560.         virtual HRESULT STDMETHODCALLTYPE GetCurrentTrustee( 
  12561.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppTrustee) = 0;
  12562.         
  12563.         virtual HRESULT STDMETHODCALLTYPE GetObjectTypes( 
  12564.             /* [out] */ ULONG __RPC_FAR *cObjectTypes,
  12565.             /* [out] */ GUID __RPC_FAR *__RPC_FAR *rgObjectTypes) = 0;
  12566.         
  12567.         virtual HRESULT STDMETHODCALLTYPE GetPermissions( 
  12568.             /* [in] */ GUID ObjectType,
  12569.             /* [out] */ ACCESS_MASK __RPC_FAR *pPermissions) = 0;
  12570.         
  12571.     };
  12572.     
  12573. #else     /* C style interface */
  12574.  
  12575.     typedef struct ISecurityInfoVtbl
  12576.     {
  12577.         BEGIN_INTERFACE
  12578.         
  12579.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12580.             ISecurityInfo __RPC_FAR * This,
  12581.             /* [in] */ REFIID riid,
  12582.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12583.         
  12584.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12585.             ISecurityInfo __RPC_FAR * This);
  12586.         
  12587.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12588.             ISecurityInfo __RPC_FAR * This);
  12589.         
  12590.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCurrentTrustee )( 
  12591.             ISecurityInfo __RPC_FAR * This,
  12592.             /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppTrustee);
  12593.         
  12594.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjectTypes )( 
  12595.             ISecurityInfo __RPC_FAR * This,
  12596.             /* [out] */ ULONG __RPC_FAR *cObjectTypes,
  12597.             /* [out] */ GUID __RPC_FAR *__RPC_FAR *rgObjectTypes);
  12598.         
  12599.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPermissions )( 
  12600.             ISecurityInfo __RPC_FAR * This,
  12601.             /* [in] */ GUID ObjectType,
  12602.             /* [out] */ ACCESS_MASK __RPC_FAR *pPermissions);
  12603.         
  12604.         END_INTERFACE
  12605.     } ISecurityInfoVtbl;
  12606.  
  12607.     interface ISecurityInfo
  12608.     {
  12609.         CONST_VTBL struct ISecurityInfoVtbl __RPC_FAR *lpVtbl;
  12610.     };
  12611.  
  12612.     
  12613.  
  12614. #ifdef COBJMACROS
  12615.  
  12616.  
  12617. #define ISecurityInfo_QueryInterface(This,riid,ppvObject)    \
  12618.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12619.  
  12620. #define ISecurityInfo_AddRef(This)    \
  12621.     (This)->lpVtbl -> AddRef(This)
  12622.  
  12623. #define ISecurityInfo_Release(This)    \
  12624.     (This)->lpVtbl -> Release(This)
  12625.  
  12626.  
  12627. #define ISecurityInfo_GetCurrentTrustee(This,ppTrustee)    \
  12628.     (This)->lpVtbl -> GetCurrentTrustee(This,ppTrustee)
  12629.  
  12630. #define ISecurityInfo_GetObjectTypes(This,cObjectTypes,rgObjectTypes)    \
  12631.     (This)->lpVtbl -> GetObjectTypes(This,cObjectTypes,rgObjectTypes)
  12632.  
  12633. #define ISecurityInfo_GetPermissions(This,ObjectType,pPermissions)    \
  12634.     (This)->lpVtbl -> GetPermissions(This,ObjectType,pPermissions)
  12635.  
  12636. #endif /* COBJMACROS */
  12637.  
  12638.  
  12639. #endif     /* C style interface */
  12640.  
  12641.  
  12642.  
  12643. HRESULT STDMETHODCALLTYPE ISecurityInfo_GetCurrentTrustee_Proxy( 
  12644.     ISecurityInfo __RPC_FAR * This,
  12645.     /* [out] */ TRUSTEE_W __RPC_FAR *__RPC_FAR *ppTrustee);
  12646.  
  12647.  
  12648. void __RPC_STUB ISecurityInfo_GetCurrentTrustee_Stub(
  12649.     IRpcStubBuffer *This,
  12650.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12651.     PRPC_MESSAGE _pRpcMessage,
  12652.     DWORD *_pdwStubPhase);
  12653.  
  12654.  
  12655. HRESULT STDMETHODCALLTYPE ISecurityInfo_GetObjectTypes_Proxy( 
  12656.     ISecurityInfo __RPC_FAR * This,
  12657.     /* [out] */ ULONG __RPC_FAR *cObjectTypes,
  12658.     /* [out] */ GUID __RPC_FAR *__RPC_FAR *rgObjectTypes);
  12659.  
  12660.  
  12661. void __RPC_STUB ISecurityInfo_GetObjectTypes_Stub(
  12662.     IRpcStubBuffer *This,
  12663.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12664.     PRPC_MESSAGE _pRpcMessage,
  12665.     DWORD *_pdwStubPhase);
  12666.  
  12667.  
  12668. HRESULT STDMETHODCALLTYPE ISecurityInfo_GetPermissions_Proxy( 
  12669.     ISecurityInfo __RPC_FAR * This,
  12670.     /* [in] */ GUID ObjectType,
  12671.     /* [out] */ ACCESS_MASK __RPC_FAR *pPermissions);
  12672.  
  12673.  
  12674. void __RPC_STUB ISecurityInfo_GetPermissions_Stub(
  12675.     IRpcStubBuffer *This,
  12676.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12677.     PRPC_MESSAGE _pRpcMessage,
  12678.     DWORD *_pdwStubPhase);
  12679.  
  12680.  
  12681.  
  12682. #endif     /* __ISecurityInfo_INTERFACE_DEFINED__ */
  12683.  
  12684.  
  12685. #ifndef __ITableCreation_INTERFACE_DEFINED__
  12686. #define __ITableCreation_INTERFACE_DEFINED__
  12687.  
  12688. /****************************************
  12689.  * Generated header for interface: ITableCreation
  12690.  * at Wed Aug 26 14:08:54 1998
  12691.  * using MIDL 3.01.75
  12692.  ****************************************/
  12693. /* [unique][uuid][object][local] */ 
  12694.  
  12695.  
  12696.  
  12697. EXTERN_C const IID IID_ITableCreation;
  12698.  
  12699. #if defined(__cplusplus) && !defined(CINTERFACE)
  12700.     
  12701.     interface DECLSPEC_UUID("0c733abc-2a1c-11ce-ade5-00aa0044773d")
  12702.     ITableCreation : public ITableDefinition
  12703.     {
  12704.     public:
  12705.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetTableDefinition( 
  12706.             /* [in] */ DBID __RPC_FAR *pTableID,
  12707.             /* [out] */ ULONG __RPC_FAR *pcColumnDescs,
  12708.             /* [size_is][size_is][out] */ DBCOLUMNDESC __RPC_FAR *__RPC_FAR prgColumnDescs[  ],
  12709.             /* [out] */ ULONG __RPC_FAR *pcPropertySets,
  12710.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR prgPropertySets[  ],
  12711.             /* [out] */ ULONG __RPC_FAR *pcConstraintDescs,
  12712.             /* [size_is][size_is][out] */ DBCONSTRAINTDESC __RPC_FAR *__RPC_FAR prgConstraintDescs[  ],
  12713.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppwszStringBuffer) = 0;
  12714.         
  12715.     };
  12716.     
  12717. #else     /* C style interface */
  12718.  
  12719.     typedef struct ITableCreationVtbl
  12720.     {
  12721.         BEGIN_INTERFACE
  12722.         
  12723.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12724.             ITableCreation __RPC_FAR * This,
  12725.             /* [in] */ REFIID riid,
  12726.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12727.         
  12728.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12729.             ITableCreation __RPC_FAR * This);
  12730.         
  12731.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12732.             ITableCreation __RPC_FAR * This);
  12733.         
  12734.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTable )( 
  12735.             ITableCreation __RPC_FAR * This,
  12736.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  12737.             /* [in] */ DBID __RPC_FAR *pTableID,
  12738.             /* [in] */ ULONG cColumnDescs,
  12739.             /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  12740.             /* [in] */ REFIID riid,
  12741.             /* [in] */ ULONG cPropertySets,
  12742.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  12743.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  12744.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  12745.         
  12746.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropTable )( 
  12747.             ITableCreation __RPC_FAR * This,
  12748.             /* [unique][in] */ DBID __RPC_FAR *pTableID);
  12749.         
  12750.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
  12751.             ITableCreation __RPC_FAR * This,
  12752.             /* [in] */ DBID __RPC_FAR *pTableID,
  12753.             /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  12754.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID);
  12755.         
  12756.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropColumn )( 
  12757.             ITableCreation __RPC_FAR * This,
  12758.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  12759.             /* [unique][in] */ DBID __RPC_FAR *pColumnID);
  12760.         
  12761.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTableDefinition )( 
  12762.             ITableCreation __RPC_FAR * This,
  12763.             /* [in] */ DBID __RPC_FAR *pTableID,
  12764.             /* [out] */ ULONG __RPC_FAR *pcColumnDescs,
  12765.             /* [size_is][size_is][out] */ DBCOLUMNDESC __RPC_FAR *__RPC_FAR prgColumnDescs[  ],
  12766.             /* [out] */ ULONG __RPC_FAR *pcPropertySets,
  12767.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR prgPropertySets[  ],
  12768.             /* [out] */ ULONG __RPC_FAR *pcConstraintDescs,
  12769.             /* [size_is][size_is][out] */ DBCONSTRAINTDESC __RPC_FAR *__RPC_FAR prgConstraintDescs[  ],
  12770.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppwszStringBuffer);
  12771.         
  12772.         END_INTERFACE
  12773.     } ITableCreationVtbl;
  12774.  
  12775.     interface ITableCreation
  12776.     {
  12777.         CONST_VTBL struct ITableCreationVtbl __RPC_FAR *lpVtbl;
  12778.     };
  12779.  
  12780.     
  12781.  
  12782. #ifdef COBJMACROS
  12783.  
  12784.  
  12785. #define ITableCreation_QueryInterface(This,riid,ppvObject)    \
  12786.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12787.  
  12788. #define ITableCreation_AddRef(This)    \
  12789.     (This)->lpVtbl -> AddRef(This)
  12790.  
  12791. #define ITableCreation_Release(This)    \
  12792.     (This)->lpVtbl -> Release(This)
  12793.  
  12794.  
  12795. #define ITableCreation_CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)    \
  12796.     (This)->lpVtbl -> CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)
  12797.  
  12798. #define ITableCreation_DropTable(This,pTableID)    \
  12799.     (This)->lpVtbl -> DropTable(This,pTableID)
  12800.  
  12801. #define ITableCreation_AddColumn(This,pTableID,pColumnDesc,ppColumnID)    \
  12802.     (This)->lpVtbl -> AddColumn(This,pTableID,pColumnDesc,ppColumnID)
  12803.  
  12804. #define ITableCreation_DropColumn(This,pTableID,pColumnID)    \
  12805.     (This)->lpVtbl -> DropColumn(This,pTableID,pColumnID)
  12806.  
  12807.  
  12808. #define ITableCreation_GetTableDefinition(This,pTableID,pcColumnDescs,prgColumnDescs,pcPropertySets,prgPropertySets,pcConstraintDescs,prgConstraintDescs,ppwszStringBuffer)    \
  12809.     (This)->lpVtbl -> GetTableDefinition(This,pTableID,pcColumnDescs,prgColumnDescs,pcPropertySets,prgPropertySets,pcConstraintDescs,prgConstraintDescs,ppwszStringBuffer)
  12810.  
  12811. #endif /* COBJMACROS */
  12812.  
  12813.  
  12814. #endif     /* C style interface */
  12815.  
  12816.  
  12817.  
  12818. /* [local] */ HRESULT STDMETHODCALLTYPE ITableCreation_GetTableDefinition_Proxy( 
  12819.     ITableCreation __RPC_FAR * This,
  12820.     /* [in] */ DBID __RPC_FAR *pTableID,
  12821.     /* [out] */ ULONG __RPC_FAR *pcColumnDescs,
  12822.     /* [size_is][size_is][out] */ DBCOLUMNDESC __RPC_FAR *__RPC_FAR prgColumnDescs[  ],
  12823.     /* [out] */ ULONG __RPC_FAR *pcPropertySets,
  12824.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR prgPropertySets[  ],
  12825.     /* [out] */ ULONG __RPC_FAR *pcConstraintDescs,
  12826.     /* [size_is][size_is][out] */ DBCONSTRAINTDESC __RPC_FAR *__RPC_FAR prgConstraintDescs[  ],
  12827.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppwszStringBuffer);
  12828.  
  12829.  
  12830. void __RPC_STUB ITableCreation_GetTableDefinition_Stub(
  12831.     IRpcStubBuffer *This,
  12832.     IRpcChannelBuffer *_pRpcChannelBuffer,
  12833.     PRPC_MESSAGE _pRpcMessage,
  12834.     DWORD *_pdwStubPhase);
  12835.  
  12836.  
  12837.  
  12838. #endif     /* __ITableCreation_INTERFACE_DEFINED__ */
  12839.  
  12840.  
  12841. #ifndef __ITableDefinitionWithConstraints_INTERFACE_DEFINED__
  12842. #define __ITableDefinitionWithConstraints_INTERFACE_DEFINED__
  12843.  
  12844. /****************************************
  12845.  * Generated header for interface: ITableDefinitionWithConstraints
  12846.  * at Wed Aug 26 14:08:54 1998
  12847.  * using MIDL 3.01.75
  12848.  ****************************************/
  12849. /* [unique][uuid][object][local] */ 
  12850.  
  12851.  
  12852.  
  12853. EXTERN_C const IID IID_ITableDefinitionWithConstraints;
  12854.  
  12855. #if defined(__cplusplus) && !defined(CINTERFACE)
  12856.     
  12857.     interface DECLSPEC_UUID("0c733aab-2a1c-11ce-ade5-00aa0044773d")
  12858.     ITableDefinitionWithConstraints : public ITableCreation
  12859.     {
  12860.     public:
  12861.         virtual HRESULT STDMETHODCALLTYPE AddConstraint( 
  12862.             /* [in] */ DBID __RPC_FAR *pTableID,
  12863.             /* [in] */ DBCONSTRAINTDESC __RPC_FAR *pConstraintDesc) = 0;
  12864.         
  12865.         virtual HRESULT STDMETHODCALLTYPE CreateTableWithConstraints( 
  12866.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  12867.             /* [in] */ DBID __RPC_FAR *pTableID,
  12868.             /* [in] */ ULONG cColumnDescs,
  12869.             /* [out][size_is][in] */ DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  12870.             /* [in] */ ULONG cConstraintDescs,
  12871.             /* [size_is][in] */ DBCONSTRAINTDESC __RPC_FAR rgConstraintDescs[  ],
  12872.             /* [in] */ REFIID riid,
  12873.             /* [in] */ ULONG cPropertySets,
  12874.             /* [out][size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  12875.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  12876.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  12877.         
  12878.         virtual HRESULT STDMETHODCALLTYPE DropConstraint( 
  12879.             /* [in] */ DBID __RPC_FAR *pTableID,
  12880.             /* [in] */ DBID __RPC_FAR *pConstraintID) = 0;
  12881.         
  12882.     };
  12883.     
  12884. #else     /* C style interface */
  12885.  
  12886.     typedef struct ITableDefinitionWithConstraintsVtbl
  12887.     {
  12888.         BEGIN_INTERFACE
  12889.         
  12890.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  12891.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12892.             /* [in] */ REFIID riid,
  12893.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  12894.         
  12895.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  12896.             ITableDefinitionWithConstraints __RPC_FAR * This);
  12897.         
  12898.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  12899.             ITableDefinitionWithConstraints __RPC_FAR * This);
  12900.         
  12901.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTable )( 
  12902.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12903.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  12904.             /* [in] */ DBID __RPC_FAR *pTableID,
  12905.             /* [in] */ ULONG cColumnDescs,
  12906.             /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  12907.             /* [in] */ REFIID riid,
  12908.             /* [in] */ ULONG cPropertySets,
  12909.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  12910.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  12911.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  12912.         
  12913.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropTable )( 
  12914.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12915.             /* [unique][in] */ DBID __RPC_FAR *pTableID);
  12916.         
  12917.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
  12918.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12919.             /* [in] */ DBID __RPC_FAR *pTableID,
  12920.             /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  12921.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID);
  12922.         
  12923.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropColumn )( 
  12924.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12925.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  12926.             /* [unique][in] */ DBID __RPC_FAR *pColumnID);
  12927.         
  12928.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTableDefinition )( 
  12929.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12930.             /* [in] */ DBID __RPC_FAR *pTableID,
  12931.             /* [out] */ ULONG __RPC_FAR *pcColumnDescs,
  12932.             /* [size_is][size_is][out] */ DBCOLUMNDESC __RPC_FAR *__RPC_FAR prgColumnDescs[  ],
  12933.             /* [out] */ ULONG __RPC_FAR *pcPropertySets,
  12934.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR prgPropertySets[  ],
  12935.             /* [out] */ ULONG __RPC_FAR *pcConstraintDescs,
  12936.             /* [size_is][size_is][out] */ DBCONSTRAINTDESC __RPC_FAR *__RPC_FAR prgConstraintDescs[  ],
  12937.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppwszStringBuffer);
  12938.         
  12939.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddConstraint )( 
  12940.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12941.             /* [in] */ DBID __RPC_FAR *pTableID,
  12942.             /* [in] */ DBCONSTRAINTDESC __RPC_FAR *pConstraintDesc);
  12943.         
  12944.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateTableWithConstraints )( 
  12945.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12946.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  12947.             /* [in] */ DBID __RPC_FAR *pTableID,
  12948.             /* [in] */ ULONG cColumnDescs,
  12949.             /* [out][size_is][in] */ DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  12950.             /* [in] */ ULONG cConstraintDescs,
  12951.             /* [size_is][in] */ DBCONSTRAINTDESC __RPC_FAR rgConstraintDescs[  ],
  12952.             /* [in] */ REFIID riid,
  12953.             /* [in] */ ULONG cPropertySets,
  12954.             /* [out][size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  12955.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  12956.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  12957.         
  12958.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DropConstraint )( 
  12959.             ITableDefinitionWithConstraints __RPC_FAR * This,
  12960.             /* [in] */ DBID __RPC_FAR *pTableID,
  12961.             /* [in] */ DBID __RPC_FAR *pConstraintID);
  12962.         
  12963.         END_INTERFACE
  12964.     } ITableDefinitionWithConstraintsVtbl;
  12965.  
  12966.     interface ITableDefinitionWithConstraints
  12967.     {
  12968.         CONST_VTBL struct ITableDefinitionWithConstraintsVtbl __RPC_FAR *lpVtbl;
  12969.     };
  12970.  
  12971.     
  12972.  
  12973. #ifdef COBJMACROS
  12974.  
  12975.  
  12976. #define ITableDefinitionWithConstraints_QueryInterface(This,riid,ppvObject)    \
  12977.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  12978.  
  12979. #define ITableDefinitionWithConstraints_AddRef(This)    \
  12980.     (This)->lpVtbl -> AddRef(This)
  12981.  
  12982. #define ITableDefinitionWithConstraints_Release(This)    \
  12983.     (This)->lpVtbl -> Release(This)
  12984.  
  12985.  
  12986. #define ITableDefinitionWithConstraints_CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)    \
  12987.     (This)->lpVtbl -> CreateTable(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)
  12988.  
  12989. #define ITableDefinitionWithConstraints_DropTable(This,pTableID)    \
  12990.     (This)->lpVtbl -> DropTable(This,pTableID)
  12991.  
  12992. #define ITableDefinitionWithConstraints_AddColumn(This,pTableID,pColumnDesc,ppColumnID)    \
  12993.     (This)->lpVtbl -> AddColumn(This,pTableID,pColumnDesc,ppColumnID)
  12994.  
  12995. #define ITableDefinitionWithConstraints_DropColumn(This,pTableID,pColumnID)    \
  12996.     (This)->lpVtbl -> DropColumn(This,pTableID,pColumnID)
  12997.  
  12998.  
  12999. #define ITableDefinitionWithConstraints_GetTableDefinition(This,pTableID,pcColumnDescs,prgColumnDescs,pcPropertySets,prgPropertySets,pcConstraintDescs,prgConstraintDescs,ppwszStringBuffer)    \
  13000.     (This)->lpVtbl -> GetTableDefinition(This,pTableID,pcColumnDescs,prgColumnDescs,pcPropertySets,prgPropertySets,pcConstraintDescs,prgConstraintDescs,ppwszStringBuffer)
  13001.  
  13002.  
  13003. #define ITableDefinitionWithConstraints_AddConstraint(This,pTableID,pConstraintDesc)    \
  13004.     (This)->lpVtbl -> AddConstraint(This,pTableID,pConstraintDesc)
  13005.  
  13006. #define ITableDefinitionWithConstraints_CreateTableWithConstraints(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,cConstraintDescs,rgConstraintDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)    \
  13007.     (This)->lpVtbl -> CreateTableWithConstraints(This,pUnkOuter,pTableID,cColumnDescs,rgColumnDescs,cConstraintDescs,rgConstraintDescs,riid,cPropertySets,rgPropertySets,ppTableID,ppRowset)
  13008.  
  13009. #define ITableDefinitionWithConstraints_DropConstraint(This,pTableID,pConstraintID)    \
  13010.     (This)->lpVtbl -> DropConstraint(This,pTableID,pConstraintID)
  13011.  
  13012. #endif /* COBJMACROS */
  13013.  
  13014.  
  13015. #endif     /* C style interface */
  13016.  
  13017.  
  13018.  
  13019. HRESULT STDMETHODCALLTYPE ITableDefinitionWithConstraints_AddConstraint_Proxy( 
  13020.     ITableDefinitionWithConstraints __RPC_FAR * This,
  13021.     /* [in] */ DBID __RPC_FAR *pTableID,
  13022.     /* [in] */ DBCONSTRAINTDESC __RPC_FAR *pConstraintDesc);
  13023.  
  13024.  
  13025. void __RPC_STUB ITableDefinitionWithConstraints_AddConstraint_Stub(
  13026.     IRpcStubBuffer *This,
  13027.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13028.     PRPC_MESSAGE _pRpcMessage,
  13029.     DWORD *_pdwStubPhase);
  13030.  
  13031.  
  13032. HRESULT STDMETHODCALLTYPE ITableDefinitionWithConstraints_CreateTableWithConstraints_Proxy( 
  13033.     ITableDefinitionWithConstraints __RPC_FAR * This,
  13034.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13035.     /* [in] */ DBID __RPC_FAR *pTableID,
  13036.     /* [in] */ ULONG cColumnDescs,
  13037.     /* [out][size_is][in] */ DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  13038.     /* [in] */ ULONG cConstraintDescs,
  13039.     /* [size_is][in] */ DBCONSTRAINTDESC __RPC_FAR rgConstraintDescs[  ],
  13040.     /* [in] */ REFIID riid,
  13041.     /* [in] */ ULONG cPropertySets,
  13042.     /* [out][size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  13043.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  13044.     /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  13045.  
  13046.  
  13047. void __RPC_STUB ITableDefinitionWithConstraints_CreateTableWithConstraints_Stub(
  13048.     IRpcStubBuffer *This,
  13049.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13050.     PRPC_MESSAGE _pRpcMessage,
  13051.     DWORD *_pdwStubPhase);
  13052.  
  13053.  
  13054. HRESULT STDMETHODCALLTYPE ITableDefinitionWithConstraints_DropConstraint_Proxy( 
  13055.     ITableDefinitionWithConstraints __RPC_FAR * This,
  13056.     /* [in] */ DBID __RPC_FAR *pTableID,
  13057.     /* [in] */ DBID __RPC_FAR *pConstraintID);
  13058.  
  13059.  
  13060. void __RPC_STUB ITableDefinitionWithConstraints_DropConstraint_Stub(
  13061.     IRpcStubBuffer *This,
  13062.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13063.     PRPC_MESSAGE _pRpcMessage,
  13064.     DWORD *_pdwStubPhase);
  13065.  
  13066.  
  13067.  
  13068. #endif     /* __ITableDefinitionWithConstraints_INTERFACE_DEFINED__ */
  13069.  
  13070.  
  13071. #ifndef __IRow_INTERFACE_DEFINED__
  13072. #define __IRow_INTERFACE_DEFINED__
  13073.  
  13074. /****************************************
  13075.  * Generated header for interface: IRow
  13076.  * at Wed Aug 26 14:08:54 1998
  13077.  * using MIDL 3.01.75
  13078.  ****************************************/
  13079. /* [unique][uuid][object][local] */ 
  13080.  
  13081.  
  13082.  
  13083. EXTERN_C const IID IID_IRow;
  13084.  
  13085. #if defined(__cplusplus) && !defined(CINTERFACE)
  13086.     
  13087.     interface DECLSPEC_UUID("0c733ab4-2a1c-11ce-ade5-00aa0044773d")
  13088.     IRow : public IUnknown
  13089.     {
  13090.     public:
  13091.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetColumns( 
  13092.             /* [in] */ ULONG cColumns,
  13093.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]) = 0;
  13094.         
  13095.         virtual HRESULT STDMETHODCALLTYPE GetSourceRowset( 
  13096.             /* [in] */ REFIID riid,
  13097.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  13098.             /* [out] */ HROW __RPC_FAR *phRow) = 0;
  13099.         
  13100.         virtual HRESULT STDMETHODCALLTYPE Open( 
  13101.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13102.             /* [in] */ DBID __RPC_FAR *pColumnID,
  13103.             /* [in] */ REFGUID rguidColumnType,
  13104.             /* [in] */ DWORD dwBindFlags,
  13105.             /* [in] */ REFIID riid,
  13106.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk) = 0;
  13107.         
  13108.     };
  13109.     
  13110. #else     /* C style interface */
  13111.  
  13112.     typedef struct IRowVtbl
  13113.     {
  13114.         BEGIN_INTERFACE
  13115.         
  13116.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13117.             IRow __RPC_FAR * This,
  13118.             /* [in] */ REFIID riid,
  13119.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13120.         
  13121.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13122.             IRow __RPC_FAR * This);
  13123.         
  13124.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13125.             IRow __RPC_FAR * This);
  13126.         
  13127.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetColumns )( 
  13128.             IRow __RPC_FAR * This,
  13129.             /* [in] */ ULONG cColumns,
  13130.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13131.         
  13132.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceRowset )( 
  13133.             IRow __RPC_FAR * This,
  13134.             /* [in] */ REFIID riid,
  13135.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  13136.             /* [out] */ HROW __RPC_FAR *phRow);
  13137.         
  13138.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )( 
  13139.             IRow __RPC_FAR * This,
  13140.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13141.             /* [in] */ DBID __RPC_FAR *pColumnID,
  13142.             /* [in] */ REFGUID rguidColumnType,
  13143.             /* [in] */ DWORD dwBindFlags,
  13144.             /* [in] */ REFIID riid,
  13145.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13146.         
  13147.         END_INTERFACE
  13148.     } IRowVtbl;
  13149.  
  13150.     interface IRow
  13151.     {
  13152.         CONST_VTBL struct IRowVtbl __RPC_FAR *lpVtbl;
  13153.     };
  13154.  
  13155.     
  13156.  
  13157. #ifdef COBJMACROS
  13158.  
  13159.  
  13160. #define IRow_QueryInterface(This,riid,ppvObject)    \
  13161.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13162.  
  13163. #define IRow_AddRef(This)    \
  13164.     (This)->lpVtbl -> AddRef(This)
  13165.  
  13166. #define IRow_Release(This)    \
  13167.     (This)->lpVtbl -> Release(This)
  13168.  
  13169.  
  13170. #define IRow_GetColumns(This,cColumns,rgColumns)    \
  13171.     (This)->lpVtbl -> GetColumns(This,cColumns,rgColumns)
  13172.  
  13173. #define IRow_GetSourceRowset(This,riid,ppRowset,phRow)    \
  13174.     (This)->lpVtbl -> GetSourceRowset(This,riid,ppRowset,phRow)
  13175.  
  13176. #define IRow_Open(This,pUnkOuter,pColumnID,rguidColumnType,dwBindFlags,riid,ppUnk)    \
  13177.     (This)->lpVtbl -> Open(This,pUnkOuter,pColumnID,rguidColumnType,dwBindFlags,riid,ppUnk)
  13178.  
  13179. #endif /* COBJMACROS */
  13180.  
  13181.  
  13182. #endif     /* C style interface */
  13183.  
  13184.  
  13185.  
  13186. /* [local] */ HRESULT STDMETHODCALLTYPE IRow_GetColumns_Proxy( 
  13187.     IRow __RPC_FAR * This,
  13188.     /* [in] */ ULONG cColumns,
  13189.     /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13190.  
  13191.  
  13192. void __RPC_STUB IRow_GetColumns_Stub(
  13193.     IRpcStubBuffer *This,
  13194.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13195.     PRPC_MESSAGE _pRpcMessage,
  13196.     DWORD *_pdwStubPhase);
  13197.  
  13198.  
  13199. HRESULT STDMETHODCALLTYPE IRow_GetSourceRowset_Proxy( 
  13200.     IRow __RPC_FAR * This,
  13201.     /* [in] */ REFIID riid,
  13202.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  13203.     /* [out] */ HROW __RPC_FAR *phRow);
  13204.  
  13205.  
  13206. void __RPC_STUB IRow_GetSourceRowset_Stub(
  13207.     IRpcStubBuffer *This,
  13208.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13209.     PRPC_MESSAGE _pRpcMessage,
  13210.     DWORD *_pdwStubPhase);
  13211.  
  13212.  
  13213. HRESULT STDMETHODCALLTYPE IRow_Open_Proxy( 
  13214.     IRow __RPC_FAR * This,
  13215.     /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13216.     /* [in] */ DBID __RPC_FAR *pColumnID,
  13217.     /* [in] */ REFGUID rguidColumnType,
  13218.     /* [in] */ DWORD dwBindFlags,
  13219.     /* [in] */ REFIID riid,
  13220.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13221.  
  13222.  
  13223. void __RPC_STUB IRow_Open_Stub(
  13224.     IRpcStubBuffer *This,
  13225.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13226.     PRPC_MESSAGE _pRpcMessage,
  13227.     DWORD *_pdwStubPhase);
  13228.  
  13229.  
  13230.  
  13231. #endif     /* __IRow_INTERFACE_DEFINED__ */
  13232.  
  13233.  
  13234. #ifndef __IRowChange_INTERFACE_DEFINED__
  13235. #define __IRowChange_INTERFACE_DEFINED__
  13236.  
  13237. /****************************************
  13238.  * Generated header for interface: IRowChange
  13239.  * at Wed Aug 26 14:08:54 1998
  13240.  * using MIDL 3.01.75
  13241.  ****************************************/
  13242. /* [unique][uuid][object][local] */ 
  13243.  
  13244.  
  13245.  
  13246. EXTERN_C const IID IID_IRowChange;
  13247.  
  13248. #if defined(__cplusplus) && !defined(CINTERFACE)
  13249.     
  13250.     interface DECLSPEC_UUID("0c733ab5-2a1c-11ce-ade5-00aa0044773d")
  13251.     IRowChange : public IUnknown
  13252.     {
  13253.     public:
  13254.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetColumns( 
  13255.             /* [in] */ ULONG cColumns,
  13256.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]) = 0;
  13257.         
  13258.     };
  13259.     
  13260. #else     /* C style interface */
  13261.  
  13262.     typedef struct IRowChangeVtbl
  13263.     {
  13264.         BEGIN_INTERFACE
  13265.         
  13266.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13267.             IRowChange __RPC_FAR * This,
  13268.             /* [in] */ REFIID riid,
  13269.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13270.         
  13271.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13272.             IRowChange __RPC_FAR * This);
  13273.         
  13274.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13275.             IRowChange __RPC_FAR * This);
  13276.         
  13277.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetColumns )( 
  13278.             IRowChange __RPC_FAR * This,
  13279.             /* [in] */ ULONG cColumns,
  13280.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13281.         
  13282.         END_INTERFACE
  13283.     } IRowChangeVtbl;
  13284.  
  13285.     interface IRowChange
  13286.     {
  13287.         CONST_VTBL struct IRowChangeVtbl __RPC_FAR *lpVtbl;
  13288.     };
  13289.  
  13290.     
  13291.  
  13292. #ifdef COBJMACROS
  13293.  
  13294.  
  13295. #define IRowChange_QueryInterface(This,riid,ppvObject)    \
  13296.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13297.  
  13298. #define IRowChange_AddRef(This)    \
  13299.     (This)->lpVtbl -> AddRef(This)
  13300.  
  13301. #define IRowChange_Release(This)    \
  13302.     (This)->lpVtbl -> Release(This)
  13303.  
  13304.  
  13305. #define IRowChange_SetColumns(This,cColumns,rgColumns)    \
  13306.     (This)->lpVtbl -> SetColumns(This,cColumns,rgColumns)
  13307.  
  13308. #endif /* COBJMACROS */
  13309.  
  13310.  
  13311. #endif     /* C style interface */
  13312.  
  13313.  
  13314.  
  13315. /* [local] */ HRESULT STDMETHODCALLTYPE IRowChange_SetColumns_Proxy( 
  13316.     IRowChange __RPC_FAR * This,
  13317.     /* [in] */ ULONG cColumns,
  13318.     /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13319.  
  13320.  
  13321. void __RPC_STUB IRowChange_SetColumns_Stub(
  13322.     IRpcStubBuffer *This,
  13323.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13324.     PRPC_MESSAGE _pRpcMessage,
  13325.     DWORD *_pdwStubPhase);
  13326.  
  13327.  
  13328.  
  13329. #endif     /* __IRowChange_INTERFACE_DEFINED__ */
  13330.  
  13331.  
  13332. #ifndef __IRowSchemaChange_INTERFACE_DEFINED__
  13333. #define __IRowSchemaChange_INTERFACE_DEFINED__
  13334.  
  13335. /****************************************
  13336.  * Generated header for interface: IRowSchemaChange
  13337.  * at Wed Aug 26 14:08:54 1998
  13338.  * using MIDL 3.01.75
  13339.  ****************************************/
  13340. /* [unique][uuid][object][local] */ 
  13341.  
  13342.  
  13343.  
  13344. EXTERN_C const IID IID_IRowSchemaChange;
  13345.  
  13346. #if defined(__cplusplus) && !defined(CINTERFACE)
  13347.     
  13348.     interface DECLSPEC_UUID("0c733aae-2a1c-11ce-ade5-00aa0044773d")
  13349.     IRowSchemaChange : public IRowChange
  13350.     {
  13351.     public:
  13352.         virtual HRESULT STDMETHODCALLTYPE DeleteColumns( 
  13353.             /* [in] */ ULONG cColumns,
  13354.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  13355.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]) = 0;
  13356.         
  13357.         virtual HRESULT STDMETHODCALLTYPE AddColumns( 
  13358.             /* [in] */ ULONG cColumns,
  13359.             /* [size_is][in] */ const DBCOLUMNINFO __RPC_FAR rgNewColumnInfo[  ],
  13360.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]) = 0;
  13361.         
  13362.     };
  13363.     
  13364. #else     /* C style interface */
  13365.  
  13366.     typedef struct IRowSchemaChangeVtbl
  13367.     {
  13368.         BEGIN_INTERFACE
  13369.         
  13370.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13371.             IRowSchemaChange __RPC_FAR * This,
  13372.             /* [in] */ REFIID riid,
  13373.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13374.         
  13375.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13376.             IRowSchemaChange __RPC_FAR * This);
  13377.         
  13378.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13379.             IRowSchemaChange __RPC_FAR * This);
  13380.         
  13381.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetColumns )( 
  13382.             IRowSchemaChange __RPC_FAR * This,
  13383.             /* [in] */ ULONG cColumns,
  13384.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13385.         
  13386.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteColumns )( 
  13387.             IRowSchemaChange __RPC_FAR * This,
  13388.             /* [in] */ ULONG cColumns,
  13389.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  13390.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]);
  13391.         
  13392.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumns )( 
  13393.             IRowSchemaChange __RPC_FAR * This,
  13394.             /* [in] */ ULONG cColumns,
  13395.             /* [size_is][in] */ const DBCOLUMNINFO __RPC_FAR rgNewColumnInfo[  ],
  13396.             /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13397.         
  13398.         END_INTERFACE
  13399.     } IRowSchemaChangeVtbl;
  13400.  
  13401.     interface IRowSchemaChange
  13402.     {
  13403.         CONST_VTBL struct IRowSchemaChangeVtbl __RPC_FAR *lpVtbl;
  13404.     };
  13405.  
  13406.     
  13407.  
  13408. #ifdef COBJMACROS
  13409.  
  13410.  
  13411. #define IRowSchemaChange_QueryInterface(This,riid,ppvObject)    \
  13412.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13413.  
  13414. #define IRowSchemaChange_AddRef(This)    \
  13415.     (This)->lpVtbl -> AddRef(This)
  13416.  
  13417. #define IRowSchemaChange_Release(This)    \
  13418.     (This)->lpVtbl -> Release(This)
  13419.  
  13420.  
  13421. #define IRowSchemaChange_SetColumns(This,cColumns,rgColumns)    \
  13422.     (This)->lpVtbl -> SetColumns(This,cColumns,rgColumns)
  13423.  
  13424.  
  13425. #define IRowSchemaChange_DeleteColumns(This,cColumns,rgColumnIDs,rgdwStatus)    \
  13426.     (This)->lpVtbl -> DeleteColumns(This,cColumns,rgColumnIDs,rgdwStatus)
  13427.  
  13428. #define IRowSchemaChange_AddColumns(This,cColumns,rgNewColumnInfo,rgColumns)    \
  13429.     (This)->lpVtbl -> AddColumns(This,cColumns,rgNewColumnInfo,rgColumns)
  13430.  
  13431. #endif /* COBJMACROS */
  13432.  
  13433.  
  13434. #endif     /* C style interface */
  13435.  
  13436.  
  13437.  
  13438. HRESULT STDMETHODCALLTYPE IRowSchemaChange_DeleteColumns_Proxy( 
  13439.     IRowSchemaChange __RPC_FAR * This,
  13440.     /* [in] */ ULONG cColumns,
  13441.     /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  13442.     /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]);
  13443.  
  13444.  
  13445. void __RPC_STUB IRowSchemaChange_DeleteColumns_Stub(
  13446.     IRpcStubBuffer *This,
  13447.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13448.     PRPC_MESSAGE _pRpcMessage,
  13449.     DWORD *_pdwStubPhase);
  13450.  
  13451.  
  13452. HRESULT STDMETHODCALLTYPE IRowSchemaChange_AddColumns_Proxy( 
  13453.     IRowSchemaChange __RPC_FAR * This,
  13454.     /* [in] */ ULONG cColumns,
  13455.     /* [size_is][in] */ const DBCOLUMNINFO __RPC_FAR rgNewColumnInfo[  ],
  13456.     /* [size_is][out][in] */ DBCOLUMNACCESS __RPC_FAR rgColumns[  ]);
  13457.  
  13458.  
  13459. void __RPC_STUB IRowSchemaChange_AddColumns_Stub(
  13460.     IRpcStubBuffer *This,
  13461.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13462.     PRPC_MESSAGE _pRpcMessage,
  13463.     DWORD *_pdwStubPhase);
  13464.  
  13465.  
  13466.  
  13467. #endif     /* __IRowSchemaChange_INTERFACE_DEFINED__ */
  13468.  
  13469.  
  13470. #ifndef __IGetRow_INTERFACE_DEFINED__
  13471. #define __IGetRow_INTERFACE_DEFINED__
  13472.  
  13473. /****************************************
  13474.  * Generated header for interface: IGetRow
  13475.  * at Wed Aug 26 14:08:54 1998
  13476.  * using MIDL 3.01.75
  13477.  ****************************************/
  13478. /* [unique][uuid][object][local] */ 
  13479.  
  13480.  
  13481.  
  13482. EXTERN_C const IID IID_IGetRow;
  13483.  
  13484. #if defined(__cplusplus) && !defined(CINTERFACE)
  13485.     
  13486.     interface DECLSPEC_UUID("0c733aaf-2a1c-11ce-ade5-00aa0044773d")
  13487.     IGetRow : public IUnknown
  13488.     {
  13489.     public:
  13490.         virtual HRESULT STDMETHODCALLTYPE GetRowFromHROW( 
  13491.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13492.             /* [in] */ HROW hRow,
  13493.             /* [in] */ REFIID riid,
  13494.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk) = 0;
  13495.         
  13496.         virtual HRESULT STDMETHODCALLTYPE GetURLFromHROW( 
  13497.             /* [in] */ HROW hRow,
  13498.             /* [out] */ LPOLESTR __RPC_FAR *ppwszURL) = 0;
  13499.         
  13500.     };
  13501.     
  13502. #else     /* C style interface */
  13503.  
  13504.     typedef struct IGetRowVtbl
  13505.     {
  13506.         BEGIN_INTERFACE
  13507.         
  13508.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13509.             IGetRow __RPC_FAR * This,
  13510.             /* [in] */ REFIID riid,
  13511.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13512.         
  13513.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13514.             IGetRow __RPC_FAR * This);
  13515.         
  13516.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13517.             IGetRow __RPC_FAR * This);
  13518.         
  13519.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRowFromHROW )( 
  13520.             IGetRow __RPC_FAR * This,
  13521.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13522.             /* [in] */ HROW hRow,
  13523.             /* [in] */ REFIID riid,
  13524.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13525.         
  13526.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetURLFromHROW )( 
  13527.             IGetRow __RPC_FAR * This,
  13528.             /* [in] */ HROW hRow,
  13529.             /* [out] */ LPOLESTR __RPC_FAR *ppwszURL);
  13530.         
  13531.         END_INTERFACE
  13532.     } IGetRowVtbl;
  13533.  
  13534.     interface IGetRow
  13535.     {
  13536.         CONST_VTBL struct IGetRowVtbl __RPC_FAR *lpVtbl;
  13537.     };
  13538.  
  13539.     
  13540.  
  13541. #ifdef COBJMACROS
  13542.  
  13543.  
  13544. #define IGetRow_QueryInterface(This,riid,ppvObject)    \
  13545.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13546.  
  13547. #define IGetRow_AddRef(This)    \
  13548.     (This)->lpVtbl -> AddRef(This)
  13549.  
  13550. #define IGetRow_Release(This)    \
  13551.     (This)->lpVtbl -> Release(This)
  13552.  
  13553.  
  13554. #define IGetRow_GetRowFromHROW(This,pUnkOuter,hRow,riid,ppUnk)    \
  13555.     (This)->lpVtbl -> GetRowFromHROW(This,pUnkOuter,hRow,riid,ppUnk)
  13556.  
  13557. #define IGetRow_GetURLFromHROW(This,hRow,ppwszURL)    \
  13558.     (This)->lpVtbl -> GetURLFromHROW(This,hRow,ppwszURL)
  13559.  
  13560. #endif /* COBJMACROS */
  13561.  
  13562.  
  13563. #endif     /* C style interface */
  13564.  
  13565.  
  13566.  
  13567. HRESULT STDMETHODCALLTYPE IGetRow_GetRowFromHROW_Proxy( 
  13568.     IGetRow __RPC_FAR * This,
  13569.     /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  13570.     /* [in] */ HROW hRow,
  13571.     /* [in] */ REFIID riid,
  13572.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13573.  
  13574.  
  13575. void __RPC_STUB IGetRow_GetRowFromHROW_Stub(
  13576.     IRpcStubBuffer *This,
  13577.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13578.     PRPC_MESSAGE _pRpcMessage,
  13579.     DWORD *_pdwStubPhase);
  13580.  
  13581.  
  13582. HRESULT STDMETHODCALLTYPE IGetRow_GetURLFromHROW_Proxy( 
  13583.     IGetRow __RPC_FAR * This,
  13584.     /* [in] */ HROW hRow,
  13585.     /* [out] */ LPOLESTR __RPC_FAR *ppwszURL);
  13586.  
  13587.  
  13588. void __RPC_STUB IGetRow_GetURLFromHROW_Stub(
  13589.     IRpcStubBuffer *This,
  13590.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13591.     PRPC_MESSAGE _pRpcMessage,
  13592.     DWORD *_pdwStubPhase);
  13593.  
  13594.  
  13595.  
  13596. #endif     /* __IGetRow_INTERFACE_DEFINED__ */
  13597.  
  13598.  
  13599. #ifndef __IBindResource_INTERFACE_DEFINED__
  13600. #define __IBindResource_INTERFACE_DEFINED__
  13601.  
  13602. /****************************************
  13603.  * Generated header for interface: IBindResource
  13604.  * at Wed Aug 26 14:08:54 1998
  13605.  * using MIDL 3.01.75
  13606.  ****************************************/
  13607. /* [unique][uuid][object] */ 
  13608.  
  13609.  
  13610.  
  13611. EXTERN_C const IID IID_IBindResource;
  13612.  
  13613. #if defined(__cplusplus) && !defined(CINTERFACE)
  13614.     
  13615.     interface DECLSPEC_UUID("0c733ab1-2a1c-11ce-ade5-00aa0044773d")
  13616.     IBindResource : public IUnknown
  13617.     {
  13618.     public:
  13619.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Bind( 
  13620.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13621.             /* [in] */ LPCOLESTR pwszURL,
  13622.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  13623.             /* [in] */ REFGUID rguid,
  13624.             /* [in] */ REFIID riid,
  13625.             /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13626.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  13627.             /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  13628.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk) = 0;
  13629.         
  13630.     };
  13631.     
  13632. #else     /* C style interface */
  13633.  
  13634.     typedef struct IBindResourceVtbl
  13635.     {
  13636.         BEGIN_INTERFACE
  13637.         
  13638.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13639.             IBindResource __RPC_FAR * This,
  13640.             /* [in] */ REFIID riid,
  13641.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13642.         
  13643.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13644.             IBindResource __RPC_FAR * This);
  13645.         
  13646.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13647.             IBindResource __RPC_FAR * This);
  13648.         
  13649.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Bind )( 
  13650.             IBindResource __RPC_FAR * This,
  13651.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13652.             /* [in] */ LPCOLESTR pwszURL,
  13653.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  13654.             /* [in] */ REFGUID rguid,
  13655.             /* [in] */ REFIID riid,
  13656.             /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13657.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  13658.             /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  13659.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13660.         
  13661.         END_INTERFACE
  13662.     } IBindResourceVtbl;
  13663.  
  13664.     interface IBindResource
  13665.     {
  13666.         CONST_VTBL struct IBindResourceVtbl __RPC_FAR *lpVtbl;
  13667.     };
  13668.  
  13669.     
  13670.  
  13671. #ifdef COBJMACROS
  13672.  
  13673.  
  13674. #define IBindResource_QueryInterface(This,riid,ppvObject)    \
  13675.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13676.  
  13677. #define IBindResource_AddRef(This)    \
  13678.     (This)->lpVtbl -> AddRef(This)
  13679.  
  13680. #define IBindResource_Release(This)    \
  13681.     (This)->lpVtbl -> Release(This)
  13682.  
  13683.  
  13684. #define IBindResource_Bind(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppUnk)    \
  13685.     (This)->lpVtbl -> Bind(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppUnk)
  13686.  
  13687. #endif /* COBJMACROS */
  13688.  
  13689.  
  13690. #endif     /* C style interface */
  13691.  
  13692.  
  13693.  
  13694. /* [call_as] */ HRESULT STDMETHODCALLTYPE IBindResource_RemoteBind_Proxy( 
  13695.     IBindResource __RPC_FAR * This,
  13696.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13697.     /* [in] */ LPCOLESTR pwszURL,
  13698.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  13699.     /* [in] */ REFGUID rguid,
  13700.     /* [in] */ REFIID riid,
  13701.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13702.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  13703.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  13704.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13705.  
  13706.  
  13707. void __RPC_STUB IBindResource_RemoteBind_Stub(
  13708.     IRpcStubBuffer *This,
  13709.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13710.     PRPC_MESSAGE _pRpcMessage,
  13711.     DWORD *_pdwStubPhase);
  13712.  
  13713.  
  13714.  
  13715. #endif     /* __IBindResource_INTERFACE_DEFINED__ */
  13716.  
  13717.  
  13718. #ifndef __IScopedOperations_INTERFACE_DEFINED__
  13719. #define __IScopedOperations_INTERFACE_DEFINED__
  13720.  
  13721. /****************************************
  13722.  * Generated header for interface: IScopedOperations
  13723.  * at Wed Aug 26 14:08:54 1998
  13724.  * using MIDL 3.01.75
  13725.  ****************************************/
  13726. /* [unique][uuid][object] */ 
  13727.  
  13728.  
  13729. typedef DWORD DBCOPYFLAGS;
  13730.  
  13731.  
  13732. enum DBCOPYFLAGSENUM
  13733.     {    DBCOPY_ASYNC    = 0x100,
  13734.     DBCOPY_REPLACE_EXISTING    = 0x200,
  13735.     DBCOPY_ALLOW_EMULATION    = 0x400,
  13736.     DBCOPY_NON_RECURSIVE    = 0x800,
  13737.     DBCOPY_ATOMIC    = 0x1000
  13738.     };
  13739. typedef DWORD DBMOVEFLAGS;
  13740.  
  13741.  
  13742. enum DBMOVEFLAGSENUM
  13743.     {    DBMOVE_REPLACE_EXISTING    = 0x1,
  13744.     DBMOVE_ASYNC    = 0x100,
  13745.     DBMOVE_DONT_UPDATE_LINKS    = 0x200,
  13746.     DBMOVE_ALLOW_EMULATION    = 0x400,
  13747.     DBMOVE_ATOMIC    = 0x1000
  13748.     };
  13749. typedef DWORD DBDELETEFLAGS;
  13750.  
  13751.  
  13752. enum DBDELETEFLAGSENUM
  13753.     {    DBDELETE_ASYNC    = 0x100,
  13754.     DBDELETE_ATOMIC    = 0x1000
  13755.     };
  13756.  
  13757. EXTERN_C const IID IID_IScopedOperations;
  13758.  
  13759. #if defined(__cplusplus) && !defined(CINTERFACE)
  13760.     
  13761.     interface DECLSPEC_UUID("0c733ab0-2a1c-11ce-ade5-00aa0044773d")
  13762.     IScopedOperations : public IBindResource
  13763.     {
  13764.     public:
  13765.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Copy( 
  13766.             /* [in] */ ULONG cRows,
  13767.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  13768.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  13769.             /* [in] */ DWORD dwCopyFlags,
  13770.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13771.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  13772.             /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  13773.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer) = 0;
  13774.         
  13775.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Move( 
  13776.             /* [in] */ ULONG cRows,
  13777.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  13778.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  13779.             /* [in] */ DWORD dwMoveFlags,
  13780.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13781.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  13782.             /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  13783.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer) = 0;
  13784.         
  13785.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Delete( 
  13786.             /* [in] */ ULONG cRows,
  13787.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszURLs[  ],
  13788.             /* [in] */ DWORD dwDeleteFlags,
  13789.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]) = 0;
  13790.         
  13791.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenRowset( 
  13792.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13793.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  13794.             /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  13795.             /* [in] */ REFIID riid,
  13796.             /* [in] */ ULONG cPropertySets,
  13797.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  13798.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset) = 0;
  13799.         
  13800.     };
  13801.     
  13802. #else     /* C style interface */
  13803.  
  13804.     typedef struct IScopedOperationsVtbl
  13805.     {
  13806.         BEGIN_INTERFACE
  13807.         
  13808.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  13809.             IScopedOperations __RPC_FAR * This,
  13810.             /* [in] */ REFIID riid,
  13811.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  13812.         
  13813.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  13814.             IScopedOperations __RPC_FAR * This);
  13815.         
  13816.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  13817.             IScopedOperations __RPC_FAR * This);
  13818.         
  13819.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Bind )( 
  13820.             IScopedOperations __RPC_FAR * This,
  13821.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13822.             /* [in] */ LPCOLESTR pwszURL,
  13823.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  13824.             /* [in] */ REFGUID rguid,
  13825.             /* [in] */ REFIID riid,
  13826.             /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13827.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  13828.             /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  13829.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  13830.         
  13831.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Copy )( 
  13832.             IScopedOperations __RPC_FAR * This,
  13833.             /* [in] */ ULONG cRows,
  13834.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  13835.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  13836.             /* [in] */ DWORD dwCopyFlags,
  13837.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13838.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  13839.             /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  13840.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  13841.         
  13842.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Move )( 
  13843.             IScopedOperations __RPC_FAR * This,
  13844.             /* [in] */ ULONG cRows,
  13845.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  13846.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  13847.             /* [in] */ DWORD dwMoveFlags,
  13848.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13849.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  13850.             /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  13851.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  13852.         
  13853.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
  13854.             IScopedOperations __RPC_FAR * This,
  13855.             /* [in] */ ULONG cRows,
  13856.             /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszURLs[  ],
  13857.             /* [in] */ DWORD dwDeleteFlags,
  13858.             /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]);
  13859.         
  13860.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenRowset )( 
  13861.             IScopedOperations __RPC_FAR * This,
  13862.             /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13863.             /* [unique][in] */ DBID __RPC_FAR *pTableID,
  13864.             /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  13865.             /* [in] */ REFIID riid,
  13866.             /* [in] */ ULONG cPropertySets,
  13867.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  13868.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  13869.         
  13870.         END_INTERFACE
  13871.     } IScopedOperationsVtbl;
  13872.  
  13873.     interface IScopedOperations
  13874.     {
  13875.         CONST_VTBL struct IScopedOperationsVtbl __RPC_FAR *lpVtbl;
  13876.     };
  13877.  
  13878.     
  13879.  
  13880. #ifdef COBJMACROS
  13881.  
  13882.  
  13883. #define IScopedOperations_QueryInterface(This,riid,ppvObject)    \
  13884.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  13885.  
  13886. #define IScopedOperations_AddRef(This)    \
  13887.     (This)->lpVtbl -> AddRef(This)
  13888.  
  13889. #define IScopedOperations_Release(This)    \
  13890.     (This)->lpVtbl -> Release(This)
  13891.  
  13892.  
  13893. #define IScopedOperations_Bind(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppUnk)    \
  13894.     (This)->lpVtbl -> Bind(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppUnk)
  13895.  
  13896.  
  13897. #define IScopedOperations_Copy(This,cRows,rgpwszSourceURLs,rgpwszDestURLs,dwCopyFlags,pAuthenticate,rgdwStatus,rgpwszNewURLs,ppStringsBuffer)    \
  13898.     (This)->lpVtbl -> Copy(This,cRows,rgpwszSourceURLs,rgpwszDestURLs,dwCopyFlags,pAuthenticate,rgdwStatus,rgpwszNewURLs,ppStringsBuffer)
  13899.  
  13900. #define IScopedOperations_Move(This,cRows,rgpwszSourceURLs,rgpwszDestURLs,dwMoveFlags,pAuthenticate,rgdwStatus,rgpwszNewURLs,ppStringsBuffer)    \
  13901.     (This)->lpVtbl -> Move(This,cRows,rgpwszSourceURLs,rgpwszDestURLs,dwMoveFlags,pAuthenticate,rgdwStatus,rgpwszNewURLs,ppStringsBuffer)
  13902.  
  13903. #define IScopedOperations_Delete(This,cRows,rgpwszURLs,dwDeleteFlags,rgdwStatus)    \
  13904.     (This)->lpVtbl -> Delete(This,cRows,rgpwszURLs,dwDeleteFlags,rgdwStatus)
  13905.  
  13906. #define IScopedOperations_OpenRowset(This,pUnkOuter,pTableID,pIndexID,riid,cPropertySets,rgPropertySets,ppRowset)    \
  13907.     (This)->lpVtbl -> OpenRowset(This,pUnkOuter,pTableID,pIndexID,riid,cPropertySets,rgPropertySets,ppRowset)
  13908.  
  13909. #endif /* COBJMACROS */
  13910.  
  13911.  
  13912. #endif     /* C style interface */
  13913.  
  13914.  
  13915.  
  13916. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_RemoteCopy_Proxy( 
  13917.     IScopedOperations __RPC_FAR * This,
  13918.     /* [in] */ ULONG cRows,
  13919.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszSourceURLs,
  13920.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszDestURLs,
  13921.     /* [in] */ DWORD dwCopyFlags,
  13922.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13923.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus,
  13924.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgulNewURLOffsets,
  13925.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  13926.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  13927.  
  13928.  
  13929. void __RPC_STUB IScopedOperations_RemoteCopy_Stub(
  13930.     IRpcStubBuffer *This,
  13931.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13932.     PRPC_MESSAGE _pRpcMessage,
  13933.     DWORD *_pdwStubPhase);
  13934.  
  13935.  
  13936. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_RemoteMove_Proxy( 
  13937.     IScopedOperations __RPC_FAR * This,
  13938.     /* [in] */ ULONG cRows,
  13939.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszSourceURLs,
  13940.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszDestURLs,
  13941.     /* [in] */ DWORD dwMoveFlags,
  13942.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  13943.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus,
  13944.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgulNewURLOffsets,
  13945.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  13946.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  13947.  
  13948.  
  13949. void __RPC_STUB IScopedOperations_RemoteMove_Stub(
  13950.     IRpcStubBuffer *This,
  13951.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13952.     PRPC_MESSAGE _pRpcMessage,
  13953.     DWORD *_pdwStubPhase);
  13954.  
  13955.  
  13956. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_RemoteDelete_Proxy( 
  13957.     IScopedOperations __RPC_FAR * This,
  13958.     /* [in] */ ULONG cRows,
  13959.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszURLs,
  13960.     /* [in] */ DWORD dwDeleteFlags,
  13961.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus);
  13962.  
  13963.  
  13964. void __RPC_STUB IScopedOperations_RemoteDelete_Stub(
  13965.     IRpcStubBuffer *This,
  13966.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13967.     PRPC_MESSAGE _pRpcMessage,
  13968.     DWORD *_pdwStubPhase);
  13969.  
  13970.  
  13971. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_RemoteOpenRowset_Proxy( 
  13972.     IScopedOperations __RPC_FAR * This,
  13973.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  13974.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  13975.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  13976.     /* [in] */ REFIID riid,
  13977.     /* [in] */ ULONG cPropertySets,
  13978.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  13979.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  13980.     /* [in] */ ULONG cTotalProps,
  13981.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus);
  13982.  
  13983.  
  13984. void __RPC_STUB IScopedOperations_RemoteOpenRowset_Stub(
  13985.     IRpcStubBuffer *This,
  13986.     IRpcChannelBuffer *_pRpcChannelBuffer,
  13987.     PRPC_MESSAGE _pRpcMessage,
  13988.     DWORD *_pdwStubPhase);
  13989.  
  13990.  
  13991.  
  13992. #endif     /* __IScopedOperations_INTERFACE_DEFINED__ */
  13993.  
  13994.  
  13995. #ifndef __ICreateRow_INTERFACE_DEFINED__
  13996. #define __ICreateRow_INTERFACE_DEFINED__
  13997.  
  13998. /****************************************
  13999.  * Generated header for interface: ICreateRow
  14000.  * at Wed Aug 26 14:08:54 1998
  14001.  * using MIDL 3.01.75
  14002.  ****************************************/
  14003. /* [unique][uuid][object] */ 
  14004.  
  14005.  
  14006.  
  14007. EXTERN_C const IID IID_ICreateRow;
  14008.  
  14009. #if defined(__cplusplus) && !defined(CINTERFACE)
  14010.     
  14011.     interface DECLSPEC_UUID("0c733ab2-2a1c-11ce-ade5-00aa0044773d")
  14012.     ICreateRow : public IUnknown
  14013.     {
  14014.     public:
  14015.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateRow( 
  14016.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  14017.             /* [in] */ LPCOLESTR pwszURL,
  14018.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  14019.             /* [in] */ REFGUID rguid,
  14020.             /* [in] */ REFIID riid,
  14021.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  14022.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  14023.             /* [out][in] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  14024.             /* [out] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  14025.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk) = 0;
  14026.         
  14027.     };
  14028.     
  14029. #else     /* C style interface */
  14030.  
  14031.     typedef struct ICreateRowVtbl
  14032.     {
  14033.         BEGIN_INTERFACE
  14034.         
  14035.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14036.             ICreateRow __RPC_FAR * This,
  14037.             /* [in] */ REFIID riid,
  14038.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14039.         
  14040.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14041.             ICreateRow __RPC_FAR * This);
  14042.         
  14043.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14044.             ICreateRow __RPC_FAR * This);
  14045.         
  14046.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateRow )( 
  14047.             ICreateRow __RPC_FAR * This,
  14048.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  14049.             /* [in] */ LPCOLESTR pwszURL,
  14050.             /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  14051.             /* [in] */ REFGUID rguid,
  14052.             /* [in] */ REFIID riid,
  14053.             /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  14054.             /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  14055.             /* [out][in] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  14056.             /* [out] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  14057.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  14058.         
  14059.         END_INTERFACE
  14060.     } ICreateRowVtbl;
  14061.  
  14062.     interface ICreateRow
  14063.     {
  14064.         CONST_VTBL struct ICreateRowVtbl __RPC_FAR *lpVtbl;
  14065.     };
  14066.  
  14067.     
  14068.  
  14069. #ifdef COBJMACROS
  14070.  
  14071.  
  14072. #define ICreateRow_QueryInterface(This,riid,ppvObject)    \
  14073.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14074.  
  14075. #define ICreateRow_AddRef(This)    \
  14076.     (This)->lpVtbl -> AddRef(This)
  14077.  
  14078. #define ICreateRow_Release(This)    \
  14079.     (This)->lpVtbl -> Release(This)
  14080.  
  14081.  
  14082. #define ICreateRow_CreateRow(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppwszNewURL,ppUnk)    \
  14083.     (This)->lpVtbl -> CreateRow(This,pUnkOuter,pwszURL,dwBindURLFlags,rguid,riid,pAuthenticate,pImplSession,pdwBindStatus,ppwszNewURL,ppUnk)
  14084.  
  14085. #endif /* COBJMACROS */
  14086.  
  14087.  
  14088. #endif     /* C style interface */
  14089.  
  14090.  
  14091.  
  14092. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICreateRow_RemoteCreateRow_Proxy( 
  14093.     ICreateRow __RPC_FAR * This,
  14094.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  14095.     /* [in] */ LPCOLESTR pwszURL,
  14096.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  14097.     /* [in] */ REFGUID rguid,
  14098.     /* [in] */ REFIID riid,
  14099.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  14100.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  14101.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  14102.     /* [unique][out][in] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  14103.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  14104.  
  14105.  
  14106. void __RPC_STUB ICreateRow_RemoteCreateRow_Stub(
  14107.     IRpcStubBuffer *This,
  14108.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14109.     PRPC_MESSAGE _pRpcMessage,
  14110.     DWORD *_pdwStubPhase);
  14111.  
  14112.  
  14113.  
  14114. #endif     /* __ICreateRow_INTERFACE_DEFINED__ */
  14115.  
  14116.  
  14117. #ifndef __IDBBinderProperties_INTERFACE_DEFINED__
  14118. #define __IDBBinderProperties_INTERFACE_DEFINED__
  14119.  
  14120. /****************************************
  14121.  * Generated header for interface: IDBBinderProperties
  14122.  * at Wed Aug 26 14:08:54 1998
  14123.  * using MIDL 3.01.75
  14124.  ****************************************/
  14125. /* [unique][uuid][object] */ 
  14126.  
  14127.  
  14128.  
  14129. EXTERN_C const IID IID_IDBBinderProperties;
  14130.  
  14131. #if defined(__cplusplus) && !defined(CINTERFACE)
  14132.     
  14133.     interface DECLSPEC_UUID("0c733ab3-2a1c-11ce-ade5-00aa0044773d")
  14134.     IDBBinderProperties : public IDBProperties
  14135.     {
  14136.     public:
  14137.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  14138.         
  14139.     };
  14140.     
  14141. #else     /* C style interface */
  14142.  
  14143.     typedef struct IDBBinderPropertiesVtbl
  14144.     {
  14145.         BEGIN_INTERFACE
  14146.         
  14147.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14148.             IDBBinderProperties __RPC_FAR * This,
  14149.             /* [in] */ REFIID riid,
  14150.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14151.         
  14152.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14153.             IDBBinderProperties __RPC_FAR * This);
  14154.         
  14155.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14156.             IDBBinderProperties __RPC_FAR * This);
  14157.         
  14158.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
  14159.             IDBBinderProperties __RPC_FAR * This,
  14160.             /* [in] */ ULONG cPropertyIDSets,
  14161.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  14162.             /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  14163.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  14164.         
  14165.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPropertyInfo )( 
  14166.             IDBBinderProperties __RPC_FAR * This,
  14167.             /* [in] */ ULONG cPropertyIDSets,
  14168.             /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  14169.             /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  14170.             /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  14171.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  14172.         
  14173.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProperties )( 
  14174.             IDBBinderProperties __RPC_FAR * This,
  14175.             /* [in] */ ULONG cPropertySets,
  14176.             /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  14177.         
  14178.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Reset )( 
  14179.             IDBBinderProperties __RPC_FAR * This);
  14180.         
  14181.         END_INTERFACE
  14182.     } IDBBinderPropertiesVtbl;
  14183.  
  14184.     interface IDBBinderProperties
  14185.     {
  14186.         CONST_VTBL struct IDBBinderPropertiesVtbl __RPC_FAR *lpVtbl;
  14187.     };
  14188.  
  14189.     
  14190.  
  14191. #ifdef COBJMACROS
  14192.  
  14193.  
  14194. #define IDBBinderProperties_QueryInterface(This,riid,ppvObject)    \
  14195.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14196.  
  14197. #define IDBBinderProperties_AddRef(This)    \
  14198.     (This)->lpVtbl -> AddRef(This)
  14199.  
  14200. #define IDBBinderProperties_Release(This)    \
  14201.     (This)->lpVtbl -> Release(This)
  14202.  
  14203.  
  14204. #define IDBBinderProperties_GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)    \
  14205.     (This)->lpVtbl -> GetProperties(This,cPropertyIDSets,rgPropertyIDSets,pcPropertySets,prgPropertySets)
  14206.  
  14207. #define IDBBinderProperties_GetPropertyInfo(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)    \
  14208.     (This)->lpVtbl -> GetPropertyInfo(This,cPropertyIDSets,rgPropertyIDSets,pcPropertyInfoSets,prgPropertyInfoSets,ppDescBuffer)
  14209.  
  14210. #define IDBBinderProperties_SetProperties(This,cPropertySets,rgPropertySets)    \
  14211.     (This)->lpVtbl -> SetProperties(This,cPropertySets,rgPropertySets)
  14212.  
  14213.  
  14214. #define IDBBinderProperties_Reset(This)    \
  14215.     (This)->lpVtbl -> Reset(This)
  14216.  
  14217. #endif /* COBJMACROS */
  14218.  
  14219.  
  14220. #endif     /* C style interface */
  14221.  
  14222.  
  14223.  
  14224. HRESULT STDMETHODCALLTYPE IDBBinderProperties_Reset_Proxy( 
  14225.     IDBBinderProperties __RPC_FAR * This);
  14226.  
  14227.  
  14228. void __RPC_STUB IDBBinderProperties_Reset_Stub(
  14229.     IRpcStubBuffer *This,
  14230.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14231.     PRPC_MESSAGE _pRpcMessage,
  14232.     DWORD *_pdwStubPhase);
  14233.  
  14234.  
  14235.  
  14236. #endif     /* __IDBBinderProperties_INTERFACE_DEFINED__ */
  14237.  
  14238.  
  14239. #ifndef __IColumnsInfo2_INTERFACE_DEFINED__
  14240. #define __IColumnsInfo2_INTERFACE_DEFINED__
  14241.  
  14242. /****************************************
  14243.  * Generated header for interface: IColumnsInfo2
  14244.  * at Wed Aug 26 14:08:54 1998
  14245.  * using MIDL 3.01.75
  14246.  ****************************************/
  14247. /* [unique][uuid][object] */ 
  14248.  
  14249.  
  14250.  
  14251. EXTERN_C const IID IID_IColumnsInfo2;
  14252.  
  14253. #if defined(__cplusplus) && !defined(CINTERFACE)
  14254.     
  14255.     interface DECLSPEC_UUID("0c733ab8-2a1c-11ce-ade5-00aa0044773d")
  14256.     IColumnsInfo2 : public IColumnsInfo
  14257.     {
  14258.     public:
  14259.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetRestrictedColumnInfo( 
  14260.             /* [in] */ ULONG cColumnIDMasks,
  14261.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDMasks[  ],
  14262.             /* [in] */ DWORD dwFlags,
  14263.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  14264.             /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  14265.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  14266.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer) = 0;
  14267.         
  14268.     };
  14269.     
  14270. #else     /* C style interface */
  14271.  
  14272.     typedef struct IColumnsInfo2Vtbl
  14273.     {
  14274.         BEGIN_INTERFACE
  14275.         
  14276.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14277.             IColumnsInfo2 __RPC_FAR * This,
  14278.             /* [in] */ REFIID riid,
  14279.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14280.         
  14281.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14282.             IColumnsInfo2 __RPC_FAR * This);
  14283.         
  14284.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14285.             IColumnsInfo2 __RPC_FAR * This);
  14286.         
  14287.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetColumnInfo )( 
  14288.             IColumnsInfo2 __RPC_FAR * This,
  14289.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  14290.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  14291.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  14292.         
  14293.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MapColumnIDs )( 
  14294.             IColumnsInfo2 __RPC_FAR * This,
  14295.             /* [in] */ ULONG cColumnIDs,
  14296.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  14297.             /* [size_is][out] */ ULONG __RPC_FAR rgColumns[  ]);
  14298.         
  14299.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRestrictedColumnInfo )( 
  14300.             IColumnsInfo2 __RPC_FAR * This,
  14301.             /* [in] */ ULONG cColumnIDMasks,
  14302.             /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDMasks[  ],
  14303.             /* [in] */ DWORD dwFlags,
  14304.             /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  14305.             /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  14306.             /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  14307.             /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  14308.         
  14309.         END_INTERFACE
  14310.     } IColumnsInfo2Vtbl;
  14311.  
  14312.     interface IColumnsInfo2
  14313.     {
  14314.         CONST_VTBL struct IColumnsInfo2Vtbl __RPC_FAR *lpVtbl;
  14315.     };
  14316.  
  14317.     
  14318.  
  14319. #ifdef COBJMACROS
  14320.  
  14321.  
  14322. #define IColumnsInfo2_QueryInterface(This,riid,ppvObject)    \
  14323.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14324.  
  14325. #define IColumnsInfo2_AddRef(This)    \
  14326.     (This)->lpVtbl -> AddRef(This)
  14327.  
  14328. #define IColumnsInfo2_Release(This)    \
  14329.     (This)->lpVtbl -> Release(This)
  14330.  
  14331.  
  14332. #define IColumnsInfo2_GetColumnInfo(This,pcColumns,prgInfo,ppStringsBuffer)    \
  14333.     (This)->lpVtbl -> GetColumnInfo(This,pcColumns,prgInfo,ppStringsBuffer)
  14334.  
  14335. #define IColumnsInfo2_MapColumnIDs(This,cColumnIDs,rgColumnIDs,rgColumns)    \
  14336.     (This)->lpVtbl -> MapColumnIDs(This,cColumnIDs,rgColumnIDs,rgColumns)
  14337.  
  14338.  
  14339. #define IColumnsInfo2_GetRestrictedColumnInfo(This,cColumnIDMasks,rgColumnIDMasks,dwFlags,pcColumns,prgColumnIDs,prgColumnInfo,ppStringsBuffer)    \
  14340.     (This)->lpVtbl -> GetRestrictedColumnInfo(This,cColumnIDMasks,rgColumnIDMasks,dwFlags,pcColumns,prgColumnIDs,prgColumnInfo,ppStringsBuffer)
  14341.  
  14342. #endif /* COBJMACROS */
  14343.  
  14344.  
  14345. #endif     /* C style interface */
  14346.  
  14347.  
  14348.  
  14349. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo2_RemoteGetRestrictedColumnInfo_Proxy( 
  14350.     IColumnsInfo2 __RPC_FAR * This,
  14351.     /* [in] */ ULONG cColumnIDMasks,
  14352.     /* [size_is][unique][in] */ const DBID __RPC_FAR *rgColumnIDMasks,
  14353.     /* [in] */ DWORD dwFlags,
  14354.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  14355.     /* [size_is][size_is][unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  14356.     /* [size_is][size_is][unique][out][in] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  14357.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  14358.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgcolumnidOffsets,
  14359.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  14360.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  14361.  
  14362.  
  14363. void __RPC_STUB IColumnsInfo2_RemoteGetRestrictedColumnInfo_Stub(
  14364.     IRpcStubBuffer *This,
  14365.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14366.     PRPC_MESSAGE _pRpcMessage,
  14367.     DWORD *_pdwStubPhase);
  14368.  
  14369.  
  14370.  
  14371. #endif     /* __IColumnsInfo2_INTERFACE_DEFINED__ */
  14372.  
  14373.  
  14374. #ifndef __IRegisterProvider_INTERFACE_DEFINED__
  14375. #define __IRegisterProvider_INTERFACE_DEFINED__
  14376.  
  14377. /****************************************
  14378.  * Generated header for interface: IRegisterProvider
  14379.  * at Wed Aug 26 14:08:54 1998
  14380.  * using MIDL 3.01.75
  14381.  ****************************************/
  14382. /* [unique][uuid][object] */ 
  14383.  
  14384.  
  14385.  
  14386. EXTERN_C const IID IID_IRegisterProvider;
  14387.  
  14388. #if defined(__cplusplus) && !defined(CINTERFACE)
  14389.     
  14390.     interface DECLSPEC_UUID("0c733ab9-2a1c-11ce-ade5-00aa0044773d")
  14391.     IRegisterProvider : public IUnknown
  14392.     {
  14393.     public:
  14394.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetURLMapping( 
  14395.             /* [in] */ LPCOLESTR pwszURL,
  14396.             /* [in] */ DWORD dwReserved,
  14397.             /* [out] */ CLSID __RPC_FAR *pclsidProvider) = 0;
  14398.         
  14399.         virtual HRESULT STDMETHODCALLTYPE SetURLMapping( 
  14400.             /* [unique][in] */ LPCOLESTR pwszURL,
  14401.             /* [in] */ DWORD dwReserved,
  14402.             /* [unique][in] */ REFCLSID rclsidProvider) = 0;
  14403.         
  14404.         virtual HRESULT STDMETHODCALLTYPE UnregisterProvider( 
  14405.             /* [unique][in] */ LPCOLESTR pwszURL,
  14406.             /* [in] */ DWORD dwReserved,
  14407.             /* [unique][in] */ REFCLSID rclsidProvider) = 0;
  14408.         
  14409.     };
  14410.     
  14411. #else     /* C style interface */
  14412.  
  14413.     typedef struct IRegisterProviderVtbl
  14414.     {
  14415.         BEGIN_INTERFACE
  14416.         
  14417.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14418.             IRegisterProvider __RPC_FAR * This,
  14419.             /* [in] */ REFIID riid,
  14420.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14421.         
  14422.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14423.             IRegisterProvider __RPC_FAR * This);
  14424.         
  14425.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14426.             IRegisterProvider __RPC_FAR * This);
  14427.         
  14428.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetURLMapping )( 
  14429.             IRegisterProvider __RPC_FAR * This,
  14430.             /* [in] */ LPCOLESTR pwszURL,
  14431.             /* [in] */ DWORD dwReserved,
  14432.             /* [out] */ CLSID __RPC_FAR *pclsidProvider);
  14433.         
  14434.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetURLMapping )( 
  14435.             IRegisterProvider __RPC_FAR * This,
  14436.             /* [unique][in] */ LPCOLESTR pwszURL,
  14437.             /* [in] */ DWORD dwReserved,
  14438.             /* [unique][in] */ REFCLSID rclsidProvider);
  14439.         
  14440.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UnregisterProvider )( 
  14441.             IRegisterProvider __RPC_FAR * This,
  14442.             /* [unique][in] */ LPCOLESTR pwszURL,
  14443.             /* [in] */ DWORD dwReserved,
  14444.             /* [unique][in] */ REFCLSID rclsidProvider);
  14445.         
  14446.         END_INTERFACE
  14447.     } IRegisterProviderVtbl;
  14448.  
  14449.     interface IRegisterProvider
  14450.     {
  14451.         CONST_VTBL struct IRegisterProviderVtbl __RPC_FAR *lpVtbl;
  14452.     };
  14453.  
  14454.     
  14455.  
  14456. #ifdef COBJMACROS
  14457.  
  14458.  
  14459. #define IRegisterProvider_QueryInterface(This,riid,ppvObject)    \
  14460.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14461.  
  14462. #define IRegisterProvider_AddRef(This)    \
  14463.     (This)->lpVtbl -> AddRef(This)
  14464.  
  14465. #define IRegisterProvider_Release(This)    \
  14466.     (This)->lpVtbl -> Release(This)
  14467.  
  14468.  
  14469. #define IRegisterProvider_GetURLMapping(This,pwszURL,dwReserved,pclsidProvider)    \
  14470.     (This)->lpVtbl -> GetURLMapping(This,pwszURL,dwReserved,pclsidProvider)
  14471.  
  14472. #define IRegisterProvider_SetURLMapping(This,pwszURL,dwReserved,rclsidProvider)    \
  14473.     (This)->lpVtbl -> SetURLMapping(This,pwszURL,dwReserved,rclsidProvider)
  14474.  
  14475. #define IRegisterProvider_UnregisterProvider(This,pwszURL,dwReserved,rclsidProvider)    \
  14476.     (This)->lpVtbl -> UnregisterProvider(This,pwszURL,dwReserved,rclsidProvider)
  14477.  
  14478. #endif /* COBJMACROS */
  14479.  
  14480.  
  14481. #endif     /* C style interface */
  14482.  
  14483.  
  14484.  
  14485. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRegisterProvider_RemoteGetURLMapping_Proxy( 
  14486.     IRegisterProvider __RPC_FAR * This,
  14487.     /* [in] */ LPCOLESTR pwszURL,
  14488.     /* [in] */ DWORD dwReserved,
  14489.     /* [out] */ CLSID __RPC_FAR *pclsidProvider);
  14490.  
  14491.  
  14492. void __RPC_STUB IRegisterProvider_RemoteGetURLMapping_Stub(
  14493.     IRpcStubBuffer *This,
  14494.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14495.     PRPC_MESSAGE _pRpcMessage,
  14496.     DWORD *_pdwStubPhase);
  14497.  
  14498.  
  14499. HRESULT STDMETHODCALLTYPE IRegisterProvider_SetURLMapping_Proxy( 
  14500.     IRegisterProvider __RPC_FAR * This,
  14501.     /* [unique][in] */ LPCOLESTR pwszURL,
  14502.     /* [in] */ DWORD dwReserved,
  14503.     /* [unique][in] */ REFCLSID rclsidProvider);
  14504.  
  14505.  
  14506. void __RPC_STUB IRegisterProvider_SetURLMapping_Stub(
  14507.     IRpcStubBuffer *This,
  14508.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14509.     PRPC_MESSAGE _pRpcMessage,
  14510.     DWORD *_pdwStubPhase);
  14511.  
  14512.  
  14513. HRESULT STDMETHODCALLTYPE IRegisterProvider_UnregisterProvider_Proxy( 
  14514.     IRegisterProvider __RPC_FAR * This,
  14515.     /* [unique][in] */ LPCOLESTR pwszURL,
  14516.     /* [in] */ DWORD dwReserved,
  14517.     /* [unique][in] */ REFCLSID rclsidProvider);
  14518.  
  14519.  
  14520. void __RPC_STUB IRegisterProvider_UnregisterProvider_Stub(
  14521.     IRpcStubBuffer *This,
  14522.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14523.     PRPC_MESSAGE _pRpcMessage,
  14524.     DWORD *_pdwStubPhase);
  14525.  
  14526.  
  14527.  
  14528. #endif     /* __IRegisterProvider_INTERFACE_DEFINED__ */
  14529.  
  14530.  
  14531. #ifndef __IGetSession_INTERFACE_DEFINED__
  14532. #define __IGetSession_INTERFACE_DEFINED__
  14533.  
  14534. /****************************************
  14535.  * Generated header for interface: IGetSession
  14536.  * at Wed Aug 26 14:08:54 1998
  14537.  * using MIDL 3.01.75
  14538.  ****************************************/
  14539. /* [unique][uuid][object] */ 
  14540.  
  14541.  
  14542.  
  14543. EXTERN_C const IID IID_IGetSession;
  14544.  
  14545. #if defined(__cplusplus) && !defined(CINTERFACE)
  14546.     
  14547.     interface DECLSPEC_UUID("0c733aba-2a1c-11ce-ade5-00aa0044773d")
  14548.     IGetSession : public IUnknown
  14549.     {
  14550.     public:
  14551.         virtual HRESULT STDMETHODCALLTYPE GetSession( 
  14552.             /* [in] */ REFIID riid,
  14553.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession) = 0;
  14554.         
  14555.     };
  14556.     
  14557. #else     /* C style interface */
  14558.  
  14559.     typedef struct IGetSessionVtbl
  14560.     {
  14561.         BEGIN_INTERFACE
  14562.         
  14563.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14564.             IGetSession __RPC_FAR * This,
  14565.             /* [in] */ REFIID riid,
  14566.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14567.         
  14568.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14569.             IGetSession __RPC_FAR * This);
  14570.         
  14571.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14572.             IGetSession __RPC_FAR * This);
  14573.         
  14574.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSession )( 
  14575.             IGetSession __RPC_FAR * This,
  14576.             /* [in] */ REFIID riid,
  14577.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  14578.         
  14579.         END_INTERFACE
  14580.     } IGetSessionVtbl;
  14581.  
  14582.     interface IGetSession
  14583.     {
  14584.         CONST_VTBL struct IGetSessionVtbl __RPC_FAR *lpVtbl;
  14585.     };
  14586.  
  14587.     
  14588.  
  14589. #ifdef COBJMACROS
  14590.  
  14591.  
  14592. #define IGetSession_QueryInterface(This,riid,ppvObject)    \
  14593.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14594.  
  14595. #define IGetSession_AddRef(This)    \
  14596.     (This)->lpVtbl -> AddRef(This)
  14597.  
  14598. #define IGetSession_Release(This)    \
  14599.     (This)->lpVtbl -> Release(This)
  14600.  
  14601.  
  14602. #define IGetSession_GetSession(This,riid,ppSession)    \
  14603.     (This)->lpVtbl -> GetSession(This,riid,ppSession)
  14604.  
  14605. #endif /* COBJMACROS */
  14606.  
  14607.  
  14608. #endif     /* C style interface */
  14609.  
  14610.  
  14611.  
  14612. HRESULT STDMETHODCALLTYPE IGetSession_GetSession_Proxy( 
  14613.     IGetSession __RPC_FAR * This,
  14614.     /* [in] */ REFIID riid,
  14615.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  14616.  
  14617.  
  14618. void __RPC_STUB IGetSession_GetSession_Stub(
  14619.     IRpcStubBuffer *This,
  14620.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14621.     PRPC_MESSAGE _pRpcMessage,
  14622.     DWORD *_pdwStubPhase);
  14623.  
  14624.  
  14625.  
  14626. #endif     /* __IGetSession_INTERFACE_DEFINED__ */
  14627.  
  14628.  
  14629. #ifndef __IGetSourceRow_INTERFACE_DEFINED__
  14630. #define __IGetSourceRow_INTERFACE_DEFINED__
  14631.  
  14632. /****************************************
  14633.  * Generated header for interface: IGetSourceRow
  14634.  * at Wed Aug 26 14:08:54 1998
  14635.  * using MIDL 3.01.75
  14636.  ****************************************/
  14637. /* [unique][uuid][object][local] */ 
  14638.  
  14639.  
  14640.  
  14641. EXTERN_C const IID IID_IGetSourceRow;
  14642.  
  14643. #if defined(__cplusplus) && !defined(CINTERFACE)
  14644.     
  14645.     interface DECLSPEC_UUID("0c733abb-2a1c-11ce-ade5-00aa0044773d")
  14646.     IGetSourceRow : public IUnknown
  14647.     {
  14648.     public:
  14649.         virtual HRESULT STDMETHODCALLTYPE GetSourceRow( 
  14650.             /* [in] */ REFIID riid,
  14651.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRow) = 0;
  14652.         
  14653.     };
  14654.     
  14655. #else     /* C style interface */
  14656.  
  14657.     typedef struct IGetSourceRowVtbl
  14658.     {
  14659.         BEGIN_INTERFACE
  14660.         
  14661.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14662.             IGetSourceRow __RPC_FAR * This,
  14663.             /* [in] */ REFIID riid,
  14664.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14665.         
  14666.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14667.             IGetSourceRow __RPC_FAR * This);
  14668.         
  14669.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14670.             IGetSourceRow __RPC_FAR * This);
  14671.         
  14672.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSourceRow )( 
  14673.             IGetSourceRow __RPC_FAR * This,
  14674.             /* [in] */ REFIID riid,
  14675.             /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRow);
  14676.         
  14677.         END_INTERFACE
  14678.     } IGetSourceRowVtbl;
  14679.  
  14680.     interface IGetSourceRow
  14681.     {
  14682.         CONST_VTBL struct IGetSourceRowVtbl __RPC_FAR *lpVtbl;
  14683.     };
  14684.  
  14685.     
  14686.  
  14687. #ifdef COBJMACROS
  14688.  
  14689.  
  14690. #define IGetSourceRow_QueryInterface(This,riid,ppvObject)    \
  14691.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14692.  
  14693. #define IGetSourceRow_AddRef(This)    \
  14694.     (This)->lpVtbl -> AddRef(This)
  14695.  
  14696. #define IGetSourceRow_Release(This)    \
  14697.     (This)->lpVtbl -> Release(This)
  14698.  
  14699.  
  14700. #define IGetSourceRow_GetSourceRow(This,riid,ppRow)    \
  14701.     (This)->lpVtbl -> GetSourceRow(This,riid,ppRow)
  14702.  
  14703. #endif /* COBJMACROS */
  14704.  
  14705.  
  14706. #endif     /* C style interface */
  14707.  
  14708.  
  14709.  
  14710. HRESULT STDMETHODCALLTYPE IGetSourceRow_GetSourceRow_Proxy( 
  14711.     IGetSourceRow __RPC_FAR * This,
  14712.     /* [in] */ REFIID riid,
  14713.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRow);
  14714.  
  14715.  
  14716. void __RPC_STUB IGetSourceRow_GetSourceRow_Stub(
  14717.     IRpcStubBuffer *This,
  14718.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14719.     PRPC_MESSAGE _pRpcMessage,
  14720.     DWORD *_pdwStubPhase);
  14721.  
  14722.  
  14723.  
  14724. #endif     /* __IGetSourceRow_INTERFACE_DEFINED__ */
  14725.  
  14726.  
  14727. #ifndef __IRowsetCurrentIndex_INTERFACE_DEFINED__
  14728. #define __IRowsetCurrentIndex_INTERFACE_DEFINED__
  14729.  
  14730. /****************************************
  14731.  * Generated header for interface: IRowsetCurrentIndex
  14732.  * at Wed Aug 26 14:08:54 1998
  14733.  * using MIDL 3.01.75
  14734.  ****************************************/
  14735. /* [unique][uuid][object][local] */ 
  14736.  
  14737.  
  14738.  
  14739. EXTERN_C const IID IID_IRowsetCurrentIndex;
  14740.  
  14741. #if defined(__cplusplus) && !defined(CINTERFACE)
  14742.     
  14743.     interface DECLSPEC_UUID("0c733abd-2a1c-11ce-ade5-00aa0044773d")
  14744.     IRowsetCurrentIndex : public IRowsetIndex
  14745.     {
  14746.     public:
  14747.         virtual HRESULT STDMETHODCALLTYPE GetIndex( 
  14748.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID) = 0;
  14749.         
  14750.         virtual HRESULT STDMETHODCALLTYPE SetIndex( 
  14751.             /* [in] */ DBID __RPC_FAR *pIndexID) = 0;
  14752.         
  14753.     };
  14754.     
  14755. #else     /* C style interface */
  14756.  
  14757.     typedef struct IRowsetCurrentIndexVtbl
  14758.     {
  14759.         BEGIN_INTERFACE
  14760.         
  14761.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  14762.             IRowsetCurrentIndex __RPC_FAR * This,
  14763.             /* [in] */ REFIID riid,
  14764.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  14765.         
  14766.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  14767.             IRowsetCurrentIndex __RPC_FAR * This);
  14768.         
  14769.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  14770.             IRowsetCurrentIndex __RPC_FAR * This);
  14771.         
  14772.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIndexInfo )( 
  14773.             IRowsetCurrentIndex __RPC_FAR * This,
  14774.             /* [out][in] */ ULONG __RPC_FAR *pcKeyColumns,
  14775.             /* [size_is][size_is][out] */ DBINDEXCOLUMNDESC __RPC_FAR *__RPC_FAR *prgIndexColumnDesc,
  14776.             /* [out][in] */ ULONG __RPC_FAR *pcIndexProperties,
  14777.             /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgIndexProperties);
  14778.         
  14779.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Seek )( 
  14780.             IRowsetCurrentIndex __RPC_FAR * This,
  14781.             /* [in] */ HACCESSOR hAccessor,
  14782.             /* [in] */ ULONG cKeyValues,
  14783.             /* [in] */ void __RPC_FAR *pData,
  14784.             /* [in] */ DBSEEK dwSeekOptions);
  14785.         
  14786.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetRange )( 
  14787.             IRowsetCurrentIndex __RPC_FAR * This,
  14788.             /* [in] */ HACCESSOR hAccessor,
  14789.             /* [in] */ ULONG cStartKeyColumns,
  14790.             /* [in] */ void __RPC_FAR *pStartData,
  14791.             /* [in] */ ULONG cEndKeyColumns,
  14792.             /* [in] */ void __RPC_FAR *pEndData,
  14793.             /* [in] */ DBRANGE dwRangeOptions);
  14794.         
  14795.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIndex )( 
  14796.             IRowsetCurrentIndex __RPC_FAR * This,
  14797.             /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID);
  14798.         
  14799.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetIndex )( 
  14800.             IRowsetCurrentIndex __RPC_FAR * This,
  14801.             /* [in] */ DBID __RPC_FAR *pIndexID);
  14802.         
  14803.         END_INTERFACE
  14804.     } IRowsetCurrentIndexVtbl;
  14805.  
  14806.     interface IRowsetCurrentIndex
  14807.     {
  14808.         CONST_VTBL struct IRowsetCurrentIndexVtbl __RPC_FAR *lpVtbl;
  14809.     };
  14810.  
  14811.     
  14812.  
  14813. #ifdef COBJMACROS
  14814.  
  14815.  
  14816. #define IRowsetCurrentIndex_QueryInterface(This,riid,ppvObject)    \
  14817.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  14818.  
  14819. #define IRowsetCurrentIndex_AddRef(This)    \
  14820.     (This)->lpVtbl -> AddRef(This)
  14821.  
  14822. #define IRowsetCurrentIndex_Release(This)    \
  14823.     (This)->lpVtbl -> Release(This)
  14824.  
  14825.  
  14826. #define IRowsetCurrentIndex_GetIndexInfo(This,pcKeyColumns,prgIndexColumnDesc,pcIndexProperties,prgIndexProperties)    \
  14827.     (This)->lpVtbl -> GetIndexInfo(This,pcKeyColumns,prgIndexColumnDesc,pcIndexProperties,prgIndexProperties)
  14828.  
  14829. #define IRowsetCurrentIndex_Seek(This,hAccessor,cKeyValues,pData,dwSeekOptions)    \
  14830.     (This)->lpVtbl -> Seek(This,hAccessor,cKeyValues,pData,dwSeekOptions)
  14831.  
  14832. #define IRowsetCurrentIndex_SetRange(This,hAccessor,cStartKeyColumns,pStartData,cEndKeyColumns,pEndData,dwRangeOptions)    \
  14833.     (This)->lpVtbl -> SetRange(This,hAccessor,cStartKeyColumns,pStartData,cEndKeyColumns,pEndData,dwRangeOptions)
  14834.  
  14835.  
  14836. #define IRowsetCurrentIndex_GetIndex(This,ppIndexID)    \
  14837.     (This)->lpVtbl -> GetIndex(This,ppIndexID)
  14838.  
  14839. #define IRowsetCurrentIndex_SetIndex(This,pIndexID)    \
  14840.     (This)->lpVtbl -> SetIndex(This,pIndexID)
  14841.  
  14842. #endif /* COBJMACROS */
  14843.  
  14844.  
  14845. #endif     /* C style interface */
  14846.  
  14847.  
  14848.  
  14849. HRESULT STDMETHODCALLTYPE IRowsetCurrentIndex_GetIndex_Proxy( 
  14850.     IRowsetCurrentIndex __RPC_FAR * This,
  14851.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID);
  14852.  
  14853.  
  14854. void __RPC_STUB IRowsetCurrentIndex_GetIndex_Stub(
  14855.     IRpcStubBuffer *This,
  14856.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14857.     PRPC_MESSAGE _pRpcMessage,
  14858.     DWORD *_pdwStubPhase);
  14859.  
  14860.  
  14861. HRESULT STDMETHODCALLTYPE IRowsetCurrentIndex_SetIndex_Proxy( 
  14862.     IRowsetCurrentIndex __RPC_FAR * This,
  14863.     /* [in] */ DBID __RPC_FAR *pIndexID);
  14864.  
  14865.  
  14866. void __RPC_STUB IRowsetCurrentIndex_SetIndex_Stub(
  14867.     IRpcStubBuffer *This,
  14868.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14869.     PRPC_MESSAGE _pRpcMessage,
  14870.     DWORD *_pdwStubPhase);
  14871.  
  14872.  
  14873.  
  14874. #endif     /* __IRowsetCurrentIndex_INTERFACE_DEFINED__ */
  14875.  
  14876.  
  14877. /****************************************
  14878.  * Generated header for interface: __MIDL_itf_oledb_0241
  14879.  * at Wed Aug 26 14:08:54 1998
  14880.  * using MIDL 3.01.75
  14881.  ****************************************/
  14882. /* [local] */ 
  14883.  
  14884.  
  14885. #endif // OLEDBVER >= 0x0210
  14886. //@@@- V2.1
  14887. //
  14888. // IID values
  14889. //
  14890.  
  14891. // IID_IAccessor                 = {0x0c733a8c,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14892. // IID_IRowset                   = {0x0c733a7c,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14893. // IID_IRowsetInfo               = {0x0c733a55,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14894. // IID_IRowsetLocate             = {0x0c733a7d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14895. // IID_IRowsetResynch            = {0x0c733a84,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14896. // IID_IRowsetScroll             = {0x0c733a7e,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14897. // IID_IRowsetChange             = {0x0c733a05,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14898. // IID_IRowsetUpdate             = {0x0c733a6d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14899. // IID_IRowsetIdentity           = {0x0c733a09,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14900. // IID_IRowsetNotify             = {0x0c733a83,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14901. // IID_IRowsetIndex              = {0x0c733a82,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14902. // IID_ICommand                  = {0x0c733a63,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14903. // IID_IMultipleResults          = {0x0c733a90,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14904. // IID_IConvertType              = {0x0c733a88,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14905. // IID_ICommandPrepare           = {0x0c733a26,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14906. // IID_ICommandProperties        = {0x0c733a79,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14907. // IID_ICommandText              = {0x0c733a27,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14908. // IID_ICommandWithParameters    = {0x0c733a64,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14909. // IID_IColumnsRowset            = {0x0c733a10,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14910. // IID_IColumnsInfo              = {0x0c733a11,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14911. // IID_IDBCreateCommand          = {0x0c733a1d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14912. // IID_IDBCreateSession          = {0x0c733a5d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14913. // IID_ISourcesRowset            = {0x0c733a1e,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14914. // IID_IDBProperties             = {0x0c733a8a,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14915. // IID_IDBInitialize             = {0x0c733a8b,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14916. // IID_IDBInfo                   = {0x0c733a89,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14917. // IID_IDBDataSourceAdmin        = {0x0c733a7a,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14918. // IID_ISessionProperties        = {0x0c733a85,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14919. // IID_IIndexDefinition          = {0x0c733a68,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14920. // IID_ITableDefinition          = {0x0c733a86,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14921. // IID_IOpenRowset               = {0x0c733a69,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14922. // IID_IDBSchemaRowset           = {0x0c733a7b,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14923. // IID_IErrorRecords             = {0x0c733a67,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14924. // IID_IErrorLookup              = {0x0c733a66,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14925. // IID_ISQLErrorInfo             = {0x0c733a74,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14926. // IID_IGetDataSource            = {0x0c733a75,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14927. // IID_ITransactionLocal         = {0x0c733a5f,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14928. // IID_ITransactionJoin          = {0x0c733a5e,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14929. // IID_ITransactionObject        = {0x0c733a60,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14930. //@@@+ V1.5
  14931. #if( OLEDBVER >= 0x0150 )
  14932. //IID_IChapteredRowset           = {0x0c733a93,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14933. //IID_IDBAsynchNotify            = {0x0c733a96,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14934. //IID_IDBAsynchStatus            = {0x0c733a95,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14935. //IID_IRowsetFind                = {0x0c733a9d,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14936. //IID_IRowPosition               = {0x0c733a94,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14937. //IID_IRowPositionChange         = {0x0997a571,0x126e,0x11d0,{0x9f,0x8a,0x00,0xa0,0xc9,0xa0,0x63,0x1e}}
  14938. //IID_IViewRowset                = {0x0c733a97,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14939. //IID_IViewChapter               = {0x0c733a98,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14940. //IID_IViewSort                  = {0x0c733a9a,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14941. //IID_IViewFilter                = {0x0c733a9b,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14942. //IID_IRowsetView                = {0x0c733a99,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14943. #endif // OLEDBVER >= 0x0150
  14944. //@@@- V1.5
  14945. //@@@+ V2.0
  14946. #if( OLEDBVER >= 0x0200 )
  14947. // IID_IMDDataset                = {0xa07cccd1,0x8148,0x11d0,{0x87,0xbb,0x00,0xc0,0x4f,0xc3,0x39,0x42}}
  14948. // IID_IMDFind                   = {0xa07cccd2,0x8148,0x11d0,{0x87,0xbb,0x00,0xc0,0x4f,0xc3,0x39,0x42}}
  14949. // IID_IMDRangeRowset            = {0x0c733aa0,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14950. // IID_IAlterTable               = {0x0c733aa5,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14951. // IID_IAlterIndex               = {0x0c733aa6,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14952. // IID_ICommandPersist           = {0x0c733aa7,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14953. // IID_IRowsetChapterMember      = {0x0c733aa8,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14954. // IID_IRowsetRefresh            = {0x0c733aa9,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14955. // IID_IParentRowset             = {0x0c733aaa,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14956. #endif // OLEDBVER >= 0x0200
  14957. //@@@- V2.0
  14958. //@@@+ V2.1
  14959. #if( OLEDBVER >= 0x0210 )
  14960. // IID_ITrusteeAdmin                = {0c733aa1,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14961. // IID_ITrusteeGroupAdmin        = {0c733aa2,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14962. // IID_IObjectAccessControl        = {0c733aa3,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14963. // IID_ISecurityInfo                = {0c733aa4,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14964. // IID_IRow                        = {0c733ab4,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14965. // IID_IRowChange                = {0c733ab5,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14966. // IID_IRowSchemaChange            = {0c733aae,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14967. // IID_IGetRow                    = {0c733aaf,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14968. // IID_IScopedOperations            = {0c733ab0,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14969. // IID_IBindResource                = {0c733ab1,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14970. // IID_ICreateRow                = {0c733ab2,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14971. // IID_IDBResetProperties        = {0c733ab3,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14972. // IID_IColumnsInfo2                = {0c733ab8,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14973. // IID_IRegisterProvider         = {0c733ab9,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14974. // IID_IGetSession                 = {0c733aba,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14975. // IID_IGetSourceRow                 = {0c733abb,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14976. // IID_ITableCreation             = {0c733abc,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14977. // IID_IRowsetCurrentIndex         = {0c733abd,0x2a1c,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}}
  14978. #endif // OLEDBVER >= 0x0210
  14979. //@@@- V2.1
  14980. #include <poppack.h>     // restore original structure packing
  14981.  
  14982.  
  14983. extern RPC_IF_HANDLE __MIDL_itf_oledb_0241_v0_0_c_ifspec;
  14984. extern RPC_IF_HANDLE __MIDL_itf_oledb_0241_v0_0_s_ifspec;
  14985.  
  14986. #ifdef OLEDBPROXY
  14987. /* Additional Prototypes for ALL interfaces */
  14988.  
  14989. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  14990. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  14991. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  14992. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  14993.  
  14994. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long __RPC_FAR *, unsigned long            , VARIANT __RPC_FAR * ); 
  14995. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  14996. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  14997. void                      __RPC_USER  VARIANT_UserFree(     unsigned long __RPC_FAR *, VARIANT __RPC_FAR * ); 
  14998.  
  14999. /* [local] */ HRESULT STDMETHODCALLTYPE IAccessor_AddRefAccessor_Proxy( 
  15000.     IAccessor __RPC_FAR * This,
  15001.     /* [in] */ HACCESSOR hAccessor,
  15002.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount);
  15003.  
  15004.  
  15005. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_AddRefAccessor_Stub( 
  15006.     IAccessor __RPC_FAR * This,
  15007.     /* [in] */ HACCESSOR hAccessor,
  15008.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount,
  15009.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15010.  
  15011. /* [local] */ HRESULT STDMETHODCALLTYPE IAccessor_CreateAccessor_Proxy( 
  15012.     IAccessor __RPC_FAR * This,
  15013.     /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  15014.     /* [in] */ ULONG cBindings,
  15015.     /* [size_is][in] */ const DBBINDING __RPC_FAR rgBindings[  ],
  15016.     /* [in] */ ULONG cbRowSize,
  15017.     /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  15018.     /* [size_is][out] */ DBBINDSTATUS __RPC_FAR rgStatus[  ]);
  15019.  
  15020.  
  15021. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_CreateAccessor_Stub( 
  15022.     IAccessor __RPC_FAR * This,
  15023.     /* [in] */ DBACCESSORFLAGS dwAccessorFlags,
  15024.     /* [in] */ ULONG cBindings,
  15025.     /* [size_is][unique][in] */ DBBINDING __RPC_FAR *rgBindings,
  15026.     /* [in] */ ULONG cbRowSize,
  15027.     /* [out] */ HACCESSOR __RPC_FAR *phAccessor,
  15028.     /* [size_is][unique][out][in] */ DBBINDSTATUS __RPC_FAR *rgStatus,
  15029.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15030.  
  15031. /* [local] */ HRESULT STDMETHODCALLTYPE IAccessor_GetBindings_Proxy( 
  15032.     IAccessor __RPC_FAR * This,
  15033.     /* [in] */ HACCESSOR hAccessor,
  15034.     /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  15035.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  15036.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings);
  15037.  
  15038.  
  15039. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_GetBindings_Stub( 
  15040.     IAccessor __RPC_FAR * This,
  15041.     /* [in] */ HACCESSOR hAccessor,
  15042.     /* [out] */ DBACCESSORFLAGS __RPC_FAR *pdwAccessorFlags,
  15043.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  15044.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings,
  15045.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15046.  
  15047. /* [local] */ HRESULT STDMETHODCALLTYPE IAccessor_ReleaseAccessor_Proxy( 
  15048.     IAccessor __RPC_FAR * This,
  15049.     /* [in] */ HACCESSOR hAccessor,
  15050.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount);
  15051.  
  15052.  
  15053. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAccessor_ReleaseAccessor_Stub( 
  15054.     IAccessor __RPC_FAR * This,
  15055.     /* [in] */ HACCESSOR hAccessor,
  15056.     /* [unique][out][in] */ ULONG __RPC_FAR *pcRefCount,
  15057.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15058.  
  15059. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetProperties_Proxy( 
  15060.     IRowsetInfo __RPC_FAR * This,
  15061.     /* [in] */ const ULONG cPropertyIDSets,
  15062.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15063.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15064.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  15065.  
  15066.  
  15067. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetProperties_Stub( 
  15068.     IRowsetInfo __RPC_FAR * This,
  15069.     /* [in] */ ULONG cPropertyIDSets,
  15070.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15071.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15072.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  15073.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15074.  
  15075. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetReferencedRowset_Proxy( 
  15076.     IRowsetInfo __RPC_FAR * This,
  15077.     /* [in] */ ULONG iOrdinal,
  15078.     /* [in] */ REFIID riid,
  15079.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset);
  15080.  
  15081.  
  15082. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetReferencedRowset_Stub( 
  15083.     IRowsetInfo __RPC_FAR * This,
  15084.     /* [in] */ ULONG iOrdinal,
  15085.     /* [in] */ REFIID riid,
  15086.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppReferencedRowset,
  15087.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15088.  
  15089. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetSpecification_Proxy( 
  15090.     IRowsetInfo __RPC_FAR * This,
  15091.     /* [in] */ REFIID riid,
  15092.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification);
  15093.  
  15094.  
  15095. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetInfo_GetSpecification_Stub( 
  15096.     IRowsetInfo __RPC_FAR * This,
  15097.     /* [in] */ REFIID riid,
  15098.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSpecification,
  15099.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15100.  
  15101. /* [local] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_AddRefChapter_Proxy( 
  15102.     IChapteredRowset __RPC_FAR * This,
  15103.     /* [in] */ HCHAPTER hChapter,
  15104.     /* [out] */ ULONG __RPC_FAR *pcRefCount);
  15105.  
  15106.  
  15107. /* [call_as] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_AddRefChapter_Stub( 
  15108.     IChapteredRowset __RPC_FAR * This,
  15109.     /* [in] */ HCHAPTER hChapter,
  15110.     /* [out] */ ULONG __RPC_FAR *pcRefCount,
  15111.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15112.  
  15113. /* [local] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_ReleaseChapter_Proxy( 
  15114.     IChapteredRowset __RPC_FAR * This,
  15115.     /* [in] */ HCHAPTER hChapter,
  15116.     /* [out] */ ULONG __RPC_FAR *pcRefCount);
  15117.  
  15118.  
  15119. /* [call_as] */ HRESULT STDMETHODCALLTYPE IChapteredRowset_ReleaseChapter_Stub( 
  15120.     IChapteredRowset __RPC_FAR * This,
  15121.     /* [in] */ HCHAPTER hChapter,
  15122.     /* [out] */ ULONG __RPC_FAR *pcRefCount,
  15123.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15124.  
  15125. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_ClearRowPosition_Proxy( 
  15126.     IRowPosition __RPC_FAR * This);
  15127.  
  15128.  
  15129. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_ClearRowPosition_Stub( 
  15130.     IRowPosition __RPC_FAR * This,
  15131.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15132.  
  15133. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_GetRowPosition_Proxy( 
  15134.     IRowPosition __RPC_FAR * This,
  15135.     /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  15136.     /* [out] */ HROW __RPC_FAR *phRow,
  15137.     /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags);
  15138.  
  15139.  
  15140. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_GetRowPosition_Stub( 
  15141.     IRowPosition __RPC_FAR * This,
  15142.     /* [out] */ HCHAPTER __RPC_FAR *phChapter,
  15143.     /* [out] */ HROW __RPC_FAR *phRow,
  15144.     /* [out] */ DBPOSITIONFLAGS __RPC_FAR *pdwPositionFlags,
  15145.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15146.  
  15147. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_GetRowset_Proxy( 
  15148.     IRowPosition __RPC_FAR * This,
  15149.     /* [in] */ REFIID riid,
  15150.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15151.  
  15152.  
  15153. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_GetRowset_Stub( 
  15154.     IRowPosition __RPC_FAR * This,
  15155.     /* [in] */ REFIID riid,
  15156.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15157.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15158.  
  15159. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_Initialize_Proxy( 
  15160.     IRowPosition __RPC_FAR * This,
  15161.     /* [in] */ IUnknown __RPC_FAR *pRowset);
  15162.  
  15163.  
  15164. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_Initialize_Stub( 
  15165.     IRowPosition __RPC_FAR * This,
  15166.     /* [in] */ IUnknown __RPC_FAR *pRowset,
  15167.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15168.  
  15169. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPosition_SetRowPosition_Proxy( 
  15170.     IRowPosition __RPC_FAR * This,
  15171.     /* [in] */ HCHAPTER hChapter,
  15172.     /* [in] */ HROW hRow,
  15173.     /* [in] */ DBPOSITIONFLAGS dwPositionFlags);
  15174.  
  15175.  
  15176. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPosition_SetRowPosition_Stub( 
  15177.     IRowPosition __RPC_FAR * This,
  15178.     /* [in] */ HCHAPTER hChapter,
  15179.     /* [in] */ HROW hRow,
  15180.     /* [in] */ DBPOSITIONFLAGS dwPositionFlags,
  15181.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15182.  
  15183. /* [local] */ HRESULT STDMETHODCALLTYPE IRowPositionChange_OnRowPositionChange_Proxy( 
  15184.     IRowPositionChange __RPC_FAR * This,
  15185.     /* [in] */ DBREASON eReason,
  15186.     /* [in] */ DBEVENTPHASE ePhase,
  15187.     /* [in] */ BOOL fCantDeny);
  15188.  
  15189.  
  15190. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowPositionChange_OnRowPositionChange_Stub( 
  15191.     IRowPositionChange __RPC_FAR * This,
  15192.     /* [in] */ DBREASON eReason,
  15193.     /* [in] */ DBEVENTPHASE ePhase,
  15194.     /* [in] */ BOOL fCantDeny,
  15195.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15196.  
  15197. /* [local] */ HRESULT STDMETHODCALLTYPE IViewRowset_GetSpecification_Proxy( 
  15198.     IViewRowset __RPC_FAR * This,
  15199.     /* [in] */ REFIID riid,
  15200.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject);
  15201.  
  15202.  
  15203. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewRowset_GetSpecification_Stub( 
  15204.     IViewRowset __RPC_FAR * This,
  15205.     /* [in] */ REFIID riid,
  15206.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject,
  15207.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15208.  
  15209. /* [local] */ HRESULT STDMETHODCALLTYPE IViewRowset_OpenViewRowset_Proxy( 
  15210.     IViewRowset __RPC_FAR * This,
  15211.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15212.     /* [in] */ REFIID riid,
  15213.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15214.  
  15215.  
  15216. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewRowset_OpenViewRowset_Stub( 
  15217.     IViewRowset __RPC_FAR * This,
  15218.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15219.     /* [in] */ REFIID riid,
  15220.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15221.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15222.  
  15223. /* [local] */ HRESULT STDMETHODCALLTYPE IViewChapter_GetSpecification_Proxy( 
  15224.     IViewChapter __RPC_FAR * This,
  15225.     /* [in] */ REFIID riid,
  15226.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15227.  
  15228.  
  15229. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewChapter_GetSpecification_Stub( 
  15230.     IViewChapter __RPC_FAR * This,
  15231.     /* [in] */ REFIID riid,
  15232.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15233.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15234.  
  15235. /* [local] */ HRESULT STDMETHODCALLTYPE IViewChapter_OpenViewChapter_Proxy( 
  15236.     IViewChapter __RPC_FAR * This,
  15237.     /* [in] */ HCHAPTER hSource,
  15238.     /* [out] */ HCHAPTER __RPC_FAR *phViewChapter);
  15239.  
  15240.  
  15241. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewChapter_OpenViewChapter_Stub( 
  15242.     IViewChapter __RPC_FAR * This,
  15243.     /* [in] */ HCHAPTER hSource,
  15244.     /* [out] */ HCHAPTER __RPC_FAR *phViewChapter,
  15245.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15246.  
  15247. /* [local] */ HRESULT STDMETHODCALLTYPE IViewSort_GetSortOrder_Proxy( 
  15248.     IViewSort __RPC_FAR * This,
  15249.     /* [out] */ ULONG __RPC_FAR *pcValues,
  15250.     /* [out] */ ULONG __RPC_FAR *__RPC_FAR prgColumns[  ],
  15251.     /* [out] */ DBSORT __RPC_FAR *__RPC_FAR prgOrders[  ]);
  15252.  
  15253.  
  15254. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewSort_GetSortOrder_Stub( 
  15255.     IViewSort __RPC_FAR * This,
  15256.     /* [out][in] */ ULONG __RPC_FAR *pcValues,
  15257.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgColumns,
  15258.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgOrders,
  15259.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15260.  
  15261. /* [local] */ HRESULT STDMETHODCALLTYPE IViewSort_SetSortOrder_Proxy( 
  15262.     IViewSort __RPC_FAR * This,
  15263.     /* [in] */ ULONG cValues,
  15264.     /* [size_is][in] */ const ULONG __RPC_FAR rgColumns[  ],
  15265.     /* [size_is][in] */ const DBSORT __RPC_FAR rgOrders[  ]);
  15266.  
  15267.  
  15268. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewSort_SetSortOrder_Stub( 
  15269.     IViewSort __RPC_FAR * This,
  15270.     /* [in] */ ULONG cValues,
  15271.     /* [size_is][in] */ const ULONG __RPC_FAR *rgColumns,
  15272.     /* [size_is][in] */ const DBSORT __RPC_FAR *rgOrders,
  15273.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15274.  
  15275. /* [local] */ HRESULT STDMETHODCALLTYPE IViewFilter_GetFilterBindings_Proxy( 
  15276.     IViewFilter __RPC_FAR * This,
  15277.     /* [out] */ ULONG __RPC_FAR *pcBindings,
  15278.     /* [out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings);
  15279.  
  15280.  
  15281. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewFilter_GetFilterBindings_Stub( 
  15282.     IViewFilter __RPC_FAR * This,
  15283.     /* [out][in] */ ULONG __RPC_FAR *pcBindings,
  15284.     /* [size_is][size_is][out] */ DBBINDING __RPC_FAR *__RPC_FAR *prgBindings,
  15285.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15286.  
  15287. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetView_CreateView_Proxy( 
  15288.     IRowsetView __RPC_FAR * This,
  15289.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15290.     /* [in] */ REFIID riid,
  15291.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView);
  15292.  
  15293.  
  15294. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetView_CreateView_Stub( 
  15295.     IRowsetView __RPC_FAR * This,
  15296.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15297.     /* [in] */ REFIID riid,
  15298.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView,
  15299.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15300.  
  15301. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetView_GetView_Proxy( 
  15302.     IRowsetView __RPC_FAR * This,
  15303.     /* [in] */ HCHAPTER hChapter,
  15304.     /* [in] */ REFIID riid,
  15305.     /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  15306.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView);
  15307.  
  15308.  
  15309. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetView_GetView_Stub( 
  15310.     IRowsetView __RPC_FAR * This,
  15311.     /* [in] */ HCHAPTER hChapter,
  15312.     /* [in] */ REFIID riid,
  15313.     /* [out] */ HCHAPTER __RPC_FAR *phChapterSource,
  15314.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppView,
  15315.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15316.  
  15317. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetIdentity_IsSameRow_Proxy( 
  15318.     IRowsetIdentity __RPC_FAR * This,
  15319.     /* [in] */ HROW hThisRow,
  15320.     /* [in] */ HROW hThatRow);
  15321.  
  15322.  
  15323. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetIdentity_IsSameRow_Stub( 
  15324.     IRowsetIdentity __RPC_FAR * This,
  15325.     /* [in] */ HROW hThisRow,
  15326.     /* [in] */ HROW hThatRow,
  15327.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15328.  
  15329. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnFieldChange_Proxy( 
  15330.     IRowsetNotify __RPC_FAR * This,
  15331.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15332.     /* [in] */ HROW hRow,
  15333.     /* [in] */ ULONG cColumns,
  15334.     /* [size_is][in] */ ULONG __RPC_FAR rgColumns[  ],
  15335.     /* [in] */ DBREASON eReason,
  15336.     /* [in] */ DBEVENTPHASE ePhase,
  15337.     /* [in] */ BOOL fCantDeny);
  15338.  
  15339.  
  15340. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnFieldChange_Stub( 
  15341.     IRowsetNotify __RPC_FAR * This,
  15342.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15343.     /* [in] */ HROW hRow,
  15344.     /* [in] */ ULONG cColumns,
  15345.     /* [size_is][in] */ ULONG __RPC_FAR *rgColumns,
  15346.     /* [in] */ DBREASON eReason,
  15347.     /* [in] */ DBEVENTPHASE ePhase,
  15348.     /* [in] */ BOOL fCantDeny,
  15349.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15350.  
  15351. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnRowChange_Proxy( 
  15352.     IRowsetNotify __RPC_FAR * This,
  15353.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15354.     /* [in] */ ULONG cRows,
  15355.     /* [size_is][in] */ const HROW __RPC_FAR rghRows[  ],
  15356.     /* [in] */ DBREASON eReason,
  15357.     /* [in] */ DBEVENTPHASE ePhase,
  15358.     /* [in] */ BOOL fCantDeny);
  15359.  
  15360.  
  15361. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnRowChange_Stub( 
  15362.     IRowsetNotify __RPC_FAR * This,
  15363.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15364.     /* [in] */ ULONG cRows,
  15365.     /* [size_is][in] */ const HROW __RPC_FAR *rghRows,
  15366.     /* [in] */ DBREASON eReason,
  15367.     /* [in] */ DBEVENTPHASE ePhase,
  15368.     /* [in] */ BOOL fCantDeny,
  15369.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15370.  
  15371. /* [local] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnRowsetChange_Proxy( 
  15372.     IRowsetNotify __RPC_FAR * This,
  15373.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15374.     /* [in] */ DBREASON eReason,
  15375.     /* [in] */ DBEVENTPHASE ePhase,
  15376.     /* [in] */ BOOL fCantDeny);
  15377.  
  15378.  
  15379. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRowsetNotify_OnRowsetChange_Stub( 
  15380.     IRowsetNotify __RPC_FAR * This,
  15381.     /* [in] */ IRowset __RPC_FAR *pRowset,
  15382.     /* [in] */ DBREASON eReason,
  15383.     /* [in] */ DBEVENTPHASE ePhase,
  15384.     /* [in] */ BOOL fCantDeny,
  15385.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15386.  
  15387. /* [local] */ HRESULT STDMETHODCALLTYPE ICommand_Cancel_Proxy( 
  15388.     ICommand __RPC_FAR * This);
  15389.  
  15390.  
  15391. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_Cancel_Stub( 
  15392.     ICommand __RPC_FAR * This,
  15393.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15394.  
  15395. /* [local] */ HRESULT STDMETHODCALLTYPE ICommand_Execute_Proxy( 
  15396.     ICommand __RPC_FAR * This,
  15397.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15398.     /* [in] */ REFIID riid,
  15399.     /* [out][in] */ DBPARAMS __RPC_FAR *pParams,
  15400.     /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  15401.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15402.  
  15403.  
  15404. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_Execute_Stub( 
  15405.     ICommand __RPC_FAR * This,
  15406.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15407.     /* [in] */ REFIID riid,
  15408.     /* [in] */ HACCESSOR hAccessor,
  15409.     /* [in] */ ULONG cParamSets,
  15410.     /* [in] */ ULONG cbData,
  15411.     /* [size_is][unique][out][in] */ BYTE __RPC_FAR *pbData,
  15412.     /* [unique][out][in] */ LONG __RPC_FAR *pcRowsAffected,
  15413.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15414.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15415.  
  15416. /* [local] */ HRESULT STDMETHODCALLTYPE ICommand_GetDBSession_Proxy( 
  15417.     ICommand __RPC_FAR * This,
  15418.     /* [in] */ REFIID riid,
  15419.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession);
  15420.  
  15421.  
  15422. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommand_GetDBSession_Stub( 
  15423.     ICommand __RPC_FAR * This,
  15424.     /* [in] */ REFIID riid,
  15425.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSession,
  15426.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15427.  
  15428. /* [local] */ HRESULT STDMETHODCALLTYPE IMultipleResults_GetResult_Proxy( 
  15429.     IMultipleResults __RPC_FAR * This,
  15430.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15431.     /* [in] */ LONG reserved,
  15432.     /* [in] */ REFIID riid,
  15433.     /* [out] */ LONG __RPC_FAR *pcRowsAffected,
  15434.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  15435.  
  15436.  
  15437. /* [call_as] */ HRESULT STDMETHODCALLTYPE IMultipleResults_GetResult_Stub( 
  15438.     IMultipleResults __RPC_FAR * This,
  15439.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15440.     /* [in] */ LONG reserved,
  15441.     /* [in] */ REFIID riid,
  15442.     /* [unique][out][in] */ LONG __RPC_FAR *pcRowsAffected,
  15443.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  15444.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15445.  
  15446. /* [local] */ HRESULT STDMETHODCALLTYPE IConvertType_CanConvert_Proxy( 
  15447.     IConvertType __RPC_FAR * This,
  15448.     /* [in] */ DBTYPE wFromType,
  15449.     /* [in] */ DBTYPE wToType,
  15450.     /* [in] */ DBCONVERTFLAGS dwConvertFlags);
  15451.  
  15452.  
  15453. /* [call_as] */ HRESULT STDMETHODCALLTYPE IConvertType_CanConvert_Stub( 
  15454.     IConvertType __RPC_FAR * This,
  15455.     /* [in] */ DBTYPE wFromType,
  15456.     /* [in] */ DBTYPE wToType,
  15457.     /* [in] */ DBCONVERTFLAGS dwConvertFlags,
  15458.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15459.  
  15460. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_Prepare_Proxy( 
  15461.     ICommandPrepare __RPC_FAR * This,
  15462.     /* [in] */ ULONG cExpectedRuns);
  15463.  
  15464.  
  15465. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_Prepare_Stub( 
  15466.     ICommandPrepare __RPC_FAR * This,
  15467.     /* [in] */ ULONG cExpectedRuns,
  15468.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15469.  
  15470. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_Unprepare_Proxy( 
  15471.     ICommandPrepare __RPC_FAR * This);
  15472.  
  15473.  
  15474. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandPrepare_Unprepare_Stub( 
  15475.     ICommandPrepare __RPC_FAR * This,
  15476.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15477.  
  15478. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandProperties_GetProperties_Proxy( 
  15479.     ICommandProperties __RPC_FAR * This,
  15480.     /* [in] */ const ULONG cPropertyIDSets,
  15481.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15482.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15483.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  15484.  
  15485.  
  15486. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandProperties_GetProperties_Stub( 
  15487.     ICommandProperties __RPC_FAR * This,
  15488.     /* [in] */ const ULONG cPropertyIDSets,
  15489.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15490.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15491.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  15492.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15493.  
  15494. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandProperties_SetProperties_Proxy( 
  15495.     ICommandProperties __RPC_FAR * This,
  15496.     /* [in] */ ULONG cPropertySets,
  15497.     /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  15498.  
  15499.  
  15500. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandProperties_SetProperties_Stub( 
  15501.     ICommandProperties __RPC_FAR * This,
  15502.     /* [in] */ ULONG cPropertySets,
  15503.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15504.     /* [in] */ ULONG cTotalProps,
  15505.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15506.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15507.  
  15508. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandText_GetCommandText_Proxy( 
  15509.     ICommandText __RPC_FAR * This,
  15510.     /* [out][in] */ GUID __RPC_FAR *pguidDialect,
  15511.     /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand);
  15512.  
  15513.  
  15514. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandText_GetCommandText_Stub( 
  15515.     ICommandText __RPC_FAR * This,
  15516.     /* [unique][out][in] */ GUID __RPC_FAR *pguidDialect,
  15517.     /* [out] */ LPOLESTR __RPC_FAR *ppwszCommand,
  15518.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15519.  
  15520. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandText_SetCommandText_Proxy( 
  15521.     ICommandText __RPC_FAR * This,
  15522.     /* [in] */ REFGUID rguidDialect,
  15523.     /* [unique][in] */ LPCOLESTR pwszCommand);
  15524.  
  15525.  
  15526. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandText_SetCommandText_Stub( 
  15527.     ICommandText __RPC_FAR * This,
  15528.     /* [in] */ REFGUID rguidDialect,
  15529.     /* [unique][in] */ LPCOLESTR pwszCommand,
  15530.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15531.  
  15532. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_GetParameterInfo_Proxy( 
  15533.     ICommandWithParameters __RPC_FAR * This,
  15534.     /* [out][in] */ ULONG __RPC_FAR *pcParams,
  15535.     /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  15536.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer);
  15537.  
  15538.  
  15539. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_GetParameterInfo_Stub( 
  15540.     ICommandWithParameters __RPC_FAR * This,
  15541.     /* [out][in] */ ULONG __RPC_FAR *pcParams,
  15542.     /* [size_is][size_is][out] */ DBPARAMINFO __RPC_FAR *__RPC_FAR *prgParamInfo,
  15543.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  15544.     /* [out][in] */ ULONG __RPC_FAR *pcbNamesBuffer,
  15545.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppNamesBuffer,
  15546.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15547.  
  15548. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_MapParameterNames_Proxy( 
  15549.     ICommandWithParameters __RPC_FAR * This,
  15550.     /* [in] */ ULONG cParamNames,
  15551.     /* [size_is][in] */ const OLECHAR __RPC_FAR *__RPC_FAR rgParamNames[  ],
  15552.     /* [size_is][out] */ LONG __RPC_FAR rgParamOrdinals[  ]);
  15553.  
  15554.  
  15555. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_MapParameterNames_Stub( 
  15556.     ICommandWithParameters __RPC_FAR * This,
  15557.     /* [in] */ ULONG cParamNames,
  15558.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgParamNames,
  15559.     /* [size_is][out] */ LONG __RPC_FAR *rgParamOrdinals,
  15560.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15561.  
  15562. /* [local] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_SetParameterInfo_Proxy( 
  15563.     ICommandWithParameters __RPC_FAR * This,
  15564.     /* [in] */ ULONG cParams,
  15565.     /* [size_is][unique][in] */ const ULONG __RPC_FAR rgParamOrdinals[  ],
  15566.     /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR rgParamBindInfo[  ]);
  15567.  
  15568.  
  15569. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICommandWithParameters_SetParameterInfo_Stub( 
  15570.     ICommandWithParameters __RPC_FAR * This,
  15571.     /* [in] */ ULONG cParams,
  15572.     /* [size_is][unique][in] */ const ULONG __RPC_FAR *rgParamOrdinals,
  15573.     /* [size_is][unique][in] */ const DBPARAMBINDINFO __RPC_FAR *rgParamBindInfo,
  15574.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15575.  
  15576. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_GetAvailableColumns_Proxy( 
  15577.     IColumnsRowset __RPC_FAR * This,
  15578.     /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  15579.     /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns);
  15580.  
  15581.  
  15582. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_GetAvailableColumns_Stub( 
  15583.     IColumnsRowset __RPC_FAR * This,
  15584.     /* [out][in] */ ULONG __RPC_FAR *pcOptColumns,
  15585.     /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgOptColumns,
  15586.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15587.  
  15588. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_GetColumnsRowset_Proxy( 
  15589.     IColumnsRowset __RPC_FAR * This,
  15590.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15591.     /* [in] */ ULONG cOptColumns,
  15592.     /* [size_is][in] */ const DBID __RPC_FAR rgOptColumns[  ],
  15593.     /* [in] */ REFIID riid,
  15594.     /* [in] */ ULONG cPropertySets,
  15595.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  15596.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset);
  15597.  
  15598.  
  15599. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsRowset_GetColumnsRowset_Stub( 
  15600.     IColumnsRowset __RPC_FAR * This,
  15601.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15602.     /* [in] */ ULONG cOptColumns,
  15603.     /* [size_is][unique][in] */ const DBID __RPC_FAR *rgOptColumns,
  15604.     /* [in] */ REFIID riid,
  15605.     /* [in] */ ULONG cPropertySets,
  15606.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15607.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppColRowset,
  15608.     /* [in] */ ULONG cTotalProps,
  15609.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15610.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15611.  
  15612. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_GetColumnInfo_Proxy( 
  15613.     IColumnsInfo __RPC_FAR * This,
  15614.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  15615.     /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  15616.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  15617.  
  15618.  
  15619. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_GetColumnInfo_Stub( 
  15620.     IColumnsInfo __RPC_FAR * This,
  15621.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  15622.     /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgInfo,
  15623.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  15624.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgcolumnidOffsets,
  15625.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  15626.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer,
  15627.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15628.  
  15629. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_MapColumnIDs_Proxy( 
  15630.     IColumnsInfo __RPC_FAR * This,
  15631.     /* [in] */ ULONG cColumnIDs,
  15632.     /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDs[  ],
  15633.     /* [size_is][out] */ ULONG __RPC_FAR rgColumns[  ]);
  15634.  
  15635.  
  15636. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo_MapColumnIDs_Stub( 
  15637.     IColumnsInfo __RPC_FAR * This,
  15638.     /* [in] */ ULONG cColumnIDs,
  15639.     /* [size_is][in] */ const DBID __RPC_FAR *rgColumnIDs,
  15640.     /* [size_is][out] */ ULONG __RPC_FAR *rgColumns,
  15641.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15642.  
  15643. /* [local] */ HRESULT STDMETHODCALLTYPE IDBCreateCommand_CreateCommand_Proxy( 
  15644.     IDBCreateCommand __RPC_FAR * This,
  15645.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15646.     /* [in] */ REFIID riid,
  15647.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand);
  15648.  
  15649.  
  15650. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBCreateCommand_CreateCommand_Stub( 
  15651.     IDBCreateCommand __RPC_FAR * This,
  15652.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15653.     /* [in] */ REFIID riid,
  15654.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppCommand,
  15655.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15656.  
  15657. /* [local] */ HRESULT STDMETHODCALLTYPE IDBCreateSession_CreateSession_Proxy( 
  15658.     IDBCreateSession __RPC_FAR * This,
  15659.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15660.     /* [in] */ REFIID riid,
  15661.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession);
  15662.  
  15663.  
  15664. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBCreateSession_CreateSession_Stub( 
  15665.     IDBCreateSession __RPC_FAR * This,
  15666.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15667.     /* [in] */ REFIID riid,
  15668.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession,
  15669.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15670.  
  15671. /* [local] */ HRESULT STDMETHODCALLTYPE ISourcesRowset_GetSourcesRowset_Proxy( 
  15672.     ISourcesRowset __RPC_FAR * This,
  15673.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15674.     /* [in] */ REFIID riid,
  15675.     /* [in] */ ULONG cPropertySets,
  15676.     /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgProperties[  ],
  15677.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset);
  15678.  
  15679.  
  15680. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISourcesRowset_GetSourcesRowset_Stub( 
  15681.     ISourcesRowset __RPC_FAR * This,
  15682.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15683.     /* [in] */ REFIID riid,
  15684.     /* [in] */ ULONG cPropertySets,
  15685.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgProperties,
  15686.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppSourcesRowset,
  15687.     /* [in] */ ULONG cTotalProps,
  15688.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15689.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15690.  
  15691. /* [local] */ HRESULT STDMETHODCALLTYPE IDBProperties_GetProperties_Proxy( 
  15692.     IDBProperties __RPC_FAR * This,
  15693.     /* [in] */ ULONG cPropertyIDSets,
  15694.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15695.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15696.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  15697.  
  15698.  
  15699. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_GetProperties_Stub( 
  15700.     IDBProperties __RPC_FAR * This,
  15701.     /* [in] */ ULONG cPropertyIDSets,
  15702.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15703.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15704.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  15705.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15706.  
  15707. /* [local] */ HRESULT STDMETHODCALLTYPE IDBProperties_GetPropertyInfo_Proxy( 
  15708.     IDBProperties __RPC_FAR * This,
  15709.     /* [in] */ ULONG cPropertyIDSets,
  15710.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15711.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  15712.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  15713.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  15714.  
  15715.  
  15716. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_GetPropertyInfo_Stub( 
  15717.     IDBProperties __RPC_FAR * This,
  15718.     /* [in] */ ULONG cPropertyIDSets,
  15719.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15720.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  15721.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  15722.     /* [out][in] */ ULONG __RPC_FAR *pcOffsets,
  15723.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgDescOffsets,
  15724.     /* [out][in] */ ULONG __RPC_FAR *pcbDescBuffer,
  15725.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer,
  15726.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15727.  
  15728. /* [local] */ HRESULT STDMETHODCALLTYPE IDBProperties_SetProperties_Proxy( 
  15729.     IDBProperties __RPC_FAR * This,
  15730.     /* [in] */ ULONG cPropertySets,
  15731.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  15732.  
  15733.  
  15734. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBProperties_SetProperties_Stub( 
  15735.     IDBProperties __RPC_FAR * This,
  15736.     /* [in] */ ULONG cPropertySets,
  15737.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15738.     /* [in] */ ULONG cTotalProps,
  15739.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15740.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15741.  
  15742. /* [local] */ HRESULT STDMETHODCALLTYPE IDBInitialize_Initialize_Proxy( 
  15743.     IDBInitialize __RPC_FAR * This);
  15744.  
  15745.  
  15746. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInitialize_Initialize_Stub( 
  15747.     IDBInitialize __RPC_FAR * This,
  15748.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15749.  
  15750. /* [local] */ HRESULT STDMETHODCALLTYPE IDBInitialize_Uninitialize_Proxy( 
  15751.     IDBInitialize __RPC_FAR * This);
  15752.  
  15753.  
  15754. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInitialize_Uninitialize_Stub( 
  15755.     IDBInitialize __RPC_FAR * This,
  15756.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15757.  
  15758. /* [local] */ HRESULT STDMETHODCALLTYPE IDBInfo_GetKeywords_Proxy( 
  15759.     IDBInfo __RPC_FAR * This,
  15760.     /* [out] */ LPOLESTR __RPC_FAR *ppwszKeywords);
  15761.  
  15762.  
  15763. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInfo_GetKeywords_Stub( 
  15764.     IDBInfo __RPC_FAR * This,
  15765.     /* [unique][out][in] */ LPOLESTR __RPC_FAR *ppwszKeywords,
  15766.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15767.  
  15768. /* [local] */ HRESULT STDMETHODCALLTYPE IDBInfo_GetLiteralInfo_Proxy( 
  15769.     IDBInfo __RPC_FAR * This,
  15770.     /* [in] */ ULONG cLiterals,
  15771.     /* [size_is][in] */ const DBLITERAL __RPC_FAR rgLiterals[  ],
  15772.     /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  15773.     /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  15774.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer);
  15775.  
  15776.  
  15777. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBInfo_GetLiteralInfo_Stub( 
  15778.     IDBInfo __RPC_FAR * This,
  15779.     /* [in] */ ULONG cLiterals,
  15780.     /* [size_is][unique][in] */ const DBLITERAL __RPC_FAR *rgLiterals,
  15781.     /* [out][in] */ ULONG __RPC_FAR *pcLiteralInfo,
  15782.     /* [size_is][size_is][out] */ DBLITERALINFO __RPC_FAR *__RPC_FAR *prgLiteralInfo,
  15783.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgLVOffsets,
  15784.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgICOffsets,
  15785.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgISCOffsets,
  15786.     /* [out][in] */ ULONG __RPC_FAR *pcbCharBuffer,
  15787.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppCharBuffer,
  15788.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15789.  
  15790. /* [local] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_CreateDataSource_Proxy( 
  15791.     IDBDataSourceAdmin __RPC_FAR * This,
  15792.     /* [in] */ ULONG cPropertySets,
  15793.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  15794.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15795.     /* [in] */ REFIID riid,
  15796.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession);
  15797.  
  15798.  
  15799. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_CreateDataSource_Stub( 
  15800.     IDBDataSourceAdmin __RPC_FAR * This,
  15801.     /* [in] */ ULONG cPropertySets,
  15802.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15803.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15804.     /* [in] */ REFIID riid,
  15805.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppDBSession,
  15806.     /* [in] */ ULONG cTotalProps,
  15807.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15808.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15809.  
  15810. /* [local] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_DestroyDataSource_Proxy( 
  15811.     IDBDataSourceAdmin __RPC_FAR * This);
  15812.  
  15813.  
  15814. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_DestroyDataSource_Stub( 
  15815.     IDBDataSourceAdmin __RPC_FAR * This,
  15816.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15817.  
  15818. /* [local] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_GetCreationProperties_Proxy( 
  15819.     IDBDataSourceAdmin __RPC_FAR * This,
  15820.     /* [in] */ ULONG cPropertyIDSets,
  15821.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15822.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  15823.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  15824.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer);
  15825.  
  15826.  
  15827. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_GetCreationProperties_Stub( 
  15828.     IDBDataSourceAdmin __RPC_FAR * This,
  15829.     /* [in] */ ULONG cPropertyIDSets,
  15830.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15831.     /* [out][in] */ ULONG __RPC_FAR *pcPropertyInfoSets,
  15832.     /* [size_is][size_is][out] */ DBPROPINFOSET __RPC_FAR *__RPC_FAR *prgPropertyInfoSets,
  15833.     /* [out][in] */ ULONG __RPC_FAR *pcOffsets,
  15834.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgDescOffsets,
  15835.     /* [out][in] */ ULONG __RPC_FAR *pcbDescBuffer,
  15836.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppDescBuffer,
  15837.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15838.  
  15839. /* [local] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_ModifyDataSource_Proxy( 
  15840.     IDBDataSourceAdmin __RPC_FAR * This,
  15841.     /* [in] */ ULONG cPropertySets,
  15842.     /* [size_is][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  15843.  
  15844.  
  15845. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBDataSourceAdmin_ModifyDataSource_Stub( 
  15846.     IDBDataSourceAdmin __RPC_FAR * This,
  15847.     /* [in] */ ULONG cPropertySets,
  15848.     /* [size_is][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15849.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15850.  
  15851. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnLowResource_Proxy( 
  15852.     IDBAsynchNotify __RPC_FAR * This,
  15853.     /* [in] */ DWORD dwReserved);
  15854.  
  15855.  
  15856. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnLowResource_Stub( 
  15857.     IDBAsynchNotify __RPC_FAR * This,
  15858.     /* [in] */ DWORD dwReserved,
  15859.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15860.  
  15861. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnProgress_Proxy( 
  15862.     IDBAsynchNotify __RPC_FAR * This,
  15863.     /* [in] */ HCHAPTER hChapter,
  15864.     /* [in] */ DBASYNCHOP eOperation,
  15865.     /* [in] */ ULONG ulProgress,
  15866.     /* [in] */ ULONG ulProgressMax,
  15867.     /* [in] */ DBASYNCHPHASE eAsynchPhase,
  15868.     /* [in] */ LPOLESTR pwszStatusText);
  15869.  
  15870.  
  15871. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnProgress_Stub( 
  15872.     IDBAsynchNotify __RPC_FAR * This,
  15873.     /* [in] */ HCHAPTER hChapter,
  15874.     /* [in] */ DBASYNCHOP eOperation,
  15875.     /* [in] */ ULONG ulProgress,
  15876.     /* [in] */ ULONG ulProgressMax,
  15877.     /* [in] */ DBASYNCHPHASE eAsynchPhase,
  15878.     /* [in] */ LPOLESTR pwszStatusText,
  15879.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15880.  
  15881. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnStop_Proxy( 
  15882.     IDBAsynchNotify __RPC_FAR * This,
  15883.     /* [in] */ HCHAPTER hChapter,
  15884.     /* [in] */ DBASYNCHOP eOperation,
  15885.     /* [in] */ HRESULT hrStatus,
  15886.     /* [in] */ LPOLESTR pwszStatusText);
  15887.  
  15888.  
  15889. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchNotify_OnStop_Stub( 
  15890.     IDBAsynchNotify __RPC_FAR * This,
  15891.     /* [in] */ HCHAPTER hChapter,
  15892.     /* [in] */ DBASYNCHOP eOperation,
  15893.     /* [in] */ HRESULT hrStatus,
  15894.     /* [in] */ LPOLESTR pwszStatusText,
  15895.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15896.  
  15897. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_Abort_Proxy( 
  15898.     IDBAsynchStatus __RPC_FAR * This,
  15899.     /* [in] */ HCHAPTER hChapter,
  15900.     /* [in] */ DBASYNCHOP eOperation);
  15901.  
  15902.  
  15903. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_Abort_Stub( 
  15904.     IDBAsynchStatus __RPC_FAR * This,
  15905.     /* [in] */ HCHAPTER hChapter,
  15906.     /* [in] */ DBASYNCHOP eOperation,
  15907.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15908.  
  15909. /* [local] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_GetStatus_Proxy( 
  15910.     IDBAsynchStatus __RPC_FAR * This,
  15911.     /* [in] */ HCHAPTER hChapter,
  15912.     /* [in] */ DBASYNCHOP eOperation,
  15913.     /* [out] */ ULONG __RPC_FAR *pulProgress,
  15914.     /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  15915.     /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  15916.     /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText);
  15917.  
  15918.  
  15919. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBAsynchStatus_GetStatus_Stub( 
  15920.     IDBAsynchStatus __RPC_FAR * This,
  15921.     /* [in] */ HCHAPTER hChapter,
  15922.     /* [in] */ DBASYNCHOP eOperation,
  15923.     /* [out] */ ULONG __RPC_FAR *pulProgress,
  15924.     /* [out] */ ULONG __RPC_FAR *pulProgressMax,
  15925.     /* [out] */ DBASYNCHPHASE __RPC_FAR *peAsynchPhase,
  15926.     /* [out] */ LPOLESTR __RPC_FAR *ppwszStatusText,
  15927.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15928.  
  15929. /* [local] */ HRESULT STDMETHODCALLTYPE ISessionProperties_GetProperties_Proxy( 
  15930.     ISessionProperties __RPC_FAR * This,
  15931.     /* [in] */ ULONG cPropertyIDSets,
  15932.     /* [size_is][in] */ const DBPROPIDSET __RPC_FAR rgPropertyIDSets[  ],
  15933.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15934.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets);
  15935.  
  15936.  
  15937. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISessionProperties_GetProperties_Stub( 
  15938.     ISessionProperties __RPC_FAR * This,
  15939.     /* [in] */ ULONG cPropertyIDSets,
  15940.     /* [size_is][unique][in] */ const DBPROPIDSET __RPC_FAR *rgPropertyIDSets,
  15941.     /* [out][in] */ ULONG __RPC_FAR *pcPropertySets,
  15942.     /* [size_is][size_is][out] */ DBPROPSET __RPC_FAR *__RPC_FAR *prgPropertySets,
  15943.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15944.  
  15945. /* [local] */ HRESULT STDMETHODCALLTYPE ISessionProperties_SetProperties_Proxy( 
  15946.     ISessionProperties __RPC_FAR * This,
  15947.     /* [in] */ ULONG cPropertySets,
  15948.     /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ]);
  15949.  
  15950.  
  15951. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISessionProperties_SetProperties_Stub( 
  15952.     ISessionProperties __RPC_FAR * This,
  15953.     /* [in] */ ULONG cPropertySets,
  15954.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15955.     /* [in] */ ULONG cTotalProps,
  15956.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15957.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15958.  
  15959. /* [local] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_CreateIndex_Proxy( 
  15960.     IIndexDefinition __RPC_FAR * This,
  15961.     /* [in] */ DBID __RPC_FAR *pTableID,
  15962.     /* [in] */ DBID __RPC_FAR *pIndexID,
  15963.     /* [in] */ ULONG cIndexColumnDescs,
  15964.     /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR rgIndexColumnDescs[  ],
  15965.     /* [in] */ ULONG cPropertySets,
  15966.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  15967.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID);
  15968.  
  15969.  
  15970. /* [call_as] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_CreateIndex_Stub( 
  15971.     IIndexDefinition __RPC_FAR * This,
  15972.     /* [in] */ DBID __RPC_FAR *pTableID,
  15973.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  15974.     /* [in] */ ULONG cIndexColumnDescs,
  15975.     /* [size_is][in] */ const DBINDEXCOLUMNDESC __RPC_FAR *rgIndexColumnDescs,
  15976.     /* [in] */ ULONG cPropertySets,
  15977.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  15978.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppIndexID,
  15979.     /* [in] */ ULONG cTotalProps,
  15980.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  15981.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15982.  
  15983. /* [local] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_DropIndex_Proxy( 
  15984.     IIndexDefinition __RPC_FAR * This,
  15985.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  15986.     /* [unique][in] */ DBID __RPC_FAR *pIndexID);
  15987.  
  15988.  
  15989. /* [call_as] */ HRESULT STDMETHODCALLTYPE IIndexDefinition_DropIndex_Stub( 
  15990.     IIndexDefinition __RPC_FAR * This,
  15991.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  15992.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  15993.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  15994.  
  15995. /* [local] */ HRESULT STDMETHODCALLTYPE ITableDefinition_CreateTable_Proxy( 
  15996.     ITableDefinition __RPC_FAR * This,
  15997.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  15998.     /* [in] */ DBID __RPC_FAR *pTableID,
  15999.     /* [in] */ ULONG cColumnDescs,
  16000.     /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR rgColumnDescs[  ],
  16001.     /* [in] */ REFIID riid,
  16002.     /* [in] */ ULONG cPropertySets,
  16003.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  16004.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  16005.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  16006.  
  16007.  
  16008. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_CreateTable_Stub( 
  16009.     ITableDefinition __RPC_FAR * This,
  16010.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16011.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16012.     /* [in] */ ULONG cColumnDescs,
  16013.     /* [size_is][in] */ const DBCOLUMNDESC __RPC_FAR *rgColumnDescs,
  16014.     /* [in] */ REFIID riid,
  16015.     /* [in] */ ULONG cPropertySets,
  16016.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  16017.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppTableID,
  16018.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  16019.     /* [in] */ ULONG cTotalProps,
  16020.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  16021.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16022.  
  16023. /* [local] */ HRESULT STDMETHODCALLTYPE ITableDefinition_DropTable_Proxy( 
  16024.     ITableDefinition __RPC_FAR * This,
  16025.     /* [unique][in] */ DBID __RPC_FAR *pTableID);
  16026.  
  16027.  
  16028. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_DropTable_Stub( 
  16029.     ITableDefinition __RPC_FAR * This,
  16030.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16031.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16032.  
  16033. /* [local] */ HRESULT STDMETHODCALLTYPE ITableDefinition_AddColumn_Proxy( 
  16034.     ITableDefinition __RPC_FAR * This,
  16035.     /* [in] */ DBID __RPC_FAR *pTableID,
  16036.     /* [out][in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  16037.     /* [out] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID);
  16038.  
  16039.  
  16040. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_AddColumn_Stub( 
  16041.     ITableDefinition __RPC_FAR * This,
  16042.     /* [in] */ DBID __RPC_FAR *pTableID,
  16043.     /* [in] */ DBCOLUMNDESC __RPC_FAR *pColumnDesc,
  16044.     /* [unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *ppColumnID,
  16045.     /* [in] */ ULONG cTotalProps,
  16046.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  16047.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16048.  
  16049. /* [local] */ HRESULT STDMETHODCALLTYPE ITableDefinition_DropColumn_Proxy( 
  16050.     ITableDefinition __RPC_FAR * This,
  16051.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16052.     /* [unique][in] */ DBID __RPC_FAR *pColumnID);
  16053.  
  16054.  
  16055. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITableDefinition_DropColumn_Stub( 
  16056.     ITableDefinition __RPC_FAR * This,
  16057.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16058.     /* [unique][in] */ DBID __RPC_FAR *pColumnID,
  16059.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16060.  
  16061. /* [local] */ HRESULT STDMETHODCALLTYPE IOpenRowset_OpenRowset_Proxy( 
  16062.     IOpenRowset __RPC_FAR * This,
  16063.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16064.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16065.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  16066.     /* [in] */ REFIID riid,
  16067.     /* [in] */ ULONG cPropertySets,
  16068.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  16069.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  16070.  
  16071.  
  16072. /* [call_as] */ HRESULT STDMETHODCALLTYPE IOpenRowset_OpenRowset_Stub( 
  16073.     IOpenRowset __RPC_FAR * This,
  16074.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16075.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16076.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  16077.     /* [in] */ REFIID riid,
  16078.     /* [in] */ ULONG cPropertySets,
  16079.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  16080.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  16081.     /* [in] */ ULONG cTotalProps,
  16082.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  16083.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16084.  
  16085. /* [local] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_GetRowset_Proxy( 
  16086.     IDBSchemaRowset __RPC_FAR * This,
  16087.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16088.     /* [in] */ REFGUID rguidSchema,
  16089.     /* [in] */ ULONG cRestrictions,
  16090.     /* [size_is][in] */ const VARIANT __RPC_FAR rgRestrictions[  ],
  16091.     /* [in] */ REFIID riid,
  16092.     /* [in] */ ULONG cPropertySets,
  16093.     /* [size_is][unique][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  16094.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  16095.  
  16096.  
  16097. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_GetRowset_Stub( 
  16098.     IDBSchemaRowset __RPC_FAR * This,
  16099.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16100.     /* [in] */ REFGUID rguidSchema,
  16101.     /* [in] */ ULONG cRestrictions,
  16102.     /* [size_is][unique][in] */ const VARIANT __RPC_FAR *rgRestrictions,
  16103.     /* [in] */ REFIID riid,
  16104.     /* [in] */ ULONG cPropertySets,
  16105.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  16106.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  16107.     /* [in] */ ULONG cTotalProps,
  16108.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus,
  16109.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16110.  
  16111. /* [local] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_GetSchemas_Proxy( 
  16112.     IDBSchemaRowset __RPC_FAR * This,
  16113.     /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  16114.     /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  16115.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport);
  16116.  
  16117.  
  16118. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDBSchemaRowset_GetSchemas_Stub( 
  16119.     IDBSchemaRowset __RPC_FAR * This,
  16120.     /* [out][in] */ ULONG __RPC_FAR *pcSchemas,
  16121.     /* [size_is][size_is][out] */ GUID __RPC_FAR *__RPC_FAR *prgSchemas,
  16122.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgRestrictionSupport,
  16123.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16124.  
  16125. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_AddErrorRecord_Proxy( 
  16126.     IErrorRecords __RPC_FAR * This,
  16127.     /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  16128.     /* [in] */ DWORD dwLookupID,
  16129.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  16130.     /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  16131.     /* [in] */ DWORD dwDynamicErrorID);
  16132.  
  16133.  
  16134. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_AddErrorRecord_Stub( 
  16135.     IErrorRecords __RPC_FAR * This,
  16136.     /* [in] */ ERRORINFO __RPC_FAR *pErrorInfo,
  16137.     /* [in] */ DWORD dwLookupID,
  16138.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  16139.     /* [in] */ IUnknown __RPC_FAR *punkCustomError,
  16140.     /* [in] */ DWORD dwDynamicErrorID,
  16141.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16142.  
  16143. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetBasicErrorInfo_Proxy( 
  16144.     IErrorRecords __RPC_FAR * This,
  16145.     /* [in] */ ULONG ulRecordNum,
  16146.     /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo);
  16147.  
  16148.  
  16149. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetBasicErrorInfo_Stub( 
  16150.     IErrorRecords __RPC_FAR * This,
  16151.     /* [in] */ ULONG ulRecordNum,
  16152.     /* [out] */ ERRORINFO __RPC_FAR *pErrorInfo,
  16153.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16154.  
  16155. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetCustomErrorObject_Proxy( 
  16156.     IErrorRecords __RPC_FAR * This,
  16157.     /* [in] */ ULONG ulRecordNum,
  16158.     /* [in] */ REFIID riid,
  16159.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject);
  16160.  
  16161.  
  16162. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetCustomErrorObject_Stub( 
  16163.     IErrorRecords __RPC_FAR * This,
  16164.     /* [in] */ ULONG ulRecordNum,
  16165.     /* [in] */ REFIID riid,
  16166.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppObject,
  16167.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16168.  
  16169. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetErrorInfo_Proxy( 
  16170.     IErrorRecords __RPC_FAR * This,
  16171.     /* [in] */ ULONG ulRecordNum,
  16172.     /* [in] */ LCID lcid,
  16173.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo);
  16174.  
  16175.  
  16176. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetErrorInfo_Stub( 
  16177.     IErrorRecords __RPC_FAR * This,
  16178.     /* [in] */ ULONG ulRecordNum,
  16179.     /* [in] */ LCID lcid,
  16180.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfo,
  16181.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16182.  
  16183. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetErrorParameters_Proxy( 
  16184.     IErrorRecords __RPC_FAR * This,
  16185.     /* [in] */ ULONG ulRecordNum,
  16186.     /* [out] */ DISPPARAMS __RPC_FAR *pdispparams);
  16187.  
  16188.  
  16189. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetErrorParameters_Stub( 
  16190.     IErrorRecords __RPC_FAR * This,
  16191.     /* [in] */ ULONG ulRecordNum,
  16192.     /* [out] */ DISPPARAMS __RPC_FAR *pdispparams,
  16193.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16194.  
  16195. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetRecordCount_Proxy( 
  16196.     IErrorRecords __RPC_FAR * This,
  16197.     /* [out] */ ULONG __RPC_FAR *pcRecords);
  16198.  
  16199.  
  16200. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorRecords_GetRecordCount_Stub( 
  16201.     IErrorRecords __RPC_FAR * This,
  16202.     /* [out] */ ULONG __RPC_FAR *pcRecords,
  16203.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16204.  
  16205. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorLookup_GetErrorDescription_Proxy( 
  16206.     IErrorLookup __RPC_FAR * This,
  16207.     /* [in] */ HRESULT hrError,
  16208.     /* [in] */ DWORD dwLookupID,
  16209.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  16210.     /* [in] */ LCID lcid,
  16211.     /* [out] */ BSTR __RPC_FAR *pbstrSource,
  16212.     /* [out] */ BSTR __RPC_FAR *pbstrDescription);
  16213.  
  16214.  
  16215. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_GetErrorDescription_Stub( 
  16216.     IErrorLookup __RPC_FAR * This,
  16217.     /* [in] */ HRESULT hrError,
  16218.     /* [in] */ DWORD dwLookupID,
  16219.     /* [in] */ DISPPARAMS __RPC_FAR *pdispparams,
  16220.     /* [in] */ LCID lcid,
  16221.     /* [out] */ BSTR __RPC_FAR *pbstrSource,
  16222.     /* [out] */ BSTR __RPC_FAR *pbstrDescription,
  16223.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16224.  
  16225. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorLookup_GetHelpInfo_Proxy( 
  16226.     IErrorLookup __RPC_FAR * This,
  16227.     /* [in] */ HRESULT hrError,
  16228.     /* [in] */ DWORD dwLookupID,
  16229.     /* [in] */ LCID lcid,
  16230.     /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  16231.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext);
  16232.  
  16233.  
  16234. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_GetHelpInfo_Stub( 
  16235.     IErrorLookup __RPC_FAR * This,
  16236.     /* [in] */ HRESULT hrError,
  16237.     /* [in] */ DWORD dwLookupID,
  16238.     /* [in] */ LCID lcid,
  16239.     /* [out] */ BSTR __RPC_FAR *pbstrHelpFile,
  16240.     /* [out] */ DWORD __RPC_FAR *pdwHelpContext,
  16241.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16242.  
  16243. /* [local] */ HRESULT STDMETHODCALLTYPE IErrorLookup_ReleaseErrors_Proxy( 
  16244.     IErrorLookup __RPC_FAR * This,
  16245.     /* [in] */ const DWORD dwDynamicErrorID);
  16246.  
  16247.  
  16248. /* [call_as] */ HRESULT STDMETHODCALLTYPE IErrorLookup_ReleaseErrors_Stub( 
  16249.     IErrorLookup __RPC_FAR * This,
  16250.     /* [in] */ const DWORD dwDynamicErrorID,
  16251.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16252.  
  16253. /* [local] */ HRESULT STDMETHODCALLTYPE ISQLErrorInfo_GetSQLInfo_Proxy( 
  16254.     ISQLErrorInfo __RPC_FAR * This,
  16255.     /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  16256.     /* [out] */ LONG __RPC_FAR *plNativeError);
  16257.  
  16258.  
  16259. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISQLErrorInfo_GetSQLInfo_Stub( 
  16260.     ISQLErrorInfo __RPC_FAR * This,
  16261.     /* [out] */ BSTR __RPC_FAR *pbstrSQLState,
  16262.     /* [out] */ LONG __RPC_FAR *plNativeError,
  16263.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16264.  
  16265. /* [local] */ HRESULT STDMETHODCALLTYPE IGetDataSource_GetDataSource_Proxy( 
  16266.     IGetDataSource __RPC_FAR * This,
  16267.     /* [in] */ REFIID riid,
  16268.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource);
  16269.  
  16270.  
  16271. /* [call_as] */ HRESULT STDMETHODCALLTYPE IGetDataSource_GetDataSource_Stub( 
  16272.     IGetDataSource __RPC_FAR * This,
  16273.     /* [in] */ REFIID riid,
  16274.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppDataSource,
  16275.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16276.  
  16277. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_GetOptionsObject_Proxy( 
  16278.     ITransactionLocal __RPC_FAR * This,
  16279.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  16280.  
  16281.  
  16282. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_GetOptionsObject_Stub( 
  16283.     ITransactionLocal __RPC_FAR * This,
  16284.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions,
  16285.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16286.  
  16287. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_StartTransaction_Proxy( 
  16288.     ITransactionLocal __RPC_FAR * This,
  16289.     /* [in] */ ISOLEVEL isoLevel,
  16290.     /* [in] */ ULONG isoFlags,
  16291.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  16292.     /* [out] */ ULONG __RPC_FAR *pulTransactionLevel);
  16293.  
  16294.  
  16295. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionLocal_StartTransaction_Stub( 
  16296.     ITransactionLocal __RPC_FAR * This,
  16297.     /* [in] */ ISOLEVEL isoLevel,
  16298.     /* [in] */ ULONG isoFlags,
  16299.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  16300.     /* [unique][out][in] */ ULONG __RPC_FAR *pulTransactionLevel,
  16301.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16302.  
  16303. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_GetOptionsObject_Proxy( 
  16304.     ITransactionJoin __RPC_FAR * This,
  16305.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  16306.  
  16307.  
  16308. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_GetOptionsObject_Stub( 
  16309.     ITransactionJoin __RPC_FAR * This,
  16310.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions,
  16311.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16312.  
  16313. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_JoinTransaction_Proxy( 
  16314.     ITransactionJoin __RPC_FAR * This,
  16315.     /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  16316.     /* [in] */ ISOLEVEL isoLevel,
  16317.     /* [in] */ ULONG isoFlags,
  16318.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions);
  16319.  
  16320.  
  16321. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionJoin_JoinTransaction_Stub( 
  16322.     ITransactionJoin __RPC_FAR * This,
  16323.     /* [in] */ IUnknown __RPC_FAR *punkTransactionCoord,
  16324.     /* [in] */ ISOLEVEL isoLevel,
  16325.     /* [in] */ ULONG isoFlags,
  16326.     /* [in] */ ITransactionOptions __RPC_FAR *pOtherOptions,
  16327.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16328.  
  16329. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionObject_GetTransactionObject_Proxy( 
  16330.     ITransactionObject __RPC_FAR * This,
  16331.     /* [in] */ ULONG ulTransactionLevel,
  16332.     /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject);
  16333.  
  16334.  
  16335. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionObject_GetTransactionObject_Stub( 
  16336.     ITransactionObject __RPC_FAR * This,
  16337.     /* [in] */ ULONG ulTransactionLevel,
  16338.     /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransactionObject,
  16339.     /* [out] */ IErrorInfo __RPC_FAR *__RPC_FAR *ppErrorInfoRem);
  16340.  
  16341. /* [local] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Copy_Proxy( 
  16342.     IScopedOperations __RPC_FAR * This,
  16343.     /* [in] */ ULONG cRows,
  16344.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  16345.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  16346.     /* [in] */ DWORD dwCopyFlags,
  16347.     /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16348.     /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  16349.     /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  16350.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16351.  
  16352.  
  16353. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Copy_Stub( 
  16354.     IScopedOperations __RPC_FAR * This,
  16355.     /* [in] */ ULONG cRows,
  16356.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszSourceURLs,
  16357.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszDestURLs,
  16358.     /* [in] */ DWORD dwCopyFlags,
  16359.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16360.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus,
  16361.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgulNewURLOffsets,
  16362.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  16363.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16364.  
  16365. /* [local] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Move_Proxy( 
  16366.     IScopedOperations __RPC_FAR * This,
  16367.     /* [in] */ ULONG cRows,
  16368.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszSourceURLs[  ],
  16369.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszDestURLs[  ],
  16370.     /* [in] */ DWORD dwMoveFlags,
  16371.     /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16372.     /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ],
  16373.     /* [size_is][out] */ LPOLESTR __RPC_FAR rgpwszNewURLs[  ],
  16374.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16375.  
  16376.  
  16377. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Move_Stub( 
  16378.     IScopedOperations __RPC_FAR * This,
  16379.     /* [in] */ ULONG cRows,
  16380.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszSourceURLs,
  16381.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszDestURLs,
  16382.     /* [in] */ DWORD dwMoveFlags,
  16383.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16384.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus,
  16385.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgulNewURLOffsets,
  16386.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  16387.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16388.  
  16389. /* [local] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Delete_Proxy( 
  16390.     IScopedOperations __RPC_FAR * This,
  16391.     /* [in] */ ULONG cRows,
  16392.     /* [size_is][in] */ LPCOLESTR __RPC_FAR rgpwszURLs[  ],
  16393.     /* [in] */ DWORD dwDeleteFlags,
  16394.     /* [size_is][out][in] */ DBSTATUS __RPC_FAR rgdwStatus[  ]);
  16395.  
  16396.  
  16397. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_Delete_Stub( 
  16398.     IScopedOperations __RPC_FAR * This,
  16399.     /* [in] */ ULONG cRows,
  16400.     /* [size_is][in] */ LPCOLESTR __RPC_FAR *rgpwszURLs,
  16401.     /* [in] */ DWORD dwDeleteFlags,
  16402.     /* [size_is][out] */ DBSTATUS __RPC_FAR *rgdwStatus);
  16403.  
  16404. /* [local] */ HRESULT STDMETHODCALLTYPE IScopedOperations_OpenRowset_Proxy( 
  16405.     IScopedOperations __RPC_FAR * This,
  16406.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16407.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16408.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  16409.     /* [in] */ REFIID riid,
  16410.     /* [in] */ ULONG cPropertySets,
  16411.     /* [size_is][out][in] */ DBPROPSET __RPC_FAR rgPropertySets[  ],
  16412.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset);
  16413.  
  16414.  
  16415. /* [call_as] */ HRESULT STDMETHODCALLTYPE IScopedOperations_OpenRowset_Stub( 
  16416.     IScopedOperations __RPC_FAR * This,
  16417.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16418.     /* [unique][in] */ DBID __RPC_FAR *pTableID,
  16419.     /* [unique][in] */ DBID __RPC_FAR *pIndexID,
  16420.     /* [in] */ REFIID riid,
  16421.     /* [in] */ ULONG cPropertySets,
  16422.     /* [size_is][unique][in] */ DBPROPSET __RPC_FAR *rgPropertySets,
  16423.     /* [iid_is][unique][out][in] */ IUnknown __RPC_FAR *__RPC_FAR *ppRowset,
  16424.     /* [in] */ ULONG cTotalProps,
  16425.     /* [size_is][out] */ DBPROPSTATUS __RPC_FAR *rgPropStatus);
  16426.  
  16427. /* [local] */ HRESULT STDMETHODCALLTYPE IBindResource_Bind_Proxy( 
  16428.     IBindResource __RPC_FAR * This,
  16429.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16430.     /* [in] */ LPCOLESTR pwszURL,
  16431.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  16432.     /* [in] */ REFGUID rguid,
  16433.     /* [in] */ REFIID riid,
  16434.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16435.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  16436.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  16437.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  16438.  
  16439.  
  16440. /* [call_as] */ HRESULT STDMETHODCALLTYPE IBindResource_Bind_Stub( 
  16441.     IBindResource __RPC_FAR * This,
  16442.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16443.     /* [in] */ LPCOLESTR pwszURL,
  16444.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  16445.     /* [in] */ REFGUID rguid,
  16446.     /* [in] */ REFIID riid,
  16447.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16448.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  16449.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  16450.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  16451.  
  16452. /* [local] */ HRESULT STDMETHODCALLTYPE ICreateRow_CreateRow_Proxy( 
  16453.     ICreateRow __RPC_FAR * This,
  16454.     /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  16455.     /* [in] */ LPCOLESTR pwszURL,
  16456.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  16457.     /* [in] */ REFGUID rguid,
  16458.     /* [in] */ REFIID riid,
  16459.     /* [unique][in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16460.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  16461.     /* [out][in] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  16462.     /* [out] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  16463.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  16464.  
  16465.  
  16466. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICreateRow_CreateRow_Stub( 
  16467.     ICreateRow __RPC_FAR * This,
  16468.     /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  16469.     /* [in] */ LPCOLESTR pwszURL,
  16470.     /* [in] */ DBBINDURLFLAG dwBindURLFlags,
  16471.     /* [in] */ REFGUID rguid,
  16472.     /* [in] */ REFIID riid,
  16473.     /* [in] */ IAuthenticate __RPC_FAR *pAuthenticate,
  16474.     /* [unique][out][in] */ DBIMPLICITSESSION __RPC_FAR *pImplSession,
  16475.     /* [out] */ DBBINDURLSTATUS __RPC_FAR *pdwBindStatus,
  16476.     /* [unique][out][in] */ LPOLESTR __RPC_FAR *ppwszNewURL,
  16477.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnk);
  16478.  
  16479. /* [local] */ HRESULT STDMETHODCALLTYPE IColumnsInfo2_GetRestrictedColumnInfo_Proxy( 
  16480.     IColumnsInfo2 __RPC_FAR * This,
  16481.     /* [in] */ ULONG cColumnIDMasks,
  16482.     /* [size_is][in] */ const DBID __RPC_FAR rgColumnIDMasks[  ],
  16483.     /* [in] */ DWORD dwFlags,
  16484.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  16485.     /* [size_is][size_is][out] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  16486.     /* [size_is][size_is][out] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  16487.     /* [out] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16488.  
  16489.  
  16490. /* [call_as] */ HRESULT STDMETHODCALLTYPE IColumnsInfo2_GetRestrictedColumnInfo_Stub( 
  16491.     IColumnsInfo2 __RPC_FAR * This,
  16492.     /* [in] */ ULONG cColumnIDMasks,
  16493.     /* [size_is][unique][in] */ const DBID __RPC_FAR *rgColumnIDMasks,
  16494.     /* [in] */ DWORD dwFlags,
  16495.     /* [out][in] */ ULONG __RPC_FAR *pcColumns,
  16496.     /* [size_is][size_is][unique][out][in] */ DBID __RPC_FAR *__RPC_FAR *prgColumnIDs,
  16497.     /* [size_is][size_is][unique][out][in] */ DBCOLUMNINFO __RPC_FAR *__RPC_FAR *prgColumnInfo,
  16498.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgNameOffsets,
  16499.     /* [size_is][size_is][out] */ ULONG __RPC_FAR *__RPC_FAR *prgcolumnidOffsets,
  16500.     /* [out][in] */ ULONG __RPC_FAR *pcbStringsBuffer,
  16501.     /* [size_is][size_is][unique][out][in] */ OLECHAR __RPC_FAR *__RPC_FAR *ppStringsBuffer);
  16502.  
  16503. /* [local] */ HRESULT STDMETHODCALLTYPE IRegisterProvider_GetURLMapping_Proxy( 
  16504.     IRegisterProvider __RPC_FAR * This,
  16505.     /* [in] */ LPCOLESTR pwszURL,
  16506.     /* [in] */ DWORD dwReserved,
  16507.     /* [out] */ CLSID __RPC_FAR *pclsidProvider);
  16508.  
  16509.  
  16510. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRegisterProvider_GetURLMapping_Stub( 
  16511.     IRegisterProvider __RPC_FAR * This,
  16512.     /* [in] */ LPCOLESTR pwszURL,
  16513.     /* [in] */ DWORD dwReserved,
  16514.     /* [out] */ CLSID __RPC_FAR *pclsidProvider);
  16515.  
  16516.  
  16517.  
  16518. #endif // OLEDBPROXY
  16519. /* end of Additional Prototypes */
  16520.  
  16521. #ifdef __cplusplus
  16522. }
  16523. #endif
  16524.  
  16525. #endif
  16526.