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 __REQUIRED_RPCNDR_H_VERSION__
      7 #define __REQUIRED_RPCNDR_H_VERSION__ 440
      8 #endif
      9 
     10 #include "rpc.h"
     11 #include "rpcndr.h"
     12 
     13 #ifndef __RPCNDR_H_VERSION__
     14 #error This stub requires an updated version of <rpcndr.h>
     15 #endif
     16 
     17 #ifndef COM_NO_WINDOWS_H
     18 #include "windows.h"
     19 #include "ole2.h"
     20 #endif
     21 
     22 #ifndef __msdasc_h__
     23 #define __msdasc_h__
     24 
     25 #ifndef __IService_FWD_DEFINED__
     26 #define __IService_FWD_DEFINED__
     27 typedef struct IService IService;
     28 #endif
     29 
     30 #ifndef __IDBPromptInitialize_FWD_DEFINED__
     31 #define __IDBPromptInitialize_FWD_DEFINED__
     32 typedef struct IDBPromptInitialize IDBPromptInitialize;
     33 #endif
     34 
     35 #ifndef __IDataInitialize_FWD_DEFINED__
     36 #define __IDataInitialize_FWD_DEFINED__
     37 typedef struct IDataInitialize IDataInitialize;
     38 #endif
     39 
     40 #ifndef __IDataSourceLocator_FWD_DEFINED__
     41 #define __IDataSourceLocator_FWD_DEFINED__
     42 typedef struct IDataSourceLocator IDataSourceLocator;
     43 #endif
     44 
     45 #ifndef __DataLinks_FWD_DEFINED__
     46 #define __DataLinks_FWD_DEFINED__
     47 #ifdef __cplusplus
     48 typedef class DataLinks DataLinks;
     49 #else
     50 typedef struct DataLinks DataLinks;
     51 #endif
     52 #endif
     53 
     54 #ifndef __MSDAINITIALIZE_FWD_DEFINED__
     55 #define __MSDAINITIALIZE_FWD_DEFINED__
     56 #ifdef __cplusplus
     57 typedef class MSDAINITIALIZE MSDAINITIALIZE;
     58 #else
     59 typedef struct MSDAINITIALIZE MSDAINITIALIZE;
     60 #endif
     61 #endif
     62 
     63 #ifndef __PDPO_FWD_DEFINED__
     64 #define __PDPO_FWD_DEFINED__
     65 #ifdef __cplusplus
     66 typedef class PDPO PDPO;
     67 #else
     68 typedef struct PDPO PDPO;
     69 #endif
     70 #endif
     71 
     72 #ifndef __RootBinder_FWD_DEFINED__
     73 #define __RootBinder_FWD_DEFINED__
     74 #ifdef __cplusplus
     75 typedef class RootBinder RootBinder;
     76 #else
     77 typedef struct RootBinder RootBinder;
     78 #endif
     79 #endif
     80 
     81 #include "oaidl.h"
     82 #include "ocidl.h"
     83 #include "oledb.h"
     84 
     85 #ifdef __cplusplus
     86 extern "C" {
     87 #endif
     88 
     89 #ifndef __MIDL_user_allocate_free_DEFINED__
     90 #define __MIDL_user_allocate_free_DEFINED__
     91   void *__RPC_API MIDL_user_allocate(size_t);
     92   void __RPC_API MIDL_user_free(void *);
     93 #endif
     94 
     95 #ifdef _WIN64
     96   typedef LONGLONG COMPATIBLE_LONG;
     97 #else
     98   typedef LONG COMPATIBLE_LONG;
     99 #endif
    100   typedef enum tagEBindInfoOptions {
    101     BIO_BINDER = 0x1
    102   } EBindInfoOptions;
    103 
    104 #define STGM_COLLECTION __MSABI_LONG(0x00002000)
    105 #define STGM_OUTPUT __MSABI_LONG(0x00008000)
    106 #define STGM_OPEN __MSABI_LONG(0x80000000)
    107 #define STGM_RECURSIVE __MSABI_LONG(0x01000000)
    108 #define STGM_STRICTOPEN __MSABI_LONG(0x40000000)
    109 
    110   extern RPC_IF_HANDLE __MIDL_itf_msdasc_0000_v0_0_c_ifspec;
    111   extern RPC_IF_HANDLE __MIDL_itf_msdasc_0000_v0_0_s_ifspec;
    112 
    113 #ifndef __IService_INTERFACE_DEFINED__
    114 #define __IService_INTERFACE_DEFINED__
    115   EXTERN_C const IID IID_IService;
    116 #if defined(__cplusplus) && !defined(CINTERFACE)
    117   struct IService : public IUnknown {
    118   public:
    119     virtual HRESULT WINAPI InvokeService(IUnknown *pUnkInner) = 0;
    120   };
    121 #else
    122   typedef struct IServiceVtbl {
    123     BEGIN_INTERFACE
    124       HRESULT (WINAPI *QueryInterface)(IService *This,REFIID riid,void **ppvObject);
    125       ULONG (WINAPI *AddRef)(IService *This);
    126       ULONG (WINAPI *Release)(IService *This);
    127       HRESULT (WINAPI *InvokeService)(IService *This,IUnknown *pUnkInner);
    128     END_INTERFACE
    129   } IServiceVtbl;
    130   struct IService {
    131     CONST_VTBL struct IServiceVtbl *lpVtbl;
    132   };
    133 #ifdef COBJMACROS
    134 #define IService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    135 #define IService_AddRef(This) (This)->lpVtbl->AddRef(This)
    136 #define IService_Release(This) (This)->lpVtbl->Release(This)
    137 #define IService_InvokeService(This,pUnkInner) (This)->lpVtbl->InvokeService(This,pUnkInner)
    138 #endif
    139 #endif
    140   HRESULT WINAPI IService_InvokeService_Proxy(IService *This,IUnknown *pUnkInner);
    141   void __RPC_STUB IService_InvokeService_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    142 #endif
    143 
    144   typedef DWORD DBPROMPTOPTIONS;
    145 
    146   typedef enum tagDBPROMPTOPTIONSENUM {
    147     DBPROMPTOPTIONS_NONE = 0,DBPROMPTOPTIONS_WIZARDSHEET = 0x1,DBPROMPTOPTIONS_PROPERTYSHEET = 0x2,DBPROMPTOPTIONS_BROWSEONLY = 0x8,
    148     DBPROMPTOPTIONS_DISABLE_PROVIDER_SELECTION = 0x10,DBPROMPTOPTIONS_DISABLESAVEPASSWORD = 0x20
    149   } DBPROMPTOPTIONSENUM;
    150 
    151   extern RPC_IF_HANDLE __MIDL_itf_msdasc_0359_v0_0_c_ifspec;
    152   extern RPC_IF_HANDLE __MIDL_itf_msdasc_0359_v0_0_s_ifspec;
    153 
    154 #ifndef __IDBPromptInitialize_INTERFACE_DEFINED__
    155 #define __IDBPromptInitialize_INTERFACE_DEFINED__
    156   EXTERN_C const IID IID_IDBPromptInitialize;
    157 #if defined(__cplusplus) && !defined(CINTERFACE)
    158   struct IDBPromptInitialize : public IUnknown {
    159   public:
    160     virtual HRESULT WINAPI PromptDataSource(IUnknown *pUnkOuter,HWND hWndParent,DBPROMPTOPTIONS dwPromptOptions,ULONG cSourceTypeFilter,DBSOURCETYPE *rgSourceTypeFilter,LPCOLESTR pwszszzProviderFilter,REFIID riid,IUnknown **ppDataSource) = 0;
    161     virtual HRESULT WINAPI PromptFileName(HWND hWndParent,DBPROMPTOPTIONS dwPromptOptions,LPCOLESTR pwszInitialDirectory,LPCOLESTR pwszInitialFile,LPOLESTR *ppwszSelectedFile) = 0;
    162   };
    163 #else
    164   typedef struct IDBPromptInitializeVtbl {
    165     BEGIN_INTERFACE
    166       HRESULT (WINAPI *QueryInterface)(IDBPromptInitialize *This,REFIID riid,void **ppvObject);
    167       ULONG (WINAPI *AddRef)(IDBPromptInitialize *This);
    168       ULONG (WINAPI *Release)(IDBPromptInitialize *This);
    169       HRESULT (WINAPI *PromptDataSource)(IDBPromptInitialize *This,IUnknown *pUnkOuter,HWND hWndParent,DBPROMPTOPTIONS dwPromptOptions,ULONG cSourceTypeFilter,DBSOURCETYPE *rgSourceTypeFilter,LPCOLESTR pwszszzProviderFilter,REFIID riid,IUnknown **ppDataSource);
    170       HRESULT (WINAPI *PromptFileName)(IDBPromptInitialize *This,HWND hWndParent,DBPROMPTOPTIONS dwPromptOptions,LPCOLESTR pwszInitialDirectory,LPCOLESTR pwszInitialFile,LPOLESTR *ppwszSelectedFile);
    171     END_INTERFACE
    172   } IDBPromptInitializeVtbl;
    173   struct IDBPromptInitialize {
    174     CONST_VTBL struct IDBPromptInitializeVtbl *lpVtbl;
    175   };
    176 #ifdef COBJMACROS
    177 #define IDBPromptInitialize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    178 #define IDBPromptInitialize_AddRef(This) (This)->lpVtbl->AddRef(This)
    179 #define IDBPromptInitialize_Release(This) (This)->lpVtbl->Release(This)
    180 #define IDBPromptInitialize_PromptDataSource(This,pUnkOuter,hWndParent,dwPromptOptions,cSourceTypeFilter,rgSourceTypeFilter,pwszszzProviderFilter,riid,ppDataSource) (This)->lpVtbl->PromptDataSource(This,pUnkOuter,hWndParent,dwPromptOptions,cSourceTypeFilter,rgSourceTypeFilter,pwszszzProviderFilter,riid,ppDataSource)
    181 #define IDBPromptInitialize_PromptFileName(This,hWndParent,dwPromptOptions,pwszInitialDirectory,pwszInitialFile,ppwszSelectedFile) (This)->lpVtbl->PromptFileName(This,hWndParent,dwPromptOptions,pwszInitialDirectory,pwszInitialFile,ppwszSelectedFile)
    182 #endif
    183 #endif
    184   HRESULT WINAPI IDBPromptInitialize_PromptDataSource_Proxy(IDBPromptInitialize *This,IUnknown *pUnkOuter,HWND hWndParent,DBPROMPTOPTIONS dwPromptOptions,ULONG cSourceTypeFilter,DBSOURCETYPE *rgSourceTypeFilter,LPCOLESTR pwszszzProviderFilter,REFIID riid,IUnknown **ppDataSource);
    185   void __RPC_STUB IDBPromptInitialize_PromptDataSource_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    186   HRESULT WINAPI IDBPromptInitialize_PromptFileName_Proxy(IDBPromptInitialize *This,HWND hWndParent,DBPROMPTOPTIONS dwPromptOptions,LPCOLESTR pwszInitialDirectory,LPCOLESTR pwszInitialFile,LPOLESTR *ppwszSelectedFile);
    187   void __RPC_STUB IDBPromptInitialize_PromptFileName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    188 #endif
    189 
    190 #ifndef __IDataInitialize_INTERFACE_DEFINED__
    191 #define __IDataInitialize_INTERFACE_DEFINED__
    192   EXTERN_C const IID IID_IDataInitialize;
    193 #if defined(__cplusplus) && !defined(CINTERFACE)
    194   struct IDataInitialize : public IUnknown {
    195   public:
    196     virtual HRESULT WINAPI GetDataSource(IUnknown *pUnkOuter,DWORD dwClsCtx,LPCOLESTR pwszInitializationString,REFIID riid,IUnknown **ppDataSource) = 0;
    197     virtual HRESULT WINAPI GetInitializationString(IUnknown *pDataSource,boolean fIncludePassword,LPOLESTR *ppwszInitString) = 0;
    198     virtual HRESULT WINAPI CreateDBInstance(REFCLSID clsidProvider,IUnknown *pUnkOuter,DWORD dwClsCtx,LPOLESTR pwszReserved,REFIID riid,IUnknown **ppDataSource) = 0;
    199     virtual HRESULT WINAPI CreateDBInstanceEx(REFCLSID clsidProvider,IUnknown *pUnkOuter,DWORD dwClsCtx,LPOLESTR pwszReserved,COSERVERINFO *pServerInfo,ULONG cmq,MULTI_QI *rgmqResults) = 0;
    200     virtual HRESULT WINAPI LoadStringFromStorage(LPCOLESTR pwszFileName,LPOLESTR *ppwszInitializationString) = 0;
    201     virtual HRESULT WINAPI WriteStringToStorage(LPCOLESTR pwszFileName,LPCOLESTR pwszInitializationString,DWORD dwCreationDisposition) = 0;
    202   };
    203 #else
    204   typedef struct IDataInitializeVtbl {
    205     BEGIN_INTERFACE
    206       HRESULT (WINAPI *QueryInterface)(IDataInitialize *This,REFIID riid,void **ppvObject);
    207       ULONG (WINAPI *AddRef)(IDataInitialize *This);
    208       ULONG (WINAPI *Release)(IDataInitialize *This);
    209       HRESULT (WINAPI *GetDataSource)(IDataInitialize *This,IUnknown *pUnkOuter,DWORD dwClsCtx,LPCOLESTR pwszInitializationString,REFIID riid,IUnknown **ppDataSource);
    210       HRESULT (WINAPI *GetInitializationString)(IDataInitialize *This,IUnknown *pDataSource,boolean fIncludePassword,LPOLESTR *ppwszInitString);
    211       HRESULT (WINAPI *CreateDBInstance)(IDataInitialize *This,REFCLSID clsidProvider,IUnknown *pUnkOuter,DWORD dwClsCtx,LPOLESTR pwszReserved,REFIID riid,IUnknown **ppDataSource);
    212       HRESULT (WINAPI *CreateDBInstanceEx)(IDataInitialize *This,REFCLSID clsidProvider,IUnknown *pUnkOuter,DWORD dwClsCtx,LPOLESTR pwszReserved,COSERVERINFO *pServerInfo,ULONG cmq,MULTI_QI *rgmqResults);
    213       HRESULT (WINAPI *LoadStringFromStorage)(IDataInitialize *This,LPCOLESTR pwszFileName,LPOLESTR *ppwszInitializationString);
    214       HRESULT (WINAPI *WriteStringToStorage)(IDataInitialize *This,LPCOLESTR pwszFileName,LPCOLESTR pwszInitializationString,DWORD dwCreationDisposition);
    215     END_INTERFACE
    216   } IDataInitializeVtbl;
    217   struct IDataInitialize {
    218     CONST_VTBL struct IDataInitializeVtbl *lpVtbl;
    219   };
    220 #ifdef COBJMACROS
    221 #define IDataInitialize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    222 #define IDataInitialize_AddRef(This) (This)->lpVtbl->AddRef(This)
    223 #define IDataInitialize_Release(This) (This)->lpVtbl->Release(This)
    224 #define IDataInitialize_GetDataSource(This,pUnkOuter,dwClsCtx,pwszInitializationString,riid,ppDataSource) (This)->lpVtbl->GetDataSource(This,pUnkOuter,dwClsCtx,pwszInitializationString,riid,ppDataSource)
    225 #define IDataInitialize_GetInitializationString(This,pDataSource,fIncludePassword,ppwszInitString) (This)->lpVtbl->GetInitializationString(This,pDataSource,fIncludePassword,ppwszInitString)
    226 #define IDataInitialize_CreateDBInstance(This,clsidProvider,pUnkOuter,dwClsCtx,pwszReserved,riid,ppDataSource) (This)->lpVtbl->CreateDBInstance(This,clsidProvider,pUnkOuter,dwClsCtx,pwszReserved,riid,ppDataSource)
    227 #define IDataInitialize_CreateDBInstanceEx(This,clsidProvider,pUnkOuter,dwClsCtx,pwszReserved,pServerInfo,cmq,rgmqResults) (This)->lpVtbl->CreateDBInstanceEx(This,clsidProvider,pUnkOuter,dwClsCtx,pwszReserved,pServerInfo,cmq,rgmqResults)
    228 #define IDataInitialize_LoadStringFromStorage(This,pwszFileName,ppwszInitializationString) (This)->lpVtbl->LoadStringFromStorage(This,pwszFileName,ppwszInitializationString)
    229 #define IDataInitialize_WriteStringToStorage(This,pwszFileName,pwszInitializationString,dwCreationDisposition) (This)->lpVtbl->WriteStringToStorage(This,pwszFileName,pwszInitializationString,dwCreationDisposition)
    230 #endif
    231 #endif
    232   HRESULT WINAPI IDataInitialize_GetDataSource_Proxy(IDataInitialize *This,IUnknown *pUnkOuter,DWORD dwClsCtx,LPCOLESTR pwszInitializationString,REFIID riid,IUnknown **ppDataSource);
    233   void __RPC_STUB IDataInitialize_GetDataSource_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    234   HRESULT WINAPI IDataInitialize_GetInitializationString_Proxy(IDataInitialize *This,IUnknown *pDataSource,boolean fIncludePassword,LPOLESTR *ppwszInitString);
    235   void __RPC_STUB IDataInitialize_GetInitializationString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    236   HRESULT WINAPI IDataInitialize_CreateDBInstance_Proxy(IDataInitialize *This,REFCLSID clsidProvider,IUnknown *pUnkOuter,DWORD dwClsCtx,LPOLESTR pwszReserved,REFIID riid,IUnknown **ppDataSource);
    237   void __RPC_STUB IDataInitialize_CreateDBInstance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    238   HRESULT WINAPI IDataInitialize_RemoteCreateDBInstanceEx_Proxy(IDataInitialize *This,REFCLSID clsidProvider,IUnknown *pUnkOuter,DWORD dwClsCtx,LPOLESTR pwszReserved,COSERVERINFO *pServerInfo,ULONG cmq,const IID **rgpIID,IUnknown **rgpItf,HRESULT *rghr);
    239   void __RPC_STUB IDataInitialize_RemoteCreateDBInstanceEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    240   HRESULT WINAPI IDataInitialize_LoadStringFromStorage_Proxy(IDataInitialize *This,LPCOLESTR pwszFileName,LPOLESTR *ppwszInitializationString);
    241   void __RPC_STUB IDataInitialize_LoadStringFromStorage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    242   HRESULT WINAPI IDataInitialize_WriteStringToStorage_Proxy(IDataInitialize *This,LPCOLESTR pwszFileName,LPCOLESTR pwszInitializationString,DWORD dwCreationDisposition);
    243   void __RPC_STUB IDataInitialize_WriteStringToStorage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    244 #endif
    245 
    246 #ifndef __MSDASC_LIBRARY_DEFINED__
    247 #define __MSDASC_LIBRARY_DEFINED__
    248   EXTERN_C const IID LIBID_MSDASC;
    249 #ifndef __IDataSourceLocator_INTERFACE_DEFINED__
    250 #define __IDataSourceLocator_INTERFACE_DEFINED__
    251   EXTERN_C const IID IID_IDataSourceLocator;
    252 #if defined(__cplusplus) && !defined(CINTERFACE)
    253   struct IDataSourceLocator : public IDispatch {
    254   public:
    255     virtual HRESULT WINAPI get_hWnd(COMPATIBLE_LONG *phwndParent) = 0;
    256     virtual HRESULT WINAPI put_hWnd(COMPATIBLE_LONG hwndParent) = 0;
    257     virtual HRESULT WINAPI PromptNew(IDispatch **ppADOConnection) = 0;
    258     virtual HRESULT WINAPI PromptEdit(IDispatch **ppADOConnection,VARIANT_BOOL *pbSuccess) = 0;
    259   };
    260 #else
    261   typedef struct IDataSourceLocatorVtbl {
    262     BEGIN_INTERFACE
    263       HRESULT (WINAPI *QueryInterface)(IDataSourceLocator *This,REFIID riid,void **ppvObject);
    264       ULONG (WINAPI *AddRef)(IDataSourceLocator *This);
    265       ULONG (WINAPI *Release)(IDataSourceLocator *This);
    266       HRESULT (WINAPI *GetTypeInfoCount)(IDataSourceLocator *This,UINT *pctinfo);
    267       HRESULT (WINAPI *GetTypeInfo)(IDataSourceLocator *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    268       HRESULT (WINAPI *GetIDsOfNames)(IDataSourceLocator *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    269       HRESULT (WINAPI *Invoke)(IDataSourceLocator *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    270       HRESULT (WINAPI *get_hWnd)(IDataSourceLocator *This,COMPATIBLE_LONG *phwndParent);
    271       HRESULT (WINAPI *put_hWnd)(IDataSourceLocator *This,COMPATIBLE_LONG hwndParent);
    272       HRESULT (WINAPI *PromptNew)(IDataSourceLocator *This,IDispatch **ppADOConnection);
    273       HRESULT (WINAPI *PromptEdit)(IDataSourceLocator *This,IDispatch **ppADOConnection,VARIANT_BOOL *pbSuccess);
    274     END_INTERFACE
    275   } IDataSourceLocatorVtbl;
    276   struct IDataSourceLocator {
    277     CONST_VTBL struct IDataSourceLocatorVtbl *lpVtbl;
    278   };
    279 #ifdef COBJMACROS
    280 #define IDataSourceLocator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    281 #define IDataSourceLocator_AddRef(This) (This)->lpVtbl->AddRef(This)
    282 #define IDataSourceLocator_Release(This) (This)->lpVtbl->Release(This)
    283 #define IDataSourceLocator_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    284 #define IDataSourceLocator_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    285 #define IDataSourceLocator_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    286 #define IDataSourceLocator_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    287 #define IDataSourceLocator_get_hWnd(This,phwndParent) (This)->lpVtbl->get_hWnd(This,phwndParent)
    288 #define IDataSourceLocator_put_hWnd(This,hwndParent) (This)->lpVtbl->put_hWnd(This,hwndParent)
    289 #define IDataSourceLocator_PromptNew(This,ppADOConnection) (This)->lpVtbl->PromptNew(This,ppADOConnection)
    290 #define IDataSourceLocator_PromptEdit(This,ppADOConnection,pbSuccess) (This)->lpVtbl->PromptEdit(This,ppADOConnection,pbSuccess)
    291 #endif
    292 #endif
    293   HRESULT WINAPI IDataSourceLocator_get_hWnd_Proxy(IDataSourceLocator *This,COMPATIBLE_LONG *phwndParent);
    294   void __RPC_STUB IDataSourceLocator_get_hWnd_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    295   HRESULT WINAPI IDataSourceLocator_put_hWnd_Proxy(IDataSourceLocator *This,COMPATIBLE_LONG hwndParent);
    296   void __RPC_STUB IDataSourceLocator_put_hWnd_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    297   HRESULT WINAPI IDataSourceLocator_PromptNew_Proxy(IDataSourceLocator *This,IDispatch **ppADOConnection);
    298   void __RPC_STUB IDataSourceLocator_PromptNew_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    299   HRESULT WINAPI IDataSourceLocator_PromptEdit_Proxy(IDataSourceLocator *This,IDispatch **ppADOConnection,VARIANT_BOOL *pbSuccess);
    300   void __RPC_STUB IDataSourceLocator_PromptEdit_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    301 #endif
    302 
    303   EXTERN_C const CLSID CLSID_DataLinks;
    304 #ifdef __cplusplus
    305   class DataLinks;
    306 #endif
    307   EXTERN_C const CLSID CLSID_MSDAINITIALIZE;
    308 #ifdef __cplusplus
    309   class MSDAINITIALIZE;
    310 #endif
    311   EXTERN_C const CLSID CLSID_PDPO;
    312 #ifdef __cplusplus
    313   class PDPO;
    314 #endif
    315   EXTERN_C const CLSID CLSID_RootBinder;
    316 #ifdef __cplusplus
    317   class RootBinder;
    318 #endif
    319 #endif
    320   HRESULT WINAPI IDataInitialize_CreateDBInstanceEx_Proxy(IDataInitialize *This,REFCLSID clsidProvider,IUnknown *pUnkOuter,DWORD dwClsCtx,LPOLESTR pwszReserved,COSERVERINFO *pServerInfo,ULONG cmq,MULTI_QI *rgmqResults);
    321   HRESULT WINAPI IDataInitialize_CreateDBInstanceEx_Stub(IDataInitialize *This,REFCLSID clsidProvider,IUnknown *pUnkOuter,DWORD dwClsCtx,LPOLESTR pwszReserved,COSERVERINFO *pServerInfo,ULONG cmq,const IID **rgpIID,IUnknown **rgpItf,HRESULT *rghr);
    322 
    323 #ifdef __cplusplus
    324 }
    325 #endif
    326 #endif
    327