Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef _MSDASQL_H_
      7 #define _MSDASQL_H_
      8 
      9 #undef MSDASQLDECLSPEC
     10 #define MSDASQLDECLSPEC __declspec(selectany)
     11 
     12 #ifdef DBINITCONSTANTS
     13 extern const MSDASQLDECLSPEC GUID IID_ISQLRequestDiagFields = { 0x228972f0,0xb5ff,0x11d0,{ 0x8a,0x80,0x0,0xc0,0x4f,0xd6,0x11,0xcd } };
     14 extern const MSDASQLDECLSPEC GUID IID_ISQLGetDiagField = { 0x228972f1,0xb5ff,0x11d0,{ 0x8a,0x80,0x0,0xc0,0x4f,0xd6,0x11,0xcd } };
     15 extern const MSDASQLDECLSPEC GUID IID_IRowsetChangeExtInfo = {0x0C733A8F,0x2A1C,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
     16 extern const MSDASQLDECLSPEC GUID CLSID_MSDASQL = {0xC8B522CB,0x5CF3,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
     17 extern const MSDASQLDECLSPEC GUID CLSID_MSDASQL_ENUMERATOR = {0xC8B522CD,0x5CF3,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
     18 #else
     19 extern const GUID IID_ISQLRequestDiagFields;
     20 extern const GUID IID_ISQLGetDiagField;
     21 extern const GUID IID_IRowsetChangeExtInfo;
     22 extern const GUID CLSID_MSDASQL;
     23 extern const GUID CLSID_MSDASQL_ENUMERATOR;
     24 #endif
     25 
     26 #ifdef DBINITCONSTANTS
     27 extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERDATASOURCEINFO = {0x497c60e0,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
     28 extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERROWSET = {0x497c60e1,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
     29 extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERDBINIT = {0x497c60e2,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
     30 extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERSTMTATTR = {0x497c60e3,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
     31 extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERCONNATTR = {0x497c60e4,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
     32 #else
     33 extern const GUID DBPROPSET_PROVIDERDATASOURCEINFO;
     34 extern const GUID DBPROPSET_PROVIDERROWSET;
     35 extern const GUID DBPROPSET_PROVIDERDBINIT;
     36 extern const GUID DBPROPSET_PROVIDERSTMTATTR;
     37 extern const GUID DBPROPSET_PROVIDERCONNATTR;
     38 #endif
     39 
     40 #define KAGPROP_QUERYBASEDUPDATES 2
     41 #define KAGPROP_MARSHALLABLE 3
     42 #define KAGPROP_POSITIONONNEWROW 4
     43 #define KAGPROP_IRowsetChangeExtInfo 5
     44 #define KAGPROP_CURSOR 6
     45 #define KAGPROP_CONCURRENCY 7
     46 #define KAGPROP_BLOBSONFOCURSOR 8
     47 #define KAGPROP_INCLUDENONEXACT 9
     48 #define KAGPROP_FORCESSFIREHOSEMODE 10
     49 #define KAGPROP_FORCENOPARAMETERREBIND 11
     50 #define KAGPROP_FORCENOPREPARE 12
     51 #define KAGPROP_FORCENOREEXECUTE 13
     52 
     53 #define KAGPROP_ACCESSIBLEPROCEDURES 2
     54 #define KAGPROP_ACCESSIBLETABLES 3
     55 #define KAGPROP_ODBCSQLOPTIEF 4
     56 #define KAGPROP_OJCAPABILITY 5
     57 #define KAGPROP_PROCEDURES 6
     58 #define KAGPROP_DRIVERNAME 7
     59 #define KAGPROP_DRIVERVER 8
     60 #define KAGPROP_DRIVERODBCVER 9
     61 #define KAGPROP_LIKEESCAPECLAUSE 10
     62 #define KAGPROP_SPECIALCHARACTERS 11
     63 #define KAGPROP_MAXCOLUMNSINGROUPBY 12
     64 #define KAGPROP_MAXCOLUMNSININDEX 13
     65 #define KAGPROP_MAXCOLUMNSINORDERBY 14
     66 #define KAGPROP_MAXCOLUMNSINSELECT 15
     67 #define KAGPROP_MAXCOLUMNSINTABLE 16
     68 #define KAGPROP_NUMERICFUNCTIONS 17
     69 #define KAGPROP_ODBCSQLCONFORMANCE 18
     70 #define KAGPROP_OUTERJOINS 19
     71 #define KAGPROP_STRINGFUNCTIONS 20
     72 #define KAGPROP_SYSTEMFUNCTIONS 21
     73 #define KAGPROP_TIMEDATEFUNCTIONS 22
     74 #define KAGPROP_FILEUSAGE 23
     75 #define KAGPROP_ACTIVESTATEMENTS 24
     76 
     77 #define KAGPROP_AUTH_TRUSTEDCONNECTION 2
     78 #define KAGPROP_AUTH_SERVERINTEGRATED 3
     79 
     80 #define KAGPROPVAL_CONCUR_ROWVER 0x00000001
     81 #define KAGPROPVAL_CONCUR_VALUES 0x00000002
     82 #define KAGPROPVAL_CONCUR_LOCK 0x00000004
     83 #define KAGPROPVAL_CONCUR_READ_ONLY 0x00000008
     84 
     85 #ifndef __REQUIRED_RPCNDR_H_VERSION__
     86 #define __REQUIRED_RPCNDR_H_VERSION__ 440
     87 #endif
     88 
     89 #include "rpc.h"
     90 #include "rpcndr.h"
     91 
     92 #ifndef __RPCNDR_H_VERSION__
     93 #error This stub requires an updated version of <rpcndr.h>
     94 #endif
     95 
     96 #ifndef COM_NO_WINDOWS_H
     97 #include "windows.h"
     98 #include "ole2.h"
     99 #endif
    100 
    101 #ifndef __rstcei_h__
    102 #define __rstcei_h__
    103 
    104 #ifndef __IRowsetChangeExtInfo_FWD_DEFINED__
    105 #define __IRowsetChangeExtInfo_FWD_DEFINED__
    106 typedef struct IRowsetChangeExtInfo IRowsetChangeExtInfo;
    107 #endif
    108 
    109 #include "oledb.h"
    110 
    111 #ifdef __cplusplus
    112 extern "C" {
    113 #endif
    114 
    115 #ifndef __MIDL_user_allocate_free_DEFINED__
    116 #define __MIDL_user_allocate_free_DEFINED__
    117   void *__RPC_API MIDL_user_allocate(size_t);
    118   void __RPC_API MIDL_user_free(void *);
    119 #endif
    120 
    121 #ifndef __IRowsetChangeExtInfo_INTERFACE_DEFINED__
    122 #define __IRowsetChangeExtInfo_INTERFACE_DEFINED__
    123 
    124   EXTERN_C const IID IID_IRowsetChangeExtInfo;
    125 #if defined(__cplusplus) && !defined(CINTERFACE)
    126   struct IRowsetChangeExtInfo : public IUnknown {
    127   public:
    128     virtual HRESULT WINAPI GetOriginalRow(HCHAPTER hReserved,HROW hRow,HROW *phRowOriginal) = 0;
    129     virtual HRESULT WINAPI GetPendingColumns(HCHAPTER hReserved,HROW hRow,ULONG cColumnOrdinals,const ULONG rgiOrdinals[],DBPENDINGSTATUS rgColumnStatus[]) = 0;
    130   };
    131 #else
    132   typedef struct IRowsetChangeExtInfoVtbl {
    133     BEGIN_INTERFACE
    134       HRESULT (WINAPI *QueryInterface)(IRowsetChangeExtInfo *This,REFIID riid,void **ppvObject);
    135       ULONG (WINAPI *AddRef)(IRowsetChangeExtInfo *This);
    136       ULONG (WINAPI *Release)(IRowsetChangeExtInfo *This);
    137       HRESULT (WINAPI *GetOriginalRow)(IRowsetChangeExtInfo *This,HCHAPTER hReserved,HROW hRow,HROW *phRowOriginal);
    138       HRESULT (WINAPI *GetPendingColumns)(IRowsetChangeExtInfo *This,HCHAPTER hReserved,HROW hRow,ULONG cColumnOrdinals,const ULONG rgiOrdinals[],DBPENDINGSTATUS rgColumnStatus[]);
    139     END_INTERFACE
    140   } IRowsetChangeExtInfoVtbl;
    141   struct IRowsetChangeExtInfo {
    142     CONST_VTBL struct IRowsetChangeExtInfoVtbl *lpVtbl;
    143   };
    144 #ifdef COBJMACROS
    145 #define IRowsetChangeExtInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    146 #define IRowsetChangeExtInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
    147 #define IRowsetChangeExtInfo_Release(This) (This)->lpVtbl->Release(This)
    148 #define IRowsetChangeExtInfo_GetOriginalRow(This,hReserved,hRow,phRowOriginal) (This)->lpVtbl->GetOriginalRow(This,hReserved,hRow,phRowOriginal)
    149 #define IRowsetChangeExtInfo_GetPendingColumns(This,hReserved,hRow,cColumnOrdinals,rgiOrdinals,rgColumnStatus) (This)->lpVtbl->GetPendingColumns(This,hReserved,hRow,cColumnOrdinals,rgiOrdinals,rgColumnStatus)
    150 #endif
    151 #endif
    152   HRESULT WINAPI IRowsetChangeExtInfo_GetOriginalRow_Proxy(IRowsetChangeExtInfo *This,HCHAPTER hReserved,HROW hRow,HROW *phRowOriginal);
    153   void __RPC_STUB IRowsetChangeExtInfo_GetOriginalRow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    154   HRESULT WINAPI IRowsetChangeExtInfo_GetPendingColumns_Proxy(IRowsetChangeExtInfo *This,HCHAPTER hReserved,HROW hRow,ULONG cColumnOrdinals,const ULONG rgiOrdinals[],DBPENDINGSTATUS rgColumnStatus[]);
    155   void __RPC_STUB IRowsetChangeExtInfo_GetPendingColumns_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    156 #endif
    157 
    158 #ifdef __cplusplus
    159 }
    160 #endif
    161 #endif
    162 
    163 #ifndef __REQUIRED_RPCNDR_H_VERSION__
    164 #define __REQUIRED_RPCNDR_H_VERSION__ 440
    165 #endif
    166 
    167 #include "rpc.h"
    168 #include "rpcndr.h"
    169 
    170 #ifndef __RPCNDR_H_VERSION__
    171 #error This stub requires an updated version of <rpcndr.h>
    172 #endif
    173 
    174 #ifndef COM_NO_WINDOWS_H
    175 #include "windows.h"
    176 #include "ole2.h"
    177 #endif
    178 
    179 #ifndef __kagdiag_h__
    180 #define __kagdiag_h__
    181 
    182 #ifndef __ISQLRequestDiagFields_FWD_DEFINED__
    183 #define __ISQLRequestDiagFields_FWD_DEFINED__
    184 typedef struct ISQLRequestDiagFields ISQLRequestDiagFields;
    185 #endif
    186 
    187 #ifndef __ISQLGetDiagField_FWD_DEFINED__
    188 #define __ISQLGetDiagField_FWD_DEFINED__
    189 typedef struct ISQLGetDiagField ISQLGetDiagField;
    190 #endif
    191 
    192 #include "unknwn.h"
    193 #include "oaidl.h"
    194 
    195 #ifdef __cplusplus
    196 extern "C" {
    197 #endif
    198 
    199 #ifndef __MIDL_user_allocate_free_DEFINED__
    200 #define __MIDL_user_allocate_free_DEFINED__
    201   void *__RPC_API MIDL_user_allocate(size_t);
    202   void __RPC_API MIDL_user_free(void *);
    203 #endif
    204 
    205   enum KAGREQDIAGFLAGSENUM {
    206     KAGREQDIAGFLAGS_HEADER = 0x1,KAGREQDIAGFLAGS_RECORD = 0x2
    207   };
    208 
    209   typedef struct tagKAGREQDIAG {
    210     ULONG ulDiagFlags;
    211     VARTYPE vt;
    212     SHORT sDiagField;
    213   } KAGREQDIAG;
    214 
    215   typedef struct tagKAGGETDIAG {
    216     ULONG ulSize;
    217     VARIANTARG vDiagInfo;
    218     SHORT sDiagField;
    219   } KAGGETDIAG;
    220 
    221   extern RPC_IF_HANDLE __MIDL_itf_kagdiag_0000_v0_0_c_ifspec;
    222   extern RPC_IF_HANDLE __MIDL_itf_kagdiag_0000_v0_0_s_ifspec;
    223 
    224 #ifndef __ISQLRequestDiagFields_INTERFACE_DEFINED__
    225 #define __ISQLRequestDiagFields_INTERFACE_DEFINED__
    226   EXTERN_C const IID IID_ISQLRequestDiagFields;
    227 #if defined(__cplusplus) && !defined(CINTERFACE)
    228   struct ISQLRequestDiagFields : public IUnknown {
    229   public:
    230     virtual HRESULT WINAPI RequestDiagFields(ULONG cDiagFields,KAGREQDIAG rgDiagFields[]) = 0;
    231   };
    232 #else
    233   typedef struct ISQLRequestDiagFieldsVtbl {
    234     BEGIN_INTERFACE
    235       HRESULT (WINAPI *QueryInterface)(ISQLRequestDiagFields *This,REFIID riid,void **ppvObject);
    236       ULONG (WINAPI *AddRef)(ISQLRequestDiagFields *This);
    237       ULONG (WINAPI *Release)(ISQLRequestDiagFields *This);
    238       HRESULT (WINAPI *RequestDiagFields)(ISQLRequestDiagFields *This,ULONG cDiagFields,KAGREQDIAG rgDiagFields[]);
    239     END_INTERFACE
    240   } ISQLRequestDiagFieldsVtbl;
    241   struct ISQLRequestDiagFields {
    242     CONST_VTBL struct ISQLRequestDiagFieldsVtbl *lpVtbl;
    243   };
    244 #ifdef COBJMACROS
    245 #define ISQLRequestDiagFields_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    246 #define ISQLRequestDiagFields_AddRef(This) (This)->lpVtbl->AddRef(This)
    247 #define ISQLRequestDiagFields_Release(This) (This)->lpVtbl->Release(This)
    248 #define ISQLRequestDiagFields_RequestDiagFields(This,cDiagFields,rgDiagFields) (This)->lpVtbl->RequestDiagFields(This,cDiagFields,rgDiagFields)
    249 #endif
    250 #endif
    251   HRESULT WINAPI ISQLRequestDiagFields_RequestDiagFields_Proxy(ISQLRequestDiagFields *This,ULONG cDiagFields,KAGREQDIAG rgDiagFields[]);
    252   void __RPC_STUB ISQLRequestDiagFields_RequestDiagFields_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    253 #endif
    254 
    255 #ifndef __ISQLGetDiagField_INTERFACE_DEFINED__
    256 #define __ISQLGetDiagField_INTERFACE_DEFINED__
    257   EXTERN_C const IID IID_ISQLGetDiagField;
    258 #if defined(__cplusplus) && !defined(CINTERFACE)
    259   struct ISQLGetDiagField : public IUnknown {
    260   public:
    261     virtual HRESULT WINAPI GetDiagField(KAGGETDIAG *pDiagInfo) = 0;
    262   };
    263 #else
    264   typedef struct ISQLGetDiagFieldVtbl {
    265     BEGIN_INTERFACE
    266       HRESULT (WINAPI *QueryInterface)(ISQLGetDiagField *This,REFIID riid,void **ppvObject);
    267       ULONG (WINAPI *AddRef)(ISQLGetDiagField *This);
    268       ULONG (WINAPI *Release)(ISQLGetDiagField *This);
    269       HRESULT (WINAPI *GetDiagField)(ISQLGetDiagField *This,KAGGETDIAG *pDiagInfo);
    270     END_INTERFACE
    271   } ISQLGetDiagFieldVtbl;
    272   struct ISQLGetDiagField {
    273     CONST_VTBL struct ISQLGetDiagFieldVtbl *lpVtbl;
    274   };
    275 #ifdef COBJMACROS
    276 #define ISQLGetDiagField_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    277 #define ISQLGetDiagField_AddRef(This) (This)->lpVtbl->AddRef(This)
    278 #define ISQLGetDiagField_Release(This) (This)->lpVtbl->Release(This)
    279 #define ISQLGetDiagField_GetDiagField(This,pDiagInfo) (This)->lpVtbl->GetDiagField(This,pDiagInfo)
    280 #endif
    281 #endif
    282   HRESULT WINAPI ISQLGetDiagField_GetDiagField_Proxy(ISQLGetDiagField *This,KAGGETDIAG *pDiagInfo);
    283   void __RPC_STUB ISQLGetDiagField_GetDiagField_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    284 #endif
    285 
    286   ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
    287   unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
    288   unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
    289   void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
    290 
    291 #ifdef __cplusplus
    292 }
    293 #endif
    294 #endif
    295 #endif
    296