⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 objidl.h

📁 winNT技术操作系统,国外开放的原代码和LIUX一样
💻 H
📖 第 1 页 / 共 5 页
字号:
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 + -