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