📄 ocdb.h
字号:
#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_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -