|
|
|
1 |
|
//-------------------------------------------------------------------- |
2 |
|
// Microsoft OLE DB Provider for SQL Server |
3 |
|
// (C) Copyright 1997 By Microsoft Corporation. |
4 |
|
// |
5 |
|
// @doc |
6 |
|
// |
7 |
|
// @module SQLOLEDB.H | Provider Specific definitions |
8 |
|
// |
9 |
|
//-------------------------------------------------------------------- |
10 |
|
|
11 |
|
#ifndef _SQLOLEDB_H_ |
12 |
|
#define _SQLOLEDB_H_ |
13 |
|
|
14 |
|
#ifndef __oledb_h__ |
15 |
|
#include "oledb.h" |
16 |
|
#endif /* __oledb_h__ */ |
17 |
|
|
18 |
|
//---------------------------------------------------------------------------- |
19 |
|
// Provider-specific Class Ids |
20 |
|
// Provider CLSID {0C7FF16C-38E3-11d0-97AB-00C04FC2AD98} |
21 |
|
extern const GUID OLEDBDECLSPEC CLSID_SQLOLEDB = {0xc7ff16cL,0x38e3,0x11d0,0x97,0xab,0x0,0xc0,0x4f,0xc2,0xad,0x98}; |
22 |
|
// Error Lookup CLSID {C0932C62-38E5-11d0-97AB-00C04FC2AD98} |
23 |
|
extern const GUID OLEDBDECLSPEC CLSID_SQLOLEDB_ERROR = {0xc0932c62L,0x38e5,0x11d0,0x97,0xab,0x0,0xc0,0x4f,0xc2,0xad,0x98}; |
24 |
|
// Enumerator CLSID {DFA22B8E-E68D-11d0-97E4-00C04FC2AD98} |
25 |
|
extern const GUID OLEDBDECLSPEC CLSID_SQLOLEDB_ENUMERATOR = {0xdfa22b8eL,0xe68d,0x11d0,0x97,0xe4,0x0,0xc0,0x4f,0xc2,0xad,0x98}; |
26 |
|
|
27 |
|
//---------------------------------------------------------------------------- |
28 |
|
// Provider-specific Interface Ids |
29 |
|
extern const GUID OLEDBDECLSPEC IID_ISQLServerErrorInfo = {0x5cf4ca12,0xef21,0x11d0,0x97,0xe7,0x0,0xc0,0x4f,0xc2,0xad,0x98}; |
30 |
|
extern const GUID OLEDBDECLSPEC IID_IRowsetFastLoad = {0x5cf4ca13,0xef21,0x11d0,0x97,0xe7,0x0,0xc0,0x4f,0xc2,0xad,0x98}; |
31 |
|
extern const GUID OLEDBDECLSPEC IID_IUMSInitialize = {0x5cf4ca14,0xef21,0x11d0,0x97,0xe7,0x0,0xc0,0x4f,0xc2,0xad,0x98}; |
32 |
|
// {4C2389FB-2511-11d4-B258-00C04F7971CE} |
33 |
|
extern const GUID OLEDBDECLSPEC IID_ISchemaLock = {0x4c2389fb,0x2511,0x11d4,0xb2,0x58,0x0,0xc0,0x4f,0x79,0x71,0xce}; |
34 |
|
extern const GUID OLEDBDECLSPEC DBGUID_MSSQLXML = {0x5d531cb2L,0xe6ed,0x11d2,0xb2,0x52,0x00,0xc0,0x4f,0x68,0x1b,0x71}; |
35 |
|
extern const GUID OLEDBDECLSPEC DBGUID_XPATH = {0xec2a4293L,0xe898,0x11d2,0xb1,0xb7,0x00,0xc0,0x4f,0x68,0x0c,0x56}; |
36 |
|
// This IID_ICommandStream definition is available in later versions of |
37 |
|
// UUID.LIB. It is also already an extern defined in oledb.h. |
38 |
|
// |
39 |
|
#if _MSC_VER < 1300 |
40 |
|
extern const GUID OLEDBDECLSPEC IID_ICommandStream = {0x0c733abfL,0x2a1c,0x11ce,0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}; |
41 |
|
#endif // _MSC_VER |
42 |
|
extern const GUID OLEDBDECLSPEC IID_ISQLXMLHelper = {0xd22a7678L,0xf860,0x40cd,0xa5,0x67,0x15,0x63,0xde,0xb4,0x6d,0x49}; |
43 |
|
|
44 |
|
//---------------------------------------------------------------------------- |
45 |
|
// Provider-specific schema rowsets |
46 |
|
extern const GUID OLEDBDECLSPEC DBSCHEMA_LINKEDSERVERS = {0x9093caf4,0x2eac,0x11d1,0x98,0x9,0x0,0xc0,0x4f,0xc2,0xad,0x98}; |
47 |
|
|
48 |
|
//---------------------------------------------------------------------------- |
49 |
|
// Provider-specific property sets |
50 |
|
extern const GUID OLEDBDECLSPEC DBPROPSET_SQLSERVERDATASOURCE = {0x28efaee4,0x2d2c,0x11d1,0x98,0x7,0x0,0xc0,0x4f,0xc2,0xad,0x98}; |
313 |
|
IUnknown * pUnk; |
314 |
|
} BLOBType; |
315 |
|
}; |
316 |
|
|
317 |
|
}; |
318 |
|
|
319 |
|
|
320 |
|
#if defined(__cplusplus) && !defined(CINTERFACE) |
321 |
|
|
322 |
|
//----------------------------------------------------------------- |
323 |
|
// Class Factory Interface used to initialize pointer to UMS. |
324 |
|
// |
325 |
|
interface IUMSInitialize : public IUnknown |
326 |
|
{ |
327 |
|
public: |
328 |
|
virtual HRESULT STDMETHODCALLTYPE Initialize (VOID * pUMS) = 0; |
329 |
|
}; |
330 |
|
|
331 |
|
|
332 |
|
//----------------------------------------------------------------- |
333 |
|
// Interface used to communicate with UMS. |
334 |
|
// |
335 |
|
interface IUMS |
336 |
|
{ |
337 |
|
public: |
338 |
|
virtual VOID STDMETHODCALLTYPE SqlUmsSuspend (ULONG ticks) = 0; |
339 |
|
virtual VOID STDMETHODCALLTYPE SqlUmsYield (ULONG ticks) = 0; |
340 |
|
virtual VOID STDMETHODCALLTYPE SqlUmsSwitchPremptive () = 0; |
341 |
|
virtual VOID STDMETHODCALLTYPE SqlUmsSwitchNonPremptive() = 0; |
342 |
|
virtual BOOL STDMETHODCALLTYPE SqlUmsFIsPremptive() = 0; |
343 |
|
}; |
344 |
|
|
345 |
|
#endif |
346 |
|
|
347 |
|
/* this ALWAYS GENERATED file contains the definitions for the interfaces */ |
348 |
|
|
349 |
|
|
350 |
|
/* File created by MIDL compiler version 3.03.0110 */ |
351 |
|
/* at Tue May 09 16:41:59 2000 |
352 |
|
*/ |
353 |
|
/* Compiler settings for sqloledb.idl: |
354 |
|
Os (OptLev=s), W1, Zp8, env=Win32, ms_ext, c_ext |
355 |
|
error checks: none |
356 |
|
*/ |
357 |
|
//@@MIDL_FILE_HEADING( ) |
358 |
|
|
359 |
|
|
360 |
|
/* verify that the <rpcndr.h> version is high enough to compile this file*/ |
361 |
|
#ifndef __REQUIRED_RPCNDR_H_VERSION__ |
362 |
|
#define __REQUIRED_RPCNDR_H_VERSION__ 440 |
363 |
|
#endif |
364 |
|
|
365 |
|
#include "rpc.h" |
366 |
|
#include "rpcndr.h" |
367 |
|
|
368 |
|
#ifndef __RPCNDR_H_VERSION__ |
369 |
|
#error this stub requires an updated version of <rpcndr.h> |
370 |
|
#endif // __RPCNDR_H_VERSION__ |
371 |
|
|
372 |
|
#ifndef COM_NO_WINDOWS_H |
373 |
|
#include "windows.h" |
374 |
|
#include "ole2.h" |
375 |
|
#endif /*COM_NO_WINDOWS_H*/ |
376 |
|
|
377 |
|
#ifndef __sqloledb_h__ |
378 |
|
#define __sqloledb_h__ |
379 |
|
|
380 |
|
#ifdef __cplusplus |
381 |
|
extern "C"{ |
382 |
|
#endif |
383 |
|
|
384 |
|
/* Forward Declarations */ |
385 |
|
|
386 |
|
#ifndef __ISQLServerErrorInfo_FWD_DEFINED__ |
387 |
|
#define __ISQLServerErrorInfo_FWD_DEFINED__ |
388 |
|
typedef interface ISQLServerErrorInfo ISQLServerErrorInfo; |
389 |
|
#endif /* __ISQLServerErrorInfo_FWD_DEFINED__ */ |
390 |
|
|
391 |
|
|
392 |
|
#ifndef __IRowsetFastLoad_FWD_DEFINED__ |
393 |
|
#define __IRowsetFastLoad_FWD_DEFINED__ |
394 |
|
typedef interface IRowsetFastLoad IRowsetFastLoad; |
395 |
|
#endif /* __IRowsetFastLoad_FWD_DEFINED__ */ |
396 |
|
|
397 |
|
|
398 |
|
#ifndef __ISchemaLock_FWD_DEFINED__ |
399 |
|
#define __ISchemaLock_FWD_DEFINED__ |
400 |
|
typedef interface ISchemaLock ISchemaLock; |
401 |
|
#endif /* __ISchemaLock_FWD_DEFINED__ */ |
402 |
|
|
403 |
|
|
404 |
|
/* header files for imported files */ |
405 |
|
#include "unknwn.h" |
406 |
|
|
407 |
|
__post __maybenull |
408 |
|
__post __writableTo(byteCount(size)) |
409 |
|
void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t size); |
410 |
|
void __RPC_USER MIDL_user_free(__inout void __RPC_FAR * ); |
411 |
|
|
412 |
|
/**************************************** |
783 |
|
|
784 |
|
#endif /* C style interface */ |
785 |
|
|
786 |
|
|
787 |
|
|
788 |
|
HRESULT STDMETHODCALLTYPE ISchemaLock_GetSchemaLock_Proxy( |
789 |
|
ISchemaLock __RPC_FAR * This, |
790 |
|
/* [in] */ DBID __RPC_FAR *pTableID, |
791 |
|
/* [in] */ LOCKMODE lmMode, |
792 |
|
/* [out] */ HANDLE __RPC_FAR *phLockHandle, |
793 |
|
/* [out] */ ULONGLONG __RPC_FAR *pTableVersion); |
794 |
|
|
795 |
|
|
796 |
|
void __RPC_STUB ISchemaLock_GetSchemaLock_Stub( |
797 |
|
IRpcStubBuffer *This, |
798 |
|
IRpcChannelBuffer *_pRpcChannelBuffer, |
799 |
|
PRPC_MESSAGE _pRpcMessage, |
800 |
|
DWORD *_pdwStubPhase); |
801 |
|
|
802 |
|
|
803 |
|
HRESULT STDMETHODCALLTYPE ISchemaLock_ReleaseSchemaLock_Proxy( |
804 |
|
ISchemaLock __RPC_FAR * This, |
805 |
|
/* [in] */ HANDLE hLockHandle); |
806 |
|
|
807 |
|
|
808 |
|
void __RPC_STUB ISchemaLock_ReleaseSchemaLock_Stub( |
809 |
|
IRpcStubBuffer *This, |
810 |
|
IRpcChannelBuffer *_pRpcChannelBuffer, |
811 |
|
PRPC_MESSAGE _pRpcMessage, |
812 |
|
DWORD *_pdwStubPhase); |
813 |
|
|
814 |
|
|
815 |
|
|
816 |
|
#endif /* __ISchemaLock_INTERFACE_DEFINED__ */ |
817 |
|
|
818 |
|
|
819 |
|
/* Additional Prototypes for ALL interfaces */ |
820 |
|
|
821 |
|
/* end of Additional Prototypes */ |
822 |
|
|
823 |
|
#ifdef __cplusplus |
824 |
|
} |
825 |
|
#endif |
826 |
|
|
827 |
|
#endif |
828 |
|
|
829 |
|
#endif //_SQLOLEDB_H_ |
830 |
|
|
831 |
|
|
|
|
|