oleidl.h
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 576 行 · 第 1/2 页
H
576 行
#ifndef _OLEIDL_H
#define _OLEIDL_H
#if __GNUC__ >=3
#pragma GCC system_header
#endif
#ifdef __cplusplus
extern "C" {
#endif
#include <objfwd.h>
#define MK_ALT 32
typedef _COM_interface IParseDisplayName *LPPARSEDISPLAYNAME;
typedef _COM_interface IOleContainer *LPOLECONTAINER;
typedef _COM_interface IOleClientSite *LPOLECLIENTSITE;
typedef _COM_interface IOleObject *LPOLEOBJECT;
typedef _COM_interface IDropTarget *LPDROPTARGET;
typedef _COM_interface IDropSource *LPDROPSOURCE;
typedef _COM_interface IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
typedef _COM_interface IEnumOLEVERB *LPENUMOLEVERB;
typedef _COM_interface IOleWindow *LPOLEWINDOW;
typedef _COM_interface IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
typedef _COM_interface IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
typedef _COM_interface IOleInPlaceFrame *LPOLEINPLACEFRAME;
typedef _COM_interface IOleAdviseHolder *LPOLEADVISEHOLDER;
typedef _COM_interface IViewObject *LPVIEWOBJECT;
typedef _COM_interface IViewObject2 *LPVIEWOBJECT2;
typedef _COM_interface IOleCache *LPOLECACHE;
typedef _COM_interface IOleCache2 *LPOLECACHE2;
typedef _COM_interface IOleCacheControl *LPOLECACHECONTROL;
typedef enum tagBINDSPEED
{
BINDSPEED_INDEFINITE=1,
BINDSPEED_MODERATE,
BINDSPEED_IMMEDIATE
} BINDSPEED;
typedef enum tagOLEWHICHMK {
OLEWHICHMK_CONTAINER=1,
OLEWHICHMK_OBJREL,
OLEWHICHMK_OBJFULL
} OLEWHICHMK;
typedef enum tagOLEGETMONIKER {
OLEGETMONIKER_ONLYIFTHERE=1,
OLEGETMONIKER_FORCEASSIGN,
OLEGETMONIKER_UNASSIGN,
OLEGETMONIKER_TEMPFORUSER
} OLEGETMONIKER;
typedef enum tagUSERCLASSTYPE {
USERCLASSTYPE_FULL=1,
USERCLASSTYPE_SHORT,
USERCLASSTYPE_APPNAME
} USERCLASSTYPE;
#ifdef __GNUC__
__extension__ /* IS0 C says enums limited to range of int */
#endif
typedef enum tagDROPEFFECT {
DROPEFFECT_NONE=0,
DROPEFFECT_COPY=1,
DROPEFFECT_MOVE=2,
DROPEFFECT_LINK=4,
DROPEFFECT_SCROLL=0x80000000
} DROPEFFECT;
typedef struct tagOleMenuGroupWidths {
LONG width[6];
} OLEMENUGROUPWIDTHS,*LPOLEMENUGROUPWIDTHS;
typedef HGLOBAL HOLEMENU;
typedef enum tagOLECLOSE {
OLECLOSE_SAVEIFDIRTY,
OLECLOSE_NOSAVE,
OLECLOSE_PROMPTSAVE
} OLECLOSE;
typedef struct tagOLEVERB {
LONG lVerb;
LPWSTR lpszVerbName;
DWORD fuFlags;
DWORD grfAttribs;
} OLEVERB,*LPOLEVERB;
typedef RECT BORDERWIDTHS;
typedef LPRECT LPBORDERWIDTHS;
typedef LPCRECT LPCBORDERWIDTHS;
typedef struct tagOIFI {
UINT cb;
BOOL fMDIApp;
HWND hwndFrame;
HACCEL haccel;
UINT cAccelEntries;
}OLEINPLACEFRAMEINFO,*LPOLEINPLACEFRAMEINFO;
DECLARE_ENUMERATOR(OLEVERB);
typedef IEnumOLEVERB IEnumOleVerb;
EXTERN_C const IID IID_IParseDisplayName;
#define INTERFACE IParseDisplayName
DECLARE_INTERFACE_(IParseDisplayName,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
};
#undef INTERFACE
#ifdef COBJMACROS
#define IParseDisplayName_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IParseDisplayName_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IParseDisplayName_Release(T) (T)->lpVtbl->Release(T)
#define IParseDisplayName_ParseDisplayName(T,a,b,c,d) (T)->lpVtbl->ParseDisplayName(T,a,b,c,d)
#endif
EXTERN_C const IID IID_IOleContainer;
#define INTERFACE IOleContainer
DECLARE_INTERFACE_(IOleContainer,IParseDisplayName)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
STDMETHOD(EnumObjects)(THIS_ DWORD,IEnumUnknown**) PURE;
STDMETHOD(LockContainer)(THIS_ BOOL) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IOleItemContainer;
#define INTERFACE IOleItemContainer
DECLARE_INTERFACE_(IOleItemContainer,IOleContainer)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
STDMETHOD(EnumObjects)(THIS_ DWORD,IEnumUnknown**) PURE;
STDMETHOD(LockContainer)(THIS_ BOOL) PURE;
STDMETHOD(GetObject)(THIS_ LPOLESTR,DWORD,IBindCtx*,REFIID,void**) PURE;
STDMETHOD(GetObjectStorage)(THIS_ LPOLESTR,IBindCtx*,REFIID,void**) PURE;
STDMETHOD(IsRunning)(THIS_ LPOLESTR) PURE;
};
#undef INTERFACE
#ifdef COBJMACROS
#define IOleItemContainer_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IOleItemContainer_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IOleItemContainer_Release(T) (T)->lpVtbl->Release(T)
#define IOleItemContainer_ParseDisplayName(T,a,b,c,d) (T)->lpVtbl->ParseDisplayName(T,a,b,c,d)
#define IOleItemContainer_EnumObjects(T,a,b) (T)->lpVtbl->EnumObjects(T,a,b)
#define IOleItemContainer_LockContainer(T,a) (T)->lpVtbl->LockContainer(T,a)
#define IOleItemContainer_GetObject(T,a,b,c,d,e) (T)->lpVtbl->GetObject(T,a,b,c,d,e)
#define IOleItemContainer_GetObjectStorage(T,a,b,c,d) (T)->lpVtbl->GetObjectStorage(T,a,b,c,d)
#define IOleItemContainer_IsRunning(T,a) (T)->lpVtbl->IsRunning(T,a)
#endif
EXTERN_C const IID IID_IOleClientSite;
#define INTERFACE IOleClientSite
DECLARE_INTERFACE_(IOleClientSite,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(SaveObject)(THIS) PURE;
STDMETHOD(GetMoniker)(THIS_ DWORD,DWORD,LPMONIKER*) PURE;
STDMETHOD(GetContainer)(THIS_ LPOLECONTAINER*) PURE;
STDMETHOD(ShowObject)(THIS) PURE;
STDMETHOD(OnShowWindow)(THIS_ BOOL) PURE;
STDMETHOD(RequestNewObjectLayout)(THIS) PURE;
};
#undef INTERFACE
#ifdef COBJMACROS
#define IOleClientSite_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IOleClientSite_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IOleClientSite_Release(T) (T)->lpVtbl->Release(T)
#define IOleClientSite_SaveObject(T) (T)->lpVtbl->SaveObject(T)
#define IOleClientSite_GetMoniker(T,a,b,c) (T)->lpVtbl->GetMoniker(T,a,b,c)
#define IOleClientSite_GetContainer(T,a) (T)->lpVtbl->GetContainer(T,a)
#define IOleClientSite_ShowObject(T) (T)->lpVtbl->ShowObject(T)
#define IOleClientSite_OnShowWindow(T,a) (T)->lpVtbl->OnShowWindow(T,a)
#define IOleClientSite_RequestNewObjectLayout(T) (T)->lpVtbl->RequestNewObjectLayout(T)
#endif
EXTERN_C const IID IID_IOleObject;
#define INTERFACE IOleObject
DECLARE_INTERFACE_(IOleObject,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(SetClientSite)(THIS_ LPOLECLIENTSITE) PURE;
STDMETHOD(GetClientSite)(THIS_ LPOLECLIENTSITE*) PURE;
STDMETHOD(SetHostNames)(THIS_ LPCOLESTR,LPCOLESTR) PURE;
STDMETHOD(Close)(THIS_ DWORD) PURE;
STDMETHOD(SetMoniker)(THIS_ DWORD,LPMONIKER) PURE;
STDMETHOD(GetMoniker)(THIS_ DWORD,DWORD,LPMONIKER*) PURE;
STDMETHOD(InitFromData)(THIS_ LPDATAOBJECT,BOOL,DWORD) PURE;
STDMETHOD(GetClipboardData)(THIS_ DWORD,LPDATAOBJECT*) PURE;
STDMETHOD(DoVerb)(THIS_ LONG,LPMSG,LPOLECLIENTSITE,LONG,HWND,LPCRECT) PURE;
STDMETHOD(EnumVerbs)(THIS_ LPENUMOLEVERB*) PURE;
STDMETHOD(Update)(THIS) PURE;
STDMETHOD(IsUpToDate)(THIS) PURE;
STDMETHOD(GetUserClassID)(THIS_ LPCLSID) PURE;
STDMETHOD(GetUserType)(THIS_ DWORD,LPOLESTR*) PURE;
STDMETHOD(SetExtent)(THIS_ DWORD,SIZEL*) PURE;
STDMETHOD(GetExtent)(THIS_ DWORD,SIZEL*) PURE;
STDMETHOD(Advise)(THIS_ LPADVISESINK,PDWORD) PURE;
STDMETHOD(Unadvise)(THIS_ DWORD) PURE;
STDMETHOD(EnumAdvise)(THIS_ LPENUMSTATDATA*) PURE;
STDMETHOD(GetMiscStatus)(THIS_ DWORD,PDWORD) PURE;
STDMETHOD(SetColorScheme)(THIS_ LPLOGPALETTE) PURE;
};
#undef INTERFACE
#ifdef COBJMACROS
#define IOleObject_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IOleObject_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IOleObject_Release(T) (T)->lpVtbl->Release(T)
#define IOleObject_SetClientSite(T,a) (T)->lpVtbl->SetClientSite(T,a)
#define IOleObject_GetClientSite(T,a) (T)->lpVtbl->GetClientSite(T,a)
#define IOleObject_SetHostNames(T,a,b) (T)->lpVtbl->SetHostNames(T,a,b)
#define IOleObject_Close(T,a) (T)->lpVtbl->Close(T,a)
#define IOleObject_SetMoniker(T,a,b) (T)->lpVtbl->SetMoniker(T,a,b)
#define IOleObject_GetMoniker(T,a,b,c) (T)->lpVtbl->GetMoniker(T,a,b,c)
#define IOleObject_InitFromData(T,a,b,c) (T)->lpVtbl->InitFromData(T,a,b,c)
#define IOleObject_GetClipboardData(T,a,b) (T)->lpVtbl->GetClipboardData(T,a,b)
#define IOleObject_DoVerb(T,a,b,c,d,e,f) (T)->lpVtbl->DoVerb(T,a,b,c,d,e,f)
#define IOleObject_EnumVerbs(T,a) (T)->lpVtbl->EnumVerbs(T,a)
#define IOleObject_Update(T) (T)->lpVtbl->Update(T)
#define IOleObject_IsUpToDate(T) (T)->lpVtbl->IsUpToDate(T)
#define IOleObject_GetUserClassID(T,a) (T)->lpVtbl->GetUserClassID(T,a)
#define IOleObject_GetUserType(T,a,b) (T)->lpVtbl->GetUserType(T,a,b)
#define IOleObject_SetExtent(T,a,b) (T)->lpVtbl->SetExtent(T,a,b)
#define IOleObject_GetExtent(T,a,b) (T)->lpVtbl->GetExtent(T,a,b)
#define IOleObject_Advise(T,a,b) (T)->lpVtbl->Advise(T,a,b)
#define IOleObject_Unadvise(T,a) (T)->lpVtbl->Unadvise(T,a)
#define IOleObject_EnumAdvise(T,a) (T)->lpVtbl->EnumAdvise(T,a)
#define IOleObject_GetMiscStatus(T,a,b) (T)->lpVtbl->GetMiscStatus(T,a,b)
#define IOleObject_SetColorScheme(T,a) (T)->lpVtbl->SetColorScheme(T,a)
#endif
EXTERN_C const IID IID_IOleWindow;
#define INTERFACE IOleWindow
DECLARE_INTERFACE_(IOleWindow,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
};
#undef INTERFACE
#ifdef COBJMACROS
#define IOleWindow_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IOleWindow_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IOleWindow_Release(T) (T)->lpVtbl->Release(T)
#define IOleWindow_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
#define IOleWindow_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
#endif
EXTERN_C const IID IID_IOleInPlaceUIWindow;
#define INTERFACE IOleInPlaceUIWindow
DECLARE_INTERFACE_(IOleInPlaceUIWindow,IOleWindow)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
STDMETHOD(GetBorder)(THIS_ LPRECT) PURE;
STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
STDMETHOD(SetActiveObject)(THIS_ LPOLEINPLACEACTIVEOBJECT,LPCOLESTR) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IOleInPlaceObject;
#define INTERFACE IOleInPlaceObject
DECLARE_INTERFACE_(IOleInPlaceObject,IOleWindow)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
STDMETHOD(InPlaceDeactivate)(THIS) PURE;
STDMETHOD(UIDeactivate)(THIS) PURE;
STDMETHOD(SetObjectRects)(THIS_ LPCRECT,LPCRECT) PURE;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?