📄 ocidl.h
字号:
#ifndef _OCIDL_H#define _OCIDL_H#if __GNUC__ >= 3#pragma GCC system_header#endif#ifdef __cplusplusextern "C" {#endif#include <ole2.h>typedef interface IErrorLog *LPERRORLOG;typedef interface IPropertyBag *LPPROPERTYBAG;typedef interface IPropertyBag2 *LPPROPERTYBAG2;typedef interface IEnumConnections *LPENUMCONNECTIONS;typedef interface IConnectionPoint *LPCONNECTIONPOINT;typedef interface IEnumConnectionPoints *LPENUMCONNECTIONPOINTS;typedef interface IPropertyPageSite *LPPROPERTYPAGESITE;typedef interface IFont *LPFONT;typedef interface IFontDisp *LPFONTDISP;typedef interface IOleUndoManager *LPOLEUNDOMANAGER;#ifndef OLE2ANSItypedef TEXTMETRICW TEXTMETRICOLE;#elsetypedef TEXTMETRIC TEXTMETRICOLE;#endiftypedef TEXTMETRICOLE *LPTEXTMETRICOLE;typedef DWORD OLE_COLOR;typedef UINT OLE_HANDLE;typedef long OLE_XPOS_HIMETRIC;typedef long OLE_YPOS_HIMETRIC;typedef long OLE_XSIZE_HIMETRIC;typedef long OLE_YSIZE_HIMETRIC;typedef enum tagREADYSTATE { READYSTATE_UNINITIALIZED = 0, READYSTATE_LOADING = 1, READYSTATE_LOADED = 2, READYSTATE_INTERACTIVE = 3, READYSTATE_COMPLETE = 4} READYSTATE;typedef enum tagPROPBAG2_TYPE { PROPBAG2_TYPE_UNDEFINED = 0, PROPBAG2_TYPE_DATA = 1, PROPBAG2_TYPE_URL = 2, PROPBAG2_TYPE_OBJECT = 3, PROPBAG2_TYPE_STREAM = 4, PROPBAG2_TYPE_STORAGE = 5, PROPBAG2_TYPE_MONIKER = 6} PROPBAG2_TYPE;typedef struct tagPROPBAG2{ DWORD dwType; VARTYPE vt; CLIPFORMAT cfType; DWORD dwHint; LPOLESTR pstrName; CLSID clsid;} PROPBAG2;typedef enum tagQACONTAINERFLAGS{ QACONTAINER_SHOWHATCHING = 1, QACONTAINER_SHOWGRABHANDLES = 2, QACONTAINER_USERMODE = 4, QACONTAINER_DISPLAYASDEFAULT = 8, QACONTAINER_UIDEAD = 16, QACONTAINER_AUTOCLIP = 32, QACONTAINER_MESSAGEREFLECT = 64, QACONTAINER_SUPPORTSMNEMONICS = 128} QACONTAINERFLAGS;typedef struct tagQACONTAINER{ ULONG cbSize; interface IOleClientSite *pClientSite; interface IAdviseSinkEx *pAdviseSink; interface IPropertyNotifySink *pPropertyNotifySink; IUnknown *pUnkEventSink; DWORD dwAmbientFlags; OLE_COLOR colorFore; OLE_COLOR colorBack; interface IFont *pFont; interface IOleUndoManager *pUndoMgr; DWORD dwAppearance; LONG lcid; HPALETTE hpal; interface IBindHost *pBindHost; interface IOleControlSite *pOleControlSite; interface IServiceProvider *pServiceProvider;} QACONTAINER;typedef struct tagQACONTROL{ ULONG cbSize; DWORD dwMiscStatus; DWORD dwViewStatus; DWORD dwEventCookie; DWORD dwPropNotifyCookie; DWORD dwPointerActivationPolicy;} QACONTROL;typedef struct tagPOINTF { float x; float y;} POINTF,*LPPOINTF;typedef struct tagCONTROLINFO { ULONG cb; HACCEL hAccel; USHORT cAccel; DWORD dwFlags;} CONTROLINFO,*LPCONTROLINFO;typedef struct tagCONNECTDATA { LPUNKNOWN pUnk; DWORD dwCookie;} CONNECTDATA,*LPCONNECTDATA;typedef struct tagLICINFO { long cbLicInfo; BOOL fRuntimeKeyAvail; BOOL fLicVerified;} LICINFO,*LPLICINFO;typedef struct tagCAUUID { ULONG cElems; GUID *pElems;} CAUUID,*LPCAUUID;typedef struct tagCALPOLESTR { ULONG cElems; LPOLESTR *pElems;} CALPOLESTR,*LPCALPOLESTR;typedef struct tagCADWORD { ULONG cElems; DWORD *pElems;} CADWORD,*LPCADWORD;typedef struct tagPROPPAGEINFO { ULONG cb; LPOLESTR pszTitle; SIZE size; LPOLESTR pszDocString; LPOLESTR pszHelpFile; DWORD dwHelpContext;} PROPPAGEINFO,*LPPROPPAGEINFO;EXTERN_C const IID IID_IOleControl;#undef INTERFACE#define INTERFACE IOleControlDECLARE_INTERFACE_(IOleControl,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetControlInfo)(THIS_ LPCONTROLINFO) PURE; STDMETHOD(OnMnemonic)(THIS_ LPMSG) PURE; STDMETHOD(OnAmbientPropertyChange)(THIS_ DISPID) PURE; STDMETHOD(FreezeEvents)(THIS_ BOOL) PURE;};EXTERN_C const IID IID_IOleControlSite;#undef INTERFACE#define INTERFACE IOleControlSiteDECLARE_INTERFACE_(IOleControlSite,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(OnControlInfoChanged)(THIS) PURE; STDMETHOD(LockInPlaceActive)(THIS_ BOOL) PURE; STDMETHOD(GetExtendedControl)(THIS_ LPDISPATCH*) PURE; STDMETHOD(TransformCoords)(THIS_ POINTL*,POINTF*,DWORD) PURE; STDMETHOD(TranslateAccelerator)(THIS_ LPMSG,DWORD) PURE; STDMETHOD(OnFocus)(THIS_ BOOL) PURE; STDMETHOD(ShowPropertyFrame)(THIS) PURE;};#ifdef COBJMACROS#define IOleControlSite_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)#define IOleControlSite_AddRef(T) (T)->lpVtbl->AddRef(T)#define IOleControlSite_Release(T) (T)->lpVtbl->Release(T)#define IOleControlSite_OnControlInfoChanged(T) (T)->lpVtbl->OnControlInfoChanged(T)#define IOleControlSite_LockInPlaceActive(T,a) (T)->lpVtbl->LockInPlaceActive(T,a)#define IOleControlSite_GetExtendedControl(T,a) (T)->lpVtbl->GetExtendedControl(T,a)#define IOleControlSite_TransformCoords(T,a,b,c) (T)->lpVtbl->TransformCoords(T,a,b,c)#define IOleControlSite_TranslateAccelerator(T,a,b) (T)->lpVtbl->TranslateAccelerator(T,a,b)#define IOleControlSite_OnFocus(T,a) (T)->lpVtbl->OnFocus(T,a)#define IOleControlSite_ShowPropertyFrame(T) (T)->lpVtbl->ShowPropertyFrame(T)#endifEXTERN_C const IID IID_ISimpleFrameSite;#undef INTERFACE#define INTERFACE ISimpleFrameSiteDECLARE_INTERFACE_(ISimpleFrameSite,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(PreMessageFilter)(THIS_ HWND,UINT,WPARAM,LPARAM,LRESULT*,PDWORD) PURE; STDMETHOD(PostMessageFilter)(THIS_ HWND,UINT,WPARAM,LPARAM,LRESULT*,DWORD) PURE;};EXTERN_C const IID IID_IErrorLog;#undef INTERFACE#define INTERFACE IErrorLogDECLARE_INTERFACE_(IErrorLog,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(AddError)(THIS_ LPCOLESTR,LPEXCEPINFO) PURE;};EXTERN_C const IID IID_IPropertyBag;#undef INTERFACE#define INTERFACE IPropertyBagDECLARE_INTERFACE_(IPropertyBag,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(Read)(THIS_ LPCOLESTR,LPVARIANT,LPERRORLOG) PURE; STDMETHOD(Write)(THIS_ LPCOLESTR,LPVARIANT) PURE;};EXTERN_C const IID IID_IPropertyBag2;#undef INTERFACE#define INTERFACE IPropertyBag2DECLARE_INTERFACE_(IPropertyBag2,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(Read)(THIS_ ULONG,PROPBAG2*,LPERRORLOG,VARIANT*,HRESULT*) PURE; STDMETHOD(Write)(THIS_ ULONG,PROPBAG2*,VARIANT*) PURE; STDMETHOD(CountProperties)(THIS_ ULONG*) PURE; STDMETHOD(GetPropertyInfo)(THIS_ ULONG,ULONG,PROPBAG2*,ULONG*) PURE; STDMETHOD(LoadObject)(THIS_ LPCOLESTR,DWORD,IUnknown*,LPERRORLOG) PURE;};EXTERN_C const IID IID_IPersistPropertyBag;#undef INTERFACE#define INTERFACE IPersistPropertyBagDECLARE_INTERFACE_(IPersistPropertyBag,IPersist){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetClassID)(THIS_ LPCLSID) PURE; STDMETHOD(InitNew)(THIS) PURE; STDMETHOD(Load)(THIS_ LPPROPERTYBAG,LPERRORLOG) PURE; STDMETHOD(Save)(THIS_ LPPROPERTYBAG,BOOL,BOOL) PURE;};#ifdef COBJMACROS#define IPersistPropertyBag_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)#define IPersistPropertyBag_AddRef(T) (T)->lpVtbl->AddRef(T)#define IPersistPropertyBag_Release(T) (T)->lpVtbl->Release(T)#define IPersistPropertyBag_GetClassID(T,a) (T)->lpVtbl->GetClassID(T,a)#define IPersistPropertyBag_InitNew(T) (T)->lpVtbl->InitNew(T)#define IPersistPropertyBag_Load(T,a,b) (T)->lpVtbl->Load(T,a,b)#define IPersistPropertyBag_Save(T,a,b,c) (T)->lpVtbl->Save(T,a,b,c)#endifEXTERN_C const IID IID_IPersistPropertyBag2;#undef INTERFACE#define INTERFACE IPersistPropertyBag2DECLARE_INTERFACE_(IPersistPropertyBag2,IPersist){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetClassID)(THIS_ LPCLSID) PURE; STDMETHOD(InitNew)(THIS) PURE; STDMETHOD(Load)(THIS_ LPPROPERTYBAG2,LPERRORLOG) PURE; STDMETHOD(Save)(THIS_ LPPROPERTYBAG2,BOOL,BOOL) PURE; STDMETHOD(IsDirty)(THIS) PURE;};#ifdef COBJMACROS#define IPersistPropertyBag2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)#define IPersistPropertyBag2_AddRef(T) (T)->lpVtbl->AddRef(T)#define IPersistPropertyBag2_Release(T) (T)->lpVtbl->Release(T)#define IPersistPropertyBag2_GetClassID(T,a) (T)->lpVtbl->GetClassID(T,a)#define IPersistPropertyBag2_InitNew(T) (T)->lpVtbl->InitNew(T)#define IPersistPropertyBag2_Load(T,a,b) (T)->lpVtbl->Load(T,a,b)#define IPersistPropertyBag2_Save(T,a,b,c) (T)->lpVtbl->Save(T,a,b,c)#define IPersistPropertyBag2_IsDirty(T) (T)->lpVtbl->IsDirty(T)#endifEXTERN_C const IID IID_IPersistStreamInit;#undef INTERFACE#define INTERFACE IPersistStreamInitDECLARE_INTERFACE_(IPersistStreamInit,IPersist){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetClassID)(THIS_ LPCLSID) PURE; STDMETHOD(IsDirty)(THIS) PURE; STDMETHOD(Load)(THIS_ LPSTREAM) PURE; STDMETHOD(Save)(THIS_ LPSTREAM,BOOL) PURE; STDMETHOD(GetSizeMax)(THIS_ PULARGE_INTEGER) PURE; STDMETHOD(InitNew)(THIS) PURE;};EXTERN_C const IID IID_IPersistMemory;#undef INTERFACE#define INTERFACE IPersistMemoryDECLARE_INTERFACE_(IPersistMemory,IPersist){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetClassID)(THIS_ LPCLSID) PURE; STDMETHOD(IsDirty)(THIS) PURE; STDMETHOD(Load)(THIS_ PVOID,ULONG) PURE; STDMETHOD(Save)(THIS_ PVOID,BOOL,ULONG) PURE; STDMETHOD(GetSizeMax)(THIS_ PULONG) PURE; STDMETHOD(InitNew)(THIS) PURE;};EXTERN_C const IID IID_IPropertyNotifySink;#undef INTERFACE#define INTERFACE IPropertyNotifySinkDECLARE_INTERFACE_(IPropertyNotifySink,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(OnChanged)(THIS_ DISPID) PURE; STDMETHOD(OnRequestEdit)(THIS_ DISPID) PURE;};#ifdef COBJMACROS#define IPropertyNotifySink_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)#define IPropertyNotifySink_AddRef(T) (T)->lpVtbl->AddRef(T)#define IPropertyNotifySink_Release(T) (T)->lpVtbl->Release(T)#define IPropertyNotifySink_OnChanged(T,a) (T)->lpVtbl->OnChanged(T,a)#define IPropertyNotifySink_OnRequestEdit(T,a) (T)->lpVtbl->OnRequestEdit(T,a)#endifEXTERN_C const IID IID_IProvideClassInfo;#undef INTERFACE#define INTERFACE IProvideClassInfoDECLARE_INTERFACE_(IProvideClassInfo,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetClassInfo)(THIS_ LPTYPEINFO*) PURE;};EXTERN_C const IID IID_IProvideClassInfo2;#undef INTERFACE#define INTERFACE IProvideClassInfo2DECLARE_INTERFACE_(IProvideClassInfo2,IProvideClassInfo){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetClassInfo)(THIS_ LPTYPEINFO*) PURE; STDMETHOD(GetGUID)(THIS_ DWORD,GUID*) PURE;};EXTERN_C const IID IID_IConnectionPointContainer;#undef INTERFACE#define INTERFACE IConnectionPointContainerDECLARE_INTERFACE_(IConnectionPointContainer,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(EnumConnectionPoints)(THIS_ LPENUMCONNECTIONPOINTS*) PURE; STDMETHOD(FindConnectionPoint)(THIS_ REFIID,LPCONNECTIONPOINT*) PURE;};#ifdef COBJMACROS#define IConnectionPointContainer_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)#define IConnectionPointContainer_AddRef(T) (T)->lpVtbl->AddRef(T)#define IConnectionPointContainer_Release(T) (T)->lpVtbl->Release(T)#define IConnectionPointContainer_EnumConnectionPoints(T,a) (T)->lpVtbl->EnumConnectionPoints(T,a)#define IConnectionPointContainer_FindConnectionPoint(T,a,b) (T)->lpVtbl->FindConnectionPoint(T,a,b)#endifEXTERN_C const IID IID_IEnumConnectionPoints;#undef INTERFACE#define INTERFACE IEnumConnectionPointsDECLARE_INTERFACE_(IEnumConnectionPoints,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(Next)(THIS_ ULONG,LPCONNECTIONPOINT*,ULONG*) PURE; STDMETHOD(Skip)(THIS_ ULONG) PURE; STDMETHOD(Reset)(THIS) PURE; STDMETHOD(Clone)(THIS_ LPENUMCONNECTIONPOINTS*) PURE;};EXTERN_C const IID IID_IConnectionPoint;#undef INTERFACE#define INTERFACE IConnectionPointDECLARE_INTERFACE_(IConnectionPoint,IUnknown){ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetConnectionInterface)(THIS_ IID*) PURE; STDMETHOD(GetConnectionPointContainer)(THIS_ IConnectionPointContainer**) PURE; STDMETHOD(Advise)(THIS_ LPUNKNOWN,PDWORD) PURE; STDMETHOD(Unadvise)(THIS_ DWORD) PURE; STDMETHOD(EnumConnections)(THIS_ LPENUMCONNECTIONS*) PURE;};#ifdef COBJMACROS#define IConnectionPoint_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)#define IConnectionPoint_AddRef(T) (T)->lpVtbl->AddRef(T)#define IConnectionPoint_Release(T) (T)->lpVtbl->Release(T)#define IConnectionPoint_GetConnectionInterface(T,a) (T)->lpVtbl->GetConnectionInterface(T,a)#define IConnectionPoint_GetConnectionPointContainer(T,a) (T)->lpVtbl->GetConnectionPointContainer(T,a)#define IConnectionPoint_Advise(T,a,b) (T)->lpVtbl->Advise(T,a,b)#define IConnectionPoint_Unadvise(T,a) (T)->lpVtbl->Unadvise(T,a)#define IConnectionPoint_EnumConnections(T,a) (T)->lpVtbl->EnumConnections(T,a)#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -