ReactOS 0.4.16-dev-455-g37b0646
winbase.h
Go to the documentation of this file.
1#ifndef _WINBASE_
2#define _WINBASE_
3
4#if !defined(_KERNEL32_)
5#define WINBASEAPI DECLSPEC_IMPORT
6#else
7#define WINBASEAPI
8#endif
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14#include <libloaderapi.h>
15#include <sysinfoapi.h>
16
17#ifdef _MSC_VER
18#pragma warning(push)
19#pragma warning(disable:4201)
20#pragma warning(disable:4214)
21#pragma warning(disable:4820)
22#endif
23
24#define PROCESS_NAME_NATIVE 1
25
26#define FILE_ENCRYPTABLE 0
27#define FILE_IS_ENCRYPTED 1
28#define FILE_SYSTEM_ATTR 2
29#define FILE_ROOT_DIR 3
30#define FILE_SYSTEM_DIR 4
31#define FILE_UNKNOWN 5
32#define FILE_SYSTEM_NOT_SUPPORT 6
33#define FILE_USER_DISALLOWED 7
34#define FILE_READ_ONLY 8
35#define FILE_DIR_DISALLOWED 9
36
37#define COMMPROP_INITIALIZED 0xE73CF52E
38#define SP_SERIALCOMM 1
39#define PST_UNSPECIFIED 0
40#define PST_RS232 1
41#define PST_PARALLELPORT 2
42#define PST_RS422 3
43#define PST_RS423 4
44#define PST_RS449 5
45#define PST_MODEM 6
46#define PST_FAX 0x21
47#define PST_SCANNER 0x22
48#define PST_NETWORK_BRIDGE 0x100
49#define PST_LAT 0x101
50#define PST_TCPIP_TELNET 0x102
51#define PST_X25 0x103
52#define BAUD_075 1
53#define BAUD_110 2
54#define BAUD_134_5 4
55#define BAUD_150 8
56#define BAUD_300 16
57#define BAUD_600 32
58#define BAUD_1200 64
59#define BAUD_1800 128
60#define BAUD_2400 256
61#define BAUD_4800 512
62#define BAUD_7200 1024
63#define BAUD_9600 2048
64#define BAUD_14400 4096
65#define BAUD_19200 8192
66#define BAUD_38400 16384
67#define BAUD_56K 32768
68#define BAUD_128K 65536
69#define BAUD_115200 131072
70#define BAUD_57600 262144
71#define BAUD_USER 0x10000000
72#define PCF_DTRDSR 1
73#define PCF_RTSCTS 2
74#define PCF_RLSD 4
75#define PCF_PARITY_CHECK 8
76#define PCF_XONXOFF 16
77#define PCF_SETXCHAR 32
78#define PCF_TOTALTIMEOUTS 64
79#define PCF_INTTIMEOUTS 128
80#define PCF_SPECIALCHARS 256
81#define PCF_16BITMODE 512
82#define SP_PARITY 1
83#define SP_BAUD 2
84#define SP_DATABITS 4
85#define SP_STOPBITS 8
86#define SP_HANDSHAKING 16
87#define SP_PARITY_CHECK 32
88#define SP_RLSD 64
89#define DATABITS_5 1
90#define DATABITS_6 2
91#define DATABITS_7 4
92#define DATABITS_8 8
93#define DATABITS_16 16
94#define DATABITS_16X 32
95#define STOPBITS_10 1
96#define STOPBITS_15 2
97#define STOPBITS_20 4
98#define PARITY_NONE 256
99#define PARITY_ODD 512
100#define PARITY_EVEN 1024
101#define PARITY_MARK 2048
102#define PARITY_SPACE 4096
103#define EXCEPTION_DEBUG_EVENT 1
104#define CREATE_THREAD_DEBUG_EVENT 2
105#define CREATE_PROCESS_DEBUG_EVENT 3
106#define EXIT_THREAD_DEBUG_EVENT 4
107#define EXIT_PROCESS_DEBUG_EVENT 5
108#define LOAD_DLL_DEBUG_EVENT 6
109#define UNLOAD_DLL_DEBUG_EVENT 7
110#define OUTPUT_DEBUG_STRING_EVENT 8
111#define RIP_EVENT 9
112#define HFILE_ERROR ((HFILE)-1)
113#define FILE_BEGIN 0
114#define FILE_CURRENT 1
115#define FILE_END 2
116#define INVALID_SET_FILE_POINTER ((DWORD)-1)
117#define OF_READ 0
118#define OF_READWRITE 2
119#define OF_WRITE 1
120#define OF_SHARE_COMPAT 0
121#define OF_SHARE_DENY_NONE 64
122#define OF_SHARE_DENY_READ 48
123#define OF_SHARE_DENY_WRITE 32
124#define OF_SHARE_EXCLUSIVE 16
125#define OF_CANCEL 2048
126#define OF_CREATE 4096
127#define OF_DELETE 512
128#define OF_EXIST 16384
129#define OF_PARSE 256
130#define OF_PROMPT 8192
131#define OF_REOPEN 32768
132#define OF_VERIFY 1024
133#define NMPWAIT_NOWAIT 1
134#define NMPWAIT_WAIT_FOREVER ((DWORD)-1)
135#define NMPWAIT_USE_DEFAULT_WAIT 0
136#define CE_BREAK 16
137#define CE_DNS 2048
138#define CE_FRAME 8
139#define CE_IOE 1024
140#define CE_MODE 32768
141#define CE_OOP 4096
142#define CE_OVERRUN 2
143#define CE_PTO 512
144#define CE_RXOVER 1
145#define CE_RXPARITY 4
146#define CE_TXFULL 256
147#define PROGRESS_CONTINUE 0
148#define PROGRESS_CANCEL 1
149#define PROGRESS_STOP 2
150#define PROGRESS_QUIET 3
151#define CALLBACK_CHUNK_FINISHED 0
152#define CALLBACK_STREAM_SWITCH 1
153#define OFS_MAXPATHNAME 128
154#define FILE_MAP_COPY SECTION_QUERY
155#define FILE_MAP_WRITE SECTION_MAP_WRITE
156#define FILE_MAP_READ SECTION_MAP_READ
157#define FILE_MAP_ALL_ACCESS SECTION_ALL_ACCESS
158#define FILE_MAP_EXECUTE SECTION_MAP_EXECUTE_EXPLICIT
159#define MUTEX_ALL_ACCESS 0x1f0001
160#define MUTEX_MODIFY_STATE 1
161#define SEMAPHORE_ALL_ACCESS 0x1f0003
162#define SEMAPHORE_MODIFY_STATE 2
163#define EVENT_ALL_ACCESS 0x1f0003
164#define EVENT_MODIFY_STATE 2
165#define PIPE_ACCESS_DUPLEX 3
166#define PIPE_ACCESS_INBOUND 1
167#define PIPE_ACCESS_OUTBOUND 2
168#define PIPE_TYPE_BYTE 0
169#define PIPE_TYPE_MESSAGE 4
170#define PIPE_READMODE_BYTE 0
171#define PIPE_READMODE_MESSAGE 2
172#define PIPE_WAIT 0
173#define PIPE_NOWAIT 1
174#define PIPE_CLIENT_END 0
175#define PIPE_SERVER_END 1
176#define PIPE_UNLIMITED_INSTANCES 255
177
178/* CreateProcess() dwCreationFlags values */
179#define DEBUG_PROCESS 0x00000001
180#define DEBUG_ONLY_THIS_PROCESS 0x00000002
181#define CREATE_SUSPENDED 0x00000004
182#define DETACHED_PROCESS 0x00000008
183#define CREATE_NEW_CONSOLE 0x00000010
184#define NORMAL_PRIORITY_CLASS 0x00000020
185#define IDLE_PRIORITY_CLASS 0x00000040
186#define HIGH_PRIORITY_CLASS 0x00000080
187#define REALTIME_PRIORITY_CLASS 0x00000100
188#define CREATE_NEW_PROCESS_GROUP 0x00000200
189#define CREATE_UNICODE_ENVIRONMENT 0x00000400
190#define CREATE_SEPARATE_WOW_VDM 0x00000800
191#define CREATE_SHARED_WOW_VDM 0x00001000
192#define CREATE_FORCEDOS 0x00002000
193#define BELOW_NORMAL_PRIORITY_CLASS 0x00004000
194#define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000
195
196#if (_WIN32_WINNT >= _WIN32_WINNT_WIN7)
197#define INHERIT_PARENT_AFFINITY 0x00010000
198#endif // _WIN32_WINNT_WIN7
199
200#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
201#define INHERIT_CALLER_PRIORITY 0x00020000 // Deprecated
202#define CREATE_PROTECTED_PROCESS 0x00040000
203#define EXTENDED_STARTUPINFO_PRESENT 0x00080000
204#define PROCESS_MODE_BACKGROUND_BEGIN 0x00100000
205#define PROCESS_MODE_BACKGROUND_END 0x00200000
206#endif // _WIN32_WINNT_VISTA
207
208#if (NTDDI_VERSION >= NTDDI_WIN10_RS4)
209#define CREATE_SECURE_PROCESS 0x00400000
210#endif // NTDDI_WIN10_RS4
211
212#define CREATE_BREAKAWAY_FROM_JOB 0x01000000
213#define CREATE_PRESERVE_CODE_AUTHZ_LEVEL 0x02000000
214#define CREATE_DEFAULT_ERROR_MODE 0x04000000
215#define CREATE_NO_WINDOW 0x08000000
216#define PROFILE_USER 0x10000000
217#define PROFILE_KERNEL 0x20000000
218#define PROFILE_SERVER 0x40000000
219#define CREATE_IGNORE_SYSTEM_DEFAULT 0x80000000
220
221/* CreateThread()/CreateRemoteThread() dwCreationFlags values */
222// #define CREATE_SUSPENDED 0x00000004 // See above
223#define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
224
225#define CREATE_NEW 1
226#define CREATE_ALWAYS 2
227#define OPEN_EXISTING 3
228#define OPEN_ALWAYS 4
229#define TRUNCATE_EXISTING 5
230
231#define COPY_FILE_FAIL_IF_EXISTS 0x00000001
232#define COPY_FILE_RESTARTABLE 0x00000002
233#define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004
234#define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x00000008
235
236#define FILE_FLAG_WRITE_THROUGH 0x80000000
237#define FILE_FLAG_OVERLAPPED 0x40000000
238#define FILE_FLAG_NO_BUFFERING 0x20000000
239#define FILE_FLAG_RANDOM_ACCESS 0x10000000
240#define FILE_FLAG_SEQUENTIAL_SCAN 0x08000000
241#define FILE_FLAG_DELETE_ON_CLOSE 0x04000000
242#define FILE_FLAG_BACKUP_SEMANTICS 0x02000000
243#define FILE_FLAG_POSIX_SEMANTICS 0x01000000
244#define FILE_FLAG_OPEN_REPARSE_POINT 0x00200000
245#define FILE_FLAG_OPEN_NO_RECALL 0x00100000
246#if (_WIN32_WINNT >= 0x0500)
247#define FILE_FLAG_FIRST_PIPE_INSTANCE 0x00080000
248#endif
249
250#define CLRDTR 6
251#define CLRRTS 4
252#define SETDTR 5
253#define SETRTS 3
254#define SETXOFF 1
255#define SETXON 2
256#define RESETDEV 7
257#define SETBREAK 8
258#define CLRBREAK 9
259#define STILL_ACTIVE 0x103
260#define FIND_FIRST_EX_CASE_SENSITIVE 1
261#define FIND_FIRST_EX_LARGE_FETCH 2
262#define SCS_32BIT_BINARY 0
263#define SCS_64BIT_BINARY 6
264#define SCS_DOS_BINARY 1
265#define SCS_OS216_BINARY 5
266#define SCS_PIF_BINARY 3
267#define SCS_POSIX_BINARY 4
268#define SCS_WOW_BINARY 2
269#define MAX_COMPUTERNAME_LENGTH 15
270#define HW_PROFILE_GUIDLEN 39
271#define MAX_PROFILE_LEN 80
272#define DOCKINFO_UNDOCKED 1
273#define DOCKINFO_DOCKED 2
274#define DOCKINFO_USER_SUPPLIED 4
275#define DOCKINFO_USER_UNDOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_UNDOCKED)
276#define DOCKINFO_USER_DOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_DOCKED)
277#define DRIVE_REMOVABLE 2
278#define DRIVE_FIXED 3
279#define DRIVE_REMOTE 4
280#define DRIVE_CDROM 5
281#define DRIVE_RAMDISK 6
282#define DRIVE_UNKNOWN 0
283#define DRIVE_NO_ROOT_DIR 1
284#define FILE_TYPE_UNKNOWN 0
285#define FILE_TYPE_DISK 1
286#define FILE_TYPE_CHAR 2
287#define FILE_TYPE_PIPE 3
288#define FILE_TYPE_REMOTE 0x8000
289/* also in ddk/ntapi.h */
290#define HANDLE_FLAG_INHERIT 0x01
291#define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x02
292/* end ntapi.h */
293#define STD_INPUT_HANDLE (DWORD)(0xfffffff6)
294#define STD_OUTPUT_HANDLE (DWORD)(0xfffffff5)
295#define STD_ERROR_HANDLE (DWORD)(0xfffffff4)
296#define INVALID_HANDLE_VALUE (HANDLE)(-1)
297#define GET_TAPE_MEDIA_INFORMATION 0
298#define GET_TAPE_DRIVE_INFORMATION 1
299#define SET_TAPE_MEDIA_INFORMATION 0
300#define SET_TAPE_DRIVE_INFORMATION 1
301#define THREAD_PRIORITY_ABOVE_NORMAL 1
302#define THREAD_PRIORITY_BELOW_NORMAL (-1)
303#define THREAD_PRIORITY_HIGHEST 2
304#define THREAD_PRIORITY_IDLE (-15)
305#define THREAD_PRIORITY_LOWEST (-2)
306#define THREAD_PRIORITY_NORMAL 0
307#define THREAD_PRIORITY_TIME_CRITICAL 15
308#define THREAD_PRIORITY_ERROR_RETURN 2147483647
309#define TIME_ZONE_ID_UNKNOWN 0
310#define TIME_ZONE_ID_STANDARD 1
311#define TIME_ZONE_ID_DAYLIGHT 2
312#define TIME_ZONE_ID_INVALID 0xFFFFFFFF
313#define FS_CASE_IS_PRESERVED 2
314#define FS_CASE_SENSITIVE 1
315#define FS_UNICODE_STORED_ON_DISK 4
316#define FS_PERSISTENT_ACLS 8
317#define FS_FILE_COMPRESSION 16
318#define FS_VOL_IS_COMPRESSED 32768
319#define GMEM_FIXED 0
320#define GMEM_MOVEABLE 2
321#define GMEM_MODIFY 128
322#define GPTR 64
323#define GHND 66
324#define GMEM_DDESHARE 8192
325#define GMEM_DISCARDABLE 256
326#define GMEM_LOWER 4096
327#define GMEM_NOCOMPACT 16
328#define GMEM_NODISCARD 32
329#define GMEM_NOT_BANKED 4096
330#define GMEM_NOTIFY 16384
331#define GMEM_SHARE 8192
332#define GMEM_ZEROINIT 64
333#define GMEM_DISCARDED 16384
334#define GMEM_INVALID_HANDLE 32768
335#define GMEM_LOCKCOUNT 255
336#define GMEM_VALID_FLAGS 32626
337#define EXCEPTION_ACCESS_VIOLATION ((DWORD)0xC0000005)
338#define EXCEPTION_DATATYPE_MISALIGNMENT ((DWORD)0x80000002)
339#define EXCEPTION_BREAKPOINT ((DWORD)0x80000003)
340#define EXCEPTION_SINGLE_STEP ((DWORD)0x80000004)
341#define EXCEPTION_ARRAY_BOUNDS_EXCEEDED ((DWORD)0xC000008C)
342#define EXCEPTION_FLT_DENORMAL_OPERAND ((DWORD)0xC000008D)
343#define EXCEPTION_FLT_DIVIDE_BY_ZERO ((DWORD)0xC000008E)
344#define EXCEPTION_FLT_INEXACT_RESULT ((DWORD)0xC000008F)
345#define EXCEPTION_FLT_INVALID_OPERATION ((DWORD)0xC0000090)
346#define EXCEPTION_FLT_OVERFLOW ((DWORD)0xC0000091)
347#define EXCEPTION_FLT_STACK_CHECK ((DWORD)0xC0000092)
348#define EXCEPTION_FLT_UNDERFLOW ((DWORD)0xC0000093)
349#define EXCEPTION_INT_DIVIDE_BY_ZERO ((DWORD)0xC0000094)
350#define EXCEPTION_INT_OVERFLOW ((DWORD)0xC0000095)
351#define EXCEPTION_PRIV_INSTRUCTION ((DWORD)0xC0000096)
352#define EXCEPTION_IN_PAGE_ERROR ((DWORD)0xC0000006)
353#define EXCEPTION_ILLEGAL_INSTRUCTION ((DWORD)0xC000001D)
354#define EXCEPTION_NONCONTINUABLE_EXCEPTION ((DWORD)0xC0000025)
355#define EXCEPTION_STACK_OVERFLOW ((DWORD)0xC00000FD)
356#define EXCEPTION_INVALID_DISPOSITION ((DWORD)0xC0000026)
357#define EXCEPTION_GUARD_PAGE ((DWORD)0x80000001)
358#define EXCEPTION_INVALID_HANDLE ((DWORD)0xC0000008L)
359#define CONTROL_C_EXIT ((DWORD)0xC000013A)
360#define PROCESS_HEAP_REGION 1
361#define PROCESS_HEAP_UNCOMMITTED_RANGE 2
362#define PROCESS_HEAP_ENTRY_BUSY 4
363#define PROCESS_HEAP_ENTRY_MOVEABLE 16
364#define PROCESS_HEAP_ENTRY_DDESHARE 32
365
366// LoadLibraryEx() dwFlags.
367#define DONT_RESOLVE_DLL_REFERENCES 0x00000001
368#define LOAD_LIBRARY_AS_DATAFILE 0x00000002
369// #define LOAD_PACKAGED_LIBRARY 0x00000004 // Internal use only.
370#define LOAD_WITH_ALTERED_SEARCH_PATH 0x00000008
371#define LOAD_IGNORE_CODE_AUTHZ_LEVEL 0x00000010
372#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
373#define LOAD_LIBRARY_AS_IMAGE_RESOURCE 0x00000020
374#define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 0x00000040
375#define LOAD_LIBRARY_REQUIRE_SIGNED_TARGET 0x00000080
376#define LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR 0x00000100
377#define LOAD_LIBRARY_SEARCH_APPLICATION_DIR 0x00000200
378#define LOAD_LIBRARY_SEARCH_USER_DIRS 0x00000400
379#define LOAD_LIBRARY_SEARCH_SYSTEM32 0x00000800
380#define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 0x00001000
381#endif // _WIN32_WINNT_VISTA
382#if (NTDDI_VERSION >= NTDDI_WIN10_RS1)
383#define LOAD_LIBRARY_SAFE_CURRENT_DIRS 0x00002000
384#define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER 0x00004000
385#else // NTDDI_WIN10_RS1
386#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
387#define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER LOAD_LIBRARY_SEARCH_SYSTEM32
388#endif // _WIN32_WINNT_VISTA
389#endif // NTDDI_WIN10_RS1
390#if (NTDDI_VERSION >= NTDDI_WIN10_RS2)
391#define LOAD_LIBRARY_OS_INTEGRITY_CONTINUITY 0x00008000
392#endif // NTDDI_WIN10_RS2
393
394#define LMEM_FIXED 0
395#define LMEM_MOVEABLE 2
396#define LMEM_NONZEROLHND 2
397#define LMEM_NONZEROLPTR 0
398#define LMEM_DISCARDABLE 3840
399#define LMEM_NOCOMPACT 16
400#define LMEM_NODISCARD 32
401#define LMEM_ZEROINIT 64
402#define LMEM_DISCARDED 16384
403#define LMEM_MODIFY 128
404#define LMEM_INVALID_HANDLE 32768
405#define LMEM_LOCKCOUNT 255
406#define LMEM_VALID_FLAGS 0x0F72
407#define LPTR 64
408#define LHND 66
409#define NONZEROLHND 2
410#define NONZEROLPTR 0
411#define LOCKFILE_FAIL_IMMEDIATELY 1
412#define LOCKFILE_EXCLUSIVE_LOCK 2
413#define LOGON32_PROVIDER_DEFAULT 0
414#define LOGON32_PROVIDER_WINNT35 1
415#define LOGON32_PROVIDER_WINNT40 2
416#define LOGON32_PROVIDER_WINNT50 3
417#define LOGON32_LOGON_INTERACTIVE 2
418#define LOGON32_LOGON_NETWORK 3
419#define LOGON32_LOGON_BATCH 4
420#define LOGON32_LOGON_SERVICE 5
421#define LOGON32_LOGON_UNLOCK 7
422#define LOGON32_LOGON_NETWORK_CLEARTEXT 8
423#define LOGON32_LOGON_NEW_CREDENTIALS 9
424#define MOVEFILE_REPLACE_EXISTING 1
425#define MOVEFILE_COPY_ALLOWED 2
426#define MOVEFILE_DELAY_UNTIL_REBOOT 4
427#define MOVEFILE_WRITE_THROUGH 8
428#define MOVEFILE_CREATE_HARDLINK 16
429#define MOVEFILE_FAIL_IF_NOT_TRACKABLE 32
430#define MAXIMUM_WAIT_OBJECTS 64
431#define MAXIMUM_SUSPEND_COUNT 0x7F
432#define WAIT_OBJECT_0 0
433#define WAIT_ABANDONED_0 128
434#ifndef WAIT_TIMEOUT /* also in winerror.h */
435#define WAIT_TIMEOUT 258
436#endif
437#define WAIT_IO_COMPLETION 0xC0
438#define WAIT_ABANDONED 128
439#define WAIT_FAILED ((DWORD)0xFFFFFFFF)
440#define PURGE_TXABORT 1
441#define PURGE_RXABORT 2
442#define PURGE_TXCLEAR 4
443#define PURGE_RXCLEAR 8
444
445#define FORMAT_MESSAGE_ALLOCATE_BUFFER 256
446#define FORMAT_MESSAGE_IGNORE_INSERTS 512
447#define FORMAT_MESSAGE_FROM_STRING 1024
448#define FORMAT_MESSAGE_FROM_HMODULE 2048
449#define FORMAT_MESSAGE_FROM_SYSTEM 4096
450#define FORMAT_MESSAGE_ARGUMENT_ARRAY 8192
451#define FORMAT_MESSAGE_MAX_WIDTH_MASK 255
452#define EV_BREAK 64
453#define EV_CTS 8
454#define EV_DSR 16
455#define EV_ERR 128
456#define EV_EVENT1 2048
457#define EV_EVENT2 4096
458#define EV_PERR 512
459#define EV_RING 256
460#define EV_RLSD 32
461#define EV_RX80FULL 1024
462#define EV_RXCHAR 1
463#define EV_RXFLAG 2
464#define EV_TXEMPTY 4
465/* also in ddk/ntapi.h */
466#define SEM_FAILCRITICALERRORS 0x0001
467#define SEM_NOGPFAULTERRORBOX 0x0002
468#define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
469#define SEM_NOOPENFILEERRORBOX 0x8000
470/* end ntapi.h */
471#define SLE_ERROR 1
472#define SLE_MINORERROR 2
473#define SLE_WARNING 3
474#define SHUTDOWN_NORETRY 1
475#define MAXINTATOM 0xC000
476#define INVALID_ATOM ((ATOM)0)
477#define IGNORE 0
478#define INFINITE 0xFFFFFFFF
479#define NOPARITY 0
480#define ODDPARITY 1
481#define EVENPARITY 2
482#define MARKPARITY 3
483#define SPACEPARITY 4
484#define ONESTOPBIT 0
485#define ONE5STOPBITS 1
486#define TWOSTOPBITS 2
487#define CBR_110 110
488#define CBR_300 300
489#define CBR_600 600
490#define CBR_1200 1200
491#define CBR_2400 2400
492#define CBR_4800 4800
493#define CBR_9600 9600
494#define CBR_14400 14400
495#define CBR_19200 19200
496#define CBR_38400 38400
497#define CBR_56000 56000
498#define CBR_57600 57600
499#define CBR_115200 115200
500#define CBR_128000 128000
501#define CBR_256000 256000
502#define BACKUP_INVALID 0
503#define BACKUP_DATA 1
504#define BACKUP_EA_DATA 2
505#define BACKUP_SECURITY_DATA 3
506#define BACKUP_ALTERNATE_DATA 4
507#define BACKUP_LINK 5
508#define BACKUP_PROPERTY_DATA 6
509#define BACKUP_OBJECT_ID 7
510#define BACKUP_REPARSE_DATA 8
511#define BACKUP_SPARSE_BLOCK 9
512#define STREAM_NORMAL_ATTRIBUTE 0
513#define STREAM_MODIFIED_WHEN_READ 1
514#define STREAM_CONTAINS_SECURITY 2
515#define STREAM_CONTAINS_PROPERTIES 4
516
517#define STARTF_USESHOWWINDOW 0x00000001
518#define STARTF_USESIZE 0x00000002
519#define STARTF_USEPOSITION 0x00000004
520#define STARTF_USECOUNTCHARS 0x00000008
521#define STARTF_USEFILLATTRIBUTE 0x00000010
522#define STARTF_RUNFULLSCREEN 0x00000020
523#define STARTF_FORCEONFEEDBACK 0x00000040
524#define STARTF_FORCEOFFFEEDBACK 0x00000080
525#define STARTF_USESTDHANDLES 0x00000100
526#if (WINVER >= 0x400)
527#define STARTF_USEHOTKEY 0x00000200
528#define STARTF_TITLEISLINKNAME 0x00000800
529#define STARTF_TITLEISAPPID 0x00001000
530#define STARTF_PREVENTPINNING 0x00002000
531#endif /* (WINVER >= 0x400) */
532
533#define TC_NORMAL 0
534#define TC_HARDERR 1
535#define TC_GP_TRAP 2
536#define TC_SIGNAL 3
537#define AC_LINE_OFFLINE 0
538#define AC_LINE_ONLINE 1
539#define AC_LINE_BACKUP_POWER 2
540#define AC_LINE_UNKNOWN 255
541#define BATTERY_FLAG_HIGH 1
542#define BATTERY_FLAG_LOW 2
543#define BATTERY_FLAG_CRITICAL 4
544#define BATTERY_FLAG_CHARGING 8
545#define BATTERY_FLAG_NO_BATTERY 128
546#define BATTERY_FLAG_UNKNOWN 255
547#define BATTERY_PERCENTAGE_UNKNOWN 255
548#define BATTERY_LIFE_UNKNOWN 0xFFFFFFFF
549#define DDD_RAW_TARGET_PATH 1
550#define DDD_REMOVE_DEFINITION 2
551#define DDD_EXACT_MATCH_ON_REMOVE 4
552#define DDD_NO_BROADCAST_SYSTEM 8
553#define DDD_LUID_BROADCAST_DRIVE 16
554#define HINSTANCE_ERROR 32
555#define MS_CTS_ON 16
556#define MS_DSR_ON 32
557#define MS_RING_ON 64
558#define MS_RLSD_ON 128
559#define DTR_CONTROL_DISABLE 0
560#define DTR_CONTROL_ENABLE 1
561#define DTR_CONTROL_HANDSHAKE 2
562#define RTS_CONTROL_DISABLE 0
563#define RTS_CONTROL_ENABLE 1
564#define RTS_CONTROL_HANDSHAKE 2
565#define RTS_CONTROL_TOGGLE 3
566#define SECURITY_ANONYMOUS (SecurityAnonymous<<16)
567#define SECURITY_IDENTIFICATION (SecurityIdentification<<16)
568#define SECURITY_IMPERSONATION (SecurityImpersonation<<16)
569#define SECURITY_DELEGATION (SecurityDelegation<<16)
570#define SECURITY_CONTEXT_TRACKING 0x40000
571#define SECURITY_EFFECTIVE_ONLY 0x80000
572#define SECURITY_SQOS_PRESENT 0x100000
573#define SECURITY_VALID_SQOS_FLAGS 0x1F0000
574#define INVALID_FILE_SIZE 0xFFFFFFFF
575#define TLS_OUT_OF_INDEXES (DWORD)0xFFFFFFFF
576#if (_WIN32_WINNT >= 0x0501)
577#define ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID 0x00000001
578#define ACTCTX_FLAG_LANGID_VALID 0x00000002
579#define ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID 0x00000004
580#define ACTCTX_FLAG_RESOURCE_NAME_VALID 0x00000008
581#define ACTCTX_FLAG_SET_PROCESS_DEFAULT 0x00000010
582#define ACTCTX_FLAG_APPLICATION_NAME_VALID 0x00000020
583#define ACTCTX_FLAG_SOURCE_IS_ASSEMBLYREF 0x00000040
584#define ACTCTX_FLAG_HMODULE_VALID 0x00000080
585#define DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION 0x00000001
586#define FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX 0x00000001
587#define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX 0x00000004
588#define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE 0x00000008
589#define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS 0x00000010
590#define QUERY_ACTCTX_FLAG_NO_ADDREF 0x80000000
591#if (_WIN32_WINNT >= 0x0600)
592#define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1
593#endif
594#endif /* (_WIN32_WINNT >= 0x0501) */
595#if (_WIN32_WINNT >= 0x0500)
596#define REPLACEFILE_WRITE_THROUGH 0x00000001
597#define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002
598#endif /* (_WIN32_WINNT >= 0x0500) */
599#if (_WIN32_WINNT >= 0x0400)
600#define FIBER_FLAG_FLOAT_SWITCH 0x1
601#endif
602#define FLS_OUT_OF_INDEXES 0xFFFFFFFF
603#if (_WIN32_WINNT >= 0x0600)
604#define MAX_RESTART_CMD_LINE 0x800
605#define RESTART_CYCLICAL 0x1
606#define RESTART_NOTIFY_SOLUTION 0x2
607#define RESTART_NOTIFY_FAULT 0x4
608#define VOLUME_NAME_DOS 0x0
609#define VOLUME_NAME_GUID 0x1
610#define VOLUME_NAME_NT 0x2
611#define VOLUME_NAME_NONE 0x4
612#define FILE_NAME_NORMALIZED 0x0
613#define FILE_NAME_OPENED 0x8
614#define FILE_SKIP_COMPLETION_PORT_ON_SUCCESS 0x1
615#define FILE_SKIP_SET_EVENT_ON_HANDLE 0x2
616#endif
617#if (_WIN32_WINNT >= 0x0500)
618#define GET_MODULE_HANDLE_EX_FLAG_PIN 0x1
619#define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT 0x2
620#define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 0x4
621#endif
622#if (_WIN32_WINNT >= 0x0600)
623#define CREATE_EVENT_MANUAL_RESET 0x1
624#define CREATE_EVENT_INITIAL_SET 0x2
625#define CREATE_MUTEX_INITIAL_OWNER 0x1
626#define CREATE_WAITABLE_TIMER_MANUAL_RESET 0x1
627#define SRWLOCK_INIT RTL_SRWLOCK_INIT
628#define CONDITION_VARIABLE_INIT RTL_CONDITION_VARIABLE_INIT
629#define CONDITION_VARIABLE_LOCKMODE_SHARED RTL_CONDITION_VARIABLE_LOCKMODE_SHARED
630#endif
631
632#define BASE_SEARCH_PATH_ENABLE_SAFE_SEARCHMODE 0x00001
633#define BASE_SEARCH_PATH_DISABLE_SAFE_SEARCHMODE 0x10000
634#define BASE_SEARCH_PATH_PERMANENT 0x08000
635#define BASE_SEARCH_PATH_INVALID_FLAGS (~0x18001)
636
637#define INIT_ONCE_STATIC_INIT RTL_RUN_ONCE_INIT
638
639#if (_WIN32_WINNT >= 0x0600)
640#define PROCESS_DEP_ENABLE 0x00000001
641#define PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION 0x00000002
642#endif
643
644#define LOGON_WITH_PROFILE 0x00000001
645#define LOGON_NETCREDENTIALS_ONLY 0x00000002
646
647#ifndef RC_INVOKED
648
649#ifndef _FILETIME_
650#define _FILETIME_
651typedef struct _FILETIME {
655#endif
656
669
670typedef struct _DCB {
700
701typedef struct _COMM_CONFIG {
711
712typedef struct _COMMPROP {
732
733typedef struct _COMMTIMEOUTS {
740
741typedef struct _COMSTAT {
753
755
768
774
775typedef struct _EXCEPTION_DEBUG_INFO {
779
783
787
788typedef struct _LOAD_DLL_DEBUG_INFO {
796
800
806
807typedef struct _RIP_INFO {
811
812typedef struct _DEBUG_EVENT {
816 union {
826 } u;
828
829#ifndef MIDL_PASS
833#endif
834
835typedef struct _OVERLAPPED {
838 union {
839 struct {
847
848typedef struct _OVERLAPPED_ENTRY {
854
855typedef struct _STARTUPINFOA {
875
876typedef struct _STARTUPINFOW {
896
897typedef struct _PROCESS_INFORMATION {
903
911//#ifdef __WINESRC__ //not all wine code is marked so
912 DWORD_PTR Spare[8/sizeof(DWORD_PTR)];/* in Wine they store a string here */
913//#else
914 //WORD SpareWORD;
915//#endif
917
918typedef struct _CRITICAL_SECTION {
926
927#ifndef _SYSTEMTIME_
928#define _SYSTEMTIME_
929typedef struct _SYSTEMTIME {
939#endif /* _SYSTEMTIME_ */
940#if (_WIN32_WINNT >= 0x0500)
942#endif
951typedef struct _WIN32_FIND_DATAA {
963typedef struct _WIN32_FIND_DATAW {
975
976#if (_WIN32_WINNT >= 0x0501)
977typedef enum _STREAM_INFO_LEVELS {
978 FindStreamInfoStandard
979} STREAM_INFO_LEVELS;
980
981typedef struct _WIN32_FIND_STREAM_DATA {
982 LARGE_INTEGER StreamSize;
983 WCHAR cStreamName[MAX_PATH + 36];
984} WIN32_FIND_STREAM_DATA, *PWIN32_FIND_STREAM_DATA;
985#endif
986
987typedef struct _WIN32_STREAM_ID {
994
995#if (_WIN32_WINNT >= 0x0600)
996
997typedef enum _FILE_ID_TYPE {
998 FileIdType,
999 ObjectIdType,
1000 ExtendedFileIdType,
1001 MaximumFileIdType
1002} FILE_ID_TYPE, *PFILE_ID_TYPE;
1003
1004typedef struct _FILE_ID_DESCRIPTOR {
1005 DWORD dwSize;
1006 FILE_ID_TYPE Type;
1007 union {
1008 LARGE_INTEGER FileId;
1009 GUID ObjectId;
1011} FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR;
1012
1013#if (NTDDI_VERSION >= NTDDI_LONGHORN) || defined(__REACTOS__)
1014typedef enum _FILE_INFO_BY_HANDLE_CLASS {
1015 FileBasicInfo,
1016 FileStandardInfo,
1017 FileNameInfo,
1018 FileRenameInfo,
1019 FileDispositionInfo,
1020 FileAllocationInfo,
1021 FileEndOfFileInfo,
1022 FileStreamInfo,
1023 FileCompressionInfo,
1024 FileAttributeTagInfo,
1025 FileIdBothDirectoryInfo,
1026 FileIdBothDirectoryRestartInfo,
1027 FileIoPriorityHintInfo,
1028 FileRemoteProtocolInfo,
1029 FileFullDirectoryInfo,
1030 FileFullDirectoryRestartInfo,
1031#if (NTDDI_VERSION >= NTDDI_WIN8) || defined(__REACTOS__)
1032 FileStorageInfo,
1033 FileAlignmentInfo,
1034 FileIdInfo,
1035 FileIdExtdDirectoryInfo,
1036 FileIdExtdDirectoryRestartInfo,
1037#endif
1038#if (NTDDI_VERSION >= NTDDI_WIN10_RS1) || defined(__REACTOS__)
1039 FileDispositionInfoEx,
1040 FileRenameInfoEx,
1041#endif
1042#if (NTDDI_VERSION >= NTDDI_WIN10_19H1) || defined(__REACTOS__)
1043 FileCaseSensitiveInfo,
1044 FileNormalizedNameInfo,
1045#endif
1046 MaximumFileInfoByHandleClass
1047} FILE_INFO_BY_HANDLE_CLASS, *PFILE_INFO_BY_HANDLE_CLASS;
1048#endif
1049
1050typedef struct _FILE_ID_BOTH_DIR_INFO {
1051 DWORD NextEntryOffset;
1052 DWORD FileIndex;
1053 LARGE_INTEGER CreationTime;
1054 LARGE_INTEGER LastAccessTime;
1055 LARGE_INTEGER LastWriteTime;
1056 LARGE_INTEGER ChangeTime;
1057 LARGE_INTEGER EndOfFile;
1061 DWORD EaSize;
1062 CCHAR ShortNameLength;
1063 WCHAR ShortName[12];
1064 LARGE_INTEGER FileId;
1065 WCHAR FileName[1];
1066} FILE_ID_BOTH_DIR_INFO, *PFILE_ID_BOTH_DIR_INFO;
1067
1068typedef struct _FILE_BASIC_INFO {
1069 LARGE_INTEGER CreationTime;
1070 LARGE_INTEGER LastAccessTime;
1071 LARGE_INTEGER LastWriteTime;
1072 LARGE_INTEGER ChangeTime;
1074} FILE_BASIC_INFO, *PFILE_BASIC_INFO;
1075
1076typedef struct _FILE_STANDARD_INFO {
1078 LARGE_INTEGER EndOfFile;
1079 DWORD NumberOfLinks;
1080 BOOLEAN DeletePending;
1082} FILE_STANDARD_INFO, *PFILE_STANDARD_INFO;
1083
1084typedef struct _FILE_NAME_INFO {
1086 WCHAR FileName[1];
1087} FILE_NAME_INFO, *PFILE_NAME_INFO;
1088
1089typedef enum _PRIORITY_HINT {
1090 IoPriorityHintVeryLow,
1091 IoPriorityHintLow,
1092 IoPriorityHintNormal,
1093 MaximumIoPriorityHintType
1094} PRIORITY_HINT;
1095
1096typedef struct _FILE_IO_PRIORITY_HINT_INFO {
1097 PRIORITY_HINT PriorityHint;
1098} FILE_IO_PRIORITY_HINT_INFO;
1099
1100typedef struct _FILE_ALLOCATION_INFO {
1102} FILE_ALLOCATION_INFO, *PFILE_ALLOCATION_INFO;
1103
1104typedef struct _FILE_DISPOSITION_INFO {
1106} FILE_DISPOSITION_INFO, *PFILE_DISPOSITION_INFO;
1107
1108typedef struct _FILE_END_OF_FILE_INFO {
1109 LARGE_INTEGER EndOfFile;
1110} FILE_END_OF_FILE_INFO, *PFILE_END_OF_FILE_INFO;
1111
1112typedef struct _FILE_RENAME_INFO {
1113 BOOLEAN ReplaceIfExists;
1116 WCHAR FileName[1];
1117} FILE_RENAME_INFO, *PFILE_RENAME_INFO;
1118
1119typedef struct _FILE_ATTRIBUTE_TAG_INFO {
1121 DWORD ReparseTag;
1122} FILE_ATTRIBUTE_TAG_INFO, *PFILE_ATTRIBUTE_TAG_INFO;
1123
1124typedef struct _FILE_COMPRESSION_INFO {
1125 LARGE_INTEGER CompressedFileSize;
1126 WORD CompressionFormat;
1127 UCHAR CompressionUnitShift;
1128 UCHAR ChunkShift;
1129 UCHAR ClusterShift;
1130 UCHAR Reserved[3];
1131} FILE_COMPRESSION_INFO, *PFILE_COMPRESSION_INFO;
1132
1133typedef struct _FILE_REMOTE_PROTOCOL_INFO {
1134 USHORT StructureVersion;
1135 USHORT StructureSize;
1137 USHORT ProtocolMajorVersion;
1138 USHORT ProtocolMinorVersion;
1139 USHORT ProtocolRevision;
1141 ULONG Flags;
1142 struct {
1143 ULONG Reserved[8];
1144 } GenericReserved;
1145 struct {
1146 ULONG Reserved[16];
1147 } ProtocolSpecificReserved;
1148} FILE_REMOTE_PROTOCOL_INFO, *PFILE_REMOTE_PROTOCOL_INFO;
1149
1150#endif
1151
1157
1164
1165typedef struct tagHW_PROFILE_INFOA {
1170
1171typedef struct tagHW_PROFILE_INFOW {
1176
1177/* Event Logging */
1178
1179#define EVENTLOG_FULL_INFO 0
1180
1184
1189
1190typedef struct _SYSTEM_INFO {
1191 _ANONYMOUS_UNION union {
1193 _ANONYMOUS_STRUCT struct {
1208
1209typedef struct _SYSTEM_POWER_STATUS {
1217
1229
1239
1240typedef struct _MEMORYSTATUS {
1250
1251#if (_WIN32_WINNT >= 0x0500)
1252typedef struct _MEMORYSTATUSEX {
1254 DWORD dwMemoryLoad;
1255 DWORDLONG ullTotalPhys;
1256 DWORDLONG ullAvailPhys;
1257 DWORDLONG ullTotalPageFile;
1258 DWORDLONG ullAvailPageFile;
1259 DWORDLONG ullTotalVirtual;
1260 DWORDLONG ullAvailVirtual;
1261 DWORDLONG ullAvailExtendedVirtual;
1262} MEMORYSTATUSEX, *LPMEMORYSTATUSEX;
1263#endif
1264
1265#ifndef _LDT_ENTRY_DEFINED
1266#define _LDT_ENTRY_DEFINED
1267typedef struct _LDT_ENTRY {
1268 WORD LimitLow;
1269 WORD BaseLow;
1270 union {
1271 struct {
1272 BYTE BaseMid;
1273 BYTE Flags1;
1274 BYTE Flags2;
1275 BYTE BaseHi;
1277 struct {
1278 DWORD BaseMid:8;
1279 DWORD Type:5;
1280 DWORD Dpl:2;
1281 DWORD Pres:1;
1282 DWORD LimitHi:4;
1283 DWORD Sys:1;
1284 DWORD Reserved_0:1;
1287 DWORD BaseHi:8;
1291#endif
1292
1293typedef struct _PROCESS_HEAP_ENTRY {
1299 _ANONYMOUS_UNION union {
1300 struct {
1304 struct {
1312
1313typedef struct _OFSTRUCT {
1321
1322#if (_WIN32_WINNT >= 0x0501)
1323typedef struct tagACTCTXA {
1324 ULONG cbSize;
1325 DWORD dwFlags;
1326 LPCSTR lpSource;
1327 USHORT wProcessorArchitecture;
1328 LANGID wLangId;
1329 LPCSTR lpAssemblyDirectory;
1330 LPCSTR lpResourceName;
1331 LPCSTR lpApplicationName;
1333} ACTCTXA,*PACTCTXA;
1334typedef const ACTCTXA *PCACTCTXA;
1335
1336typedef struct tagACTCTXW {
1337 ULONG cbSize;
1338 DWORD dwFlags;
1339 LPCWSTR lpSource;
1340 USHORT wProcessorArchitecture;
1341 LANGID wLangId;
1342 LPCWSTR lpAssemblyDirectory;
1343 LPCWSTR lpResourceName;
1344 LPCWSTR lpApplicationName;
1346} ACTCTXW,*PACTCTXW;
1347typedef const ACTCTXW *PCACTCTXW;
1348
1349typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 {
1350 ULONG cbSize;
1351 ULONG ulDataFormatVersion;
1352 PVOID lpData;
1353 ULONG ulLength;
1354 PVOID lpSectionGlobalData;
1355 ULONG ulSectionGlobalDataLength;
1356 PVOID lpSectionBase;
1357 ULONG ulSectionTotalLength;
1358 HANDLE hActCtx;
1359 ULONG ulAssemblyRosterIndex;
1360} ACTCTX_SECTION_KEYED_DATA_2600, *PACTCTX_SECTION_KEYED_DATA_2600;
1361typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600;
1362
1363typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA {
1364 PVOID lpInformation;
1365 PVOID lpSectionBase;
1366 ULONG ulSectionLength;
1367 PVOID lpSectionGlobalDataBase;
1368 ULONG ulSectionGlobalDataLength;
1369} ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
1370typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
1371
1372typedef struct tagACTCTX_SECTION_KEYED_DATA {
1373 ULONG cbSize;
1374 ULONG ulDataFormatVersion;
1375 PVOID lpData;
1376 ULONG ulLength;
1377 PVOID lpSectionGlobalData;
1378 ULONG ulSectionGlobalDataLength;
1379 PVOID lpSectionBase;
1380 ULONG ulSectionTotalLength;
1381 HANDLE hActCtx;
1382 ULONG ulAssemblyRosterIndex;
1383 /* Non 2600 extra fields */
1384 ULONG ulFlags;
1385 ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
1386} ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA;
1387
1388typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA;
1389
1390typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION {
1391 HANDLE hActCtx;
1392 DWORD dwFlags;
1393} ACTIVATION_CONTEXT_BASIC_INFORMATION, *PACTIVATION_CONTEXT_BASIC_INFORMATION;
1394typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION;
1395
1396typedef BOOL
1397(WINAPI *PQUERYACTCTXW_FUNC)(
1399 _In_ HANDLE hActCtx,
1400 _In_opt_ PVOID pvSubInstance,
1401 _In_ ULONG ulInfoClass,
1402 _Out_writes_bytes_to_opt_(cbBuffer, *pcbWrittenOrRequired) PVOID pvBuffer,
1403 _In_ SIZE_T cbBuffer,
1404 _Out_opt_ SIZE_T *pcbWrittenOrRequired);
1405
1406typedef enum {
1407 LowMemoryResourceNotification ,
1408 HighMemoryResourceNotification
1409} MEMORY_RESOURCE_NOTIFICATION_TYPE;
1410#endif /* (_WIN32_WINNT >= 0x0501) */
1411
1412#if (_WIN32_WINNT >= 0x0500)
1413typedef enum _COMPUTER_NAME_FORMAT {
1414 ComputerNameNetBIOS,
1415 ComputerNameDnsHostname,
1416 ComputerNameDnsDomain,
1417 ComputerNameDnsFullyQualified,
1418 ComputerNamePhysicalNetBIOS,
1419 ComputerNamePhysicalDnsHostname,
1420 ComputerNamePhysicalDnsDomain,
1421 ComputerNamePhysicalDnsFullyQualified,
1422 ComputerNameMax
1423} COMPUTER_NAME_FORMAT;
1424#endif /* (_WIN32_WINNT >= 0x0500) */
1425
1426#if (_WIN32_WINNT >= 0x0600)
1427typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK;
1428typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE;
1429#endif
1430
1432
1433#define PROC_THREAD_ATTRIBUTE_NUMBER 0x0000ffff
1434#define PROC_THREAD_ATTRIBUTE_THREAD 0x00010000
1435#define PROC_THREAD_ATTRIBUTE_INPUT 0x00020000
1436#define PROC_THREAD_ATTRIBUTE_ADDITIVE 0x00040000
1437
1453
1454#define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
1455#define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT)
1456#define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS (ProcThreadAttributeParentProcess | PROC_THREAD_ATTRIBUTE_INPUT)
1457
1458typedef DWORD
1460 _In_reads_bytes_(ulLength) PBYTE pbData,
1461 _In_opt_ PVOID pvCallbackContext,
1462 _In_ ULONG ulLength);
1463
1465
1466typedef VOID (WINAPI *PFIBER_START_ROUTINE)( LPVOID lpFiberParameter );
1468
1481#if (_WIN32_WINNT >= 0x0600)
1482typedef DWORD (WINAPI *APPLICATION_RECOVERY_CALLBACK)(PVOID);
1483#endif
1484
1485#ifdef WINE_NO_UNICODE_MACROS /* force using a cast */
1486#define MAKEINTATOM(atom) ((ULONG_PTR)((WORD)(atom)))
1487#else
1488#define MAKEINTATOM(i) (LPTSTR)((ULONG_PTR)((WORD)(i)))
1489#endif
1490
1491typedef DWORD
1493 _Out_writes_bytes_to_(*ulLength, *ulLength) PBYTE pbData,
1494 _In_opt_ PVOID pvCallbackContext,
1495 _Inout_ PULONG ulLength);
1496
1497/* Functions */
1498#ifndef UNDER_CE
1500#else
1502#endif
1504
1505long
1506WINAPI
1509 _Out_writes_bytes_to_(lBytes, return) LPVOID lpBuffer,
1510 _In_ long lBytes);
1511
1512long
1513WINAPI
1517 _In_ long lBytes);
1518
1523
1524UINT
1525WINAPI
1528 _Out_writes_bytes_to_(uBytes, return) LPVOID lpBuffer,
1529 _In_ UINT uBytes);
1530
1531UINT
1532WINAPI
1536 _In_ UINT uBytes);
1537
1539
1540BOOL
1541WINAPI
1543 _In_ LPCSTR SubsystemName,
1544 _In_opt_ LPVOID HandleId,
1550 _In_ BOOL ObjectCreation,
1553 _Out_ LPBOOL pfGenerateOnClose);
1554
1556#if (_WIN32_WINNT >= 0x0600)
1559#endif
1560#if (_WIN32_WINNT >= 0x0501)
1562#endif
1565#if (_WIN32_WINNT >= 0x0500)
1570#endif
1575#if (_WIN32_WINNT >= 0x0500)
1577#endif
1578#if (_WIN32_WINNT >= 0x0501)
1580#endif
1581#if (_WIN32_WINNT >= 0x0500)
1584#endif
1585
1586BOOL
1587WINAPI
1589 _In_ PSECURITY_DESCRIPTOR pSecurityDescriptor,
1590 _In_opt_ PSID PrincipalSelfSid,
1591 _In_ HANDLE ClientToken,
1593 _In_reads_opt_(ObjectTypeListLength) POBJECT_TYPE_LIST ObjectTypeList,
1594 _In_ DWORD ObjectTypeListLength,
1596 _Out_writes_bytes_(*PrivilegeSetLength)PPRIVILEGE_SET PrivilegeSet,
1597 _Inout_ LPDWORD PrivilegeSetLength,
1600
1601BOOL
1602WINAPI
1604 _In_ PSECURITY_DESCRIPTOR pSecurityDescriptor,
1605 _In_opt_ PSID PrincipalSelfSid,
1606 _In_ HANDLE ClientToken,
1608 _In_reads_(ObjectTypeListLength) POBJECT_TYPE_LIST ObjectTypeList,
1609 _In_ DWORD ObjectTypeListLength,
1611 _Out_writes_bytes_(*PrivilegeSetLength) PPRIVILEGE_SET PrivilegeSet,
1612 _Inout_ LPDWORD PrivilegeSetLength,
1613 _Out_writes_(ObjectTypeListLength) LPDWORD GrantedAccess,
1614 _Out_writes_(ObjectTypeListLength) LPBOOL AccessStatus);
1615
1626
1627BOOL
1628WINAPI
1631 _Out_writes_bytes_to_(nNumberOfBytesToRead, *lpNumberOfBytesRead) LPBYTE lpBuffer,
1632 _In_ DWORD nNumberOfBytesToRead,
1633 _Out_ LPDWORD lpNumberOfBytesRead,
1634 _In_ BOOL bAbort,
1635 _In_ BOOL bProcessSecurity,
1636 _Inout_ LPVOID *lpContext);
1637
1639
1640BOOL
1641WINAPI
1646 _Out_ LPDWORD lpNumberOfBytesWritten,
1647 _In_ BOOL bAbort,
1648 _In_ BOOL bProcessSecurity,
1649 _Inout_ LPVOID *lpContext);
1650
1654#if (_WIN32_WINNT >= 0x0500)
1656#endif
1661
1662BOOL
1663WINAPI
1665 _In_ LPCSTR lpNamedPipeName,
1666 _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer,
1667 _In_ DWORD nInBufferSize,
1668 _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesRead) LPVOID lpOutBuffer,
1669 _In_ DWORD nOutBufferSize,
1670 _Out_ LPDWORD lpBytesRead,
1671 _In_ DWORD nTimeOut);
1672
1673BOOL
1674WINAPI
1676 _In_ LPCWSTR lpNamedPipeName,
1677 _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer,
1678 _In_ DWORD nInBufferSize,
1679 _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesRead) LPVOID lpOutBuffer,
1680 _In_ DWORD nOutBufferSize,
1681 _Out_ LPDWORD lpBytesRead,
1682 _In_ DWORD nTimeOut);
1683
1686#if (_WIN32_WINNT >= 0x0600)
1687BOOL WINAPI CancelIoEx(HANDLE,LPOVERLAPPED);
1688BOOL WINAPI CancelSynchronousIo(HANDLE);
1689#endif
1691
1692#if (_WIN32_WINNT >= 0x0501)
1693
1694BOOL
1695WINAPI
1698 _Out_writes_opt_(OemNameSize) LPSTR lpOemName,
1699 _In_ DWORD OemNameSize,
1700 _Out_opt_ PBOOL pbNameContainsSpaces,
1701 _Out_ PBOOL pbNameLegal);
1702
1703BOOL
1704WINAPI
1707 _Out_writes_opt_(OemNameSize) LPSTR lpOemName,
1708 _In_ DWORD OemNameSize,
1709 _Out_opt_ PBOOL pbNameContainsSpaces,
1710 _Out_ PBOOL pbNameLegal);
1711
1713#endif
1714
1726#if (_WIN32_WINNT >= 0x0400)
1728#endif
1731BOOL WINAPI CopyFileW(_In_ LPCWSTR lpExistingFileName, _In_ LPCWSTR lpNewFileName, _In_ BOOL bFailIfExists);
1734#define MoveMemory RtlMoveMemory
1735#define CopyMemory RtlCopyMemory
1736#define FillMemory RtlFillMemory
1737#define ZeroMemory RtlZeroMemory
1738#define SecureZeroMemory RtlSecureZeroMemory
1740#if (_WIN32_WINNT >= 0x0501)
1741HANDLE WINAPI CreateActCtxA(_In_ PCACTCTXA);
1742HANDLE WINAPI CreateActCtxW(_In_ PCACTCTXW);
1743#endif
1750#if (_WIN32_WINNT >= 0x0600)
1753#endif
1755#if (_WIN32_WINNT >= 0x0400)
1757#endif
1762#if (_WIN32_WINNT >= 0x0500)
1765#endif
1767#if (_WIN32_WINNT >= 0x0500)
1772#endif
1775#if (_WIN32_WINNT >= 0x0501)
1776HANDLE WINAPI CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE);
1777#endif
1780#if (_WIN32_WINNT >= 0x0600)
1783#endif
1790
1791BOOL
1792WINAPI
1799 _In_ BOOL,
1800 _In_ DWORD,
1805
1810
1811BOOL
1812WINAPI
1814 _In_ HANDLE ExistingTokenHandle,
1816 _In_ DWORD DisableSidCount,
1817 _In_reads_opt_(DisableSidCount) PSID_AND_ATTRIBUTES SidsToDisable,
1818 _In_ DWORD DeletePrivilegeCount,
1819 _In_reads_opt_(DeletePrivilegeCount) PLUID_AND_ATTRIBUTES PrivilegesToDelete,
1820 _In_ DWORD RestrictedSidCount,
1821 _In_reads_opt_(RestrictedSidCount) PSID_AND_ATTRIBUTES SidsToRestrict,
1823
1826#if (_WIN32_WINNT >= 0x0600)
1829#endif
1831
1832#if (_WIN32_WINNT >= 0x0500)
1833
1835
1836BOOL
1837WINAPI
1843 _In_ DWORD,
1844 _In_ DWORD,
1845 _In_ ULONG);
1846
1848BOOL
1849WINAPI
1851 _In_opt_ HANDLE TimerQueue,
1854 _In_ ULONG Period);
1855
1856#endif /* (_WIN32_WINNT >= 0x0500) */
1857
1861#if (_WIN32_WINNT >= 0x0600)
1863HANDLE WINAPI CreateWaitableTimerExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD);
1864#endif
1865#if (_WIN32_WINNT >= 0x0501)
1868#endif
1870#if (_WIN32_WINNT >= 0x0501)
1872#endif
1874#if (_WIN32_WINNT >= 0x0501)
1877#endif
1884#define DefineHandleTable(w) ((w),TRUE)
1891#if (_WIN32_WINNT >= 0x0500)
1897#endif
1902
1903#if (_WIN32_WINNT >= 0x0500)
1904
1905_Success_(return != FALSE)
1906BOOL
1907WINAPI
1909 _In_ LPCSTR Hostname,
1910 _Out_writes_to_opt_(*nSize, *nSize + 1) LPSTR ComputerName,
1912
1913_Success_(return != FALSE)
1914BOOL
1915WINAPI
1917 _In_ LPCWSTR Hostname,
1918 _Out_writes_to_opt_(*nSize, *nSize + 1) LPWSTR ComputerName,
1920
1921#endif
1922
1957#if (_WIN32_WINNT >= 0x0501)
1961#endif
1972#if (_WIN32_WINNT >= 0x0501)
1974#endif
1976
1977#if (_WIN32_WINNT >= 0x0500)
1978
1979HANDLE
1980WINAPI
1982 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName,
1983 _In_ DWORD cchBufferLength);
1984
1986
1987HANDLE
1988WINAPI
1990 _In_ LPCSTR lpszRootPathName,
1991 _Out_writes_(cchBufferLength) LPSTR lpszVolumeMountPoint,
1992 _In_ DWORD cchBufferLength);
1993
1994HANDLE
1995WINAPI
1997 _In_ LPCWSTR lpszRootPathName,
1998 _Out_writes_(cchBufferLength) LPWSTR lpszVolumeMountPoint,
1999 _In_ DWORD cchBufferLength);
2000
2001#endif
2002
2006#if (_WIN32_WINNT >= 0x0501)
2008#endif
2009
2010#if (_WIN32_WINNT >= 0x0500)
2011
2012BOOL
2013WINAPI
2015 _Inout_ HANDLE hFindVolume,
2016 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName,
2017 _In_ DWORD cchBufferLength);
2018
2020
2021BOOL
2022WINAPI
2024 _In_ HANDLE hFindVolumeMountPoint,
2025 _Out_writes_(cchBufferLength) LPSTR lpszVolumeMountPoint,
2026 _In_ DWORD cchBufferLength);
2027
2028BOOL
2029WINAPI
2031 _In_ HANDLE hFindVolumeMountPoint,
2032 _Out_writes_(cchBufferLength) LPWSTR lpszVolumeMountPoint,
2033 _In_ DWORD cchBufferLength);
2034
2037
2038#endif
2039
2044
2052DWORD WINAPI FormatMessageA(DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPSTR lpBuffer, DWORD nSize, va_list* Arguments);
2053DWORD WINAPI FormatMessageW(DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPWSTR lpBuffer, DWORD nSize, va_list* Arguments);
2058#define FreeModule(m) FreeLibrary(m)
2059#define FreeProcInstance(p) (void)(p)
2064#if (_WIN32_WINNT >= 0x0600)
2067#endif
2068
2069UINT
2070WINAPI
2072 _In_ ATOM nAtom,
2073 _Out_writes_to_(nSize, return + 1) LPSTR lpBuffer,
2074 _In_ int nSize);
2075
2076UINT
2077WINAPI
2079 _In_ ATOM nAtom,
2080 _Out_writes_to_(nSize, return + 1) LPWSTR lpBuffer,
2081 _In_ int nSize);
2082
2087
2088_Success_(return != FALSE)
2089BOOL
2090WINAPI
2092 _In_ HANDLE hCommDev,
2095
2103
2104_Success_(return != 0)
2105BOOL
2106WINAPI
2110
2111_Success_(return != 0)
2112BOOL
2113WINAPI
2117
2118#if (_WIN32_WINNT >= 0x0500)
2119BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD);
2120BOOL WINAPI GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD);
2121#endif
2122#if (_WIN32_WINNT >= 0x0501)
2124#endif
2133#define GetCurrentTime GetTickCount
2134
2135BOOL
2136WINAPI
2138 _In_ LPCSTR lpszName,
2141
2142BOOL
2143WINAPI
2145 _In_ LPCWSTR lpszName,
2148
2153
2154#if (_WIN32_WINNT >= 0x0502)
2155
2156_Success_(return != 0 && return < nBufferLength)
2157DWORD
2158WINAPI
2162
2163_Success_(return != 0 && return < nBufferLength)
2164DWORD
2165WINAPI
2169
2170#endif
2171
2181#if (_WIN32_WINNT >= 0x0600)
2185#endif
2189#if (_WIN32_WINNT >= 0x0600)
2191#endif
2193
2194#if (_WIN32_WINNT >= 0x0600)
2195BOOL
2196WINAPI
2200 _Out_writes_bytes_(dwBufferSize) LPVOID lpFileInformation,
2201 _In_ DWORD dwBufferSize);
2202#endif
2203
2204BOOL
2205WINAPI
2208 _In_ SECURITY_INFORMATION RequestedInformation,
2209 _Out_writes_bytes_to_opt_(nLength, *lpnLengthNeeded) PSECURITY_DESCRIPTOR pSecurityDescriptor,
2211 _Out_ LPDWORD lpnLengthNeeded);
2212
2218#define GetFreeSpace(w) (0x100000L)
2227
2228_Success_(return != 0 && return <= nBufferLength)
2229DWORD
2230WINAPI
2234
2236#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
2239#endif
2245#if (_WIN32_WINNT >= 0x0500)
2248#endif
2249
2250#if _WIN32_WINNT >= 0x0502
2253#endif
2254
2255BOOL
2256WINAPI
2258 _In_ HANDLE hNamedPipe,
2259 _Out_opt_ LPDWORD lpState,
2260 _Out_opt_ LPDWORD lpCurInstances,
2261 _Out_opt_ LPDWORD lpMaxCollectionCount,
2262 _Out_opt_ LPDWORD lpCollectDataTimeout,
2263 _Out_writes_opt_(nMaxUserNameSize) LPSTR lpUserName,
2264 _In_ DWORD nMaxUserNameSize);
2265
2266BOOL
2267WINAPI
2269 _In_ HANDLE hNamedPipe,
2270 _Out_opt_ LPDWORD lpState,
2271 _Out_opt_ LPDWORD lpCurInstances,
2272 _Out_opt_ LPDWORD lpMaxCollectionCount,
2273 _Out_opt_ LPDWORD lpCollectDataTimeout,
2274 _Out_writes_opt_(nMaxUserNameSize) LPWSTR lpUserName,
2275 _In_ DWORD nMaxUserNameSize);
2276
2278#if (_WIN32_WINNT >= 0x0501)
2280#endif
2281
2282BOOL
2283WINAPI
2285 _In_ HANDLE hEventLog,
2290
2298
2299DWORD
2300WINAPI
2302 _In_ LPCSTR lpAppName,
2303 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString,
2306
2307DWORD
2308WINAPI
2310 _In_ LPCWSTR lpAppName,
2311 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString,
2314
2315DWORD
2316WINAPI
2318 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpszReturnBuffer,
2321
2322DWORD
2323WINAPI
2325 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpszReturnBuffer,
2328
2329DWORD
2330WINAPI
2332 _In_opt_ LPCSTR lpAppName,
2333 _In_opt_ LPCSTR lpKeyName,
2334 _In_opt_ LPCSTR lpDefault,
2335 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString,
2338
2339DWORD
2340WINAPI
2342 _In_opt_ LPCWSTR lpAppName,
2343 _In_opt_ LPCWSTR lpKeyName,
2344 _In_opt_ LPCWSTR lpDefault,
2345 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString,
2348
2349BOOL
2350WINAPI
2352 _In_ LPCSTR lpszSection,
2353 _In_ LPCSTR lpszKey,
2354 _Out_writes_bytes_opt_(uSizeStruct) LPVOID lpStruct,
2355 _In_ UINT uSizeStruct,
2356 _In_opt_ LPCSTR szFile);
2357
2358BOOL
2359WINAPI
2361 _In_ LPCWSTR lpszSection,
2362 _In_ LPCWSTR lpszKey,
2363 _Out_writes_bytes_opt_(uSizeStruct) LPVOID lpStruct,
2364 _In_ UINT uSizeStruct,
2365 _In_opt_ LPCWSTR szFile);
2366
2369#if (_WIN32_WINNT >= 0x0502)
2371#endif
2374#if (_WIN32_WINNT >= 0x0502)
2377#endif
2378#if (_WIN32_WINNT >= 0x0500)
2380#endif
2385HWINSTA WINAPI GetProcessWindowStation(void);
2389
2390DWORD
2391WINAPI
2393 _In_ LPCSTR lpAppName,
2394 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString,
2395 _In_ DWORD nSize);
2396
2397DWORD
2398WINAPI
2400 _In_ LPCWSTR lpAppName,
2401 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString,
2402 _In_ DWORD nSize);
2403
2404DWORD
2405WINAPI
2407 _In_opt_ LPCSTR lpAppName,
2408 _In_opt_ LPCSTR lpKeyName,
2409 _In_opt_ LPCSTR lpDefault,
2410 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString,
2411 _In_ DWORD nSize);
2412
2413DWORD
2414WINAPI
2416 _In_opt_ LPCWSTR lpAppName,
2417 _In_opt_ LPCWSTR lpKeyName,
2418 _In_opt_ LPCWSTR lpDefault,
2419 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString,
2420 _In_ DWORD nSize);
2421
2430
2431_Success_(return != 0 && return < cchBuffer)
2432DWORD
2433WINAPI
2435 _In_ LPCSTR lpszLongPath,
2436 _Out_writes_to_opt_(cchBuffer, return + 1) LPSTR lpszShortPath,
2438
2449
2452#if (_WIN32_WINNT >= 0x0502)
2454#endif
2456#if (_WIN32_WINNT >= 0x0501)
2458#endif
2461#if (_WIN32_WINNT >= 0x0500)
2464#endif
2465
2466#if (_WIN32_WINNT >= 0x0501)
2467
2468_Success_(return != 0 && return < uSize)
2469UINT
2470WINAPI
2472 _Out_writes_to_opt_(uSize, return + 1) LPSTR lpBuffer,
2473 _In_ UINT uSize);
2474
2475_Success_(return != 0 && return < uSize)
2476UINT
2477WINAPI
2479 _Out_writes_to_opt_(uSize, return + 1) LPWSTR lpBuffer,
2480 _In_ UINT uSize);
2481
2482#endif
2483
2484DWORD
2485WINAPI
2487 _In_ HANDLE hDevice,
2488 _In_ DWORD dwOperation,
2490 _Out_writes_bytes_(*lpdwSize) LPVOID lpTapeInformation);
2491
2494
2495UINT
2496WINAPI
2498 _In_ LPCSTR lpPathName,
2499 _In_ LPCSTR lpPrefixString,
2500 _In_ UINT uUnique,
2501 _Out_writes_(MAX_PATH) LPSTR lpTempFileName);
2502
2504
2505DWORD
2506WINAPI
2510
2513#if (_WIN32_WINNT >= 0x0502)
2515#endif
2521#if (_WIN32_WINNT >= 0x0600)
2523#endif
2527
2528BOOL
2529WINAPI
2531 _Out_writes_to_opt_(*pcbBuffer, *pcbBuffer) LPSTR lpBuffer,
2532 _Inout_ LPDWORD pcbBuffer);
2533
2534BOOL
2535WINAPI
2537 _Out_writes_to_opt_(*pcbBuffer, *pcbBuffer) LPWSTR lpBuffer,
2538 _Inout_ LPDWORD pcbBuffer);
2539
2540DWORD WINAPI GetVersion(void);
2543
2544BOOL
2545WINAPI
2547 _In_opt_ LPCSTR lpRootPathName,
2548 _Out_writes_opt_(nVolumeNameSize) LPSTR lpVolumeNameBuffer,
2549 _In_ DWORD nVolumeNameSize,
2550 _Out_opt_ LPDWORD lpVolumeSerialNumber,
2551 _Out_opt_ LPDWORD lpMaximumComponentLength,
2552 _Out_opt_ LPDWORD lpFileSystemFlags,
2553 _Out_writes_opt_(nFileSystemNameSize) LPSTR lpFileSystemNameBuffer,
2554 _In_ DWORD nFileSystemNameSize);
2555
2557
2558#if (_WIN32_WINNT >= 0x0500)
2559
2560BOOL
2561WINAPI
2563 _In_ LPCSTR lpszVolumeMountPoint,
2564 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName,
2565 _In_ DWORD cchBufferLength);
2566
2568
2569BOOL
2570WINAPI
2572 _In_ LPCSTR lpszFileName,
2573 _Out_writes_(cchBufferLength) LPSTR lpszVolumePathName,
2574 _In_ DWORD cchBufferLength);
2575
2577
2578#endif
2579
2580#if (_WIN32_WINNT >= 0x0501)
2581
2582BOOL
2583WINAPI
2585 _In_ LPCSTR lpszVolumeName,
2586 _Out_writes_to_opt_(cchBufferLength, *lpcchReturnLength) _Post_ _NullNull_terminated_ LPCH lpszVolumePathNames,
2587 _In_ DWORD cchBufferLength,
2588 _Out_ PDWORD lpcchReturnLength);
2589
2591
2592#endif
2593
2601SIZE_T WINAPI GlobalCompact(_In_ DWORD); /* Obsolete: Has no effect. */
2603#define GlobalDiscard(m) GlobalReAlloc((m),0,GMEM_MOVEABLE)
2606VOID WINAPI GlobalFix(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2607UINT WINAPI GlobalFlags(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2609
2610UINT
2611WINAPI
2613 _In_ ATOM nAtom,
2614 _Out_writes_to_(nSize, return + 1) LPSTR lpBuffer,
2615 _In_ int nSize);
2616
2617UINT
2618WINAPI
2620 _In_ ATOM nAtom,
2621 _Out_writes_to_(nSize, return + 1) LPWSTR lpBuffer,
2622 _In_ int nSize);
2623
2627#if (_WIN32_WINNT >= 0x0500)
2628BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX);
2629#endif
2632VOID WINAPI GlobalUnfix(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2634BOOL WINAPI GlobalUnWire(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2635PVOID WINAPI GlobalWire(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2636#define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING)
2643#if (_WIN32_WINNT >= 0x0501)
2645#endif
2647#if (_WIN32_WINNT >= 0x0501)
2649#endif
2660#if (_WIN32_WINNT >= 0x0600)
2661VOID WINAPI InitializeConditionVariable(PCONDITION_VARIABLE);
2662#endif
2668
2669#if (_WIN32_WINNT >= 0x0600)
2671#endif
2672
2681#if (_WIN32_WINNT >= 0x0501)
2683#endif
2686
2687BOOL
2688WINAPI
2690 _In_reads_bytes_(iSize) CONST VOID *lpv,
2691 _In_ int iSize,
2692 _Inout_opt_ LPINT lpiResult);
2693
2694#if (_WIN32_WINNT >= 0x0600)
2696#endif
2700#if (_WIN32_WINNT >= 0x0501)
2703#endif
2705#define LimitEmsPages(n)
2713SIZE_T WINAPI LocalCompact(_In_ UINT); /* Obsolete: Has no effect. */
2714#define LocalDiscard(m) (LocalReAlloc((m),0,LMEM_MOVEABLE))
2716UINT WINAPI LocalFlags(_In_ HLOCAL); /* Obsolete: Has no effect. */
2721SIZE_T WINAPI LocalShrink(_In_ HLOCAL, _In_ UINT); /* Obsolete: Has no effect. */
2727#define LockSegment(w) GlobalFix((HANDLE)(w)) /* Obsolete: Has no effect. */
2730
2731_Success_(return != FALSE)
2732BOOL
2733WINAPI
2735 _In_ LPSTR lpszUsername,
2745
2746_Success_(return != FALSE)
2747BOOL
2748WINAPI
2750 _In_ LPWSTR lpszUsername,
2760
2761_Success_(return != FALSE)
2762BOOL
2763WINAPI
2765 _In_opt_ LPCSTR lpSystemName,
2772
2773_Success_(return != FALSE)
2774BOOL
2775WINAPI
2777 _In_opt_ LPCWSTR lpSystemName,
2784
2785_Success_(return !=