| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732 |
- /*=--------------------------------------------------------------------------=
- * ocdb.h
- *=--------------------------------------------------------------------------=
- * defines the interfaces and constants for use with the OLE Controls Data
- * binding interfaces.
- *
- * Copyright (c) 1994-1998 Microsoft Corporation, All Rights Reserved.
- *
- *
- *
- */
- #ifndef __OCDB_H_
- #undef Delete
- #ifdef __cplusplus
- extern "C" {
- #endif
- /* LPDBSTRs are MultiByte in 16bits, and Unicode in 32bits.
- */
- #if defined(_WIN32) && !defined(OLE2ANSI)
- #define LPDBSTR LPWSTR
- #define DBCHAR WCHAR
- #define ldbstrlen(str) wcslen(str)
- #define ldbstrcpy(a, b) wcscpy((a), (b))
- #define ldbstrcpyn(a,b,n) wcsncpy((a), (b), (n))
- #define ldbstrcmp(a, b) wcscmp((a), (b))
- #define ldbstrcat(a, b) wcscat((a), (b))
- #define ldbstrcmpi(a,b) wcsicmp((a),(b))
- #define DBTEXT(quote) L##quote
- #else
- #define LPDBSTR LPSTR
- #define DBCHAR char
- #define ldbstrlen(str) lstrlen(str)
- #define ldbstrcpy(a, b) lstrcpy((a), (b))
- #define ldbstrcpyn(a,b,n) lstrcpyn((a), (b), (n))
- #define ldbstrcmp(a, b) lstrcmp((a), (b))
- #define ldbstrcat(a, b) lstrcat((a), (b))
- #define ldbstrcmpi(a,b) lstrcmpi((a),(b))
- #define DBTEXT(quote) quote
- #endif /* _WIN32 && !OLE2ANSI */
- typedef LPDBSTR FAR * LPLPDBSTR;
- /* Many systems don't have BLOBs defined.
- */
- #ifndef _tagBLOB_DEFINED
- #define _tagBLOB_DEFINED
- #define _BLOB_DEFINED
- #define _LPBLOB_DEFINED
- typedef struct tagBLOB {
- ULONG cbSize;
- BYTE *pBlobData;
- } BLOB, *LPBLOB;
- #endif
- /*----------------------------------------------------------------------------
- *
- * dbvar.h
- *
- *----------------------------------------------------------------------------
- */
- #ifndef _DBCOLUMNID_DEFINED
- #define _DBCOLUMNID_DEFINED
- typedef enum tagDBCOLKIND
- {
- DBCOLKIND_GUID_NAME = 0,
- DBCOLKIND_GUID_NUMBER = 1,
- DBCOLKIND_NAME = 2
- }
- DBCOLKIND;
- #define GUID_NAMEONLY {0x88c8d398,0x863c,0x101b,{0xac,0x3b,0x00,0xaa,0x00,0x44,0x77,0x3d}}
- #define GUID_NUMBERONLY {0x88c8d399,0x863c,0x101b,{0xac,0x3b,0x00,0xaa,0x00,0x44,0x77,0x3d}}
- typedef struct tagDBCOLUMNID
- {
- GUID guid;
- DBCOLKIND dwKind;
- union
- {
- LONG lNumber;
- LPDBSTR lpdbsz;
- }
- ;
- }
- DBCOLUMNID;
- #endif /* ndef _COLUMNID_DEFINED */
- #ifdef OLD_DEFS
- #ifndef _DBVARENUM_DEFINED
- #define _DBVARENUM_DEFINED
- enum DBVARENUM
- {
- DBTYPE_EMPTY = 0,
- DBTYPE_NULL = 1,
- DBTYPE_I2 = 2,
- DBTYPE_I4 = 3,
- DBTYPE_R4 = 4,
- DBTYPE_R8 = 5,
- DBTYPE_CY = 6,
- DBTYPE_DATE = 7,
- DBTYPE_BOOL = 11,
- DBTYPE_UI2 = 18,
- DBTYPE_UI4 = 19,
- DBTYPE_I8 = 20,
- DBTYPE_UI8 = 21,
- DBTYPE_HRESULT = 25,
- DBTYPE_LPSTR = 30,
- DBTYPE_LPWSTR = 31,
- DBTYPE_FILETIME = 64,
- DBTYPE_BLOB = 65,
- DBTYPE_UUID = 72,
- DBTYPE_DBEXPR = 503,
- DBTYPE_COLUMNID = 507,
- DBTYPE_BYTES = 508,
- DBTYPE_CHARS = 509,
- DBTYPE_WCHARS = 510,
- DBTYPE_ANYVARIANT = 511
- }
- ;
- #endif /* ndef _DBVARENUM_DEFINED */
- #else
- #define DBTYPE_COLUMNID 507
- #endif
- #define DBTYPE_EXT 0x100
- typedef struct tagDBVARIANT DBVARIANT;
- struct FARSTRUCT tagDBVARIANT{
- VARTYPE vt;
- unsigned short wReserved1;
- unsigned short wReserved2;
- unsigned short wReserved3;
- union {
- unsigned char bVal; /* VT_UI1 */
- short iVal; /* VT_I2 */
- long lVal; /* VT_I4 */
- float fltVal; /* VT_R4 */
- double dblVal; /* VT_R8 */
- VARIANT_BOOL xbool; /* VT_BOOL */
- SCODE scode; /* VT_ERROR */
- CY cyVal; /* VT_CY */
- DATE date; /* VT_DATE */
- BSTR bstrVal; /* VT_BSTR */
- IUnknown FAR* punkVal; /* VT_UNKNOWN */
- IDispatch FAR* pdispVal; /* VT_DISPATCH */
- SAFEARRAY FAR* parray; /* VT_ARRAY|* */
- unsigned char FAR *pbVal; /* VT_BYREF|VT_UI1 */
- short FAR* piVal; /* VT_BYREF|VT_I2 */
- long FAR* plVal; /* VT_BYREF|VT_I4 */
- float FAR* pfltVal; /* VT_BYREF|VT_R4 */
- double FAR* pdblVal; /* VT_BYREF|VT_R8 */
- VARIANT_BOOL FAR* pbool; /* VT_BYREF|VT_BOOL */
- SCODE FAR* pscode; /* VT_BYREF|VT_ERROR */
- CY FAR* pcyVal; /* VT_BYREF|VT_CY */
- DATE FAR* pdate; /* VT_BYREF|VT_DATE */
- BSTR FAR* pbstrVal; /* VT_BYREF|VT_BSTR */
- IUnknown FAR* FAR* ppunkVal; /* VT_BYREF|VT_UNKNOWN */
- IDispatch FAR* FAR* ppdispVal; /* VT_BYREF|VT_DISPATCH */
- SAFEARRAY FAR* FAR* pparray; /* VT_BYREF|VT_ARRAY|* */
- VARIANT FAR* pvarVal; /* VT_BYREF|VT_VARIANT */
- void FAR* byref; /* Generic ByRef */
- // types new to DBVARIANTs
- //
- BLOB blob; /* VT_BLOB */
- DBCOLUMNID *pColumnid; /* DBTYPE_COLUMNID */
- LPSTR pszVal; /* VT_LPSTR */
- #ifdef WIN32
- LPWSTR pwszVal; /* VT_LPWSTR */
- LPWSTR FAR *ppwszVal; /* VT_LPWSTR|VT_BYREF */
- #endif /* WIN32 */
- BLOB FAR *pblob; /* VT_BYREF|VT_BLOB */
- DBCOLUMNID **ppColumnid; /* VT_BYREF|DBTYPE_COLID*/
- DBVARIANT *pdbvarVal; /* VT_BYREF|DBTYPE_VARIANT */
- }
- #if defined(NONAMELESSUNION) || (defined(_MAC) && !defined(__cplusplus) && !defined(_MSC_VER))
- u
- #endif
- ;
- };
- /*----------------------------------------------------------------------------
- *
- * dbs.h
- *
- *----------------------------------------------------------------------------
- */
- typedef enum tagDBROWFETCH
- {
- DBROWFETCH_DEFAULT = 0,
- DBROWFETCH_CALLEEALLOCATES = 1,
- DBROWFETCH_FORCEREFRESH = 2
- }
- DBROWFETCH;
- typedef struct tagDBFETCHROWS
- {
- ULONG cRowsRequested;
- DWORD dwFlags;
- VOID HUGEP *pData;
- VOID HUGEP *pVarData;
- ULONG cbVarData;
- ULONG cRowsReturned;
- }
- DBFETCHROWS;
- #define DB_NOMAXLENGTH (DWORD)0
- #define DB_NOVALUE (DWORD)0xFFFFFFFF
- #define DB_NULL (DWORD)0xFFFFFFFF
- #define DB_EMPTY (DWORD)0xFFFFFFFE
- #define DB_USEENTRYID (DWORD)0xFFFFFFFD
- #define DB_CANTCOERCE (DWORD)0xFFFFFFFC
- #define DB_TRUNCATED (DWORD)0xFFFFFFFB
- #define DB_UNKNOWN (DWORD)0xFFFFFFFA
- #define DB_NOINFO (DWORD)0xFFFFFFF9
- #ifdef OLD_DEFS
- typedef enum tagDBBINDING
- {
- DBBINDING_DEFAULT = 0,
- DBBINDING_VARIANT = 1,
- DBBINDING_ENTRYID = 2
- }
- DBBINDING;
- #else
- typedef enum _DBBINDING
- {
- DBBINDING_DEFAULT = 0,
- DBBINDING_VARIANT = 1,
- DBBINDING_ENTRYID = 2
- }
- _DBBINDING;
- #endif
- typedef enum tagDBBINDTYPE
- {
- DBBINDTYPE_DATA = 0,
- DBBINDTYPE_ENTRYID = 1,
- DBBDINTYPE_EITHER = 2,
- DBBINDTYPE_BOTH = 3
- }
- DBBINDTYPE;
- typedef struct tagDBCOLUMNBINDING
- {
- DBCOLUMNID columnID;
- ULONG obData;
- ULONG cbMaxLen;
- ULONG obVarDataLen;
- ULONG obInfo;
- DWORD dwBinding;
- DWORD dwDataType;
- }
- DBCOLUMNBINDING;
- typedef struct tagDBBINDPARAMS
- {
- ULONG cbMaxLen;
- DWORD dwBinding;
- DWORD dwDataType;
- ULONG cbVarDataLen;
- DWORD dwInfo;
- void *pData;
- }
- DBBINDPARAMS;
- #define CID_NUMBER_INVALID -1
- #define CID_NUMBER_AUTOINCREMENT 0
- #define CID_NUMBER_BASECOLUMNNAME 1
- #define CID_NUMBER_BASENAME 2
- #define CID_NUMBER_BINARYCOMPARABLE 3
- #define CID_NUMBER_BINDTYPE 4
- #define CID_NUMBER_CASESENSITIVE 5
- #define CID_NUMBER_COLLATINGORDER 6
- #define CID_NUMBER_COLUMNID 7
- #define CID_NUMBER_CURSORCOLUMN 8
- #define CID_NUMBER_DATACOLUMN 9
- #define CID_NUMBER_DEFAULTVALUE 10
- #define CID_NUMBER_ENTRYIDMAXLENGTH 11
- #define CID_NUMBER_FIXED 12
- #define CID_NUMBER_HASDEFAULT 13
- #define CID_NUMBER_MAXLENGTH 14
- #define CID_NUMBER_MULTIVALUED 15
- #define CID_NUMBER_NAME 16
- #define CID_NUMBER_NULLABLE 17
- #define CID_NUMBER_PHYSICALSORT 18
- #define CID_NUMBER_NUMBER 19
- #define CID_NUMBER_ROWENTRYID 20
- #define CID_NUMBER_SCALE 21
- #define CID_NUMBER_SEARCHABLE 22
- #define CID_NUMBER_TYPE 23
- #define CID_NUMBER_UNIQUE 24
- #define CID_NUMBER_UPDATABLE 25
- #define CID_NUMBER_VERSION 26
- #define CID_NUMBER_STATUS 27
- /* c and C++ have different meanings for const.
- */
- #ifdef __cplusplus
- #define EXTERNAL_DEFN extern const
- #else
- #define EXTERNAL_DEFN const
- #endif /* __cplusplus */
- #define _DBCIDGUID {0xfe284700L,0xd188,0x11cd,{0xad,0x48, 0x0,0xaa, 0x0,0x3c,0x9c,0xb6}}
- #ifdef DBINITCONSTANTS
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMNID_INVALID = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, -1};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_AUTOINCREMENT = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 0};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BASECOLUMNNAME = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 1};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BASENAME = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 2};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BINARYCOMPARABLE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 3};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BINDTYPE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 4};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_CASESENSITIVE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 5};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_COLLATINGORDER = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 6};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_COLUMNID = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 7};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_CURSORCOLUMN = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 8};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_DATACOLUMN = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 9};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_DEFAULTVALUE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 10};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_ENTRYIDMAXLENGTH = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 11};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_FIXED = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 12};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_HASDEFAULT = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 13};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_MAXLENGTH = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 14};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_MULTIVALUED = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 15};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_NAME = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 16};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_NULLABLE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 17};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_PHYSICALSORT = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 18};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_NUMBER = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 19};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_ROWENTRYID = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 20};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_SCALE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 21};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_SEARCHABLE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 22};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_TYPE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 23};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_UNIQUE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 24};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_UPDATABLE = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 25};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_VERSION = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 26};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_STATUS = {_DBCIDGUID, DBCOLKIND_GUID_NUMBER, 27};
- #else
- extern const DBCOLUMNID NEAR COLUMNID_INVALID;
- extern const DBCOLUMNID NEAR COLUMN_AUTOINCREMENT;
- extern const DBCOLUMNID NEAR COLUMN_BASECOLUMNNAME;
- extern const DBCOLUMNID NEAR COLUMN_BASENAME;
- extern const DBCOLUMNID NEAR COLUMN_BINARYCOMPARABLE;
- extern const DBCOLUMNID NEAR COLUMN_BINDTYPE;
- extern const DBCOLUMNID NEAR COLUMN_CASESENSITIVE;
- extern const DBCOLUMNID NEAR COLUMN_COLLATINGORDER;
- extern const DBCOLUMNID NEAR COLUMN_COLUMNID;
- extern const DBCOLUMNID NEAR COLUMN_CURSORCOLUMN;
- extern const DBCOLUMNID NEAR COLUMN_DATACOLUMN;
- extern const DBCOLUMNID NEAR COLUMN_DEFAULTVALUE;
- extern const DBCOLUMNID NEAR COLUMN_ENTRYIDMAXLENGTH;
- extern const DBCOLUMNID NEAR COLUMN_FIXED;
- extern const DBCOLUMNID NEAR COLUMN_HASDEFAULT;
- extern const DBCOLUMNID NEAR COLUMN_MAXLENGTH;
- extern const DBCOLUMNID NEAR COLUMN_MULTIVALUED;
- extern const DBCOLUMNID NEAR COLUMN_NAME;
- extern const DBCOLUMNID NEAR COLUMN_NULLABLE;
- extern const DBCOLUMNID NEAR COLUMN_PHYSICALSORT;
- extern const DBCOLUMNID NEAR COLUMN_NUMBER;
- extern const DBCOLUMNID NEAR COLUMN_ROWENTRYID;
- extern const DBCOLUMNID NEAR COLUMN_SCALE;
- extern const DBCOLUMNID NEAR COLUMN_SEARCHABLE;
- extern const DBCOLUMNID NEAR COLUMN_TYPE;
- extern const DBCOLUMNID NEAR COLUMN_UNIQUE;
- extern const DBCOLUMNID NEAR COLUMN_UPDATABLE;
- extern const DBCOLUMNID NEAR COLUMN_VERSION;
- extern const DBCOLUMNID NEAR COLUMN_STATUS;
- #endif
- #define BMK_NUMBER_BMKTEMPORARY 0
- #define BMK_NUMBER_BMKTEMPORARYREL 1
- #define BMK_NUMBER_BMKCURSOR 2
- #define BMK_NUMBER_BMKCURSORREL 3
- #define BMK_NUMBER_BMKSESSION 4
- #define BMK_NUMBER_BMKSESSIONREL 5
- #define BMK_NUMBER_BMKPERSIST 6
- #define BMK_NUMBER_BMKPERSISTREL 7
- #define DBBMKGUID {0xf6304bb0L,0xd188,0x11cd,{0xad,0x48, 0x0,0xaa, 0x0,0x3c,0x9c,0xb6}}
- #ifdef DBINITCONSTANTS
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BMKTEMPORARY = {DBBMKGUID, DBCOLKIND_GUID_NUMBER, 0};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BMKTEMPORARYREL = {DBBMKGUID, DBCOLKIND_GUID_NUMBER, 1};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BMKCURSOR = {DBBMKGUID, DBCOLKIND_GUID_NUMBER, 2};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BMKCURSORREL = {DBBMKGUID, DBCOLKIND_GUID_NUMBER, 3};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BMKSESSION = {DBBMKGUID, DBCOLKIND_GUID_NUMBER, 4};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BMKSESSIONREL = {DBBMKGUID, DBCOLKIND_GUID_NUMBER, 5};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BMKPERSIST = {DBBMKGUID, DBCOLKIND_GUID_NUMBER, 6};
- EXTERNAL_DEFN DBCOLUMNID NEAR COLUMN_BMKPERSISTREL = {DBBMKGUID, DBCOLKIND_GUID_NUMBER, 7};
- #else
- extern const DBCOLUMNID NEAR COLUMN_BMKINVALID;
- extern const DBCOLUMNID NEAR COLUMN_BMKTEMPORARY;
- extern const DBCOLUMNID NEAR COLUMN_BMKTEMPORARYREL;
- extern const DBCOLUMNID NEAR COLUMN_BMKCURSOR;
- extern const DBCOLUMNID NEAR COLUMN_BMKCURSORREL;
- extern const DBCOLUMNID NEAR COLUMN_BMKSESSION;
- extern const DBCOLUMNID NEAR COLUMN_BMKSESSIONREL;
- extern const DBCOLUMNID NEAR COLUMN_BMKPERSIST;
- extern const DBCOLUMNID NEAR COLUMN_BMKPERSISTREL;
- #endif
- #define DB_BMK_SIZE sizeof(BYTE)
- #ifdef DBINITCONSTANTS
- #ifdef OLD_DEFS
- EXTERNAL_DEFN BYTE NEAR DBBMK_INVALID = 0x0;
- #endif
- EXTERNAL_DEFN BYTE NEAR DBBMK_CURRENT = 0x1;
- EXTERNAL_DEFN BYTE NEAR DBBMK_BEGINNING = 0x2;
- EXTERNAL_DEFN BYTE NEAR DBBMK_END = 0x3;
- #else
- #ifdef OLD_DEFS
- extern const BYTE NEAR DBBMK_INVALID;
- #endif
- extern const BYTE NEAR DBBMK_CURRENT;
- extern const BYTE NEAR DBBMK_BEGINNING;
- extern const BYTE NEAR DBBMK_END;
- #endif
- typedef enum tagDBCOLUMNBINDOPTS
- {
- DBCOLUMNBINDOPTS_REPLACE = 0,
- DBCOLUMNBINDOPTS_ADD = 1
- }
- DBCOLUMNBINDOPTS;
- typedef enum tagDBUPDATELOCK
- {
- DBUPDATELOCK_PESSIMISTIC = 0,
- DBUPDATELOCK_OPTIMISTIC = 1
- }
- DBUPDATELOCK;
- typedef enum tagDBCOLUMNDATA
- {
- DBCOLUMNDATA_UNCHANGED = 0,
- DBCOLUMNDATA_CHANGED = 1,
- DBCOLUMNDATA_UNKNOWN = 2
- }
- DBCOLUMNDATA;
- typedef enum tagDBROWACTION
- {
- DBROWACTION_IGNORE = 0,
- DBROWACTION_UPDATE = 1,
- DBROWACTION_DELETE = 2,
- DBROWACTION_ADD = 3,
- DBROWACTION_LOCK = 4,
- DBROWACTION_UNLOCK = 5
- }
- DBROWACTION;
- typedef enum tagDBUPDATEABLE
- {
- DBUPDATEABLE_UPDATEABLE = 0,
- DBUPDATEABLE_NOTUPDATEABLE = 1,
- DBUPDATEABLE_UNKNOWN = 2
- }
- DBUPDATEABLE;
- #ifdef OLD_DEFS
- typedef struct tagDBROWSTATUS
- {
- HRESULT hrStatus;
- BLOB Bookmark;
- }
- DBROWSTATUS;
- #endif
- typedef enum tagDBEVENTWHATS
- {
- DBEVENT_CURRENT_ROW_CHANGED = 1,
- DBEVENT_CURRENT_ROW_DATA_CHANGED = 2,
- DBEVENT_NONCURRENT_ROW_DATA_CHANGED = 4,
- DBEVENT_SET_OF_COLUMNS_CHANGED = 8,
- DBEVENT_ORDER_OF_COLUMNS_CHANGED = 16,
- DBEVENT_SET_OF_ROWS_CHANGED = 32,
- DBEVENT_ORDER_OF_ROWS_CHANGED = 64,
- DBEVENT_METADATA_CHANGED = 128,
- DBEVENT_ASYNCH_OP_FINISHED = 256,
- DBEVENT_FIND_CRITERIA_CHANGED = 512,
- }
- DBEVENTWHATS;
- typedef enum tagDBREASON
- {
- DBREASON_DELETED = 1,
- DBREASON_INSERTED = 2,
- DBREASON_MODIFIED = 3,
- DBREASON_REMOVEDFROMCURSOR = 4,
- DBREASON_MOVEDINCURSOR = 5,
- DBREASON_MOVE = 6,
- DBREASON_FIND = 7,
- DBREASON_NEWINDEX = 8,
- DBREASON_ROWFIXUP = 9,
- DBREASON_RECALC = 10,
- DBREASON_REFRESH = 11,
- DBREASON_NEWPARAMETERS = 12,
- DBREASON_SORTCHANGED = 13,
- DBREASON_FILTERCHANGED = 14,
- DBREASON_QUERYSPECCHANGED = 15,
- DBREASON_SEEK = 16,
- DBREASON_PERCENT = 17,
- DBREASON_FINDCRITERIACHANGED = 18,
- DBREASON_SETRANGECHANGED = 19,
- DBREASON_ADDNEW = 20,
- DBREASON_MOVEPERCENT = 21,
- DBREASON_BEGINTRANSACT = 22,
- DBREASON_ROLLBACK = 23,
- DBREASON_COMMIT = 24,
- DBREASON_CLOSE = 25,
- DBREASON_BULK_ERROR = 26,
- DBREASON_BULK_NOTTRANSACTABLE = 27,
- DBREASON_BULK_ABOUTTOEXECUTE = 28,
- DBREASON_CANCELUPDATE = 29,
- DBREASON_SETCOLUMN = 30,
- DBREASON_EDIT = 31,
- DBREASON_UNLOAD = 32
- }
- #ifdef OLD_DEFS
- DBREASON
- #else
- _DBREASON;
- #endif
- // Arg1 values for DBREASON_FIND
- typedef enum tagDBFINDTYPES
- {
- DB_FINDFIRST = 1,
- DB_FINDLAST = 2,
- DB_FINDNEXT = 3,
- DB_FINDPRIOR = 4,
- DB_FIND = 5
- }
- DBFINDTYPES;
- typedef struct tagDBNOTIFYREASON
- {
- DWORD dwReason;
- DBVARIANT arg1;
- DBVARIANT arg2;
- }
- DBNOTIFYREASON;
- #define DB_E_BADBINDINFO MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e00)
- #define DB_E_BADBOOKMARK MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e01)
- #define DB_E_BADCOLUMNID MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e02)
- #define DB_E_BADCRITERIA MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e03)
- #define DB_E_BADENTRYID MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e04)
- #define DB_E_BADFRACTION MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e05)
- #define DB_E_BADINDEXID MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e06)
- #define DB_E_BADQUERYSPEC MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e07)
- #define DB_E_BADSORTORDER MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e08)
- #define DB_E_BADVALUES MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e09)
- #define DB_E_CANTCOERCE MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e0a)
- #define DB_E_CANTLOCK MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e0b)
- #define DB_E_COLUMNUNAVAILABLE MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e0c)
- #define DB_E_DATACHANGED MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e0d)
- #define DB_E_INVALIDCOLUMNORDINAL MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e0e)
- #define DB_E_INVALIDINTERFACE MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e0f)
- #define DB_E_LOCKFAILED MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e10)
- #define DB_E_ROWDELETED MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e11)
- #define DB_E_ROWTOOSHORT MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e12)
- #define DB_E_SCHEMAVIOLATION MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e13)
- #define DB_E_SEEKKINDNOTSUPPORTED MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e14)
- #define DB_E_UPDATEINPROGRESS MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e15)
- #define DB_E_USEENTRYID MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e16)
- #define DB_E_STATEERROR MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e17)
- #define DB_E_BADFETCHINFO MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e18)
- #define DB_E_NOASYNC MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e19)
- #define DB_E_ENTRYIDOPEN MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e1a)
- #define DB_E_BUFFERTOOSMALL MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x0e1b)
- #define DB_S_BUFFERTOOSMALL MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec0)
- #define DB_S_CANCEL MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec1)
- #define DB_S_DATACHANGED MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec2)
- #define DB_S_ENDOFCURSOR MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec3)
- #define DB_S_ENDOFRESULTSET MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec4)
- #define DB_S_OPERATIONCANCELLED MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec5)
- #define DB_S_QUERYINTERFACE MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec6)
- #define DB_S_WORKINGASYNC MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec7)
- //#define DB_S_COULDNTCOERCE MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec8)
- #define DB_S_MOVEDTOFIRST MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ec9)
- #define DB_S_CURRENTROWUNCHANGED MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0eca)
- #define DB_S_ROWADDED MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ecb)
- #define DB_S_ROWUPDATED MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ecc)
- #define DB_S_ROWDELETED MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_ITF, 0x0ecd)
- /*----------------------------------------------------------------------------
- *
- * ICursor
- *
- *----------------------------------------------------------------------------
- */
- /* Forward declaration */
- //typedef interface ICursor ICursor;
- #if defined(__cplusplus) && !defined(CINTERFACE)
- /* C++ Language Binding */
- //extern "C" const IID IID_ICursor;
- interface ICursor : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetColumnsCursor
- (
- REFIID riid,
- IUnknown **ppvColumnsCursor,
- ULONG *pcRows
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE SetBindings
- (
- ULONG cCol,
- DBCOLUMNBINDING rgBoundColumns[],
- ULONG cbRowLength,
- DWORD dwFlags
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetBindings
- (
- ULONG *pcCol,
- DBCOLUMNBINDING *prgBoundColumns[],
- ULONG *pcbRowLength
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetNextRows
- (
- LARGE_INTEGER udlRowsToSkip,
- DBFETCHROWS *pFetchParams
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE Requery
- (
- void
- ) = 0;
- };
- #else
- /* C Language Binding */
- //extern const IID IID_ICursor;
- typedef struct ICursorVtbl
- {
- HRESULT (STDMETHODCALLTYPE FAR *QueryInterface)
- (
- ICursor FAR *this,
- REFIID riid,
- void **ppvObject
- );
- ULONG (STDMETHODCALLTYPE FAR *AddRef)
- (
- ICursor FAR *this
- );
- ULONG (STDMETHODCALLTYPE FAR *Release)
- (
- ICursor FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetColumnsCursor)
- (
- ICursor FAR *this,
- REFIID riid,
- IUnknown **ppvColumnsCursor,
- ULONG *pcRows
- );
- HRESULT (STDMETHODCALLTYPE FAR *SetBindings)
- (
- ICursor FAR *this,
- ULONG cCol,
- DBCOLUMNBINDING rgBoundColumns[],
- ULONG cbRowLength,
- DWORD dwFlags
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetBindings)
- (
- ICursor FAR *this,
- ULONG *pcCol,
- DBCOLUMNBINDING *prgBoundColumns[],
- ULONG *pcbRowLength
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetNextRows)
- (
- ICursor FAR *this,
- LARGE_INTEGER udlRowsToSkip,
- DBFETCHROWS *pFetchParams
- );
- HRESULT (STDMETHODCALLTYPE FAR *Requery)
- (
- ICursor FAR *this
- );
- } ICursorVtbl;
- interface ICursor
- {
- ICursorVtbl FAR *lpVtbl;
- } ;
- #ifdef COBJMACROS
- #define ICursor_QueryInterface(pI, riid, ppvObject) \
- (*(pI)->lpVtbl->QueryInterface)((pI), riid, ppvObject)
- #define ICursor_AddRef(pI) \
- (*(pI)->lpVtbl->AddRef)((pI))
- #define ICursor_Release(pI) \
- (*(pI)->lpVtbl->Release)((pI))
- #define ICursor_GetColumnsCursor(pI, riid, ppvColumnsCursor, pcRows) \
- (*(pI)->lpVtbl->GetColumnsCursor)((pI), riid, ppvColumnsCursor, pcRows)
- #define ICursor_SetBindings(pI, cCol, rgBoundColumns, cbRowLength, dwFlags) \
- (*(pI)->lpVtbl->SetBindings)((pI), cCol, rgBoundColumns, cbRowLength, dwFlags)
- #define ICursor_GetBindings(pI, pcCol, prgBoundColumns, pcbRowLength) \
- (*(pI)->lpVtbl->GetBindings)((pI), pcCol, prgBoundColumns, pcbRowLength)
- #define ICursor_GetNextRows(pI, udlRowsToSkip, pFetchParams) \
- (*(pI)->lpVtbl->GetNextRows)((pI), udlRowsToSkip, pFetchParams)
- #define ICursor_Requery(pI) \
- (*(pI)->lpVtbl->Requery)((pI))
- #endif /* COBJMACROS */
- #endif
- /*----------------------------------------------------------------------------
- *
- * ICursorMove
- *
- *----------------------------------------------------------------------------
- */
- /* Forward declaration */
- //typedef interface ICursorMove ICursorMove;
- typedef enum tagDBCLONEOPTS
- {
- DBCLONEOPTS_DEFAULT = 0,
- DBCLONEOPTS_SAMEROW = 1
- }
- DBCLONEOPTS;
- #if defined(__cplusplus) && !defined(CINTERFACE)
- /* C++ Language Binding */
- //extern "C" const IID IID_ICursorMove;
- interface ICursorMove : public ICursor
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Move
- (
- ULONG cbBookmark,
- void *pBookmark,
- LARGE_INTEGER dlOffset,
- DBFETCHROWS *pFetchParams
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetBookmark
- (
- DBCOLUMNID *pBookmarkType,
- ULONG cbMaxSize,
- ULONG *pcbBookmark,
- void *pBookmark
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE Clone
- (
- DWORD dwFlags,
- REFIID riid,
- IUnknown **ppvClonedCursor
- ) = 0;
- };
- #else
- /* C Language Binding */
- //extern const IID IID_ICursorMove;
- typedef struct ICursorMoveVtbl
- {
- HRESULT (STDMETHODCALLTYPE FAR *QueryInterface)
- (
- ICursorMove FAR *this,
- REFIID riid,
- void **ppvObject
- );
- ULONG (STDMETHODCALLTYPE FAR *AddRef)
- (
- ICursorMove FAR *this
- );
- ULONG (STDMETHODCALLTYPE FAR *Release)
- (
- ICursorMove FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetColumnsCursor)
- (
- ICursorMove FAR *this,
- REFIID riid,
- IUnknown **ppvColumnsCursor,
- ULONG *pcRows
- );
- HRESULT (STDMETHODCALLTYPE FAR *SetBindings)
- (
- ICursorMove FAR *this,
- ULONG cCol,
- DBCOLUMNBINDING rgBoundColumns[],
- ULONG cbRowLength,
- DWORD dwFlags
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetBindings)
- (
- ICursorMove FAR *this,
- ULONG *pcCol,
- DBCOLUMNBINDING *prgBoundColumns[],
- ULONG *pcbRowLength
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetNextRows)
- (
- ICursorMove FAR *this,
- LARGE_INTEGER udlRowsToSkip,
- DBFETCHROWS *pFetchParams
- );
- HRESULT (STDMETHODCALLTYPE FAR *Requery)
- (
- ICursorMove FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *Move)
- (
- ICursorMove FAR *this,
- ULONG cbBookmark,
- void *pBookmark,
- LARGE_INTEGER dlOffset,
- DBFETCHROWS *pFetchParams
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetBookmark)
- (
- ICursorMove FAR *this,
- DBCOLUMNID *pBookmarkType,
- ULONG cbMaxSize,
- ULONG *pcbBookmark,
- void *pBookmark
- );
- HRESULT (STDMETHODCALLTYPE FAR *Clone)
- (
- ICursorMove FAR *this,
- DWORD dwFlags,
- REFIID riid,
- IUnknown **ppvClonedCursor
- );
- } ICursorMoveVtbl;
- interface ICursorMove
- {
- ICursorMoveVtbl FAR *lpVtbl;
- } ;
- #ifdef COBJMACROS
- #define ICursorMove_QueryInterface(pI, riid, ppvObject) \
- (*(pI)->lpVtbl->QueryInterface)((pI), riid, ppvObject)
- #define ICursorMove_AddRef(pI) \
- (*(pI)->lpVtbl->AddRef)((pI))
- #define ICursorMove_Release(pI) \
- (*(pI)->lpVtbl->Release)((pI))
- #define ICursorMove_GetColumnsCursor(pI, riid, ppvColumnsCursor, pcRows) \
- (*(pI)->lpVtbl->GetColumnsCursor)((pI), riid, ppvColumnsCursor, pcRows)
- #define ICursorMove_SetBindings(pI, cCol, rgBoundColumns, cbRowLength, dwFlags) \
- (*(pI)->lpVtbl->SetBindings)((pI), cCol, rgBoundColumns, cbRowLength, dwFlags)
- #define ICursorMove_GetBindings(pI, pcCol, prgBoundColumns, pcbRowLength) \
- (*(pI)->lpVtbl->GetBindings)((pI), pcCol, prgBoundColumns, pcbRowLength)
- #define ICursorMove_GetNextRows(pI, udlRowsToSkip, pFetchParams) \
- (*(pI)->lpVtbl->GetNextRows)((pI), udlRowsToSkip, pFetchParams)
- #define ICursorMove_Requery(pI) \
- (*(pI)->lpVtbl->Requery)((pI))
- #define ICursorMove_Move(pI, cbBookmark, pBookmark, dlOffset, pFetchParams) \
- (*(pI)->lpVtbl->Move)((pI), cbBookmark, pBookmark, dlOffset, pFetchParams)
- #define ICursorMove_GetBookmark(pI, pBookmarkType, cbMaxSize, pcbBookmark, pBookmark) \
- (*(pI)->lpVtbl->GetBookmark)((pI), pBookmarkType, cbMaxSize, pcbBookmark, pBookmark)
- #define ICursorMove_Clone(pI, dwFlags, riid, ppvClonedCursor) \
- (*(pI)->lpVtbl->Clone)((pI), dwFlags, riid, ppvClonedCursor)
- #endif /* COBJMACROS */
- #endif
- /*----------------------------------------------------------------------------
- *
- * ICursorScroll
- *
- *----------------------------------------------------------------------------
- */
- /* Forward declaration */
- //typedef interface ICursorScroll ICursorScroll;
- typedef enum tagDBCURSORPOPULATED
- {
- DBCURSORPOPULATED_FULLY = 0,
- DBCURSORPOPULATED_PARTIALLY = 1
- }
- DBCURSORPOPULATED;
- #if defined(__cplusplus) && !defined(CINTERFACE)
- /* C++ Language Binding */
- //extern "C" const IID IID_ICursorScroll;
- interface ICursorScroll : public ICursorMove
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE Scroll
- (
- ULONG ulNumerator,
- ULONG ulDenominator,
- DBFETCHROWS *pFetchParams
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetApproximatePosition
- (
- ULONG cbBookmark,
- void *pBookmark,
- ULONG *pulNumerator,
- ULONG *pulDenominator
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetApproximateCount
- (
- LARGE_INTEGER *pudlApproxCount,
- DWORD *pdwFullyPopulated
- ) = 0;
- };
- #else
- /* C Language Binding */
- //extern const IID IID_ICursorScroll;
- typedef struct ICursorScrollVtbl
- {
- HRESULT (STDMETHODCALLTYPE FAR *QueryInterface)
- (
- ICursorScroll FAR *this,
- REFIID riid,
- void **ppvObject
- );
- ULONG (STDMETHODCALLTYPE FAR *AddRef)
- (
- ICursorScroll FAR *this
- );
- ULONG (STDMETHODCALLTYPE FAR *Release)
- (
- ICursorScroll FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetColumnsCursor)
- (
- ICursorScroll FAR *this,
- REFIID riid,
- IUnknown **ppvColumnsCursor,
- ULONG *pcRows
- );
- HRESULT (STDMETHODCALLTYPE FAR *SetBindings)
- (
- ICursorScroll FAR *this,
- ULONG cCol,
- DBCOLUMNBINDING rgBoundColumns[],
- ULONG cbRowLength,
- DWORD dwFlags
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetBindings)
- (
- ICursorScroll FAR *this,
- ULONG *pcCol,
- DBCOLUMNBINDING *prgBoundColumns[],
- ULONG *pcbRowLength
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetNextRows)
- (
- ICursorScroll FAR *this,
- LARGE_INTEGER udlRowsToSkip,
- DBFETCHROWS *pFetchParams
- );
- HRESULT (STDMETHODCALLTYPE FAR *Requery)
- (
- ICursorScroll FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *Move)
- (
- ICursorScroll FAR *this,
- ULONG cbBookmark,
- void *pBookmark,
- LARGE_INTEGER dlOffset,
- DBFETCHROWS *pFetchParams
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetBookmark)
- (
- ICursorScroll FAR *this,
- DBCOLUMNID *pBookmarkType,
- ULONG cbMaxSize,
- ULONG *pcbBookmark,
- void *pBookmark
- );
- HRESULT (STDMETHODCALLTYPE FAR *Clone)
- (
- ICursorScroll FAR *this,
- DWORD dwFlags,
- REFIID riid,
- IUnknown **ppvClonedCursor
- );
- HRESULT (STDMETHODCALLTYPE FAR *Scroll)
- (
- ICursorScroll FAR *this,
- ULONG ulNumerator,
- ULONG ulDenominator,
- DBFETCHROWS *pFetchParams
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetApproximatePosition)
- (
- ICursorScroll FAR *this,
- ULONG cbBookmark,
- void *pBookmark,
- ULONG *pulNumerator,
- ULONG *pulDenominator
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetApproximateCount)
- (
- ICursorScroll FAR *this,
- LARGE_INTEGER *pudlApproxCount,
- DWORD *pdwFullyPopulated
- );
- } ICursorScrollVtbl;
- interface ICursorScroll
- {
- ICursorScrollVtbl FAR *lpVtbl;
- } ;
- #ifdef COBJMACROS
- #define ICursorScroll_QueryInterface(pI, riid, ppvObject) \
- (*(pI)->lpVtbl->QueryInterface)((pI), riid, ppvObject)
- #define ICursorScroll_AddRef(pI) \
- (*(pI)->lpVtbl->AddRef)((pI))
- #define ICursorScroll_Release(pI) \
- (*(pI)->lpVtbl->Release)((pI))
- #define ICursorScroll_GetColumnsCursor(pI, riid, ppvColumnsCursor, pcRows) \
- (*(pI)->lpVtbl->GetColumnsCursor)((pI), riid, ppvColumnsCursor, pcRows)
- #define ICursorScroll_SetBindings(pI, cCol, rgBoundColumns, cbRowLength, dwFlags) \
- (*(pI)->lpVtbl->SetBindings)((pI), cCol, rgBoundColumns, cbRowLength, dwFlags)
- #define ICursorScroll_GetBindings(pI, pcCol, prgBoundColumns, pcbRowLength) \
- (*(pI)->lpVtbl->GetBindings)((pI), pcCol, prgBoundColumns, pcbRowLength)
- #define ICursorScroll_GetNextRows(pI, udlRowsToSkip, pFetchParams) \
- (*(pI)->lpVtbl->GetNextRows)((pI), udlRowsToSkip, pFetchParams)
- #define ICursorScroll_Requery(pI) \
- (*(pI)->lpVtbl->Requery)((pI))
- #define ICursorScroll_Move(pI, cbBookmark, pBookmark, dlOffset, pFetchParams) \
- (*(pI)->lpVtbl->Move)((pI), cbBookmark, pBookmark, dlOffset, pFetchParams)
- #define ICursorScroll_GetBookmark(pI, pBookmarkType, cbMaxSize, pcbBookmark, pBookmark) \
- (*(pI)->lpVtbl->GetBookmark)((pI), pBookmarkType, cbMaxSize, pcbBookmark, pBookmark)
- #define ICursorScroll_Clone(pI, dwFlags, riid, ppvClonedCursor) \
- (*(pI)->lpVtbl->Clone)((pI), dwFlags, riid, ppvClonedCursor)
- #define ICursorScroll_Scroll(pI, ulNumerator, ulDenominator, pFetchParams) \
- (*(pI)->lpVtbl->Scroll)((pI), ulNumerator, ulDenominator, pFetchParams)
- #define ICursorScroll_GetApproximatePosition(pI, cbBookmark, pBookmark, pulNumerator, pulDenominator) \
- (*(pI)->lpVtbl->GetApproximatePosition)((pI), cbBookmark, pBookmark, pulNumerator, pulDenominator)
- #define ICursorScroll_GetApproximateCount(pI, pudlApproxCount, pdwFullyPopulated) \
- (*(pI)->lpVtbl->GetApproximateCount)((pI), pudlApproxCount, pdwFullyPopulated)
- #endif /* COBJMACROS */
- #endif
- /*----------------------------------------------------------------------------
- *
- * ICursorUpdateARow
- *
- *----------------------------------------------------------------------------
- */
- /* Forward declaration */
- //typedef interface ICursorUpdateARow ICursorUpdateARow;
- typedef enum tagDBEDITMODE
- {
- DBEDITMODE_NONE = 1,
- DBEDITMODE_UPDATE = 2,
- DBEDITMODE_ADD = 3
- }
- DBEDITMODE;
- #if defined(__cplusplus) && !defined(CINTERFACE)
- /* C++ Language Binding */
- //extern "C" const IID IID_ICursorUpdateARow;
- interface ICursorUpdateARow : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE BeginUpdate
- (
- DWORD dwFlags
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE SetColumn
- (
- DBCOLUMNID *pcid,
- DBBINDPARAMS *pBindParams
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetColumn
- (
- DBCOLUMNID *pcid,
- DBBINDPARAMS *pBindParams,
- DWORD *pdwFlags
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetEditMode
- (
- DWORD *pdwState
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE Update
- (
- DBCOLUMNID *pBookmarkType,
- ULONG *pcbBookmark,
- void **ppBookmark
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE Cancel
- (
- void
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE Delete
- (
- void
- ) = 0;
- };
- #else
- /* C Language Binding */
- //extern const IID IID_ICursorUpdateARow;
- typedef struct ICursorUpdateARowVtbl
- {
- HRESULT (STDMETHODCALLTYPE FAR *QueryInterface)
- (
- ICursorUpdateARow FAR *this,
- REFIID riid,
- void **ppvObject
- );
- ULONG (STDMETHODCALLTYPE FAR *AddRef)
- (
- ICursorUpdateARow FAR *this
- );
- ULONG (STDMETHODCALLTYPE FAR *Release)
- (
- ICursorUpdateARow FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *BeginUpdate)
- (
- ICursorUpdateARow FAR *this,
- DWORD dwFlags
- );
- HRESULT (STDMETHODCALLTYPE FAR *SetColumn)
- (
- ICursorUpdateARow FAR *this,
- DBCOLUMNID *pcid,
- DBBINDPARAMS *pBindParams
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetColumn)
- (
- ICursorUpdateARow FAR *this,
- DBCOLUMNID *pcid,
- DBBINDPARAMS *pBindParams,
- DWORD *pdwFlags
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetEditMode)
- (
- ICursorUpdateARow FAR *this,
- DWORD *pdwState
- );
- HRESULT (STDMETHODCALLTYPE FAR *Update)
- (
- ICursorUpdateARow FAR *this,
- DBCOLUMNID *pBookmarkType,
- ULONG *pcbBookmark,
- void **ppBookmark
- );
- HRESULT (STDMETHODCALLTYPE FAR *Cancel)
- (
- ICursorUpdateARow FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *Delete)
- (
- ICursorUpdateARow FAR *this
- );
- } ICursorUpdateARowVtbl;
- interface ICursorUpdateARow
- {
- ICursorUpdateARowVtbl FAR *lpVtbl;
- } ;
- #ifdef COBJMACROS
- #define ICursorUpdateARow_QueryInterface(pI, riid, ppvObject) \
- (*(pI)->lpVtbl->QueryInterface)((pI), riid, ppvObject)
- #define ICursorUpdateARow_AddRef(pI) \
- (*(pI)->lpVtbl->AddRef)((pI))
- #define ICursorUpdateARow_Release(pI) \
- (*(pI)->lpVtbl->Release)((pI))
- #define ICursorUpdateARow_BeginUpdate(pI, dwFlags) \
- (*(pI)->lpVtbl->BeginUpdate)((pI), dwFlags)
- #define ICursorUpdateARow_SetColumn(pI, pcid, pBindParams) \
- (*(pI)->lpVtbl->SetColumn)((pI), pcid, pBindParams)
- #define ICursorUpdateARow_GetColumn(pI, pcid, pBindParams, pdwFlags) \
- (*(pI)->lpVtbl->GetColumn)((pI), pcid, pBindParams, pdwFlags)
- #define ICursorUpdateARow_GetEditMode(pI, pdwState) \
- (*(pI)->lpVtbl->GetEditMode)((pI), pdwState)
- #define ICursorUpdateARow_Update(pI, pBookmarkType, pcbBookmark, ppBookmark) \
- (*(pI)->lpVtbl->Update)((pI), pBookmarkType, pcbBookmark, ppBookmark)
- #define ICursorUpdateARow_Cancel(pI) \
- (*(pI)->lpVtbl->Cancel)((pI))
- #define ICursorUpdateARow_Delete(pI) \
- (*(pI)->lpVtbl->Delete)((pI))
- #endif /* COBJMACROS */
- #endif
- /*----------------------------------------------------------------------------
- *
- * ICursorFind
- *
- *----------------------------------------------------------------------------
- */
- /* Forward declaration */
- //typedef interface ICursorFind ICursorFind;
- typedef enum tagDBFINDFLAGS
- {
- DBFINDFLAGS_FINDNEXT = 1,
- DBFINDFLAGS_FINDPRIOR = 2,
- DBFINDFLAGS_INCLUDECURRENT = 4
- }
- DBFINDFLAGS;
- #ifdef OLD_DEFS
- typedef enum tagDBSEEKFLAGS
- {
- DBSEEK_LT = 1,
- DBSEEK_LE = 2,
- DBSEEK_EQ = 3, // EXACT EQUALITY
- DBSEEK_GT = 4,
- DBSEEK_GE = 5,
- DBSEEK_PARTIALEQ = 6 // only for strings
- }
- DBSEEKFLAGS;
- #endif
- #if defined(__cplusplus) && !defined(CINTERFACE)
- /* C++ Language Binding */
- //extern "C" const IID IID_ICursorFind;
- interface ICursorFind : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE FindByValues
- (
- ULONG cbBookmark,
- LPVOID pBookmark,
- DWORD dwFindFlags,
- ULONG cValues,
- DBCOLUMNID rgColumns[],
- DBVARIANT rgValues[],
- DWORD rgdwSeekFlags[],
- DBFETCHROWS FAR *pFetchParams
- ) = 0;
- };
- #else
- /* C Language Binding */
- //extern const IID IID_ICursorFind;
- typedef struct ICursorFindVtbl
- {
- HRESULT (STDMETHODCALLTYPE FAR *QueryInterface)
- (
- ICursorFind FAR *this,
- REFIID riid,
- void **ppvObject
- );
- ULONG (STDMETHODCALLTYPE FAR *AddRef)
- (
- ICursorFind FAR *this
- );
- ULONG (STDMETHODCALLTYPE FAR *Release)
- (
- ICursorFind FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *FindByValues)
- (
- ICursorFind FAR *this,
- ULONG cbBookmark,
- LPVOID pBookmark,
- DWORD dwFindFlags,
- ULONG cValues,
- DBCOLUMNID rgColumns[],
- DBVARIANT rgValues[],
- DWORD rgdwSeekFlags[],
- DBFETCHROWS pFetchParams
- );
- } ICursorFindVtbl;
- interface ICursorFind
- {
- ICursorFindVtbl FAR *lpVtbl;
- } ;
- #ifdef COBJMACROS
- #define ICursorFind_QueryInterface(pI, riid, ppvObject) \
- (*(pI)->lpVtbl->QueryInterface)((pI), riid, ppvObject)
- #define ICursorFind_AddRef(pI) \
- (*(pI)->lpVtbl->AddRef)((pI))
- #define ICursorFind_Release(pI) \
- (*(pI)->lpVtbl->Release)((pI))
- #define ICursorFind_FindByValues(pI, cbB, pB, dwFF, cV, rgC, rgV, rgSF, pF) \
- (*(pI)->lpVtbl->FindByValues)((pI), cbB, pB, dwFF, cB, rgC, rgV, rgSF, pF)
- #endif /* COBJMACROS */
- #endif
- /*----------------------------------------------------------------------------
- *
- * IEntryID
- *
- *----------------------------------------------------------------------------
- */
- /* Forward declaration */
- //typedef interface IEntryID IEntryID;
- #if defined(__cplusplus) && !defined(CINTERFACE)
- /* C++ Language Binding */
- //extern "C" const IID IID_IEntryID;
- interface IEntryID : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetInterface
- (
- ULONG cbEntryID,
- void *pEntryID,
- DWORD dwFlags,
- REFIID riid,
- IUnknown **ppvObj
- ) = 0;
- };
- #else
- /* C Language Binding */
- //extern const IID IID_IEntryID;
- typedef struct IEntryIDVtbl
- {
- HRESULT (STDMETHODCALLTYPE FAR *QueryInterface)
- (
- IEntryID FAR *this,
- REFIID riid,
- void **ppvObject
- );
- ULONG (STDMETHODCALLTYPE FAR *AddRef)
- (
- IEntryID FAR *this
- );
- ULONG (STDMETHODCALLTYPE FAR *Release)
- (
- IEntryID FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *GetInterface)
- (
- IEntryID FAR *this,
- ULONG cbEntryID,
- void *pEntryID,
- REFIID riid,
- IUnknown **ppvObj
- );
- } IEntryIDVtbl;
- interface IEntryID
- {
- IEntryIDVtbl FAR *lpVtbl;
- } ;
- #ifdef COBJMACROS
- #define IEntryID_QueryInterface(pI, riid, ppvObject) \
- (*(pI)->lpVtbl->QueryInterface)((pI), riid, ppvObject)
- #define IEntryID_AddRef(pI) \
- (*(pI)->lpVtbl->AddRef)((pI))
- #define IEntryID_Release(pI) \
- (*(pI)->lpVtbl->Release)((pI))
- #define IEntryID_GetInterface(pI, cbEntryID, pEntryID, riid, ppvObj) \
- (*(pI)->lpVtbl->GetInterface)((pI), cbEntryID, pEntryID, riid, ppvObj)
- #endif /* COBJMACROS */
- #endif
- /*----------------------------------------------------------------------------
- *
- * INotifyDBEvents
- *
- *----------------------------------------------------------------------------
- */
- /* Forward declaration */
- //typedef interface INotifyDBEvents INotifyDBEvents;
- #if defined(__cplusplus) && !defined(CINTERFACE)
- /* C++ Language Binding */
- //extern "C" const IID IID_INotifyDBEvents;
- interface INotifyDBEvents : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE OKToDo
- (
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE Cancelled
- (
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE SyncBefore
- (
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE AboutToDo
- (
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE FailedToDo
- (
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE SyncAfter
- (
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE DidEvent
- (
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- ) = 0;
- };
- #else
- /* C Language Binding */
- extern const IID IID_INotifyDBEvents;
- typedef struct INotifyDBEventsVtbl
- {
- HRESULT (STDMETHODCALLTYPE FAR *QueryInterface)
- (
- INotifyDBEvents FAR *this,
- REFIID riid,
- void **ppvObject
- );
- ULONG (STDMETHODCALLTYPE FAR *AddRef)
- (
- INotifyDBEvents FAR *this
- );
- ULONG (STDMETHODCALLTYPE FAR *Release)
- (
- INotifyDBEvents FAR *this
- );
- HRESULT (STDMETHODCALLTYPE FAR *OKToDo)
- (
- INotifyDBEvents FAR *this,
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- );
- HRESULT (STDMETHODCALLTYPE FAR *Cancelled)
- (
- INotifyDBEvents FAR *this,
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- );
- HRESULT (STDMETHODCALLTYPE FAR *SyncBefore)
- (
- INotifyDBEvents FAR *this,
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- );
- HRESULT (STDMETHODCALLTYPE FAR *AboutToDo)
- (
- INotifyDBEvents FAR *this,
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- );
- HRESULT (STDMETHODCALLTYPE FAR *FailedToDo)
- (
- INotifyDBEvents FAR *this,
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- );
- HRESULT (STDMETHODCALLTYPE FAR *SyncAfter)
- (
- INotifyDBEvents FAR *this,
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- );
- HRESULT (STDMETHODCALLTYPE FAR *DidEvent)
- (
- INotifyDBEvents FAR *this,
- DWORD dwEventWhat,
- ULONG cReasons,
- DBNOTIFYREASON rgReasons[]
- );
- } INotifyDBEventsVtbl;
- interface INotifyDBEvents
- {
- INotifyDBEventsVtbl FAR *lpVtbl;
- } ;
- #ifdef COBJMACROS
- #define INotifyDBEvents_QueryInterface(pI, riid, ppvObject) \
- (*(pI)->lpVtbl->QueryInterface)((pI), riid, ppvObject)
- #define INotifyDBEvents_AddRef(pI) \
- (*(pI)->lpVtbl->AddRef)((pI))
- #define INotifyDBEvents_Release(pI) \
- (*(pI)->lpVtbl->Release)((pI))
- #define INotifyDBEvents_OKToDo(pI, dwEventWhat, cReasons, rgReasons) \
- (*(pI)->lpVtbl->OKToDo)((pI), dwEventWhat, cReasons, rgReasons)
- #define INotifyDBEvents_Cancelled(pI, dwEventWhat, cReasons, rgReasons) \
- (*(pI)->lpVtbl->Cancelled)((pI), dwEventWhat, cReasons, rgReasons)
- #define INotifyDBEvents_SyncBefore(pI, dwEventWhat, cReasons, rgReasons) \
- (*(pI)->lpVtbl->SyncBefore)((pI), dwEventWhat, cReasons, rgReasons)
- #define INotifyDBEvents_AboutToDo(pI, dwEventWhat, cReasons, rgReasons) \
- (*(pI)->lpVtbl->AboutToDo)((pI), dwEventWhat, cReasons, rgReasons)
- #define INotifyDBEvents_FailedToDo(pI, dwEventWhat, cReasons, rgReasons) \
- (*(pI)->lpVtbl->FailedToDo)((pI), dwEventWhat, cReasons, rgReasons)
- #define INotifyDBEvents_SyncAfter(pI, dwEventWhat, cReasons, rgReasons) \
- (*(pI)->lpVtbl->SyncAfter)((pI), dwEventWhat, cReasons, rgReasons)
- #define INotifyDBEvents_DidEvent(pI, dwEventWhat, cReasons, rgReasons) \
- (*(pI)->lpVtbl->DidEvent)((pI), dwEventWhat, cReasons, rgReasons)
- #endif /* COBJMACROS */
- #endif
- #ifdef __cplusplus
- }
- #endif
- #define __OCDB_H_
- #endif // __OCDB_H_
|