📄 objidl.h
字号:
typedef struct tagCAUH {
ULONG cElems;
ULARGE_INTEGER *pElems;
}CAUH;
typedef struct tagCALPSTR {
ULONG cElems;
LPSTR *pElems;
}CALPSTR;
typedef struct tagCALPWSTR {
ULONG cElems;
LPWSTR *pElems;
}CALPWSTR;
typedef struct tagCAFILETIME {
ULONG cElems;
FILETIME *pElems;
}CAFILETIME;
typedef struct tagCACLIPDATA {
ULONG cElems;
CLIPDATA *pElems;
}CACLIPDATA;
typedef struct tagCACLSID {
ULONG cElems;
CLSID *pElems;
}CACLSID;
typedef struct tagPROPVARIANT *LPPROPVARIANT;
typedef struct tagCAPROPVARIANT {
ULONG cElems;
LPPROPVARIANT pElems;
}CAPROPVARIANT;
typedef struct tagPROPVARIANT {
VARTYPE vt;
WORD wReserved1;
WORD wReserved2;
WORD wReserved3;
_ANONYMOUS_UNION union {
CHAR cVal;
UCHAR bVal;
short iVal;
USHORT uiVal;
VARIANT_BOOL boolVal;
#if 0
/* bool is a standard type in C++, and a standard macro expanding
to the _Bool type in C99 (see stdbool.h) */
_VARIANT_BOOL bool;
#endif
long lVal;
ULONG ulVal;
float fltVal;
SCODE scode;
LARGE_INTEGER hVal;
ULARGE_INTEGER uhVal;
double dblVal;
CY cyVal;
DATE date;
FILETIME filetime;
CLSID *puuid;
BLOB blob;
CLIPDATA *pclipdata;
LPSTREAM pStream;
LPSTORAGE pStorage;
BSTR bstrVal;
BSTRBLOB bstrblobVal;
LPSTR pszVal;
LPWSTR pwszVal;
CAUB caub;
CAI cai;
CAUI caui;
CABOOL cabool;
CAL cal;
CAUL caul;
CAFLT caflt;
CASCODE cascode;
CAH cah;
CAUH cauh;
CADBL cadbl;
CACY cacy;
CADATE cadate;
CAFILETIME cafiletime;
CACLSID cauuid;
CACLIPDATA caclipdata;
CABSTR cabstr;
CABSTRBLOB cabstrblob;
CALPSTR calpstr;
CALPWSTR calpwstr;
CAPROPVARIANT capropvar;
} DUMMYUNIONNAME;
} PROPVARIANT;
typedef struct tagPROPSPEC {
ULONG ulKind;
_ANONYMOUS_UNION union {
PROPID propid;
LPOLESTR lpwstr;
} DUMMYUNIONNAME;
}PROPSPEC;
typedef struct tagSTATPROPSTG {
LPOLESTR lpwstrName;
PROPID propid;
VARTYPE vt;
} STATPROPSTG;
typedef enum PROPSETFLAG {
PROPSETFLAG_DEFAULT,PROPSETFLAG_NONSIMPLE,PROPSETFLAG_ANSI,
PROPSETFLAG_UNBUFFERED=4
} PROPSETFLAG;
typedef struct tagSTORAGELAYOUT {
DWORD LayoutType;
OLECHAR* pwcsElementName;
LARGE_INTEGER cOffset;
LARGE_INTEGER cBytes;
} STORAGELAYOUT;
typedef struct tagSOLE_AUTHENTICATION_SERVICE {
DWORD dwAuthnSvc;
DWORD dwAuthzSvc;
OLECHAR *pPrincipalName;
HRESULT hr;
} SOLE_AUTHENTICATION_SERVICE;
#define COLE_DEFAULT_PRINCIPAL ( ( OLECHAR* )-1 )
typedef enum tagEOLE_AUTHENTICATION_CAPABILITIES {
EOAC_NONE = 0,
EOAC_MUTUAL_AUTH = 0x1,
EOAC_STATIC_CLOAKING = 0x20,
EOAC_DYNAMIC_CLOAKING = 0x40,
EOAC_ANY_AUTHORITY = 0x80,
EOAC_MAKE_FULLSIC = 0x100,
EOAC_DEFAULT = 0x800,
EOAC_SECURE_REFS = 0x2,
EOAC_ACCESS_CONTROL = 0x4,
EOAC_APPID = 0x8,
EOAC_DYNAMIC = 0x10,
EOAC_REQUIRE_FULLSIC = 0x200,
EOAC_AUTO_IMPERSONATE = 0x400,
EOAC_NO_CUSTOM_MARSHAL = 0x2000,
EOAC_DISABLE_AAA = 0x1000
} EOLE_AUTHENTICATION_CAPABILITIES;
typedef struct tagSOLE_AUTHENTICATION_INFO {
DWORD dwAuthnSvc;
DWORD dwAuthzSvc;
void* pAuthInfo;
} SOLE_AUTHENTICATION_INFO;
#define COLE_DEFAULT_AUTHINFO ( ( void* )-1 )
typedef struct tagSOLE_AUTHENTICATION_LIST {
DWORD cAuthInfo;
SOLE_AUTHENTICATION_INFO* aAuthInfo;
} SOLE_AUTHENTICATION_LIST;
EXTERN_C const FMTID FMTID_SummaryInformation;
EXTERN_C const FMTID FMTID_DocSummaryInformation;
EXTERN_C const FMTID FMTID_UserDefinedProperties;
DECLARE_ENUMERATOR(FORMATETC);
DECLARE_ENUMERATOR(STATDATA);
DECLARE_ENUMERATOR(STATPROPSETSTG);
DECLARE_ENUMERATOR(STATPROPSTG);
DECLARE_ENUMERATOR(STATSTG);
DECLARE_ENUMERATOR_(IEnumString,LPOLESTR);
DECLARE_ENUMERATOR_(IEnumMoniker,interface IMoniker*);
DECLARE_ENUMERATOR_(IEnumUnknown,IUnknown*);
EXTERN_C const IID IID_ISequentialStream;
#define INTERFACE ISequentialStream
DECLARE_INTERFACE_(ISequentialStream,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Read)(THIS_ void*,ULONG,ULONG*) PURE;
STDMETHOD(Write)(THIS_ void const*,ULONG,ULONG*) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IStream;
#define INTERFACE IStream
DECLARE_INTERFACE_(IStream,ISequentialStream)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Read)(THIS_ void*,ULONG,ULONG*) PURE;
STDMETHOD(Write)(THIS_ void const*,ULONG,ULONG*) PURE;
STDMETHOD(Seek)(THIS_ LARGE_INTEGER,DWORD,ULARGE_INTEGER*) PURE;
STDMETHOD(SetSize)(THIS_ ULARGE_INTEGER) PURE;
STDMETHOD(CopyTo)(THIS_ IStream*,ULARGE_INTEGER,ULARGE_INTEGER*,ULARGE_INTEGER*) PURE;
STDMETHOD(Commit)(THIS_ DWORD) PURE;
STDMETHOD(Revert)(THIS) PURE;
STDMETHOD(LockRegion)(THIS_ ULARGE_INTEGER,ULARGE_INTEGER,DWORD) PURE;
STDMETHOD(UnlockRegion)(THIS_ ULARGE_INTEGER,ULARGE_INTEGER,DWORD) PURE;
STDMETHOD(Stat)(THIS_ STATSTG*,DWORD) PURE;
STDMETHOD(Clone)(THIS_ LPSTREAM*) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IMarshal;
#define INTERFACE IMarshal
DECLARE_INTERFACE_(IMarshal,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetUnmarshalClass) (THIS_ REFIID,PVOID,DWORD,PVOID,DWORD,CLSID*) PURE;
STDMETHOD(GetMarshalSizeMax) (THIS_ REFIID,PVOID,DWORD,PVOID,DWORD,PULONG) PURE;
STDMETHOD(MarshalInterface) (THIS_ IStream*,REFIID,PVOID,DWORD,PVOID,DWORD) PURE;
STDMETHOD(UnmarshalInterface) (THIS_ IStream*,REFIID,void**) PURE;
STDMETHOD(ReleaseMarshalData) (THIS_ IStream*) PURE;
STDMETHOD(DisconnectObject) (THIS_ DWORD) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IStdMarshalInfo;
#define INTERFACE IStdMarshalInfo
DECLARE_INTERFACE_(IStdMarshalInfo,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetClassForHandler)(THIS_ DWORD,PVOID,CLSID*) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IMalloc;
#define INTERFACE IMalloc
DECLARE_INTERFACE_(IMalloc,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD_(void*,Alloc)(THIS_ ULONG) PURE;
STDMETHOD_(void*,Realloc)(THIS_ void*,ULONG) PURE;
STDMETHOD_(void,Free)(THIS_ void*) PURE;
STDMETHOD_(ULONG,GetSize)(THIS_ void*) PURE;
STDMETHOD_(int,DidAlloc)(THIS_ void*) PURE;
STDMETHOD_(void,HeapMinimize)(THIS) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IMallocSpy;
#define INTERFACE IMallocSpy
DECLARE_INTERFACE_(IMallocSpy,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD_(ULONG,PreAlloc)(THIS_ ULONG) PURE;
STDMETHOD_(void*,PostAlloc)(THIS_ void*) PURE;
STDMETHOD_(void*,PreFree)(THIS_ void*,BOOL) PURE;
STDMETHOD_(void,PostFree)(THIS_ BOOL) PURE;
STDMETHOD_(ULONG,PreRealloc)(THIS_ void*,ULONG,void**,BOOL) PURE;
STDMETHOD_(void*,PostRealloc)(THIS_ void*,BOOL) PURE;
STDMETHOD_(void*,PreGetSize)(THIS_ void*,BOOL) PURE;
STDMETHOD_(ULONG,PostGetSize)(THIS_ ULONG,BOOL) PURE;
STDMETHOD_(void*,PreDidAlloc)(THIS_ void*,BOOL) PURE;
STDMETHOD_(int,PostDidAlloc)(THIS_ void*,BOOL,int) PURE;
STDMETHOD_(void,PreHeapMinimize)(THIS) PURE;
STDMETHOD_(void,PostHeapMinimize)(THIS) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IMessageFilter;
#define INTERFACE IMessageFilter
DECLARE_INTERFACE_(IMessageFilter,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD_(DWORD,HandleInComingCall)(THIS_ DWORD,HTASK,DWORD,LPINTERFACEINFO) PURE;
STDMETHOD_(DWORD,RetryRejectedCall)(THIS_ HTASK,DWORD,DWORD) PURE;
STDMETHOD_(DWORD,MessagePending)(THIS_ HTASK,DWORD,DWORD) PURE;
};
#undef INTERFACE
EXTERN_C const IID IID_IPersist;
#define INTERFACE IPersist
DECLARE_INTERFACE_(IPersist,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetClassID)(THIS_ CLSID*) PURE;
};
#undef INTERFACE
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -