📄 wtypes.h
字号:
#ifndef _WTYPES_H#define _WTYPES_H#include <rpc.h>#include <rpcndr.h>#ifdef __cplusplusextern "C" {#endif#define IID_NULL GUID_NULL#define CLSID_NULL GUID_NULL#define CBPCLIPDATA(d) ((d).cbSize-sizeof((d).ulClipFmt))#define DECIMAL_NEG ((BYTE)0x80)#define DECIMAL_SETZERO(d) {(dec).Lo64=(dec).Hi32=(dec).signscale=0;}typedef struct _BLOB { ULONG cbSize; BYTE *pBlobData;} BLOB;typedef enum tagDVASPECT { DVASPECT_CONTENT=1, DVASPECT_THUMBNAIL=2, DVASPECT_ICON=4, DVASPECT_DOCPRINT=8} DVASPECT;typedef enum tagDVASPECT2 { DVASPECT_OPAQUE=16, DVASPECT_TRANSPARENT=32} DVASPECT2;typedef enum tagSTATFLAG { STATFLAG_DEFAULT=0, STATFLAG_NONAME=1} STATFLAG;typedef enum tagMEMCTX { MEMCTX_TASK=1, MEMCTX_SHARED, MEMCTX_MACSYSTEM, MEMCTX_UNKNOWN=-1, MEMCTX_SAME=-2} MEMCTX;typedef enum tagMSHCTX { MSHCTX_LOCAL, MSHCTX_NOSHAREDMEM, MSHCTX_DIFFERENTMACHINE, MSHCTX_INPROC} MSHCTX;typedefenum tagCLSCTX { CLSCTX_INPROC_SERVER=1,CLSCTX_INPROC_HANDLER=2,CLSCTX_LOCAL_SERVER=4, CLSCTX_INPROC_SERVER16=8} CLSCTX;typedef enum tagMSHLFLAGS { MSHLFLAGS_NORMAL,MSHLFLAGS_TABLESTRONG,MSHLFLAGS_TABLEWEAK} MSHLFLAGS;typedef struct _FLAGGED_WORD_BLOB { unsigned long fFlags; unsigned long clSize; unsigned short asData[1];}FLAGGED_WORD_BLOB;#ifndef OLE2ANSItypedef WCHAR OLECHAR;typedef LPWSTR LPOLESTR;typedef LPCWSTR LPCOLESTR;#define OLESTR(s) L##s#elsetypedef char OLECHAR;typedef LPSTR LPOLESTR;typedef LPCSTR LPCOLESTR;#define OLESTR(s) s#endiftypedef unsigned short VARTYPE;typedef short VARIANT_BOOL;typedef VARIANT_BOOL _VARIANT_BOOL;#define VARIANT_TRUE ((VARIANT_BOOL)0xffff)#define VARIANT_FALSE ((VARIANT_BOOL)0)typedef OLECHAR *BSTR;typedef FLAGGED_WORD_BLOB *wireBSTR;typedef BSTR *LPBSTR;typedef LONG SCODE;typedef void *HCONTEXT;typedef union tagCY { struct { unsigned long Lo; long Hi; }_STRUCT_NAME(s); LONGLONG int64;} CY;typedef double DATE;typedef struct tagBSTRBLOB { ULONG cbSize; PBYTE pData;}BSTRBLOB;typedef struct tagBSTRBLOB *LPBSTRBLOB;typedef struct tagCLIPDATA { ULONG cbSize; long ulClipFmt; PBYTE pClipData;}CLIPDATA;typedef enum tagSTGC { STGC_DEFAULT,STGC_OVERWRITE,STGC_ONLYIFCURRENT, STGC_DANGEROUSLYCOMMITMERELYTODISKCACHE}STGC;typedef enum tagSTGMOVE { STGMOVE_MOVE,STGMOVE_COPY,STGMOVE_SHALLOWCOPY}STGMOVE;enum VARENUM { VT_EMPTY,VT_NULL,VT_I2,VT_I4,VT_R4,VT_R8,VT_CY,VT_DATE,VT_BSTR,VT_DISPATCH, VT_ERROR,VT_BOOL,VT_VARIANT,VT_UNKNOWN,VT_DECIMAL,VT_I1,VT_UI1,VT_UI2,VT_UI4,VT_I8, VT_UI8,VT_INT,VT_UINT,VT_VOID,VT_HRESULT,VT_PTR,VT_SAFEARRAY,VT_CARRAY,VT_USERDEFINED, VT_LPSTR,VT_LPWSTR,VT_FILETIME=64,VT_BLOB,VT_STREAM,VT_STORAGE,VT_STREAMED_OBJECT, VT_STORED_OBJECT,VT_BLOB_OBJECT,VT_CF,VT_CLSID,VT_BSTR_BLOB=0xfff,VT_VECTOR=0x1000, VT_ARRAY=0x2000,VT_BYREF=0x4000,VT_RESERVED=0x8000,VT_ILLEGAL= 0xffff,VT_ILLEGALMASKED=0xfff, VT_TYPEMASK=0xfff};typedef struct _BYTE_SIZEDARR { unsigned long clSize; byte *pData;}BYTE_SIZEDARR;typedef struct _SHORT_SIZEDARR { unsigned long clSize; unsigned short *pData;}WORD_SIZEDARR;typedef struct _LONG_SIZEDARR { unsigned long clSize; unsigned long *pData;}DWORD_SIZEDARR;typedef struct _HYPER_SIZEDARR { unsigned long clSize; hyper *pData;}HYPER_SIZEDARR;typedef double DOUBLE;typedef struct tagDEC { USHORT wReserved; union { struct { BYTE scale; BYTE sign; }_STRUCT_NAME(s); USHORT signscale; } DUMMYUNIONNAME; ULONG Hi32; union { struct { ULONG Lo32; ULONG Mid32; }_STRUCT_NAME(s2); ULONGLONG Lo64; } DUMMYUNIONNAME2;} DECIMAL;#ifdef __cplusplus}#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -