home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Internet 2000 May / MICD_2000_05.iso / CBuilder5 / INSTALL / DATA1.CAB / Program_Built_Files / Include / msdasql.h < prev    next >
C/C++ Source or Header  |  2000-02-01  |  18KB  |  568 lines

  1. //--------------------------------------------------------------------
  2. // Microsoft OLE DB Provider for ODBC data 
  3. // (C) Copyright 1994 - 1997 By Microsoft Corporation.
  4. //
  5. // @doc
  6. //
  7. // @module MSDASQL.H | Provider Specific definitions
  8. //
  9. //--------------------------------------------------------------------
  10.  
  11. #ifndef  _MSDASQL_H_
  12. #pragma option push -b -a8 -pc -A- /*P_O_Push*/
  13. #define  _MSDASQL_H_
  14.  
  15. // Provider Class Id
  16. #ifdef DBINITCONSTANTS
  17. // IID_ISQLRequestDiagFields {228972F0-B5FF-11d0-8A80-00C04FD611CD}
  18. extern const GUID IID_ISQLRequestDiagFields = { 0x228972f0, 0xb5ff, 0x11d0, { 0x8a, 0x80, 0x0, 0xc0, 0x4f, 0xd6, 0x11, 0xcd } };
  19. // IID_ISQLGetDiagField {228972F1-B5FF-11d0-8A80-00C04FD611CD}
  20. extern const GUID IID_ISQLGetDiagField = { 0x228972f1, 0xb5ff, 0x11d0, { 0x8a, 0x80, 0x0, 0xc0, 0x4f, 0xd6, 0x11, 0xcd } };
  21. // @msg IID_IRowsetChangeExtInfo | {0c733a8f-2a1c-11ce-ade5-00aa0044773d}
  22. extern const GUID IID_IRowsetChangeExtInfo    = {0x0C733A8FL,0x2A1C,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
  23. extern const GUID CLSID_MSDASQL               = {0xC8B522CBL,0x5CF3,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
  24. extern const GUID CLSID_MSDASQL_ENUMERATOR    = {0xC8B522CDL,0x5CF3,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
  25. #else // !DBINITCONSTANTS
  26. extern const GUID IID_ISQLRequestDiagFields;
  27. extern const GUID IID_ISQLGetDiagField;
  28. extern const GUID IID_IRowsetChangeExtInfo;
  29. extern const GUID CLSID_MSDASQL;
  30. extern const GUID CLSID_MSDASQL_ENUMERATOR;
  31. #endif // DBINITCONSTANTS
  32.  
  33. //----------------------------------------------------------------------------
  34. // MSDASQL specific properties
  35. #ifdef DBINITCONSTANTS
  36. extern const GUID DBPROPSET_PROVIDERDATASOURCEINFO    = {0x497c60e0,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
  37. extern const GUID DBPROPSET_PROVIDERROWSET          = {0x497c60e1,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
  38. extern const GUID DBPROPSET_PROVIDERDBINIT          = {0x497c60e2,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
  39. extern const GUID DBPROPSET_PROVIDERSTMTATTR          = {0x497c60e3,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
  40. extern const GUID DBPROPSET_PROVIDERCONNATTR          = {0x497c60e4,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
  41. #else // !DBINITCONSTANTS
  42. extern const GUID DBPROPSET_PROVIDERDATASOURCEINFO;
  43. extern const GUID DBPROPSET_PROVIDERROWSET;
  44. extern const GUID DBPROPSET_PROVIDERDBINIT;
  45. extern const GUID DBPROPSET_PROVIDERSTMTATTR;
  46. extern const GUID DBPROPSET_PROVIDERCONNATTR;
  47. #endif // DBINITCONSTANTS
  48.  
  49. // PropIds under DBPROPSET_PROVIDERROWSET 
  50. #define KAGPROP_QUERYBASEDUPDATES            2
  51. #define KAGPROP_MARSHALLABLE                3
  52. #define KAGPROP_POSITIONONNEWROW            4
  53. #define    KAGPROP_IRowsetChangeExtInfo        5
  54. #define KAGPROP_CURSOR                        6
  55. #define KAGPROP_CONCURRENCY                    7
  56. #define KAGPROP_BLOBSONFOCURSOR                8
  57. #define KAGPROP_INCLUDENONEXACT                9
  58. #define KAGPROP_FORCESSFIREHOSEMODE            10
  59. #define KAGPROP_FORCENOPARAMETERREBIND        11
  60. #define KAGPROP_FORCENOPREPARE                12
  61. #define KAGPROP_FORCENOREEXECUTE            13
  62.  
  63. // PropIds under DPBROPSET_PROVIDERDATASOURCEINFO
  64. #define KAGPROP_ACCESSIBLEPROCEDURES        2
  65. #define KAGPROP_ACCESSIBLETABLES            3
  66. #define KAGPROP_ODBCSQLOPTIEF                4
  67. #define KAGPROP_OJCAPABILITY                5
  68. #define KAGPROP_PROCEDURES                    6
  69. #define KAGPROP_DRIVERNAME                    7
  70. #define KAGPROP_DRIVERVER                    8
  71. #define KAGPROP_DRIVERODBCVER                9
  72. #define KAGPROP_LIKEESCAPECLAUSE            10
  73. #define KAGPROP_SPECIALCHARACTERS            11
  74. #define KAGPROP_MAXCOLUMNSINGROUPBY            12
  75. #define KAGPROP_MAXCOLUMNSININDEX            13
  76. #define KAGPROP_MAXCOLUMNSINORDERBY            14
  77. #define KAGPROP_MAXCOLUMNSINSELECT            15
  78. #define KAGPROP_MAXCOLUMNSINTABLE            16
  79. #define KAGPROP_NUMERICFUNCTIONS            17
  80. #define KAGPROP_ODBCSQLCONFORMANCE            18
  81. #define KAGPROP_OUTERJOINS                    19
  82. #define KAGPROP_STRINGFUNCTIONS                20
  83. #define KAGPROP_SYSTEMFUNCTIONS                21
  84. #define KAGPROP_TIMEDATEFUNCTIONS            22
  85. #define KAGPROP_FILEUSAGE                    23
  86. #define KAGPROP_ACTIVESTATEMENTS            24
  87.  
  88. // PropIds under DBPROPSET_PROVIDERDBINIT 
  89. #define KAGPROP_AUTH_TRUSTEDCONNECTION        2
  90. #define KAGPROP_AUTH_SERVERINTEGRATED        3
  91.  
  92.  
  93. // Bitmask values for KAGPROP_CONCURRENCY
  94. #define KAGPROPVAL_CONCUR_ROWVER            0x00000001
  95. #define KAGPROPVAL_CONCUR_VALUES            0x00000002
  96. #define KAGPROPVAL_CONCUR_LOCK                0x00000004
  97. #define KAGPROPVAL_CONCUR_READ_ONLY            0x00000008
  98.  
  99.  
  100. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  101.  
  102.  
  103. /* File created by MIDL compiler version 3.00.15 */
  104. /* at Tue Sep 24 13:38:00 1996
  105.  */
  106. /* Compiler settings for rstcei.idl:
  107.     Os, W1, Zp8, env=Win32, ms_ext, c_ext
  108.     error checks: none
  109. */
  110. //@@MIDL_FILE_HEADING(  )
  111. #include "rpc.h"
  112. #include "rpcndr.h"
  113. #ifndef COM_NO_WINDOWS_H
  114. #include "windows.h"
  115. #include "ole2.h"
  116. #endif /*COM_NO_WINDOWS_H*/
  117.  
  118. #ifndef __rstcei_h__
  119. #define __rstcei_h__
  120.  
  121. #ifdef __cplusplus
  122. extern "C"{
  123. #endif 
  124.  
  125. /* Forward Declarations */ 
  126.  
  127. #ifndef __IRowsetChangeExtInfo_FWD_DEFINED__
  128. #define __IRowsetChangeExtInfo_FWD_DEFINED__
  129. typedef interface IRowsetChangeExtInfo IRowsetChangeExtInfo;
  130. #endif     /* __IRowsetChangeExtInfo_FWD_DEFINED__ */
  131.  
  132. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  133. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  134.  
  135. #ifndef __IRowsetChangeExtInfo_INTERFACE_DEFINED__
  136. #define __IRowsetChangeExtInfo_INTERFACE_DEFINED__
  137.  
  138. /****************************************
  139.  * Generated header for interface: IRowsetChangeExtInfo
  140.  * at Tue Sep 24 13:38:00 1996
  141.  * using MIDL 3.00.15
  142.  ****************************************/
  143. /* [unique][uuid][object][local] */ 
  144.  
  145.  
  146.  
  147. EXTERN_C const IID IID_IRowsetChangeExtInfo;
  148.  
  149. #if defined(__cplusplus) && !defined(CINTERFACE)
  150.     
  151.     interface IRowsetChangeExtInfo : public IUnknown
  152.     {
  153.     public:
  154.         virtual HRESULT STDMETHODCALLTYPE GetOriginalRow( 
  155.             /* [in] */ HCHAPTER hReserved,
  156.             /* [in] */ HROW hRow,
  157.             /* [out] */ HROW __RPC_FAR *phRowOriginal) = 0;
  158.         
  159.         virtual HRESULT STDMETHODCALLTYPE GetPendingColumns( 
  160.             /* [in] */ HCHAPTER hReserved,
  161.             /* [in] */ HROW hRow,
  162.             /* [in] */ ULONG cColumnOrdinals,
  163.             /* [size_is][in] */ const ULONG __RPC_FAR rgiOrdinals[  ],
  164.             /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgColumnStatus[  ]) = 0;
  165.         
  166.     };
  167.     
  168. #else     /* C style interface */
  169.  
  170.     typedef struct IRowsetChangeExtInfoVtbl
  171.     {
  172.         BEGIN_INTERFACE
  173.         
  174.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  175.             IRowsetChangeExtInfo __RPC_FAR * This,
  176.             /* [in] */ REFIID riid,
  177.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  178.         
  179.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  180.             IRowsetChangeExtInfo __RPC_FAR * This);
  181.         
  182.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  183.             IRowsetChangeExtInfo __RPC_FAR * This);
  184.         
  185.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetOriginalRow )( 
  186.             IRowsetChangeExtInfo __RPC_FAR * This,
  187.             /* [in] */ HCHAPTER hReserved,
  188.             /* [in] */ HROW hRow,
  189.             /* [out] */ HROW __RPC_FAR *phRowOriginal);
  190.         
  191.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPendingColumns )( 
  192.             IRowsetChangeExtInfo __RPC_FAR * This,
  193.             /* [in] */ HCHAPTER hReserved,
  194.             /* [in] */ HROW hRow,
  195.             /* [in] */ ULONG cColumnOrdinals,
  196.             /* [size_is][in] */ const ULONG __RPC_FAR rgiOrdinals[  ],
  197.             /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgColumnStatus[  ]);
  198.         
  199.         END_INTERFACE
  200.     } IRowsetChangeExtInfoVtbl;
  201.  
  202.     interface IRowsetChangeExtInfo
  203.     {
  204.         CONST_VTBL struct IRowsetChangeExtInfoVtbl __RPC_FAR *lpVtbl;
  205.     };
  206.  
  207.     
  208.  
  209. #ifdef COBJMACROS
  210.  
  211.  
  212. #define IRowsetChangeExtInfo_QueryInterface(This,riid,ppvObject)    \
  213.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  214.  
  215. #define IRowsetChangeExtInfo_AddRef(This)    \
  216.     (This)->lpVtbl -> AddRef(This)
  217.  
  218. #define IRowsetChangeExtInfo_Release(This)    \
  219.     (This)->lpVtbl -> Release(This)
  220.  
  221.  
  222. #define IRowsetChangeExtInfo_GetOriginalRow(This,hReserved,hRow,phRowOriginal)    \
  223.     (This)->lpVtbl -> GetOriginalRow(This,hReserved,hRow,phRowOriginal)
  224.  
  225. #define IRowsetChangeExtInfo_GetPendingColumns(This,hReserved,hRow,cColumnOrdinals,rgiOrdinals,rgColumnStatus)    \
  226.     (This)->lpVtbl -> GetPendingColumns(This,hReserved,hRow,cColumnOrdinals,rgiOrdinals,rgColumnStatus)
  227.  
  228. #endif /* COBJMACROS */
  229.  
  230.  
  231. #endif     /* C style interface */
  232.  
  233.  
  234.  
  235. HRESULT STDMETHODCALLTYPE IRowsetChangeExtInfo_GetOriginalRow_Proxy( 
  236.     IRowsetChangeExtInfo __RPC_FAR * This,
  237.     /* [in] */ HCHAPTER hReserved,
  238.     /* [in] */ HROW hRow,
  239.     /* [out] */ HROW __RPC_FAR *phRowOriginal);
  240.  
  241.  
  242. void __RPC_STUB IRowsetChangeExtInfo_GetOriginalRow_Stub(
  243.     IRpcStubBuffer *This,
  244.     IRpcChannelBuffer *_pRpcChannelBuffer,
  245.     PRPC_MESSAGE _pRpcMessage,
  246.     DWORD *_pdwStubPhase);
  247.  
  248.  
  249. HRESULT STDMETHODCALLTYPE IRowsetChangeExtInfo_GetPendingColumns_Proxy( 
  250.     IRowsetChangeExtInfo __RPC_FAR * This,
  251.     /* [in] */ HCHAPTER hReserved,
  252.     /* [in] */ HROW hRow,
  253.     /* [in] */ ULONG cColumnOrdinals,
  254.     /* [size_is][in] */ const ULONG __RPC_FAR rgiOrdinals[  ],
  255.     /* [size_is][out] */ DBPENDINGSTATUS __RPC_FAR rgColumnStatus[  ]);
  256.  
  257.  
  258. void __RPC_STUB IRowsetChangeExtInfo_GetPendingColumns_Stub(
  259.     IRpcStubBuffer *This,
  260.     IRpcChannelBuffer *_pRpcChannelBuffer,
  261.     PRPC_MESSAGE _pRpcMessage,
  262.     DWORD *_pdwStubPhase);
  263.  
  264.  
  265.  
  266. #endif     /* __IRowsetChangeExtInfo_INTERFACE_DEFINED__ */
  267.  
  268.  
  269. /* Additional Prototypes for ALL interfaces */
  270.  
  271. /* end of Additional Prototypes */
  272.  
  273. #ifdef __cplusplus
  274. }
  275. #endif
  276.  
  277. #endif
  278.  
  279. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  280.  
  281.  
  282. /* File created by MIDL compiler version 3.00.44 */
  283. /* at Sun May 11 15:03:47 1997
  284.  */
  285. /* Compiler settings for KAGDIAG.IDL:
  286.     Os (OptLev=s), W1, Zp8, env=Win32, ms_ext, c_ext
  287.     error checks: none
  288. */
  289. //@@MIDL_FILE_HEADING(  )
  290. #include "rpc.h"
  291. #include "rpcndr.h"
  292. #ifndef COM_NO_WINDOWS_H
  293. #include "windows.h"
  294. #include "ole2.h"
  295. #endif /*COM_NO_WINDOWS_H*/
  296.  
  297. #ifndef __KAGDIAG_H__
  298. #define __KAGDIAG_H__
  299.  
  300. #ifdef __cplusplus
  301. extern "C"{
  302. #endif 
  303.  
  304. /* Forward Declarations */ 
  305.  
  306. #ifndef __ISQLRequestDiagFields_FWD_DEFINED__
  307. #define __ISQLRequestDiagFields_FWD_DEFINED__
  308. typedef interface ISQLRequestDiagFields ISQLRequestDiagFields;
  309. #endif     /* __ISQLRequestDiagFields_FWD_DEFINED__ */
  310.  
  311.  
  312. #ifndef __ISQLGetDiagField_FWD_DEFINED__
  313. #define __ISQLGetDiagField_FWD_DEFINED__
  314. typedef interface ISQLGetDiagField ISQLGetDiagField;
  315. #endif     /* __ISQLGetDiagField_FWD_DEFINED__ */
  316.  
  317.  
  318. /* header files for imported files */
  319. #include "unknwn.h"
  320. #include "oaidl.h"
  321.  
  322. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  323. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  324.  
  325. /****************************************
  326.  * Generated header for interface: __MIDL__intf_0000
  327.  * at Sun May 11 15:03:47 1997
  328.  * using MIDL 3.00.44
  329.  ****************************************/
  330. /* [local] */ 
  331.  
  332.  
  333.  
  334. enum KAGREQDIAGFLAGSENUM
  335.     {    KAGREQDIAGFLAGS_HEADER    = 0x1,
  336.     KAGREQDIAGFLAGS_RECORD    = 0x2
  337.     };
  338. // the structure passed in in IRequestDiagFields::RequestDiagFields
  339. typedef struct  tagKAGREQDIAG
  340.     {
  341.     ULONG ulDiagFlags;
  342.     VARTYPE vt;
  343.     SHORT sDiagField;
  344.     }    KAGREQDIAG;
  345.  
  346. // the structure passed in in IGetDiagField::GetDiagField
  347. typedef struct  tagKAGGETDIAG
  348.     {
  349.     ULONG ulSize;
  350.     VARIANTARG vDiagInfo;
  351.     SHORT sDiagField;
  352.     }    KAGGETDIAG;
  353.  
  354.  
  355.  
  356. extern RPC_IF_HANDLE __MIDL__intf_0000_v0_0_c_ifspec;
  357. extern RPC_IF_HANDLE __MIDL__intf_0000_v0_0_s_ifspec;
  358.  
  359. #ifndef __ISQLRequestDiagFields_INTERFACE_DEFINED__
  360. #define __ISQLRequestDiagFields_INTERFACE_DEFINED__
  361.  
  362. /****************************************
  363.  * Generated header for interface: ISQLRequestDiagFields
  364.  * at Sun May 11 15:03:47 1997
  365.  * using MIDL 3.00.44
  366.  ****************************************/
  367. /* [object][uuid] */ 
  368.  
  369.  
  370.  
  371. EXTERN_C const IID IID_ISQLRequestDiagFields;
  372.  
  373. #if defined(__cplusplus) && !defined(CINTERFACE)
  374.     
  375.     interface ISQLRequestDiagFields : public IUnknown
  376.     {
  377.     public:
  378.         virtual HRESULT STDMETHODCALLTYPE RequestDiagFields( 
  379.             /* [in] */ ULONG cDiagFields,
  380.             /* [size_is][in] */ KAGREQDIAG __RPC_FAR rgDiagFields[  ]) = 0;
  381.         
  382.     };
  383.     
  384. #else     /* C style interface */
  385.  
  386.     typedef struct ISQLRequestDiagFieldsVtbl
  387.     {
  388.         BEGIN_INTERFACE
  389.         
  390.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  391.             ISQLRequestDiagFields __RPC_FAR * This,
  392.             /* [in] */ REFIID riid,
  393.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  394.         
  395.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  396.             ISQLRequestDiagFields __RPC_FAR * This);
  397.         
  398.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  399.             ISQLRequestDiagFields __RPC_FAR * This);
  400.         
  401.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RequestDiagFields )( 
  402.             ISQLRequestDiagFields __RPC_FAR * This,
  403.             /* [in] */ ULONG cDiagFields,
  404.             /* [size_is][in] */ KAGREQDIAG __RPC_FAR rgDiagFields[  ]);
  405.         
  406.         END_INTERFACE
  407.     } ISQLRequestDiagFieldsVtbl;
  408.  
  409.     interface ISQLRequestDiagFields
  410.     {
  411.         CONST_VTBL struct ISQLRequestDiagFieldsVtbl __RPC_FAR *lpVtbl;
  412.     };
  413.  
  414.     
  415.  
  416. #ifdef COBJMACROS
  417.  
  418.  
  419. #define ISQLRequestDiagFields_QueryInterface(This,riid,ppvObject)    \
  420.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  421.  
  422. #define ISQLRequestDiagFields_AddRef(This)    \
  423.     (This)->lpVtbl -> AddRef(This)
  424.  
  425. #define ISQLRequestDiagFields_Release(This)    \
  426.     (This)->lpVtbl -> Release(This)
  427.  
  428.  
  429. #define ISQLRequestDiagFields_RequestDiagFields(This,cDiagFields,rgDiagFields)    \
  430.     (This)->lpVtbl -> RequestDiagFields(This,cDiagFields,rgDiagFields)
  431.  
  432. #endif /* COBJMACROS */
  433.  
  434.  
  435. #endif     /* C style interface */
  436.  
  437.  
  438.  
  439. HRESULT STDMETHODCALLTYPE ISQLRequestDiagFields_RequestDiagFields_Proxy( 
  440.     ISQLRequestDiagFields __RPC_FAR * This,
  441.     /* [in] */ ULONG cDiagFields,
  442.     /* [size_is][in] */ KAGREQDIAG __RPC_FAR rgDiagFields[  ]);
  443.  
  444.  
  445. void __RPC_STUB ISQLRequestDiagFields_RequestDiagFields_Stub(
  446.     IRpcStubBuffer *This,
  447.     IRpcChannelBuffer *_pRpcChannelBuffer,
  448.     PRPC_MESSAGE _pRpcMessage,
  449.     DWORD *_pdwStubPhase);
  450.  
  451.  
  452.  
  453. #endif     /* __ISQLRequestDiagFields_INTERFACE_DEFINED__ */
  454.  
  455.  
  456. #ifndef __ISQLGetDiagField_INTERFACE_DEFINED__
  457. #define __ISQLGetDiagField_INTERFACE_DEFINED__
  458.  
  459. /****************************************
  460.  * Generated header for interface: ISQLGetDiagField
  461.  * at Sun May 11 15:03:47 1997
  462.  * using MIDL 3.00.44
  463.  ****************************************/
  464. /* [object][uuid] */ 
  465.  
  466.  
  467.  
  468. EXTERN_C const IID IID_ISQLGetDiagField;
  469.  
  470. #if defined(__cplusplus) && !defined(CINTERFACE)
  471.     
  472.     interface ISQLGetDiagField : public IUnknown
  473.     {
  474.     public:
  475.         virtual HRESULT STDMETHODCALLTYPE GetDiagField( 
  476.             /* [unique][out][in] */ KAGGETDIAG __RPC_FAR *pDiagInfo) = 0;
  477.         
  478.     };
  479.     
  480. #else     /* C style interface */
  481.  
  482.     typedef struct ISQLGetDiagFieldVtbl
  483.     {
  484.         BEGIN_INTERFACE
  485.         
  486.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  487.             ISQLGetDiagField __RPC_FAR * This,
  488.             /* [in] */ REFIID riid,
  489.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  490.         
  491.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  492.             ISQLGetDiagField __RPC_FAR * This);
  493.         
  494.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  495.             ISQLGetDiagField __RPC_FAR * This);
  496.         
  497.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDiagField )( 
  498.             ISQLGetDiagField __RPC_FAR * This,
  499.             /* [unique][out][in] */ KAGGETDIAG __RPC_FAR *pDiagInfo);
  500.         
  501.         END_INTERFACE
  502.     } ISQLGetDiagFieldVtbl;
  503.  
  504.     interface ISQLGetDiagField
  505.     {
  506.         CONST_VTBL struct ISQLGetDiagFieldVtbl __RPC_FAR *lpVtbl;
  507.     };
  508.  
  509.     
  510.  
  511. #ifdef COBJMACROS
  512.  
  513.  
  514. #define ISQLGetDiagField_QueryInterface(This,riid,ppvObject)    \
  515.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  516.  
  517. #define ISQLGetDiagField_AddRef(This)    \
  518.     (This)->lpVtbl -> AddRef(This)
  519.  
  520. #define ISQLGetDiagField_Release(This)    \
  521.     (This)->lpVtbl -> Release(This)
  522.  
  523.  
  524. #define ISQLGetDiagField_GetDiagField(This,pDiagInfo)    \
  525.     (This)->lpVtbl -> GetDiagField(This,pDiagInfo)
  526.  
  527. #endif /* COBJMACROS */
  528.  
  529.  
  530. #endif     /* C style interface */
  531.  
  532.  
  533.  
  534. HRESULT STDMETHODCALLTYPE ISQLGetDiagField_GetDiagField_Proxy( 
  535.     ISQLGetDiagField __RPC_FAR * This,
  536.     /* [unique][out][in] */ KAGGETDIAG __RPC_FAR *pDiagInfo);
  537.  
  538.  
  539. void __RPC_STUB ISQLGetDiagField_GetDiagField_Stub(
  540.     IRpcStubBuffer *This,
  541.     IRpcChannelBuffer *_pRpcChannelBuffer,
  542.     PRPC_MESSAGE _pRpcMessage,
  543.     DWORD *_pdwStubPhase);
  544.  
  545.  
  546.  
  547. #endif     /* __ISQLGetDiagField_INTERFACE_DEFINED__ */
  548.  
  549.  
  550. /* Additional Prototypes for ALL interfaces */
  551.  
  552. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long __RPC_FAR *, unsigned long            , VARIANT __RPC_FAR * ); 
  553. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  554. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  555. void                      __RPC_USER  VARIANT_UserFree(     unsigned long __RPC_FAR *, VARIANT __RPC_FAR * ); 
  556.  
  557. /* end of Additional Prototypes */
  558.  
  559. #ifdef __cplusplus
  560. }
  561. #endif
  562.  
  563. #endif
  564.  
  565. #pragma option pop /*P_O_Pop*/
  566. #endif
  567. //----
  568.