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