1 /*** Autogenerated by WIDL 6.4 from include/wtypesbase.idl - Do not edit ***/
2 
3 #ifdef _WIN32
4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
6 #endif
7 #include <rpc.h>
8 #include <rpcndr.h>
9 #endif
10 
11 #ifndef COM_NO_WINDOWS_H
12 #include <windows.h>
13 #include <ole2.h>
14 #endif
15 
16 #ifndef __wtypesbase_h__
17 #define __wtypesbase_h__
18 
19 /* Forward declarations */
20 
21 /* Headers for imported files */
22 
23 #include <basetsd.h>
24 #include <guiddef.h>
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 /**
31  * This file is part of the mingw-w64 runtime package.
32  * No warranty is given; refer to the file DISCLAIMER within this package.
33  */
34 
35 
36 /*****************************************************************************
37  * IWinTypesBase interface (v0.1)
38  */
39 #ifndef __IWinTypesBase_INTERFACE_DEFINED__
40 #define __IWinTypesBase_INTERFACE_DEFINED__
41 
42 extern RPC_IF_HANDLE IWinTypesBase_v0_1_c_ifspec;
43 extern RPC_IF_HANDLE IWinTypesBase_v0_1_s_ifspec;
44 
45 #if 0
46 typedef byte BYTE;
47 typedef unsigned short WORD;
48 typedef unsigned int UINT;
49 typedef int INT;
50 typedef LONG WINBOOL;
51 typedef LONG LONG;
52 typedef ULONG DWORD;
53 typedef void *HANDLE;
54 typedef WORD *LPWORD;
55 typedef DWORD *LPDWORD;
56 typedef char CHAR;
57 typedef CHAR *LPSTR;
58 typedef const CHAR *LPCSTR;
59 typedef wchar_t WCHAR;
60 typedef WCHAR TCHAR;
61 typedef WCHAR *LPWSTR;
62 typedef TCHAR *LPTSTR;
63 typedef const WCHAR *LPCWSTR;
64 typedef const TCHAR *LPCTSTR;
65 typedef HANDLE *LPHANDLE;
66 #endif
67 
68 #if !defined(OLE2ANSI)
69 typedef WCHAR OLECHAR;
70 typedef OLECHAR *LPOLESTR;
71 typedef const OLECHAR *LPCOLESTR;
72 
73 #define OLESTR(str) L##str
74 #else
75 typedef char OLECHAR;
76 typedef LPSTR LPOLESTR;
77 typedef LPCSTR LPCOLESTR;
78 
79 #define OLESTR(str) str
80 #endif
81 
82 #ifndef _WINDEF_
83 #ifndef _MINWINDEF_
84 typedef void *PVOID;
85 typedef void *LPVOID;
86 typedef float FLOAT;
87 #endif
88 #endif
89 
90 typedef unsigned char UCHAR;
91 typedef short SHORT;
92 typedef unsigned short USHORT;
93 typedef DWORD ULONG;
94 typedef double DOUBLE;
95 #ifndef _DWORDLONG_
96 typedef UINT64 DWORDLONG;
97 typedef DWORDLONG *PDWORDLONG;
98 #endif
99 
100 #ifndef _ULONGLONG_
101 typedef INT64 LONGLONG;
102 typedef UINT64 ULONGLONG;
103 typedef LONGLONG *PLONGLONG;
104 typedef ULONGLONG *PULONGLONG;
105 #endif
106 #if 0
107 typedef struct _LARGE_INTEGER {
108     LONGLONG QuadPart;
109 } LARGE_INTEGER;
110 typedef LARGE_INTEGER *PLARGE_INTEGER;
111 typedef struct _ULARGE_INTEGER {
112     ULONGLONG QuadPart;
113 } ULARGE_INTEGER;
114 #endif
115 
116 #ifndef _WINBASE_
117 #ifndef _FILETIME_
118 #define _FILETIME_
119 
120 typedef struct _FILETIME {
121     DWORD dwLowDateTime;
122     DWORD dwHighDateTime;
123 } FILETIME;
124 typedef struct _FILETIME *PFILETIME;
125 typedef struct _FILETIME *LPFILETIME;
126 #endif
127 
128 #ifndef _SYSTEMTIME_
129 #define _SYSTEMTIME_
130 
131 typedef struct _SYSTEMTIME {
132     WORD wYear;
133     WORD wMonth;
134     WORD wDayOfWeek;
135     WORD wDay;
136     WORD wHour;
137     WORD wMinute;
138     WORD wSecond;
139     WORD wMilliseconds;
140 } SYSTEMTIME;
141 typedef struct _SYSTEMTIME *PSYSTEMTIME;
142 typedef struct _SYSTEMTIME *LPSYSTEMTIME;
143 #endif
144 
145 #ifndef _SECURITY_ATTRIBUTES_
146 #define _SECURITY_ATTRIBUTES_
147 
148 typedef struct _SECURITY_ATTRIBUTES {
149     DWORD nLength;
150     LPVOID lpSecurityDescriptor;
151     WINBOOL bInheritHandle;
152 } SECURITY_ATTRIBUTES;
153 typedef struct _SECURITY_ATTRIBUTES *PSECURITY_ATTRIBUTES;
154 typedef struct _SECURITY_ATTRIBUTES *LPSECURITY_ATTRIBUTES;
155 #endif
156 
157 #ifndef SECURITY_DESCRIPTOR_REVISION
158 typedef USHORT SECURITY_DESCRIPTOR_CONTROL;
159 typedef USHORT *PSECURITY_DESCRIPTOR_CONTROL;
160 typedef PVOID PSID;
161 
162 typedef struct _ACL {
163     UCHAR AclRevision;
164     UCHAR Sbz1;
165     USHORT AclSize;
166     USHORT AceCount;
167     USHORT Sbz2;
168 } ACL;
169 
170 typedef ACL *PACL;
171 
172 typedef struct _SECURITY_DESCRIPTOR {
173     UCHAR Revision;
174     UCHAR Sbz1;
175     SECURITY_DESCRIPTOR_CONTROL Control;
176     PSID Owner;
177     PSID Group;
178     PACL Sacl;
179     PACL Dacl;
180 } SECURITY_DESCRIPTOR;
181 typedef struct _SECURITY_DESCRIPTOR *PISECURITY_DESCRIPTOR;
182 #endif
183 #endif
184 
185 typedef struct _COAUTHIDENTITY {
186     USHORT *User;
187     ULONG UserLength;
188     USHORT *Domain;
189     ULONG DomainLength;
190     USHORT *Password;
191     ULONG PasswordLength;
192     ULONG Flags;
193 } COAUTHIDENTITY;
194 
195 typedef struct _COAUTHINFO {
196     DWORD dwAuthnSvc;
197     DWORD dwAuthzSvc;
198     LPWSTR pwszServerPrincName;
199     DWORD dwAuthnLevel;
200     DWORD dwImpersonationLevel;
201     COAUTHIDENTITY *pAuthIdentityData;
202     DWORD dwCapabilities;
203 } COAUTHINFO;
204 
205 typedef LONG SCODE;
206 typedef SCODE *PSCODE;
207 
208 #ifndef _HRESULT_DEFINED
209 #define _HRESULT_DEFINED
210 #ifdef __WIDL__
211 typedef LONG HRESULT;
212 #else
213 typedef __LONG32 HRESULT;
214 #endif
215 #endif
216 
217 #ifndef __OBJECTID_DEFINED
218 #define __OBJECTID_DEFINED
219 #define _OBJECTID_DEFINED
220 
221 typedef struct _OBJECTID {
222     GUID Lineage;
223     ULONG Uniquifier;
224 } OBJECTID;
225 #endif
226 
227 #if 0
228 typedef GUID *REFGUID;
229 typedef IID *REFIID;
230 typedef CLSID *REFCLSID;
231 #endif
232 
233 typedef enum tagMEMCTX {
234     MEMCTX_TASK = 1,
235     MEMCTX_SHARED = 2,
236     MEMCTX_MACSYSTEM = 3,
237     MEMCTX_UNKNOWN = -1,
238     MEMCTX_SAME = -2
239 } MEMCTX;
240 #ifndef _ROTREGFLAGS_DEFINED
241 #define _ROTREGFLAGS_DEFINED
242 
243 #define ROTREGFLAGS_ALLOWANYCLIENT 0x1
244 #endif
245 
246 #ifndef _APPIDREGFLAGS_DEFINED
247 #define _APPIDREGFLAGS_DEFINED
248 
249 #define APPIDREGFLAGS_ACTIVATE_IUSERVER_INDESKTOP 0x1
250 #define APPIDREGFLAGS_SECURE_SERVER_PROCESS_SD_AND_BIND 0x2
251 #define APPIDREGFLAGS_ISSUE_ACTIVATION_RPC_AT_IDENTIFY 0x4
252 #define APPIDREGFLAGS_IUSERVER_UNMODIFIED_LOGON_TOKEN 0x8
253 #define APPIDREGFLAGS_IUSERVER_SELF_SID_IN_LAUNCH_PERMISSION 0x10
254 #define APPIDREGFLAGS_IUSERVER_ACTIVATE_IN_CLIENT_SESSION_ONLY 0x20
255 #define APPIDREGFLAGS_RESERVED1 0x40
256 #endif
257 
258 #ifndef _DCOMSCM_REMOTECALL_FLAGS_DEFINED
259 #define _DCOMSCM_REMOTECALL_FLAGS_DEFINED
260 
261 #define DCOMSCM_ACTIVATION_USE_ALL_AUTHNSERVICES 0x1
262 #define DCOMSCM_ACTIVATION_DISALLOW_UNSECURE_CALL 0x2
263 #define DCOMSCM_RESOLVE_USE_ALL_AUTHNSERVICES 0x4
264 #define DCOMSCM_RESOLVE_DISALLOW_UNSECURE_CALL 0x8
265 #define DCOMSCM_PING_USE_MID_AUTHNSERVICE 0x10
266 #define DCOMSCM_PING_DISALLOW_UNSECURE_CALL 0x20
267 #endif
268 
269 typedef enum tagCLSCTX {
270     CLSCTX_INPROC_SERVER = 0x1,
271     CLSCTX_INPROC_HANDLER = 0x2,
272     CLSCTX_LOCAL_SERVER = 0x4,
273     CLSCTX_INPROC_SERVER16 = 0x8,
274     CLSCTX_REMOTE_SERVER = 0x10,
275     CLSCTX_INPROC_HANDLER16 = 0x20,
276     CLSCTX_RESERVED1 = 0x40,
277     CLSCTX_RESERVED2 = 0x80,
278     CLSCTX_RESERVED3 = 0x100,
279     CLSCTX_RESERVED4 = 0x200,
280     CLSCTX_NO_CODE_DOWNLOAD = 0x400,
281     CLSCTX_RESERVED5 = 0x800,
282     CLSCTX_NO_CUSTOM_MARSHAL = 0x1000,
283     CLSCTX_ENABLE_CODE_DOWNLOAD = 0x2000,
284     CLSCTX_NO_FAILURE_LOG = 0x4000,
285     CLSCTX_DISABLE_AAA = 0x8000,
286     CLSCTX_ENABLE_AAA = 0x10000,
287     CLSCTX_FROM_DEFAULT_CONTEXT = 0x20000,
288     CLSCTX_ACTIVATE_32_BIT_SERVER = 0x40000,
289     CLSCTX_ACTIVATE_64_BIT_SERVER = 0x80000,
290     CLSCTX_ENABLE_CLOAKING = 0x100000,
291     CLSCTX_APPCONTAINER = 0x400000,
292     CLSCTX_ACTIVATE_AAA_AS_IU = 0x800000,
293     CLSCTX_PS_DLL = (int)0x80000000
294 } CLSCTX;
295 
296 #define CLSCTX_VALID_MASK (CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER | CLSCTX_INPROC_SERVER16 | CLSCTX_REMOTE_SERVER | CLSCTX_NO_CODE_DOWNLOAD | CLSCTX_NO_CUSTOM_MARSHAL | CLSCTX_ENABLE_CODE_DOWNLOAD | CLSCTX_NO_FAILURE_LOG | CLSCTX_DISABLE_AAA | CLSCTX_ENABLE_AAA | CLSCTX_FROM_DEFAULT_CONTEXT | CLSCTX_ACTIVATE_32_BIT_SERVER | CLSCTX_ACTIVATE_64_BIT_SERVER | CLSCTX_ENABLE_CLOAKING | CLSCTX_APPCONTAINER | CLSCTX_ACTIVATE_AAA_AS_IU | CLSCTX_PS_DLL)
297 
298 typedef enum tagMSHLFLAGS {
299     MSHLFLAGS_NORMAL = 0,
300     MSHLFLAGS_TABLESTRONG = 1,
301     MSHLFLAGS_TABLEWEAK = 2,
302     MSHLFLAGS_NOPING = 4,
303     MSHLFLAGS_RESERVED1 = 8,
304     MSHLFLAGS_RESERVED2 = 16,
305     MSHLFLAGS_RESERVED3 = 32,
306     MSHLFLAGS_RESERVED4 = 64
307 } MSHLFLAGS;
308 
309 typedef enum tagMSHCTX {
310     MSHCTX_LOCAL = 0,
311     MSHCTX_NOSHAREDMEM = 1,
312     MSHCTX_DIFFERENTMACHINE = 2,
313     MSHCTX_INPROC = 3,
314     MSHCTX_CROSSCTX = 4
315 } MSHCTX;
316 
317 typedef struct _BYTE_BLOB {
318     ULONG clSize;
319     byte abData[1];
320 } BYTE_BLOB;
321 
322 typedef BYTE_BLOB *UP_BYTE_BLOB;
323 
324 typedef struct _WORD_BLOB {
325     ULONG clSize;
326     unsigned short asData[1];
327 } WORD_BLOB;
328 
329 typedef WORD_BLOB *UP_WORD_BLOB;
330 
331 typedef struct _DWORD_BLOB {
332     ULONG clSize;
333     ULONG alData[1];
334 } DWORD_BLOB;
335 
336 typedef DWORD_BLOB *UP_DWORD_BLOB;
337 
338 typedef struct _FLAGGED_BYTE_BLOB {
339     ULONG fFlags;
340     ULONG clSize;
341     byte abData[1];
342 } FLAGGED_BYTE_BLOB;
343 
344 typedef FLAGGED_BYTE_BLOB *UP_FLAGGED_BYTE_BLOB;
345 
346 typedef struct _FLAGGED_WORD_BLOB {
347     ULONG fFlags;
348     ULONG clSize;
349     unsigned short asData[1];
350 } FLAGGED_WORD_BLOB;
351 
352 typedef FLAGGED_WORD_BLOB *UP_FLAGGED_WORD_BLOB;
353 
354 typedef struct _BYTE_SIZEDARR {
355     ULONG clSize;
356     byte *pData;
357 } BYTE_SIZEDARR;
358 
359 typedef struct _SHORT_SIZEDARR {
360     ULONG clSize;
361     unsigned short *pData;
362 } WORD_SIZEDARR;
363 
364 typedef struct _LONG_SIZEDARR {
365     ULONG clSize;
366     ULONG *pData;
367 } DWORD_SIZEDARR;
368 
369 typedef struct _HYPER_SIZEDARR {
370     ULONG clSize;
371     hyper *pData;
372 } HYPER_SIZEDARR;
373 
374 #endif  /* __IWinTypesBase_INTERFACE_DEFINED__ */
375 
376 
377 typedef boolean BOOLEAN;
378 #ifndef _tagBLOB_DEFINED
379 #define _tagBLOB_DEFINED
380 #define _BLOB_DEFINED
381 #define _LPBLOB_DEFINED
382 
383 typedef struct tagBLOB {
384     ULONG cbSize;
385     BYTE *pBlobData;
386 } BLOB;
387 typedef struct tagBLOB *LPBLOB;
388 #endif
389 
390 #ifndef SID_IDENTIFIER_AUTHORITY_DEFINED
391 #define SID_IDENTIFIER_AUTHORITY_DEFINED
392 typedef struct _SID_IDENTIFIER_AUTHORITY {
393     UCHAR Value[6];
394 } SID_IDENTIFIER_AUTHORITY;
395 typedef struct _SID_IDENTIFIER_AUTHORITY *PSID_IDENTIFIER_AUTHORITY;
396 #endif
397 
398 #ifndef SID_DEFINED
399 #define SID_DEFINED
400 
401 typedef struct _SID {
402     BYTE Revision;
403     BYTE SubAuthorityCount;
404     SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
405     ULONG SubAuthority[1];
406 } SID;
407 typedef struct _SID *PISID;
408 
409 typedef struct _SID_AND_ATTRIBUTES {
410     SID *Sid;
411     DWORD Attributes;
412 } SID_AND_ATTRIBUTES;
413 typedef struct _SID_AND_ATTRIBUTES *PSID_AND_ATTRIBUTES;
414 #endif
415 /* Begin additional prototypes for all interfaces */
416 
417 
418 /* End additional prototypes */
419 
420 #ifdef __cplusplus
421 }
422 #endif
423 
424 #endif /* __wtypesbase_h__ */
425