1 | #include <rpc.h>
|
---|
2 | #include <rpcndr.h>
|
---|
3 |
|
---|
4 | #ifndef _WTYPES_H
|
---|
5 | #define _WTYPES_H
|
---|
6 | #if __GNUC__ >=3
|
---|
7 | #pragma GCC system_header
|
---|
8 | #endif
|
---|
9 |
|
---|
10 | #ifdef __cplusplus
|
---|
11 | extern "C" {
|
---|
12 | #endif
|
---|
13 |
|
---|
14 | #define IID_NULL GUID_NULL
|
---|
15 | #define CLSID_NULL GUID_NULL
|
---|
16 | #define CBPCLIPDATA(d) ((d).cbSize-sizeof((d).ulClipFmt))
|
---|
17 | #define ROTFLAGS_REGISTRATIONKEEPSALIVE 0x01
|
---|
18 | #define ROTFLAGS_ALLOWANYCLIENT 0x02
|
---|
19 |
|
---|
20 | #ifndef __BLOB_T_DEFINED /* also in winsock2.h */
|
---|
21 | #define __BLOB_T_DEFINED
|
---|
22 | typedef struct _BLOB {
|
---|
23 | ULONG cbSize;
|
---|
24 | BYTE *pBlobData;
|
---|
25 | } BLOB,*PBLOB,*LPBLOB;
|
---|
26 | #endif
|
---|
27 | typedef enum tagDVASPECT {
|
---|
28 | DVASPECT_CONTENT=1,
|
---|
29 | DVASPECT_THUMBNAIL=2,
|
---|
30 | DVASPECT_ICON=4,
|
---|
31 | DVASPECT_DOCPRINT=8
|
---|
32 | } DVASPECT;
|
---|
33 | typedef enum tagDVASPECT2 {
|
---|
34 | DVASPECT_OPAQUE=16,
|
---|
35 | DVASPECT_TRANSPARENT=32
|
---|
36 | } DVASPECT2;
|
---|
37 | typedef enum tagSTATFLAG {
|
---|
38 | STATFLAG_DEFAULT=0,
|
---|
39 | STATFLAG_NONAME=1
|
---|
40 | } STATFLAG;
|
---|
41 | typedef enum tagMEMCTX {
|
---|
42 | MEMCTX_LOCAL=0,
|
---|
43 | MEMCTX_TASK,
|
---|
44 | MEMCTX_SHARED,
|
---|
45 | MEMCTX_MACSYSTEM,
|
---|
46 | MEMCTX_UNKNOWN=-1,
|
---|
47 | MEMCTX_SAME=-2
|
---|
48 | } MEMCTX;
|
---|
49 | typedef enum tagMSHCTX {
|
---|
50 | MSHCTX_LOCAL=0,
|
---|
51 | MSHCTX_NOSHAREDMEM,
|
---|
52 | MSHCTX_DIFFERENTMACHINE,
|
---|
53 | MSHCTX_INPROC,
|
---|
54 | MSHCTX_CROSSCTX
|
---|
55 | } MSHCTX;
|
---|
56 | typedef enum tagCLSCTX {
|
---|
57 | CLSCTX_INPROC_SERVER=1,CLSCTX_INPROC_HANDLER=2,CLSCTX_LOCAL_SERVER=4,
|
---|
58 | CLSCTX_INPROC_SERVER16=8,CLSCTX_REMOTE_SERVER=16
|
---|
59 | } CLSCTX;
|
---|
60 | typedef enum tagMSHLFLAGS {
|
---|
61 | MSHLFLAGS_NORMAL,MSHLFLAGS_TABLESTRONG,MSHLFLAGS_TABLEWEAK
|
---|
62 | } MSHLFLAGS;
|
---|
63 | typedef struct _FLAGGED_WORD_BLOB {
|
---|
64 | unsigned long fFlags;
|
---|
65 | unsigned long clSize;
|
---|
66 | unsigned short asData[1];
|
---|
67 | }FLAGGED_WORD_BLOB;
|
---|
68 |
|
---|
69 | #ifndef OLE2ANSI
|
---|
70 | typedef WCHAR OLECHAR;
|
---|
71 | typedef LPWSTR LPOLESTR;
|
---|
72 | typedef LPCWSTR LPCOLESTR;
|
---|
73 | #define OLESTR(s) L##s
|
---|
74 | #else
|
---|
75 | typedef char OLECHAR;
|
---|
76 | typedef LPSTR LPOLESTR;
|
---|
77 | typedef LPCSTR LPCOLESTR;
|
---|
78 | #define OLESTR(s) s
|
---|
79 | #endif
|
---|
80 | typedef unsigned short VARTYPE;
|
---|
81 | typedef short VARIANT_BOOL;
|
---|
82 | typedef VARIANT_BOOL _VARIANT_BOOL;
|
---|
83 | #define VARIANT_TRUE ((VARIANT_BOOL)0xffff)
|
---|
84 | #define VARIANT_FALSE ((VARIANT_BOOL)0)
|
---|
85 | typedef OLECHAR *BSTR;
|
---|
86 | typedef FLAGGED_WORD_BLOB *wireBSTR;
|
---|
87 | typedef BSTR *LPBSTR;
|
---|
88 | typedef LONG SCODE;
|
---|
89 | typedef void *HCONTEXT;
|
---|
90 | typedef union tagCY {
|
---|
91 | _ANONYMOUS_STRUCT struct {
|
---|
92 | unsigned long Lo;
|
---|
93 | long Hi;
|
---|
94 | }_STRUCT_NAME(s);
|
---|
95 | LONGLONG int64;
|
---|
96 | } CY;
|
---|
97 | typedef double DATE;
|
---|
98 | typedef struct tagBSTRBLOB {
|
---|
99 | ULONG cbSize;
|
---|
100 | PBYTE pData;
|
---|
101 | }BSTRBLOB;
|
---|
102 | typedef struct tagBSTRBLOB *LPBSTRBLOB;
|
---|
103 | typedef struct tagCLIPDATA {
|
---|
104 | ULONG cbSize;
|
---|
105 | long ulClipFmt;
|
---|
106 | PBYTE pClipData;
|
---|
107 | }CLIPDATA;
|
---|
108 | typedef enum tagSTGC {
|
---|
109 | STGC_DEFAULT,STGC_OVERWRITE,STGC_ONLYIFCURRENT,
|
---|
110 | STGC_DANGEROUSLYCOMMITMERELYTODISKCACHE
|
---|
111 | }STGC;
|
---|
112 | typedef enum tagSTGMOVE {
|
---|
113 | STGMOVE_MOVE,STGMOVE_COPY,STGMOVE_SHALLOWCOPY
|
---|
114 | }STGMOVE;
|
---|
115 | enum VARENUM {
|
---|
116 | VT_EMPTY,VT_NULL,VT_I2,VT_I4,VT_R4,VT_R8,VT_CY,VT_DATE,VT_BSTR,VT_DISPATCH,
|
---|
117 | VT_ERROR,VT_BOOL,VT_VARIANT,VT_UNKNOWN,VT_DECIMAL,VT_I1=16,VT_UI1,VT_UI2,VT_UI4,VT_I8,
|
---|
118 | VT_UI8,VT_INT,VT_UINT,VT_VOID,VT_HRESULT,VT_PTR,VT_SAFEARRAY,VT_CARRAY,VT_USERDEFINED,
|
---|
119 | VT_LPSTR,VT_LPWSTR,VT_RECORD=36,VT_INT_PTR=37,VT_UINT_PTR=38,VT_FILETIME=64,VT_BLOB,VT_STREAM,VT_STORAGE,VT_STREAMED_OBJECT,
|
---|
120 | VT_STORED_OBJECT,VT_BLOB_OBJECT,VT_CF,VT_CLSID,VT_BSTR_BLOB=0xfff,VT_VECTOR=0x1000,
|
---|
121 | VT_ARRAY=0x2000,VT_BYREF=0x4000,VT_RESERVED=0x8000,VT_ILLEGAL= 0xffff,VT_ILLEGALMASKED=0xfff,
|
---|
122 | VT_TYPEMASK=0xfff
|
---|
123 | };
|
---|
124 |
|
---|
125 | typedef struct _BYTE_SIZEDARR {
|
---|
126 | unsigned long clSize;
|
---|
127 | byte *pData;
|
---|
128 | }BYTE_SIZEDARR;
|
---|
129 | typedef struct _SHORT_SIZEDARR {
|
---|
130 | unsigned long clSize;
|
---|
131 | unsigned short *pData;
|
---|
132 | }WORD_SIZEDARR;
|
---|
133 | typedef struct _LONG_SIZEDARR {
|
---|
134 | unsigned long clSize;
|
---|
135 | unsigned long *pData;
|
---|
136 | }DWORD_SIZEDARR;
|
---|
137 | typedef struct _HYPER_SIZEDARR {
|
---|
138 | unsigned long clSize;
|
---|
139 | hyper *pData;
|
---|
140 | }HYPER_SIZEDARR;
|
---|
141 | typedef double DOUBLE;
|
---|
142 | typedef struct tagDEC {
|
---|
143 | USHORT wReserved;
|
---|
144 | _ANONYMOUS_UNION union {
|
---|
145 | _ANONYMOUS_STRUCT struct {
|
---|
146 | BYTE scale;
|
---|
147 | BYTE sign;
|
---|
148 | }_STRUCT_NAME(s);
|
---|
149 | USHORT signscale;
|
---|
150 | } DUMMYUNIONNAME;
|
---|
151 | ULONG Hi32;
|
---|
152 | _ANONYMOUS_UNION union {
|
---|
153 | _ANONYMOUS_STRUCT struct {
|
---|
154 | ULONG Lo32;
|
---|
155 | ULONG Mid32;
|
---|
156 | }_STRUCT_NAME(s2);
|
---|
157 | ULONGLONG Lo64;
|
---|
158 | } DUMMYUNIONNAME2;
|
---|
159 | } DECIMAL;
|
---|
160 | typedef DECIMAL *LPDECIMAL;
|
---|
161 | #define DECIMAL_NEG ((BYTE)0x80)
|
---|
162 | #ifdef NONAMELESSUNION
|
---|
163 | #define DECIMAL_SETZERO(d) {(d).DUMMYUNIONNAME2.Lo64=(d).Hi32=(d).DUMMYUNIONNAME.signscale=0;}
|
---|
164 | #else
|
---|
165 | #define DECIMAL_SETZERO(d) {(d).Lo64=(d).Hi32=(d).signscale=0;}
|
---|
166 | #endif
|
---|
167 | typedef void *HMETAFILEPICT;
|
---|
168 | #ifdef __cplusplus
|
---|
169 | }
|
---|
170 | #endif
|
---|
171 | #endif
|
---|