ReactOS  r75907
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
11 extern "C" {
12 #endif
13 
14 #ifdef _MSC_VER
15 #pragma warning(push)
16 #pragma warning(disable:4201)
17 #pragma warning(disable:4214)
18 #pragma warning(disable:4820)
19 #endif
20 
21 #define PROCESS_NAME_NATIVE 1
22 
23 #define FILE_ENCRYPTABLE 0
24 #define FILE_IS_ENCRYPTED 1
25 #define FILE_SYSTEM_ATTR 2
26 #define FILE_ROOT_DIR 3
27 #define FILE_SYSTEM_DIR 4
28 #define FILE_UNKNOWN 5
29 #define FILE_SYSTEM_NOT_SUPPORT 6
30 #define FILE_USER_DISALLOWED 7
31 #define FILE_READ_ONLY 8
32 #define FILE_DIR_DISALLOWED 9
33 
34 #define COMMPROP_INITIALIZED 0xE73CF52E
35 #define SP_SERIALCOMM 1
36 #define PST_UNSPECIFIED 0
37 #define PST_RS232 1
38 #define PST_PARALLELPORT 2
39 #define PST_RS422 3
40 #define PST_RS423 4
41 #define PST_RS449 5
42 #define PST_MODEM 6
43 #define PST_FAX 0x21
44 #define PST_SCANNER 0x22
45 #define PST_NETWORK_BRIDGE 0x100
46 #define PST_LAT 0x101
47 #define PST_TCPIP_TELNET 0x102
48 #define PST_X25 0x103
49 #define BAUD_075 1
50 #define BAUD_110 2
51 #define BAUD_134_5 4
52 #define BAUD_150 8
53 #define BAUD_300 16
54 #define BAUD_600 32
55 #define BAUD_1200 64
56 #define BAUD_1800 128
57 #define BAUD_2400 256
58 #define BAUD_4800 512
59 #define BAUD_7200 1024
60 #define BAUD_9600 2048
61 #define BAUD_14400 4096
62 #define BAUD_19200 8192
63 #define BAUD_38400 16384
64 #define BAUD_56K 32768
65 #define BAUD_128K 65536
66 #define BAUD_115200 131072
67 #define BAUD_57600 262144
68 #define BAUD_USER 0x10000000
69 #define PCF_DTRDSR 1
70 #define PCF_RTSCTS 2
71 #define PCF_RLSD 4
72 #define PCF_PARITY_CHECK 8
73 #define PCF_XONXOFF 16
74 #define PCF_SETXCHAR 32
75 #define PCF_TOTALTIMEOUTS 64
76 #define PCF_INTTIMEOUTS 128
77 #define PCF_SPECIALCHARS 256
78 #define PCF_16BITMODE 512
79 #define SP_PARITY 1
80 #define SP_BAUD 2
81 #define SP_DATABITS 4
82 #define SP_STOPBITS 8
83 #define SP_HANDSHAKING 16
84 #define SP_PARITY_CHECK 32
85 #define SP_RLSD 64
86 #define DATABITS_5 1
87 #define DATABITS_6 2
88 #define DATABITS_7 4
89 #define DATABITS_8 8
90 #define DATABITS_16 16
91 #define DATABITS_16X 32
92 #define STOPBITS_10 1
93 #define STOPBITS_15 2
94 #define STOPBITS_20 4
95 #define PARITY_NONE 256
96 #define PARITY_ODD 512
97 #define PARITY_EVEN 1024
98 #define PARITY_MARK 2048
99 #define PARITY_SPACE 4096
100 #define EXCEPTION_DEBUG_EVENT 1
101 #define CREATE_THREAD_DEBUG_EVENT 2
102 #define CREATE_PROCESS_DEBUG_EVENT 3
103 #define EXIT_THREAD_DEBUG_EVENT 4
104 #define EXIT_PROCESS_DEBUG_EVENT 5
105 #define LOAD_DLL_DEBUG_EVENT 6
106 #define UNLOAD_DLL_DEBUG_EVENT 7
107 #define OUTPUT_DEBUG_STRING_EVENT 8
108 #define RIP_EVENT 9
109 #define HFILE_ERROR ((HFILE)-1)
110 #define FILE_BEGIN 0
111 #define FILE_CURRENT 1
112 #define FILE_END 2
113 #define INVALID_SET_FILE_POINTER ((DWORD)-1)
114 #define OF_READ 0
115 #define OF_READWRITE 2
116 #define OF_WRITE 1
117 #define OF_SHARE_COMPAT 0
118 #define OF_SHARE_DENY_NONE 64
119 #define OF_SHARE_DENY_READ 48
120 #define OF_SHARE_DENY_WRITE 32
121 #define OF_SHARE_EXCLUSIVE 16
122 #define OF_CANCEL 2048
123 #define OF_CREATE 4096
124 #define OF_DELETE 512
125 #define OF_EXIST 16384
126 #define OF_PARSE 256
127 #define OF_PROMPT 8192
128 #define OF_REOPEN 32768
129 #define OF_VERIFY 1024
130 #define NMPWAIT_NOWAIT 1
131 #define NMPWAIT_WAIT_FOREVER ((DWORD)-1)
132 #define NMPWAIT_USE_DEFAULT_WAIT 0
133 #define CE_BREAK 16
134 #define CE_DNS 2048
135 #define CE_FRAME 8
136 #define CE_IOE 1024
137 #define CE_MODE 32768
138 #define CE_OOP 4096
139 #define CE_OVERRUN 2
140 #define CE_PTO 512
141 #define CE_RXOVER 1
142 #define CE_RXPARITY 4
143 #define CE_TXFULL 256
144 #define PROGRESS_CONTINUE 0
145 #define PROGRESS_CANCEL 1
146 #define PROGRESS_STOP 2
147 #define PROGRESS_QUIET 3
148 #define CALLBACK_CHUNK_FINISHED 0
149 #define CALLBACK_STREAM_SWITCH 1
150 #define OFS_MAXPATHNAME 128
151 #define FILE_MAP_COPY SECTION_QUERY
152 #define FILE_MAP_WRITE SECTION_MAP_WRITE
153 #define FILE_MAP_READ SECTION_MAP_READ
154 #define FILE_MAP_ALL_ACCESS SECTION_ALL_ACCESS
155 #define FILE_MAP_EXECUTE SECTION_MAP_EXECUTE_EXPLICIT
156 #define MUTEX_ALL_ACCESS 0x1f0001
157 #define MUTEX_MODIFY_STATE 1
158 #define SEMAPHORE_ALL_ACCESS 0x1f0003
159 #define SEMAPHORE_MODIFY_STATE 2
160 #define EVENT_ALL_ACCESS 0x1f0003
161 #define EVENT_MODIFY_STATE 2
162 #define PIPE_ACCESS_DUPLEX 3
163 #define PIPE_ACCESS_INBOUND 1
164 #define PIPE_ACCESS_OUTBOUND 2
165 #define PIPE_TYPE_BYTE 0
166 #define PIPE_TYPE_MESSAGE 4
167 #define PIPE_READMODE_BYTE 0
168 #define PIPE_READMODE_MESSAGE 2
169 #define PIPE_WAIT 0
170 #define PIPE_NOWAIT 1
171 #define PIPE_CLIENT_END 0
172 #define PIPE_SERVER_END 1
173 #define PIPE_UNLIMITED_INSTANCES 255
174 #define DEBUG_PROCESS 0x00000001
175 #define DEBUG_ONLY_THIS_PROCESS 0x00000002
176 #define CREATE_SUSPENDED 0x00000004
177 #define DETACHED_PROCESS 0x00000008
178 #define CREATE_NEW_CONSOLE 0x00000010
179 #define NORMAL_PRIORITY_CLASS 0x00000020
180 #define IDLE_PRIORITY_CLASS 0x00000040
181 #define HIGH_PRIORITY_CLASS 0x00000080
182 #define REALTIME_PRIORITY_CLASS 0x00000100
183 #define CREATE_NEW_PROCESS_GROUP 0x00000200
184 #define CREATE_UNICODE_ENVIRONMENT 0x00000400
185 #define CREATE_SEPARATE_WOW_VDM 0x00000800
186 #define CREATE_SHARED_WOW_VDM 0x00001000
187 #define CREATE_FORCEDOS 0x00002000
188 #define BELOW_NORMAL_PRIORITY_CLASS 0x00004000
189 #define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000
190 #define CREATE_BREAKAWAY_FROM_JOB 0x01000000
191 #define CREATE_PRESERVE_CODE_AUTHZ_LEVEL 0x02000000
192 #define CREATE_DEFAULT_ERROR_MODE 0x04000000
193 #define CREATE_NO_WINDOW 0x08000000
194 #define PROFILE_USER 0x10000000
195 #define PROFILE_KERNEL 0x20000000
196 #define PROFILE_SERVER 0x40000000
197 #define CREATE_NEW 1
198 #define CREATE_ALWAYS 2
199 #define OPEN_EXISTING 3
200 #define OPEN_ALWAYS 4
201 #define TRUNCATE_EXISTING 5
202 #define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x00000008
203 #define COPY_FILE_FAIL_IF_EXISTS 0x00000001
204 #define COPY_FILE_RESTARTABLE 0x00000002
205 #define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004
206 #define FILE_FLAG_WRITE_THROUGH 0x80000000
207 #define FILE_FLAG_OVERLAPPED 1073741824
208 #define FILE_FLAG_NO_BUFFERING 536870912
209 #define FILE_FLAG_RANDOM_ACCESS 268435456
210 #define FILE_FLAG_SEQUENTIAL_SCAN 134217728
211 #define FILE_FLAG_DELETE_ON_CLOSE 67108864
212 #define FILE_FLAG_BACKUP_SEMANTICS 33554432
213 #define FILE_FLAG_POSIX_SEMANTICS 16777216
214 #define FILE_FLAG_OPEN_REPARSE_POINT 2097152
215 #define FILE_FLAG_OPEN_NO_RECALL 1048576
216 #if (_WIN32_WINNT >= 0x0500)
217 #define FILE_FLAG_FIRST_PIPE_INSTANCE 524288
218 #endif
219 #define CLRDTR 6
220 #define CLRRTS 4
221 #define SETDTR 5
222 #define SETRTS 3
223 #define SETXOFF 1
224 #define SETXON 2
225 #define RESETDEV 7
226 #define SETBREAK 8
227 #define CLRBREAK 9
228 #define STILL_ACTIVE 0x103
229 #define FIND_FIRST_EX_CASE_SENSITIVE 1
230 #define FIND_FIRST_EX_LARGE_FETCH 2
231 #define SCS_32BIT_BINARY 0
232 #define SCS_64BIT_BINARY 6
233 #define SCS_DOS_BINARY 1
234 #define SCS_OS216_BINARY 5
235 #define SCS_PIF_BINARY 3
236 #define SCS_POSIX_BINARY 4
237 #define SCS_WOW_BINARY 2
238 #define MAX_COMPUTERNAME_LENGTH 15
239 #define HW_PROFILE_GUIDLEN 39
240 #define MAX_PROFILE_LEN 80
241 #define DOCKINFO_UNDOCKED 1
242 #define DOCKINFO_DOCKED 2
243 #define DOCKINFO_USER_SUPPLIED 4
244 #define DOCKINFO_USER_UNDOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_UNDOCKED)
245 #define DOCKINFO_USER_DOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_DOCKED)
246 #define DRIVE_REMOVABLE 2
247 #define DRIVE_FIXED 3
248 #define DRIVE_REMOTE 4
249 #define DRIVE_CDROM 5
250 #define DRIVE_RAMDISK 6
251 #define DRIVE_UNKNOWN 0
252 #define DRIVE_NO_ROOT_DIR 1
253 #define FILE_TYPE_UNKNOWN 0
254 #define FILE_TYPE_DISK 1
255 #define FILE_TYPE_CHAR 2
256 #define FILE_TYPE_PIPE 3
257 #define FILE_TYPE_REMOTE 0x8000
258 /* also in ddk/ntapi.h */
259 #define HANDLE_FLAG_INHERIT 0x01
260 #define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x02
261 /* end ntapi.h */
262 #define STD_INPUT_HANDLE (DWORD)(0xfffffff6)
263 #define STD_OUTPUT_HANDLE (DWORD)(0xfffffff5)
264 #define STD_ERROR_HANDLE (DWORD)(0xfffffff4)
265 #define INVALID_HANDLE_VALUE (HANDLE)(-1)
266 #define GET_TAPE_MEDIA_INFORMATION 0
267 #define GET_TAPE_DRIVE_INFORMATION 1
268 #define SET_TAPE_MEDIA_INFORMATION 0
269 #define SET_TAPE_DRIVE_INFORMATION 1
270 #define THREAD_PRIORITY_ABOVE_NORMAL 1
271 #define THREAD_PRIORITY_BELOW_NORMAL (-1)
272 #define THREAD_PRIORITY_HIGHEST 2
273 #define THREAD_PRIORITY_IDLE (-15)
274 #define THREAD_PRIORITY_LOWEST (-2)
275 #define THREAD_PRIORITY_NORMAL 0
276 #define THREAD_PRIORITY_TIME_CRITICAL 15
277 #define THREAD_PRIORITY_ERROR_RETURN 2147483647
278 #define TIME_ZONE_ID_UNKNOWN 0
279 #define TIME_ZONE_ID_STANDARD 1
280 #define TIME_ZONE_ID_DAYLIGHT 2
281 #define TIME_ZONE_ID_INVALID 0xFFFFFFFF
282 #define FS_CASE_IS_PRESERVED 2
283 #define FS_CASE_SENSITIVE 1
284 #define FS_UNICODE_STORED_ON_DISK 4
285 #define FS_PERSISTENT_ACLS 8
286 #define FS_FILE_COMPRESSION 16
287 #define FS_VOL_IS_COMPRESSED 32768
288 #define GMEM_FIXED 0
289 #define GMEM_MOVEABLE 2
290 #define GMEM_MODIFY 128
291 #define GPTR 64
292 #define GHND 66
293 #define GMEM_DDESHARE 8192
294 #define GMEM_DISCARDABLE 256
295 #define GMEM_LOWER 4096
296 #define GMEM_NOCOMPACT 16
297 #define GMEM_NODISCARD 32
298 #define GMEM_NOT_BANKED 4096
299 #define GMEM_NOTIFY 16384
300 #define GMEM_SHARE 8192
301 #define GMEM_ZEROINIT 64
302 #define GMEM_DISCARDED 16384
303 #define GMEM_INVALID_HANDLE 32768
304 #define GMEM_LOCKCOUNT 255
305 #define GMEM_VALID_FLAGS 32626
306 #define EXCEPTION_ACCESS_VIOLATION ((DWORD)0xC0000005)
307 #define EXCEPTION_DATATYPE_MISALIGNMENT ((DWORD)0x80000002)
308 #define EXCEPTION_BREAKPOINT ((DWORD)0x80000003)
309 #define EXCEPTION_SINGLE_STEP ((DWORD)0x80000004)
310 #define EXCEPTION_ARRAY_BOUNDS_EXCEEDED ((DWORD)0xC000008C)
311 #define EXCEPTION_FLT_DENORMAL_OPERAND ((DWORD)0xC000008D)
312 #define EXCEPTION_FLT_DIVIDE_BY_ZERO ((DWORD)0xC000008E)
313 #define EXCEPTION_FLT_INEXACT_RESULT ((DWORD)0xC000008F)
314 #define EXCEPTION_FLT_INVALID_OPERATION ((DWORD)0xC0000090)
315 #define EXCEPTION_FLT_OVERFLOW ((DWORD)0xC0000091)
316 #define EXCEPTION_FLT_STACK_CHECK ((DWORD)0xC0000092)
317 #define EXCEPTION_FLT_UNDERFLOW ((DWORD)0xC0000093)
318 #define EXCEPTION_INT_DIVIDE_BY_ZERO ((DWORD)0xC0000094)
319 #define EXCEPTION_INT_OVERFLOW ((DWORD)0xC0000095)
320 #define EXCEPTION_PRIV_INSTRUCTION ((DWORD)0xC0000096)
321 #define EXCEPTION_IN_PAGE_ERROR ((DWORD)0xC0000006)
322 #define EXCEPTION_ILLEGAL_INSTRUCTION ((DWORD)0xC000001D)
323 #define EXCEPTION_NONCONTINUABLE_EXCEPTION ((DWORD)0xC0000025)
324 #define EXCEPTION_STACK_OVERFLOW ((DWORD)0xC00000FD)
325 #define EXCEPTION_INVALID_DISPOSITION ((DWORD)0xC0000026)
326 #define EXCEPTION_GUARD_PAGE ((DWORD)0x80000001)
327 #define EXCEPTION_INVALID_HANDLE ((DWORD)0xC0000008L)
328 #define CONTROL_C_EXIT ((DWORD)0xC000013A)
329 #define PROCESS_HEAP_REGION 1
330 #define PROCESS_HEAP_UNCOMMITTED_RANGE 2
331 #define PROCESS_HEAP_ENTRY_BUSY 4
332 #define PROCESS_HEAP_ENTRY_MOVEABLE 16
333 #define PROCESS_HEAP_ENTRY_DDESHARE 32
334 #define DONT_RESOLVE_DLL_REFERENCES 1
335 #define LOAD_LIBRARY_AS_DATAFILE 2
336 #define LOAD_WITH_ALTERED_SEARCH_PATH 8
337 #define LOAD_IGNORE_CODE_AUTHZ_LEVEL 16
338 #define LOAD_LIBRARY_AS_IMAGE_RESOURCE 32
339 #define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 64
340 #define LMEM_FIXED 0
341 #define LMEM_MOVEABLE 2
342 #define LMEM_NONZEROLHND 2
343 #define LMEM_NONZEROLPTR 0
344 #define LMEM_DISCARDABLE 3840
345 #define LMEM_NOCOMPACT 16
346 #define LMEM_NODISCARD 32
347 #define LMEM_ZEROINIT 64
348 #define LMEM_DISCARDED 16384
349 #define LMEM_MODIFY 128
350 #define LMEM_INVALID_HANDLE 32768
351 #define LMEM_LOCKCOUNT 255
352 #define LMEM_VALID_FLAGS 0x0F72
353 #define LPTR 64
354 #define LHND 66
355 #define NONZEROLHND 2
356 #define NONZEROLPTR 0
357 #define LOCKFILE_FAIL_IMMEDIATELY 1
358 #define LOCKFILE_EXCLUSIVE_LOCK 2
359 #define LOGON32_PROVIDER_DEFAULT 0
360 #define LOGON32_PROVIDER_WINNT35 1
361 #define LOGON32_PROVIDER_WINNT40 2
362 #define LOGON32_PROVIDER_WINNT50 3
363 #define LOGON32_LOGON_INTERACTIVE 2
364 #define LOGON32_LOGON_NETWORK 3
365 #define LOGON32_LOGON_BATCH 4
366 #define LOGON32_LOGON_SERVICE 5
367 #define LOGON32_LOGON_UNLOCK 7
368 #define LOGON32_LOGON_NETWORK_CLEARTEXT 8
369 #define LOGON32_LOGON_NEW_CREDENTIALS 9
370 #define MOVEFILE_REPLACE_EXISTING 1
371 #define MOVEFILE_COPY_ALLOWED 2
372 #define MOVEFILE_DELAY_UNTIL_REBOOT 4
373 #define MOVEFILE_WRITE_THROUGH 8
374 #define MOVEFILE_CREATE_HARDLINK 16
375 #define MOVEFILE_FAIL_IF_NOT_TRACKABLE 32
376 #define MAXIMUM_WAIT_OBJECTS 64
377 #define MAXIMUM_SUSPEND_COUNT 0x7F
378 #define WAIT_OBJECT_0 0
379 #define WAIT_ABANDONED_0 128
380 #ifndef WAIT_TIMEOUT /* also in winerror.h */
381 #define WAIT_TIMEOUT 258
382 #endif
383 #define WAIT_IO_COMPLETION 0xC0
384 #define WAIT_ABANDONED 128
385 #define WAIT_FAILED ((DWORD)0xFFFFFFFF)
386 #define PURGE_TXABORT 1
387 #define PURGE_RXABORT 2
388 #define PURGE_TXCLEAR 4
389 #define PURGE_RXCLEAR 8
390 
391 #define FORMAT_MESSAGE_ALLOCATE_BUFFER 256
392 #define FORMAT_MESSAGE_IGNORE_INSERTS 512
393 #define FORMAT_MESSAGE_FROM_STRING 1024
394 #define FORMAT_MESSAGE_FROM_HMODULE 2048
395 #define FORMAT_MESSAGE_FROM_SYSTEM 4096
396 #define FORMAT_MESSAGE_ARGUMENT_ARRAY 8192
397 #define FORMAT_MESSAGE_MAX_WIDTH_MASK 255
398 #define EV_BREAK 64
399 #define EV_CTS 8
400 #define EV_DSR 16
401 #define EV_ERR 128
402 #define EV_EVENT1 2048
403 #define EV_EVENT2 4096
404 #define EV_PERR 512
405 #define EV_RING 256
406 #define EV_RLSD 32
407 #define EV_RX80FULL 1024
408 #define EV_RXCHAR 1
409 #define EV_RXFLAG 2
410 #define EV_TXEMPTY 4
411 /* also in ddk/ntapi.h */
412 #define SEM_FAILCRITICALERRORS 0x0001
413 #define SEM_NOGPFAULTERRORBOX 0x0002
414 #define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
415 #define SEM_NOOPENFILEERRORBOX 0x8000
416 /* end ntapi.h */
417 #define SLE_ERROR 1
418 #define SLE_MINORERROR 2
419 #define SLE_WARNING 3
420 #define SHUTDOWN_NORETRY 1
421 #define MAXINTATOM 0xC000
422 #define INVALID_ATOM ((ATOM)0)
423 #define IGNORE 0
424 #define INFINITE 0xFFFFFFFF
425 #define NOPARITY 0
426 #define ODDPARITY 1
427 #define EVENPARITY 2
428 #define MARKPARITY 3
429 #define SPACEPARITY 4
430 #define ONESTOPBIT 0
431 #define ONE5STOPBITS 1
432 #define TWOSTOPBITS 2
433 #define CBR_110 110
434 #define CBR_300 300
435 #define CBR_600 600
436 #define CBR_1200 1200
437 #define CBR_2400 2400
438 #define CBR_4800 4800
439 #define CBR_9600 9600
440 #define CBR_14400 14400
441 #define CBR_19200 19200
442 #define CBR_38400 38400
443 #define CBR_56000 56000
444 #define CBR_57600 57600
445 #define CBR_115200 115200
446 #define CBR_128000 128000
447 #define CBR_256000 256000
448 #define BACKUP_INVALID 0
449 #define BACKUP_DATA 1
450 #define BACKUP_EA_DATA 2
451 #define BACKUP_SECURITY_DATA 3
452 #define BACKUP_ALTERNATE_DATA 4
453 #define BACKUP_LINK 5
454 #define BACKUP_PROPERTY_DATA 6
455 #define BACKUP_OBJECT_ID 7
456 #define BACKUP_REPARSE_DATA 8
457 #define BACKUP_SPARSE_BLOCK 9
458 #define STREAM_NORMAL_ATTRIBUTE 0
459 #define STREAM_MODIFIED_WHEN_READ 1
460 #define STREAM_CONTAINS_SECURITY 2
461 #define STREAM_CONTAINS_PROPERTIES 4
462 
463 #define STARTF_USESHOWWINDOW 0x00000001
464 #define STARTF_USESIZE 0x00000002
465 #define STARTF_USEPOSITION 0x00000004
466 #define STARTF_USECOUNTCHARS 0x00000008
467 #define STARTF_USEFILLATTRIBUTE 0x00000010
468 #define STARTF_RUNFULLSCREEN 0x00000020
469 #define STARTF_FORCEONFEEDBACK 0x00000040
470 #define STARTF_FORCEOFFFEEDBACK 0x00000080
471 #define STARTF_USESTDHANDLES 0x00000100
472 #if (WINVER >= 0x400)
473 #define STARTF_USEHOTKEY 0x00000200
474 #define STARTF_TITLEISLINKNAME 0x00000800
475 #define STARTF_TITLEISAPPID 0x00001000
476 #define STARTF_PREVENTPINNING 0x00002000
477 #endif /* (WINVER >= 0x400) */
478 
479 #define TC_NORMAL 0
480 #define TC_HARDERR 1
481 #define TC_GP_TRAP 2
482 #define TC_SIGNAL 3
483 #define AC_LINE_OFFLINE 0
484 #define AC_LINE_ONLINE 1
485 #define AC_LINE_BACKUP_POWER 2
486 #define AC_LINE_UNKNOWN 255
487 #define BATTERY_FLAG_HIGH 1
488 #define BATTERY_FLAG_LOW 2
489 #define BATTERY_FLAG_CRITICAL 4
490 #define BATTERY_FLAG_CHARGING 8
491 #define BATTERY_FLAG_NO_BATTERY 128
492 #define BATTERY_FLAG_UNKNOWN 255
493 #define BATTERY_PERCENTAGE_UNKNOWN 255
494 #define BATTERY_LIFE_UNKNOWN 0xFFFFFFFF
495 #define DDD_RAW_TARGET_PATH 1
496 #define DDD_REMOVE_DEFINITION 2
497 #define DDD_EXACT_MATCH_ON_REMOVE 4
498 #define DDD_NO_BROADCAST_SYSTEM 8
499 #define DDD_LUID_BROADCAST_DRIVE 16
500 #define HINSTANCE_ERROR 32
501 #define MS_CTS_ON 16
502 #define MS_DSR_ON 32
503 #define MS_RING_ON 64
504 #define MS_RLSD_ON 128
505 #define DTR_CONTROL_DISABLE 0
506 #define DTR_CONTROL_ENABLE 1
507 #define DTR_CONTROL_HANDSHAKE 2
508 #define RTS_CONTROL_DISABLE 0
509 #define RTS_CONTROL_ENABLE 1
510 #define RTS_CONTROL_HANDSHAKE 2
511 #define RTS_CONTROL_TOGGLE 3
512 #define SECURITY_ANONYMOUS (SecurityAnonymous<<16)
513 #define SECURITY_IDENTIFICATION (SecurityIdentification<<16)
514 #define SECURITY_IMPERSONATION (SecurityImpersonation<<16)
515 #define SECURITY_DELEGATION (SecurityDelegation<<16)
516 #define SECURITY_CONTEXT_TRACKING 0x40000
517 #define SECURITY_EFFECTIVE_ONLY 0x80000
518 #define SECURITY_SQOS_PRESENT 0x100000
519 #define SECURITY_VALID_SQOS_FLAGS 0x1F0000
520 #define INVALID_FILE_SIZE 0xFFFFFFFF
521 #define TLS_OUT_OF_INDEXES (DWORD)0xFFFFFFFF
522 #if (_WIN32_WINNT >= 0x0501)
523 #define ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID 0x00000001
524 #define ACTCTX_FLAG_LANGID_VALID 0x00000002
525 #define ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID 0x00000004
526 #define ACTCTX_FLAG_RESOURCE_NAME_VALID 0x00000008
527 #define ACTCTX_FLAG_SET_PROCESS_DEFAULT 0x00000010
528 #define ACTCTX_FLAG_APPLICATION_NAME_VALID 0x00000020
529 #define ACTCTX_FLAG_SOURCE_IS_ASSEMBLYREF 0x00000040
530 #define ACTCTX_FLAG_HMODULE_VALID 0x00000080
531 #define DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION 0x00000001
532 #define FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX 0x00000001
533 #define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX 0x00000004
534 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE 0x00000008
535 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS 0x00000010
536 #define QUERY_ACTCTX_FLAG_NO_ADDREF 0x80000000
537 #if (_WIN32_WINNT >= 0x0600)
538 #define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1
539 #endif
540 #endif /* (_WIN32_WINNT >= 0x0501) */
541 #if (_WIN32_WINNT >= 0x0500)
542 #define REPLACEFILE_WRITE_THROUGH 0x00000001
543 #define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002
544 #endif /* (_WIN32_WINNT >= 0x0500) */
545 #if (_WIN32_WINNT >= 0x0400)
546 #define FIBER_FLAG_FLOAT_SWITCH 0x1
547 #endif
548 #define FLS_OUT_OF_INDEXES 0xFFFFFFFF
549 #define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
550 #if (_WIN32_WINNT >= 0x0600)
551 #define MAX_RESTART_CMD_LINE 0x800
552 #define RESTART_CYCLICAL 0x1
553 #define RESTART_NOTIFY_SOLUTION 0x2
554 #define RESTART_NOTIFY_FAULT 0x4
555 #define VOLUME_NAME_DOS 0x0
556 #define VOLUME_NAME_GUID 0x1
557 #define VOLUME_NAME_NT 0x2
558 #define VOLUME_NAME_NONE 0x4
559 #define FILE_NAME_NORMALIZED 0x0
560 #define FILE_NAME_OPENED 0x8
561 #define FILE_SKIP_COMPLETION_PORT_ON_SUCCESS 0x1
562 #define FILE_SKIP_SET_EVENT_ON_HANDLE 0x2
563 #endif
564 #if (_WIN32_WINNT >= 0x0500)
565 #define GET_MODULE_HANDLE_EX_FLAG_PIN 0x1
566 #define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT 0x2
567 #define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 0x4
568 #endif
569 #if (_WIN32_WINNT >= 0x0600)
570 #define CREATE_EVENT_MANUAL_RESET 0x1
571 #define CREATE_EVENT_INITIAL_SET 0x2
572 #define CREATE_MUTEX_INITIAL_OWNER 0x1
573 #define CREATE_WAITABLE_TIMER_MANUAL_RESET 0x1
574 #define SRWLOCK_INIT RTL_SRWLOCK_INIT
575 #define CONDITION_VARIABLE_INIT RTL_CONDITION_VARIABLE_INIT
576 #define CONDITION_VARIABLE_LOCKMODE_SHARED RTL_CONDITION_VARIABLE_LOCKMODE_SHARED
577 #endif
578 
579 #define INIT_ONCE_STATIC_INIT RTL_RUN_ONCE_INIT
580 
581 #if (_WIN32_WINNT >= 0x0600)
582 #define PROCESS_DEP_ENABLE 0x00000001
583 #define PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION 0x00000002
584 #endif
585 
586 #ifndef RC_INVOKED
587 
588 #ifndef _FILETIME_
589 #define _FILETIME_
590 typedef struct _FILETIME {
594 #endif
595 
608 
609 typedef struct _DCB {
632  char XonChar;
633  char XoffChar;
634  char ErrorChar;
635  char EofChar;
636  char EvtChar;
638 } DCB,*LPDCB;
639 
640 typedef struct _COMM_CONFIG {
650 
651 typedef struct _COMMPROP {
671 
672 typedef struct _COMMTIMEOUTS {
679 
680 typedef struct _COMSTAT {
691 } COMSTAT,*LPCOMSTAT;
692 
694 
707 
713 
714 typedef struct _EXCEPTION_DEBUG_INFO {
718 
719 typedef struct _EXIT_THREAD_DEBUG_INFO {
722 
723 typedef struct _EXIT_PROCESS_DEBUG_INFO {
726 
727 typedef struct _LOAD_DLL_DEBUG_INFO {
735 
736 typedef struct _UNLOAD_DLL_DEBUG_INFO {
739 
745 
746 typedef struct _RIP_INFO {
750 
751 typedef struct _DEBUG_EVENT {
755  union {
765  } u;
767 
768 typedef struct _OVERLAPPED {
771  union {
772  struct {
775  } DUMMYSTRUCTNAME;
777  } DUMMYUNIONNAME;
780 
781 typedef struct _STARTUPINFOA {
801 
802 typedef struct _STARTUPINFOW {
822 
823 typedef struct _PROCESS_INFORMATION {
829 
830 typedef struct _CRITICAL_SECTION_DEBUG {
837 //#ifdef __WINESRC__ //not all wine code is marked so
838  DWORD_PTR Spare[8/sizeof(DWORD_PTR)];/* in Wine they store a string here */
839 //#else
840  //WORD SpareWORD;
841 //#endif
843 
844 typedef struct _CRITICAL_SECTION {
845  PCRITICAL_SECTION_DEBUG DebugInfo;
852 
853 #ifndef _SYSTEMTIME_
854 #define _SYSTEMTIME_
855 typedef struct _SYSTEMTIME {
865 #endif /* _SYSTEMTIME_ */
866 #if (_WIN32_WINNT >= 0x0500)
868 #endif
877 typedef struct _WIN32_FIND_DATAA {
889 typedef struct _WIN32_FIND_DATAW {
901 
902 #if (_WIN32_WINNT >= 0x0501)
903 typedef enum _STREAM_INFO_LEVELS {
904  FindStreamInfoStandard
905 } STREAM_INFO_LEVELS;
906 
907 typedef struct _WIN32_FIND_STREAM_DATA {
908  LARGE_INTEGER StreamSize;
909  WCHAR cStreamName[MAX_PATH + 36];
910 } WIN32_FIND_STREAM_DATA, *PWIN32_FIND_STREAM_DATA;
911 #endif
912 
913 typedef struct _WIN32_STREAM_ID {
920 
921 #if (_WIN32_WINNT >= 0x0600)
922 
923 typedef enum _FILE_ID_TYPE {
924  FileIdType,
925  ObjectIdType,
926  ExtendedFileIdType,
927  MaximumFileIdType
928 } FILE_ID_TYPE, *PFILE_ID_TYPE;
929 
930 typedef struct _FILE_ID_DESCRIPTOR {
931  DWORD dwSize;
932  FILE_ID_TYPE Type;
933  union {
934  LARGE_INTEGER FileId;
935  GUID ObjectId;
936  } DUMMYUNIONNAME;
937 } FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR;
938 
939 typedef enum _FILE_INFO_BY_HANDLE_CLASS {
940  FileBasicInfo,
941  FileStandardInfo,
942  FileNameInfo,
943  FileRenameInfo,
944  FileDispositionInfo,
945  FileAllocationInfo,
946  FileEndOfFileInfo,
947  FileStreamInfo,
948  FileCompressionInfo,
949  FileAttributeTagInfo,
950  FileIdBothDirectoryInfo,
951  FileIdBothDirectoryRestartInfo,
952  FileIoPriorityHintInfo,
953  FileRemoteProtocolInfo,
954  FileFullDirectoryInfo,
955  FileFullDirectoryRestartInfo,
956  FileStorageInfo,
957  FileAlignmentInfo,
958  FileIdInfo,
959  FileIdExtdDirectoryInfo,
960  FileIdExtdDirectoryRestartInfo,
961  MaximumFileInfoByHandlesClass
962 } FILE_INFO_BY_HANDLE_CLASS, *PFILE_INFO_BY_HANDLE_CLASS;
963 
964 typedef struct _FILE_ID_BOTH_DIR_INFO {
965  DWORD NextEntryOffset;
966  DWORD FileIndex;
967  LARGE_INTEGER CreationTime;
968  LARGE_INTEGER LastAccessTime;
969  LARGE_INTEGER LastWriteTime;
970  LARGE_INTEGER ChangeTime;
971  LARGE_INTEGER EndOfFile;
975  DWORD EaSize;
976  CCHAR ShortNameLength;
977  WCHAR ShortName[12];
978  LARGE_INTEGER FileId;
979  WCHAR FileName[1];
980 } FILE_ID_BOTH_DIR_INFO, *PFILE_ID_BOTH_DIR_INFO;
981 
982 typedef struct _FILE_BASIC_INFO {
983  LARGE_INTEGER CreationTime;
984  LARGE_INTEGER LastAccessTime;
985  LARGE_INTEGER LastWriteTime;
986  LARGE_INTEGER ChangeTime;
988 } FILE_BASIC_INFO, *PFILE_BASIC_INFO;
989 
990 typedef struct _FILE_STANDARD_INFO {
992  LARGE_INTEGER EndOfFile;
993  DWORD NumberOfLinks;
994  BOOLEAN DeletePending;
996 } FILE_STANDARD_INFO, *PFILE_STANDARD_INFO;
997 
998 typedef struct _FILE_NAME_INFO {
1000  WCHAR FileName[1];
1001 } FILE_NAME_INFO, *PFILE_NAME_INFO;
1002 
1003 typedef enum _PRIORITY_HINT {
1004  IoPriorityHintVeryLow,
1005  IoPriorityHintLow,
1006  IoPriorityHintNormal,
1007  MaximumIoPriorityHintType
1008 } PRIORITY_HINT;
1009 
1010 typedef struct _FILE_IO_PRIORITY_HINT_INFO {
1011  PRIORITY_HINT PriorityHint;
1012 } FILE_IO_PRIORITY_HINT_INFO;
1013 
1014 typedef struct _FILE_ALLOCATION_INFO {
1016 } FILE_ALLOCATION_INFO, *PFILE_ALLOCATION_INFO;
1017 
1018 typedef struct _FILE_DISPOSITION_INFO {
1020 } FILE_DISPOSITION_INFO, *PFILE_DISPOSITION_INFO;
1021 
1022 typedef struct _FILE_END_OF_FILE_INFO {
1023  LARGE_INTEGER EndOfFile;
1024 } FILE_END_OF_FILE_INFO, *PFILE_END_OF_FILE_INFO;
1025 
1026 typedef struct _FILE_RENAME_INFO {
1027  BOOLEAN ReplaceIfExists;
1030  WCHAR FileName[1];
1031 } FILE_RENAME_INFO, *PFILE_RENAME_INFO;
1032 
1033 typedef struct _FILE_ATTRIBUTE_TAG_INFO {
1035  DWORD ReparseTag;
1036 } FILE_ATTRIBUTE_TAG_INFO, *PFILE_ATTRIBUTE_TAG_INFO;
1037 
1038 typedef struct _FILE_COMPRESSION_INFO {
1039  LARGE_INTEGER CompressedFileSize;
1040  WORD CompressionFormat;
1041  UCHAR CompressionUnitShift;
1042  UCHAR ChunkShift;
1043  UCHAR ClusterShift;
1044  UCHAR Reserved[3];
1045 } FILE_COMPRESSION_INFO, *PFILE_COMPRESSION_INFO;
1046 
1047 typedef struct _FILE_REMOTE_PROTOCOL_INFO {
1048  USHORT StructureVersion;
1049  USHORT StructureSize;
1050  ULONG Protocol;
1051  USHORT ProtocolMajorVersion;
1052  USHORT ProtocolMinorVersion;
1053  USHORT ProtocolRevision;
1054  USHORT Reserved;
1055  ULONG Flags;
1056  struct {
1057  ULONG Reserved[8];
1058  } GenericReserved;
1059  struct {
1060  ULONG Reserved[16];
1061  } ProtocolSpecificReserved;
1062 } FILE_REMOTE_PROTOCOL_INFO, *PFILE_REMOTE_PROTOCOL_INFO;
1063 
1064 #endif
1065 
1066 typedef enum _FINDEX_INFO_LEVELS {
1071 
1072 typedef enum _FINDEX_SEARCH_OPS {
1078 
1079 typedef struct tagHW_PROFILE_INFOA {
1084 
1085 typedef struct tagHW_PROFILE_INFOW {
1090 
1091 /* Event Logging */
1092 
1093 #define EVENTLOG_FULL_INFO 0
1094 
1098 
1103 
1104 typedef struct _SYSTEM_INFO {
1105  _ANONYMOUS_UNION union {
1107  _ANONYMOUS_STRUCT struct {
1110  } DUMMYSTRUCTNAME;
1111  } DUMMYUNIONNAME;
1122 
1123 typedef struct _SYSTEM_POWER_STATUS {
1131 
1143 
1144 typedef struct _TIME_ZONE_INFORMATION {
1145  LONG Bias;
1146  WCHAR StandardName[32];
1149  WCHAR DaylightName[32];
1153 
1154 typedef struct _MEMORYSTATUS {
1164 
1165 #if (_WIN32_WINNT >= 0x0500)
1166 typedef struct _MEMORYSTATUSEX {
1167  DWORD dwLength;
1168  DWORD dwMemoryLoad;
1169  DWORDLONG ullTotalPhys;
1170  DWORDLONG ullAvailPhys;
1171  DWORDLONG ullTotalPageFile;
1172  DWORDLONG ullAvailPageFile;
1173  DWORDLONG ullTotalVirtual;
1174  DWORDLONG ullAvailVirtual;
1175  DWORDLONG ullAvailExtendedVirtual;
1176 } MEMORYSTATUSEX, *LPMEMORYSTATUSEX;
1177 #endif
1178 
1179 #ifndef _LDT_ENTRY_DEFINED
1180 #define _LDT_ENTRY_DEFINED
1181 typedef struct _LDT_ENTRY {
1182  WORD LimitLow;
1183  WORD BaseLow;
1184  union {
1185  struct {
1186  BYTE BaseMid;
1187  BYTE Flags1;
1188  BYTE Flags2;
1189  BYTE BaseHi;
1190  } Bytes;
1191  struct {
1192  DWORD BaseMid:8;
1193  DWORD Type:5;
1194  DWORD Dpl:2;
1195  DWORD Pres:1;
1196  DWORD LimitHi:4;
1197  DWORD Sys:1;
1198  DWORD Reserved_0:1;
1199  DWORD Default_Big:1;
1200  DWORD Granularity:1;
1201  DWORD BaseHi:8;
1202  } Bits;
1203  } HighWord;
1205 #endif
1206 
1207 typedef struct _PROCESS_HEAP_ENTRY {
1213  _ANONYMOUS_UNION union {
1214  struct {
1217  } Block;
1218  struct {
1223  } Region;
1224  } DUMMYUNIONNAME;
1226 
1227 typedef struct _OFSTRUCT {
1235 
1236 #if (_WIN32_WINNT >= 0x0501)
1237 typedef struct tagACTCTXA {
1238  ULONG cbSize;
1239  DWORD dwFlags;
1240  LPCSTR lpSource;
1241  USHORT wProcessorArchitecture;
1242  LANGID wLangId;
1243  LPCSTR lpAssemblyDirectory;
1244  LPCSTR lpResourceName;
1245  LPCSTR lpApplicationName;
1246  HMODULE hModule;
1247 } ACTCTXA,*PACTCTXA;
1248 typedef const ACTCTXA *PCACTCTXA;
1249 
1250 typedef struct tagACTCTXW {
1251  ULONG cbSize;
1252  DWORD dwFlags;
1253  LPCWSTR lpSource;
1254  USHORT wProcessorArchitecture;
1255  LANGID wLangId;
1256  LPCWSTR lpAssemblyDirectory;
1257  LPCWSTR lpResourceName;
1258  LPCWSTR lpApplicationName;
1259  HMODULE hModule;
1260 } ACTCTXW,*PACTCTXW;
1261 typedef const ACTCTXW *PCACTCTXW;
1262 
1263 typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 {
1264  ULONG cbSize;
1265  ULONG ulDataFormatVersion;
1266  PVOID lpData;
1267  ULONG ulLength;
1268  PVOID lpSectionGlobalData;
1269  ULONG ulSectionGlobalDataLength;
1270  PVOID lpSectionBase;
1271  ULONG ulSectionTotalLength;
1272  HANDLE hActCtx;
1273  ULONG ulAssemblyRosterIndex;
1274 } ACTCTX_SECTION_KEYED_DATA_2600, *PACTCTX_SECTION_KEYED_DATA_2600;
1275 typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600;
1276 
1277 typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA {
1278  PVOID lpInformation;
1279  PVOID lpSectionBase;
1280  ULONG ulSectionLength;
1281  PVOID lpSectionGlobalDataBase;
1282  ULONG ulSectionGlobalDataLength;
1283 } ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
1284 typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
1285 
1286 typedef struct tagACTCTX_SECTION_KEYED_DATA {
1287  ULONG cbSize;
1288  ULONG ulDataFormatVersion;
1289  PVOID lpData;
1290  ULONG ulLength;
1291  PVOID lpSectionGlobalData;
1292  ULONG ulSectionGlobalDataLength;
1293  PVOID lpSectionBase;
1294  ULONG ulSectionTotalLength;
1295  HANDLE hActCtx;
1296  ULONG ulAssemblyRosterIndex;
1297  /* Non 2600 extra fields */
1298  ULONG ulFlags;
1299  ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
1300 } ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA;
1301 
1302 typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA;
1303 
1304 typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION {
1305  HANDLE hActCtx;
1306  DWORD dwFlags;
1307 } ACTIVATION_CONTEXT_BASIC_INFORMATION, *PACTIVATION_CONTEXT_BASIC_INFORMATION;
1308 typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION;
1309 
1310 typedef BOOL
1311 (WINAPI *PQUERYACTCTXW_FUNC)(
1312  _In_ DWORD dwFlags,
1313  _In_ HANDLE hActCtx,
1314  _In_opt_ PVOID pvSubInstance,
1315  _In_ ULONG ulInfoClass,
1316  _Out_writes_bytes_to_opt_(cbBuffer, *pcbWrittenOrRequired) PVOID pvBuffer,
1318  _Out_opt_ SIZE_T *pcbWrittenOrRequired);
1319 
1320 typedef enum {
1321  LowMemoryResourceNotification ,
1322  HighMemoryResourceNotification
1323 } MEMORY_RESOURCE_NOTIFICATION_TYPE;
1324 #endif /* (_WIN32_WINNT >= 0x0501) */
1325 
1326 #if (_WIN32_WINNT >= 0x0500)
1327 typedef enum _COMPUTER_NAME_FORMAT {
1328  ComputerNameNetBIOS,
1329  ComputerNameDnsHostname,
1330  ComputerNameDnsDomain,
1331  ComputerNameDnsFullyQualified,
1332  ComputerNamePhysicalNetBIOS,
1333  ComputerNamePhysicalDnsHostname,
1334  ComputerNamePhysicalDnsDomain,
1335  ComputerNamePhysicalDnsFullyQualified,
1336  ComputerNameMax
1337 } COMPUTER_NAME_FORMAT;
1338 #endif /* (_WIN32_WINNT >= 0x0500) */
1339 
1340 #if (_WIN32_WINNT >= 0x0600)
1341 typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK;
1342 typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE;
1343 #endif
1344 
1346 
1347 #define PROC_THREAD_ATTRIBUTE_NUMBER 0x0000ffff
1348 #define PROC_THREAD_ATTRIBUTE_THREAD 0x00010000
1349 #define PROC_THREAD_ATTRIBUTE_INPUT 0x00020000
1350 #define PROC_THREAD_ATTRIBUTE_ADDITIVE 0x00040000
1351 
1367 
1368 #define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
1369 #define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT)
1370 #define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS (ProcThreadAttributeParentProcess | PROC_THREAD_ATTRIBUTE_INPUT)
1371 
1372 typedef DWORD
1374  _In_reads_bytes_(ulLength) PBYTE pbData,
1375  _In_opt_ PVOID pvCallbackContext,
1376  _In_ ULONG ulLength);
1377 
1378 typedef DWORD(WINAPI *LPPROGRESS_ROUTINE)(_In_ LARGE_INTEGER, _In_ LARGE_INTEGER, _In_ LARGE_INTEGER, _In_ LARGE_INTEGER, _In_ DWORD, _In_ DWORD, _In_ HANDLE, _In_ HANDLE, _In_opt_ LPVOID);
1379 
1380 typedef VOID (WINAPI *PFIBER_START_ROUTINE)( LPVOID lpFiberParameter );
1382 
1385 typedef BOOL(CALLBACK *ENUMRESLANGPROCW)(HMODULE,LPCWSTR,LPCWSTR,WORD,LONG_PTR);
1386 typedef BOOL(CALLBACK *ENUMRESNAMEPROCA)(HMODULE,LPCSTR,LPSTR,LONG_PTR);
1387 typedef BOOL(CALLBACK *ENUMRESNAMEPROCW)(HMODULE,LPCWSTR,LPWSTR,LONG_PTR);
1388 typedef BOOL(CALLBACK *ENUMRESTYPEPROCA)(HMODULE,LPSTR,LONG_PTR);
1389 typedef BOOL(CALLBACK *ENUMRESTYPEPROCW)(HMODULE,LPWSTR,LONG_PTR);
1390 typedef void(CALLBACK *LPOVERLAPPED_COMPLETION_ROUTINE)(DWORD,DWORD,LPOVERLAPPED);
1393 typedef void(APIENTRY *PAPCFUNC)(ULONG_PTR);
1394 typedef void(CALLBACK *PTIMERAPCROUTINE)(PVOID,DWORD,DWORD);
1395 #if (_WIN32_WINNT >= 0x0600)
1396 typedef DWORD (WINAPI *APPLICATION_RECOVERY_CALLBACK)(PVOID);
1397 #endif
1398 
1399 #ifdef WINE_NO_UNICODE_MACROS /* force using a cast */
1400 #define MAKEINTATOM(atom) ((ULONG_PTR)((WORD)(atom)))
1401 #else
1402 #define MAKEINTATOM(i) (LPTSTR)((ULONG_PTR)((WORD)(i)))
1403 #endif
1404 
1405 typedef DWORD
1407  _Out_writes_bytes_to_(*ulLength, *ulLength) PBYTE pbData,
1408  _In_opt_ PVOID pvCallbackContext,
1409  _Inout_ PULONG ulLength);
1410 
1411 /* Functions */
1412 #ifndef UNDER_CE
1413 int APIENTRY WinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPSTR, _In_ int);
1414 #else
1415 int APIENTRY WinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPWSTR, _In_ int);
1416 #endif
1417 int APIENTRY wWinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPWSTR, _In_ int);
1418 
1419 long
1420 WINAPI
1421 _hread(
1422  _In_ HFILE hFile,
1423  _Out_writes_bytes_to_(lBytes, return) LPVOID lpBuffer,
1424  _In_ long lBytes);
1425 
1426 long
1427 WINAPI
1428 _hwrite(
1429  _In_ HFILE hFile,
1431  _In_ long lBytes);
1432 
1434 HFILE WINAPI _lcreat(_In_ LPCSTR, _In_ int);
1436 HFILE WINAPI _lopen(_In_ LPCSTR, _In_ int);
1437 
1438 UINT
1439 WINAPI
1440 _lread(
1441  _In_ HFILE hFile,
1442  _Out_writes_bytes_to_(uBytes, return) LPVOID lpBuffer,
1443  _In_ UINT uBytes);
1444 
1445 UINT
1446 WINAPI
1447 _lwrite(
1448  _In_ HFILE hFile,
1450  _In_ UINT uBytes);
1451 
1453 
1454 BOOL
1455 WINAPI
1457  _In_ LPCSTR SubsystemName,
1458  _In_opt_ LPVOID HandleId,
1459  _In_ LPSTR ObjectTypeName,
1460  _In_opt_ LPSTR ObjectName,
1462  _In_ DWORD DesiredAccess,
1464  _In_ BOOL ObjectCreation,
1467  _Out_ LPBOOL pfGenerateOnClose);
1468 
1470 #if (_WIN32_WINNT >= 0x0600)
1472 VOID WINAPI AcquireSRWLockShared(PSRWLOCK);
1473 #endif
1474 #if (_WIN32_WINNT >= 0x0501)
1475 BOOL WINAPI ActivateActCtx(_Inout_opt_ HANDLE, _Out_ ULONG_PTR*);
1476 #endif
1477 BOOL WINAPI AddAccessAllowedAce(PACL,DWORD,DWORD,PSID);
1478 BOOL WINAPI AddAccessDeniedAce(PACL,DWORD,DWORD,PSID);
1479 #if (_WIN32_WINNT >= 0x0500)
1480 BOOL WINAPI AddAccessAllowedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
1481 BOOL WINAPI AddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
1482 BOOL WINAPI AddAccessAllowedObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID);
1483 BOOL WINAPI AddAccessDeniedObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID);
1484 #endif
1485 BOOL WINAPI AddAce(PACL,DWORD,DWORD,PVOID,DWORD);
1486 ATOM WINAPI AddAtomA(_In_opt_ LPCSTR);
1487 ATOM WINAPI AddAtomW(_In_opt_ LPCWSTR);
1489 #if (_WIN32_WINNT >= 0x0500)
1491 #endif
1492 #if (_WIN32_WINNT >= 0x0501)
1493 void WINAPI AddRefActCtx(_Inout_ HANDLE);
1494 #endif
1495 #if (_WIN32_WINNT >= 0x0500)
1496 _Ret_maybenull_ PVOID WINAPI AddVectoredExceptionHandler(_In_ ULONG, _In_ PVECTORED_EXCEPTION_HANDLER);
1497 _Ret_maybenull_ PVOID WINAPI AddVectoredContinueHandler(_In_ ULONG, _In_ PVECTORED_EXCEPTION_HANDLER);
1498 #endif
1502 BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID*);
1505 BOOL WINAPI AreAllAccessesGranted(DWORD,DWORD);
1506 BOOL WINAPI AreAnyAccessesGranted(DWORD,DWORD);
1508 BOOL WINAPI BackupEventLogA(_In_ HANDLE, _In_ LPCSTR);
1509 BOOL WINAPI BackupEventLogW(_In_ HANDLE, _In_ LPCWSTR);
1510 
1511 BOOL
1512 WINAPI
1513 BackupRead(
1514  _In_ HANDLE hFile,
1515  _Out_writes_bytes_to_(nNumberOfBytesToRead, *lpNumberOfBytesRead) LPBYTE lpBuffer,
1516  _In_ DWORD nNumberOfBytesToRead,
1517  _Out_ LPDWORD lpNumberOfBytesRead,
1518  _In_ BOOL bAbort,
1519  _In_ BOOL bProcessSecurity,
1520  _Inout_ LPVOID *lpContext);
1521 
1522 BOOL WINAPI BackupSeek(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _Out_ LPDWORD, _Out_ LPDWORD, _Inout_ LPVOID*);
1523 
1524 BOOL
1525 WINAPI
1526 BackupWrite(
1527  _In_ HANDLE hFile,
1530  _Out_ LPDWORD lpNumberOfBytesWritten,
1531  _In_ BOOL bAbort,
1532  _In_ BOOL bProcessSecurity,
1533  _Inout_ LPVOID *lpContext);
1534 
1535 BOOL WINAPI Beep(DWORD,DWORD);
1536 HANDLE WINAPI BeginUpdateResourceA(_In_ LPCSTR, _In_ BOOL);
1537 HANDLE WINAPI BeginUpdateResourceW(_In_ LPCWSTR, _In_ BOOL);
1538 #if (_WIN32_WINNT >= 0x0500)
1540 #endif
1541 BOOL WINAPI BuildCommDCBA(_In_ LPCSTR, _Out_ LPDCB);
1542 BOOL WINAPI BuildCommDCBW(_In_ LPCWSTR, _Out_ LPDCB);
1543 BOOL WINAPI BuildCommDCBAndTimeoutsA(_In_ LPCSTR, _Out_ LPDCB, _Out_ LPCOMMTIMEOUTS);
1544 BOOL WINAPI BuildCommDCBAndTimeoutsW(_In_ LPCWSTR, _Out_ LPDCB, _Out_ LPCOMMTIMEOUTS);
1545 
1546 BOOL
1547 WINAPI
1549  _In_ LPCSTR lpNamedPipeName,
1550  _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer,
1551  _In_ DWORD nInBufferSize,
1552  _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesRead) LPVOID lpOutBuffer,
1553  _In_ DWORD nOutBufferSize,
1554  _Out_ LPDWORD lpBytesRead,
1555  _In_ DWORD nTimeOut);
1556 
1557 BOOL
1558 WINAPI
1560  _In_ LPCWSTR lpNamedPipeName,
1561  _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer,
1562  _In_ DWORD nInBufferSize,
1563  _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesRead) LPVOID lpOutBuffer,
1564  _In_ DWORD nOutBufferSize,
1565  _Out_ LPDWORD lpBytesRead,
1566  _In_ DWORD nTimeOut);
1567 
1569 BOOL WINAPI CancelIo(HANDLE);
1570 #if (_WIN32_WINNT >= 0x0600)
1571 BOOL WINAPI CancelIoEx(HANDLE,LPOVERLAPPED);
1572 BOOL WINAPI CancelSynchronousIo(HANDLE);
1573 #endif
1575 
1576 #if (_WIN32_WINNT >= 0x0501)
1577 
1578 BOOL
1579 WINAPI
1581  _In_ LPCSTR lpName,
1582  _Out_writes_opt_(OemNameSize) LPSTR lpOemName,
1583  _In_ DWORD OemNameSize,
1584  _Out_opt_ PBOOL pbNameContainsSpaces,
1585  _Out_ PBOOL pbNameLegal);
1586 
1587 BOOL
1588 WINAPI
1590  _In_ LPCWSTR lpName,
1591  _Out_writes_opt_(OemNameSize) LPSTR lpOemName,
1592  _In_ DWORD OemNameSize,
1593  _Out_opt_ PBOOL pbNameContainsSpaces,
1594  _Out_ PBOOL pbNameLegal);
1595 
1597 #endif
1598 
1599 BOOL WINAPI ClearCommBreak(_In_ HANDLE);
1601 BOOL WINAPI ClearEventLogA(_In_ HANDLE, _In_opt_ LPCSTR);
1602 BOOL WINAPI ClearEventLogW(_In_ HANDLE, _In_opt_ LPCWSTR);
1603 BOOL WINAPI CloseEventLog(_In_ HANDLE);
1604 BOOL WINAPI CloseHandle(HANDLE);
1605 BOOL WINAPI CommConfigDialogA(_In_ LPCSTR, _In_opt_ HWND, _Inout_ LPCOMMCONFIG);
1606 BOOL WINAPI CommConfigDialogW(_In_ LPCWSTR, _In_opt_ HWND, _Inout_ LPCOMMCONFIG);
1608 BOOL WINAPI ConnectNamedPipe(HANDLE,LPOVERLAPPED);
1609 BOOL WINAPI ContinueDebugEvent(DWORD,DWORD,DWORD);
1610 #if (_WIN32_WINNT >= 0x0400)
1612 #endif
1614 BOOL WINAPI CopyFileA(_In_ LPCSTR, _In_ LPCSTR, _In_ BOOL);
1615 BOOL WINAPI CopyFileW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ BOOL);
1618 #define MoveMemory RtlMoveMemory
1619 #define CopyMemory RtlCopyMemory
1620 #define FillMemory RtlFillMemory
1621 #define ZeroMemory RtlZeroMemory
1622 #define SecureZeroMemory RtlSecureZeroMemory
1623 BOOL WINAPI CopySid(DWORD,PSID,PSID);
1624 #if (_WIN32_WINNT >= 0x0501)
1625 HANDLE WINAPI CreateActCtxA(_In_ PCACTCTXA);
1626 HANDLE WINAPI CreateActCtxW(_In_ PCACTCTXW);
1627 #endif
1634 #if (_WIN32_WINNT >= 0x0600)
1635 HANDLE WINAPI CreateEventExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD);
1636 HANDLE WINAPI CreateEventExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD);
1637 #endif
1638 _Ret_maybenull_ LPVOID WINAPI CreateFiber(_In_ SIZE_T, _In_ LPFIBER_START_ROUTINE, _In_opt_ LPVOID);
1639 #if (_WIN32_WINNT >= 0x0400)
1640 _Ret_maybenull_ LPVOID WINAPI CreateFiberEx(_In_ SIZE_T, _In_ SIZE_T, _In_ DWORD, _In_ LPFIBER_START_ROUTINE, _In_opt_ LPVOID);
1641 #endif
1642 HANDLE WINAPI CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE);
1643 HANDLE WINAPI CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE);
1644 _Ret_maybenull_ HANDLE WINAPI CreateFileMappingA(_In_ HANDLE, _In_opt_ LPSECURITY_ATTRIBUTES, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPCSTR);
1645 HANDLE WINAPI CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR);
1646 #if (_WIN32_WINNT >= 0x0500)
1649 #endif
1650 HANDLE WINAPI CreateIoCompletionPort(HANDLE,HANDLE,ULONG_PTR,DWORD);
1651 #if (_WIN32_WINNT >= 0x0500)
1655 BOOL WINAPI AssignProcessToJobObject(_In_ HANDLE, _In_ HANDLE);
1656 #endif
1657 HANDLE WINAPI CreateMailslotA(_In_ LPCSTR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES);
1658 HANDLE WINAPI CreateMailslotW(_In_ LPCWSTR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES);
1659 #if (_WIN32_WINNT >= 0x0501)
1660 HANDLE WINAPI CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE);
1661 #endif
1664 #if (_WIN32_WINNT >= 0x0600)
1665 HANDLE WINAPI CreateMutexExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD);
1666 HANDLE WINAPI CreateMutexExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD);
1667 #endif
1668 HANDLE WINAPI CreateNamedPipeA(_In_ LPCSTR, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES);
1669 HANDLE WINAPI CreateNamedPipeW(_In_ LPCWSTR, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES);
1672 BOOL WINAPI CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION);
1673 BOOL WINAPI CreateProcessW(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
1674 
1675 BOOL
1676 WINAPI
1678  _In_opt_ HANDLE,
1679  _In_opt_ LPCSTR,
1680  _Inout_opt_ LPSTR,
1682  _In_opt_ LPSECURITY_ATTRIBUTES,
1683  _In_ BOOL,
1684  _In_ DWORD,
1685  _In_opt_ PVOID,
1686  _In_opt_ LPCSTR,
1687  _In_ LPSTARTUPINFOA,
1688  _Out_ LPPROCESS_INFORMATION);
1689 
1690 BOOL WINAPI CreateProcessAsUserW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
1694 #if (_WIN32_WINNT >= 0x0600)
1695 _Ret_maybenull_ HANDLE WINAPI CreateSemaphoreExA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ LONG, _In_ LONG, _In_opt_ LPCSTR, _Reserved_ DWORD, _In_ DWORD);
1696 HANDLE WINAPI CreateSemaphoreExW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR,DWORD,DWORD);
1697 #endif
1698 DWORD WINAPI CreateTapePartition(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ DWORD);
1699 #if (_WIN32_WINNT >= 0x0500)
1700 HANDLE WINAPI CreateTimerQueue(void);
1701 BOOL WINAPI CreateTimerQueueTimer(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,DWORD,DWORD,ULONG);
1702 #endif
1706 #if (_WIN32_WINNT >= 0x0600)
1707 _Ret_maybenull_ HANDLE WINAPI CreateWaitableTimerExA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCSTR, _In_ DWORD, _In_ DWORD);
1708 HANDLE WINAPI CreateWaitableTimerExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD);
1709 #endif
1710 #if (_WIN32_WINNT >= 0x0501)
1712 BOOL WINAPI DeactivateActCtx(_In_ DWORD, _In_ ULONG_PTR);
1713 #endif
1715 #if (_WIN32_WINNT >= 0x0501)
1717 #endif
1718 void WINAPI DebugBreak(void);
1719 #if (_WIN32_WINNT >= 0x0501)
1722 #endif
1723 PVOID WINAPI DecodePointer(PVOID);
1724 PVOID WINAPI DecodeSystemPointer(PVOID);
1725 BOOL WINAPI DecryptFileA(_In_ LPCSTR, _Reserved_ DWORD);
1726 BOOL WINAPI DecryptFileW(_In_ LPCWSTR, _Reserved_ DWORD);
1727 BOOL WINAPI DefineDosDeviceA(_In_ DWORD, _In_ LPCSTR, _In_opt_ LPCSTR);
1728 BOOL WINAPI DefineDosDeviceW(DWORD,LPCWSTR,LPCWSTR);
1729 #define DefineHandleTable(w) ((w),TRUE)
1730 BOOL WINAPI DeleteAce(PACL,DWORD);
1732 void WINAPI DeleteCriticalSection(PCRITICAL_SECTION);
1733 void WINAPI DeleteFiber(_In_ PVOID);
1734 BOOL WINAPI DeleteFileA(LPCSTR);
1735 BOOL WINAPI DeleteFileW(LPCWSTR);
1736 #if (_WIN32_WINNT >= 0x0500)
1738 BOOL WINAPI DeleteTimerQueueEx(HANDLE,HANDLE);
1739 BOOL WINAPI DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE);
1742 #endif
1745 BOOL WINAPI DeviceIoControl(HANDLE,DWORD,PVOID,DWORD,PVOID,DWORD,PDWORD,POVERLAPPED);
1747 
1748 #if (_WIN32_WINNT >= 0x0500)
1749 
1750 _Success_(return != FALSE)
1751 BOOL
1752 WINAPI
1754  _In_ LPCSTR Hostname,
1755  _Out_writes_to_opt_(*nSize, *nSize + 1) LPSTR ComputerName,
1756  _Inout_ LPDWORD nSize);
1757 
1759 BOOL
1760 WINAPI
1762  _In_ LPCWSTR Hostname,
1763  _Out_writes_to_opt_(*nSize, *nSize + 1) LPWSTR ComputerName,
1764  _Inout_ LPDWORD nSize);
1765 
1766 #endif
1767 
1769 BOOL WINAPI DosDateTimeToFileTime(_In_ WORD, _In_ WORD, _Out_ LPFILETIME);
1770 BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,PHANDLE,DWORD,BOOL,DWORD);
1773 PVOID WINAPI EncodePointer(PVOID);
1774 PVOID WINAPI EncodeSystemPointer(PVOID);
1775 BOOL WINAPI EncryptFileA(_In_ LPCSTR);
1776 BOOL WINAPI EncryptFileW(_In_ LPCWSTR);
1779 void WINAPI EnterCriticalSection(LPCRITICAL_SECTION);
1780 BOOL WINAPI EnumResourceLanguagesA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ LPCSTR, _In_ ENUMRESLANGPROCA, _In_ LONG_PTR);
1781 BOOL WINAPI EnumResourceLanguagesW(_In_opt_ HMODULE, _In_ LPCWSTR, _In_ LPCWSTR, _In_ ENUMRESLANGPROCW, _In_ LONG_PTR);
1782 BOOL WINAPI EnumResourceNamesA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ ENUMRESNAMEPROCA, _In_ LONG_PTR);
1783 BOOL WINAPI EnumResourceNamesW(_In_opt_ HMODULE, _In_ LPCWSTR, _In_ ENUMRESNAMEPROCW, _In_ LONG_PTR);
1788 DWORD WINAPI EraseTape(_In_ HANDLE, _In_ DWORD, _In_ BOOL);
1789 BOOL WINAPI EscapeCommFunction(_In_ HANDLE, _In_ DWORD);
1791 DECLSPEC_NORETURN void WINAPI ExitThread(DWORD);
1792 DWORD WINAPI ExpandEnvironmentStringsA(LPCSTR,LPSTR,DWORD);
1793 DWORD WINAPI ExpandEnvironmentStringsW(LPCWSTR,LPWSTR,DWORD);
1794 void WINAPI FatalAppExitA(UINT,LPCSTR);
1795 void WINAPI FatalAppExitW(UINT,LPCWSTR);
1802 #if (_WIN32_WINNT >= 0x0501)
1803 BOOL WINAPI FindActCtxSectionGuid(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_opt_ const GUID*, _Out_ PACTCTX_SECTION_KEYED_DATA);
1804 BOOL WINAPI FindActCtxSectionStringA(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_ LPCSTR, _Out_ PACTCTX_SECTION_KEYED_DATA);
1805 BOOL WINAPI FindActCtxSectionStringW(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_ LPCWSTR, _Out_ PACTCTX_SECTION_KEYED_DATA);
1806 #endif
1807 ATOM WINAPI FindAtomA(_In_opt_ LPCSTR);
1808 ATOM WINAPI FindAtomW(_In_opt_ LPCWSTR);
1809 BOOL WINAPI FindClose(HANDLE);
1811 HANDLE WINAPI FindFirstChangeNotificationA(LPCSTR,BOOL,DWORD);
1812 HANDLE WINAPI FindFirstChangeNotificationW(LPCWSTR,BOOL,DWORD);
1813 HANDLE WINAPI FindFirstFileA(LPCSTR,LPWIN32_FIND_DATAA);
1814 HANDLE WINAPI FindFirstFileW(LPCWSTR,LPWIN32_FIND_DATAW);
1815 HANDLE WINAPI FindFirstFileExA(LPCSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD);
1816 HANDLE WINAPI FindFirstFileExW(LPCWSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD);
1817 #if (_WIN32_WINNT >= 0x0501)
1818 HANDLE WINAPI FindFirstStreamW(_In_ LPCWSTR, _In_ STREAM_INFO_LEVELS, _Out_ LPVOID, _Reserved_ DWORD);
1819 #endif
1821 
1822 #if (_WIN32_WINNT >= 0x0500)
1823 
1824 HANDLE
1825 WINAPI
1827  _Out_writes_(cchBufferLength) LPSTR lpszVolumeName,
1828  _In_ DWORD cchBufferLength);
1829 
1830 HANDLE WINAPI FindFirstVolumeW(LPWSTR,DWORD);
1831 
1832 HANDLE
1833 WINAPI
1835  _In_ LPCSTR lpszRootPathName,
1836  _Out_writes_(cchBufferLength) LPSTR lpszVolumeMountPoint,
1837  _In_ DWORD cchBufferLength);
1838 
1839 HANDLE
1840 WINAPI
1842  _In_ LPCWSTR lpszRootPathName,
1843  _Out_writes_(cchBufferLength) LPWSTR lpszVolumeMountPoint,
1844  _In_ DWORD cchBufferLength);
1845 
1846 #endif
1847 
1849 BOOL WINAPI FindNextFileA(HANDLE,LPWIN32_FIND_DATAA);
1850 BOOL WINAPI FindNextFileW(HANDLE,LPWIN32_FIND_DATAW);
1851 #if (_WIN32_WINNT >= 0x0501)
1852 BOOL WINAPI FindNextStreamW(_In_ HANDLE, _Out_ LPVOID);
1853 #endif
1854 
1855 #if (_WIN32_WINNT >= 0x0500)
1856 
1857 BOOL
1858 WINAPI
1860  _Inout_ HANDLE hFindVolume,
1861  _Out_writes_(cchBufferLength) LPSTR lpszVolumeName,
1862  _In_ DWORD cchBufferLength);
1863 
1864 BOOL WINAPI FindNextVolumeW(HANDLE,LPWSTR,DWORD);
1865 
1866 BOOL
1867 WINAPI
1869  _In_ HANDLE hFindVolumeMountPoint,
1870  _Out_writes_(cchBufferLength) LPSTR lpszVolumeMountPoint,
1871  _In_ DWORD cchBufferLength);
1872 
1873 BOOL
1874 WINAPI
1876  _In_ HANDLE hFindVolumeMountPoint,
1877  _Out_writes_(cchBufferLength) LPWSTR lpszVolumeMountPoint,
1878  _In_ DWORD cchBufferLength);
1879 
1880 BOOL WINAPI FindVolumeClose(HANDLE);
1882 
1883 #endif
1884 
1885 _Ret_maybenull_ HRSRC WINAPI FindResourceA(_In_opt_ HMODULE,_In_ LPCSTR, _In_ LPCSTR);
1886 _Ret_maybenull_ HRSRC WINAPI FindResourceW(_In_opt_ HMODULE,_In_ LPCWSTR, _In_ LPCWSTR);
1887 _Ret_maybenull_ HRSRC WINAPI FindResourceExA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ LPCSTR, _In_ WORD);
1888 HRSRC WINAPI FindResourceExW(HINSTANCE,LPCWSTR,LPCWSTR,WORD);
1889 #if (_WIN32_WINNT >= 0x0502)
1890 
1891 DWORD
1892 WINAPI
1894  _In_ LPCSTR lpName,
1895  _In_ LPCSTR lpGuid,
1896  _Out_writes_bytes_to_opt_(nSize, return) PVOID pBuffer,
1897  _In_ DWORD nSize);
1898 
1899 DWORD
1900 WINAPI
1902  _In_ LPCWSTR lpName,
1903  _In_ LPCWSTR lpGuid,
1904  _Out_writes_bytes_to_opt_(nSize, return) PVOID pBuffer,
1905  _In_ DWORD nSize);
1906 
1907 #endif
1908 BOOL WINAPI FlushFileBuffers(HANDLE);
1912 PVOID WINAPI FlsGetValue(DWORD);
1913 BOOL WINAPI FlsSetValue(DWORD,PVOID);
1914 BOOL WINAPI FlsFree(DWORD);
1915 DWORD WINAPI FormatMessageA(DWORD,LPCVOID,DWORD,DWORD,LPSTR,DWORD,va_list*);
1916 DWORD WINAPI FormatMessageW(DWORD,LPCVOID,DWORD,DWORD,LPWSTR,DWORD,va_list*);
1919 BOOL WINAPI FreeLibrary(HMODULE);
1921 #define FreeModule(m) FreeLibrary(m)
1922 #define FreeProcInstance(p) (void)(p)
1923 #ifndef XFree86Server
1925 #endif /* ndef XFree86Server */
1926 PVOID WINAPI FreeSid(PSID);
1927 BOOL WINAPI GetAce(PACL,DWORD,LPVOID*);
1929 #if (_WIN32_WINNT >= 0x0600)
1930 HRESULT WINAPI GetApplicationRecoveryCallback(_In_ HANDLE, _Out_ APPLICATION_RECOVERY_CALLBACK*, _Outptr_opt_result_maybenull_ PVOID*, _Out_opt_ DWORD*, _Out_opt_ DWORD*);
1931 HRESULT WINAPI GetApplicationRestart(HANDLE,PWSTR,PDWORD,PDWORD);
1932 #endif
1933 
1934 UINT
1935 WINAPI
1936 GetAtomNameA(
1937  _In_ ATOM nAtom,
1938  _Out_writes_to_(nSize, return + 1) LPSTR lpBuffer,
1939  _In_ int nSize);
1940 
1941 UINT
1942 WINAPI
1943 GetAtomNameW(
1944  _In_ ATOM nAtom,
1945  _Out_writes_to_(nSize, return + 1) LPWSTR lpBuffer,
1946  _In_ int nSize);
1947 
1950 LPSTR WINAPI GetCommandLineA(VOID);
1951 LPWSTR WINAPI GetCommandLineW(VOID);
1952 
1953 _Success_(return != FALSE)
1954 BOOL
1955 WINAPI
1957  _In_ HANDLE hCommDev,
1960 
1962 BOOL WINAPI GetCommModemStatus(_In_ HANDLE, _Out_ PDWORD);
1963 BOOL WINAPI GetCommProperties(_In_ HANDLE, _Inout_ LPCOMMPROP);
1964 BOOL WINAPI GetCommState(_In_ HANDLE, _Out_ LPDCB);
1965 BOOL WINAPI GetCommTimeouts(_In_ HANDLE, _Out_ LPCOMMTIMEOUTS);
1966 DWORD WINAPI GetCompressedFileSizeA(_In_ LPCSTR, _Out_opt_ PDWORD);
1967 DWORD WINAPI GetCompressedFileSizeW(_In_ LPCWSTR, _Out_opt_ PDWORD);
1968 
1969 _Success_(return != 0)
1970 BOOL
1971 WINAPI
1973  _Out_writes_to_opt_(*nSize, *nSize + 1) LPSTR lpBuffer,
1974  _Inout_ LPDWORD nSize);
1975 
1976 _Success_(return != 0)
1977 BOOL
1978 WINAPI
1980  _Out_writes_to_opt_(*nSize, *nSize + 1) LPWSTR lpBuffer,
1981  _Inout_ LPDWORD nSize);
1982 
1983 #if (_WIN32_WINNT >= 0x0500)
1984 BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD);
1985 BOOL WINAPI GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD);
1986 #endif
1987 #if (_WIN32_WINNT >= 0x0501)
1989 #endif
1990 DWORD WINAPI GetCurrentDirectoryA(DWORD,LPSTR);
1991 DWORD WINAPI GetCurrentDirectoryW(DWORD,LPWSTR);
1992 BOOL WINAPI GetCurrentHwProfileA(_Out_ LPHW_PROFILE_INFOA);
1993 BOOL WINAPI GetCurrentHwProfileW(_Out_ LPHW_PROFILE_INFOW);
1994 HANDLE WINAPI GetCurrentProcess(void);
1995 DWORD WINAPI GetCurrentProcessId(void);
1996 HANDLE WINAPI GetCurrentThread(void);
1997 DWORD WINAPI GetCurrentThreadId(void);
1998 #define GetCurrentTime GetTickCount
1999 
2000 BOOL
2001 WINAPI
2003  _In_ LPCSTR lpszName,
2004  _Out_writes_bytes_to_(*lpdwSize, *lpdwSize) LPCOMMCONFIG lpCC,
2005  _Inout_ LPDWORD lpdwSize);
2006 
2007 BOOL
2008 WINAPI
2010  _In_ LPCWSTR lpszName,
2011  _Out_writes_bytes_to_(*lpdwSize, *lpdwSize) LPCOMMCONFIG lpCC,
2012  _Inout_ LPDWORD lpdwSize);
2013 
2014 BOOL WINAPI GetDiskFreeSpaceA(LPCSTR,PDWORD,PDWORD,PDWORD,PDWORD);
2015 BOOL WINAPI GetDiskFreeSpaceW(LPCWSTR,PDWORD,PDWORD,PDWORD,PDWORD);
2018 
2019 #if (_WIN32_WINNT >= 0x0502)
2020 
2021 _Success_(return != 0 && return < nBufferLength)
2022 DWORD
2023 WINAPI
2025  _In_ DWORD nBufferLength,
2026  _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer);
2027 
2028 _Success_(return != 0 && return < nBufferLength)
2029 DWORD
2030 WINAPI
2032  _In_ DWORD nBufferLength,
2033  _Out_writes_to_opt_(nBufferLength, return + 1) LPWSTR lpBuffer);
2034 
2035 #endif
2036 
2037 UINT WINAPI GetDriveTypeA(LPCSTR);
2038 UINT WINAPI GetDriveTypeW(LPCWSTR);
2039 LPSTR WINAPI GetEnvironmentStrings(void);
2040 LPWSTR WINAPI GetEnvironmentStringsW(void);
2041 DWORD WINAPI GetEnvironmentVariableA(LPCSTR,LPSTR,DWORD);
2042 DWORD WINAPI GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD);
2043 BOOL WINAPI GetExitCodeProcess(HANDLE,PDWORD);
2044 BOOL WINAPI GetExitCodeThread(HANDLE,PDWORD);
2045 DWORD WINAPI GetFileAttributesA(LPCSTR);
2046 #if (_WIN32_WINNT >= 0x0600)
2048 DWORD WINAPI GetFinalPathNameByHandleA(HANDLE,LPSTR,DWORD,DWORD);
2049 DWORD WINAPI GetFinalPathNameByHandleW(HANDLE,LPWSTR,DWORD,DWORD);
2050 #endif
2051 DWORD WINAPI GetFileAttributesW(LPCWSTR);
2054 #if (_WIN32_WINNT >= 0x0600)
2055 BOOL WINAPI GetFileBandwidthReservation(_In_ HANDLE, _Out_ LPDWORD, _Out_ LPDWORD, _Out_ LPBOOL, _Out_ LPDWORD, _Out_ LPDWORD);
2056 #endif
2057 BOOL WINAPI GetFileInformationByHandle(HANDLE,LPBY_HANDLE_FILE_INFORMATION);
2058 
2059 #if (_WIN32_WINNT >= 0x0600)
2060 BOOL
2061 WINAPI
2063  _In_ HANDLE hFile,
2065  _Out_writes_bytes_(dwBufferSize) LPVOID lpFileInformation,
2066  _In_ DWORD dwBufferSize);
2067 #endif
2068 
2069 BOOL
2070 WINAPI
2072  _In_ LPCSTR lpFileName,
2073  _In_ SECURITY_INFORMATION RequestedInformation,
2074  _Out_writes_bytes_to_opt_(nLength, *lpnLengthNeeded) PSECURITY_DESCRIPTOR pSecurityDescriptor,
2075  _In_ DWORD nLength,
2076  _Out_ LPDWORD lpnLengthNeeded);
2077 
2079 DWORD WINAPI GetFileSize(HANDLE,PDWORD);
2081 BOOL WINAPI GetFileTime(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME);
2082 DWORD WINAPI GetFileType(HANDLE);
2083 #define GetFreeSpace(w) (0x100000L)
2084 DWORD WINAPI GetFullPathNameA(LPCSTR,DWORD,LPSTR,LPSTR*);
2085 DWORD WINAPI GetFullPathNameW(LPCWSTR,DWORD,LPWSTR,LPWSTR*);
2086 BOOL WINAPI GetHandleInformation(HANDLE,PDWORD);
2088 DWORD WINAPI GetLastError(void);
2089 DWORD WINAPI GetLengthSid(PSID);
2090 void WINAPI GetLocalTime(LPSYSTEMTIME);
2091 DWORD WINAPI GetLogicalDrives(void);
2092 
2093 _Success_(return != 0 && return <= nBufferLength)
2094 DWORD
2095 WINAPI
2097  _In_ DWORD nBufferLength,
2098  _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer);
2099 
2100 DWORD WINAPI GetLogicalDriveStringsW(DWORD,LPWSTR);
2101 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
2102 DWORD WINAPI GetLongPathNameA(LPCSTR,LPSTR,DWORD);
2103 DWORD WINAPI GetLongPathNameW(LPCWSTR,LPWSTR,DWORD);
2104 #endif
2105 BOOL WINAPI GetMailslotInfo(_In_ HANDLE, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD);
2106 DWORD WINAPI GetModuleFileNameA(HINSTANCE,LPSTR,DWORD);
2107 DWORD WINAPI GetModuleFileNameW(HINSTANCE,LPWSTR,DWORD);
2108 HMODULE WINAPI GetModuleHandleA(LPCSTR);
2109 HMODULE WINAPI GetModuleHandleW(LPCWSTR);
2110 #if (_WIN32_WINNT >= 0x0500)
2111 BOOL WINAPI GetModuleHandleExA(DWORD,LPCSTR,HMODULE*);
2112 BOOL WINAPI GetModuleHandleExW(DWORD,LPCWSTR,HMODULE*);
2113 #endif
2114 
2115 #if _WIN32_WINNT >= 0x0502
2118 #endif
2119 
2120 BOOL
2121 WINAPI
2123  _In_ HANDLE hNamedPipe,
2124  _Out_opt_ LPDWORD lpState,
2125  _Out_opt_ LPDWORD lpCurInstances,
2126  _Out_opt_ LPDWORD lpMaxCollectionCount,
2127  _Out_opt_ LPDWORD lpCollectDataTimeout,
2128  _Out_writes_opt_(nMaxUserNameSize) LPSTR lpUserName,
2129  _In_ DWORD nMaxUserNameSize);
2130 
2131 BOOL
2132 WINAPI
2134  _In_ HANDLE hNamedPipe,
2135  _Out_opt_ LPDWORD lpState,
2136  _Out_opt_ LPDWORD lpCurInstances,
2137  _Out_opt_ LPDWORD lpMaxCollectionCount,
2138  _Out_opt_ LPDWORD lpCollectDataTimeout,
2139  _Out_writes_opt_(nMaxUserNameSize) LPWSTR lpUserName,
2140  _In_ DWORD nMaxUserNameSize);
2141 
2142 BOOL WINAPI GetNamedPipeInfo(_In_ HANDLE, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD);
2143 #if (_WIN32_WINNT >= 0x0501)
2144 VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO);
2145 #endif
2146 
2147 BOOL
2148 WINAPI
2150  _In_ HANDLE hEventLog,
2151  _In_ DWORD dwInfoLevel,
2152  _Out_writes_bytes_to_(cbBufSize, *pcbBytesNeeded) LPVOID lpBuffer,
2153  _In_ DWORD cbBufSize,
2155 
2157 BOOL WINAPI GetOldestEventLogRecord(_In_ HANDLE, _Out_ PDWORD);
2158 BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL);
2159 DWORD WINAPI GetPriorityClass(HANDLE);
2161 UINT WINAPI GetPrivateProfileIntA(_In_ LPCSTR, _In_ LPCSTR, _In_ INT, _In_opt_ LPCSTR);
2162 UINT WINAPI GetPrivateProfileIntW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ INT, _In_opt_ LPCWSTR);
2163 
2164 DWORD
2165 WINAPI
2167  _In_ LPCSTR lpAppName,
2168  _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString,
2169  _In_ DWORD nSize,
2170  _In_opt_ LPCSTR lpFileName);
2171 
2172 DWORD
2173 WINAPI
2175  _In_ LPCWSTR lpAppName,
2176  _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString,
2177  _In_ DWORD nSize,
2178  _In_opt_ LPCWSTR lpFileName);
2179 
2180 DWORD
2181 WINAPI
2183  _Out_writes_to_opt_(nSize, return + 1) LPSTR lpszReturnBuffer,
2184  _In_ DWORD nSize,
2185  _In_opt_ LPCSTR lpFileName);
2186 
2187 DWORD
2188 WINAPI
2190  _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpszReturnBuffer,
2191  _In_ DWORD nSize,
2192  _In_opt_ LPCWSTR lpFileName);
2193 
2194 DWORD
2195 WINAPI
2197  _In_opt_ LPCSTR lpAppName,
2198  _In_opt_ LPCSTR lpKeyName,
2199  _In_opt_ LPCSTR lpDefault,
2200  _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString,
2201  _In_ DWORD nSize,
2202  _In_opt_ LPCSTR lpFileName);
2203 
2204 DWORD
2205 WINAPI
2207  _In_opt_ LPCWSTR lpAppName,
2208  _In_opt_ LPCWSTR lpKeyName,
2209  _In_opt_ LPCWSTR lpDefault,
2210  _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString,
2211  _In_ DWORD nSize,
2212  _In_opt_ LPCWSTR lpFileName);
2213 
2214 BOOL
2215 WINAPI
2217  _In_ LPCSTR lpszSection,
2218  _In_ LPCSTR lpszKey,
2219  _Out_writes_bytes_opt_(uSizeStruct) LPVOID lpStruct,
2220  _In_ UINT uSizeStruct,
2221  _In_opt_ LPCSTR szFile);
2222 
2223 BOOL
2224 WINAPI
2226  _In_ LPCWSTR lpszSection,
2227  _In_ LPCWSTR lpszKey,
2228  _Out_writes_bytes_opt_(uSizeStruct) LPVOID lpStruct,
2229  _In_ UINT uSizeStruct,
2230  _In_opt_ LPCWSTR szFile);
2231 
2234 #if (_WIN32_WINNT >= 0x0502)
2235 BOOL WINAPI GetProcessHandleCount(_In_ HANDLE, _Out_ PDWORD);
2236 #endif
2237 HANDLE WINAPI GetProcessHeap(VOID);
2238 DWORD WINAPI GetProcessHeaps(DWORD,PHANDLE);
2239 #if (_WIN32_WINNT >= 0x0502)
2240 DWORD WINAPI GetProcessId(HANDLE);
2241 #endif
2242 #if (_WIN32_WINNT >= 0x0500)
2244 #endif
2247 BOOL WINAPI GetProcessTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME);
2248 DWORD WINAPI GetProcessVersion(DWORD);
2249 HWINSTA WINAPI GetProcessWindowStation(void);
2251 UINT WINAPI GetProfileIntA(_In_ LPCSTR, _In_ LPCSTR, _In_ INT);
2252 UINT WINAPI GetProfileIntW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ INT);
2253 
2254 DWORD
2255 WINAPI
2257  _In_ LPCSTR lpAppName,
2258  _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString,
2259  _In_ DWORD nSize);
2260 
2261 DWORD
2262 WINAPI
2264  _In_ LPCWSTR lpAppName,
2265  _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString,
2266  _In_ DWORD nSize);
2267 
2268 DWORD
2269 WINAPI
2271  _In_opt_ LPCSTR lpAppName,
2272  _In_opt_ LPCSTR lpKeyName,
2273  _In_opt_ LPCSTR lpDefault,
2274  _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString,
2275  _In_ DWORD nSize);
2276 
2277 DWORD
2278 WINAPI
2280  _In_opt_ LPCWSTR lpAppName,
2281  _In_opt_ LPCWSTR lpKeyName,
2282  _In_opt_ LPCWSTR lpDefault,
2283  _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString,
2284  _In_ DWORD nSize);
2285 
2286 BOOL WINAPI GetQueuedCompletionStatus(HANDLE,PDWORD,PULONG_PTR,LPOVERLAPPED*,DWORD);
2294 
2295 _Success_(return != 0 && return < cchBuffer)
2296 DWORD
2297 WINAPI
2299  _In_ LPCSTR lpszLongPath,
2300  _Out_writes_to_opt_(cchBuffer, return + 1) LPSTR lpszShortPath,
2301  _In_ DWORD cchBuffer);
2302 
2303 DWORD WINAPI GetShortPathNameW(LPCWSTR,LPWSTR,DWORD);
2306 PDWORD WINAPI GetSidSubAuthority(PSID,DWORD);
2308 VOID WINAPI GetStartupInfoA(_Out_ LPSTARTUPINFOA);
2309 VOID WINAPI GetStartupInfoW(LPSTARTUPINFOW);
2310 HANDLE WINAPI GetStdHandle(_In_ DWORD);
2312 UINT WINAPI GetSystemDirectoryW(LPWSTR,UINT);
2313 VOID WINAPI GetSystemInfo(LPSYSTEM_INFO);
2314 BOOL WINAPI GetSystemPowerStatus(_Out_ LPSYSTEM_POWER_STATUS);
2315 #if (_WIN32_WINNT >= 0x0502)
2317 #endif
2318 VOID WINAPI GetSystemTime(LPSYSTEMTIME);
2319 #if (_WIN32_WINNT >= 0x0501)
2320 BOOL WINAPI GetSystemTimes(_Out_opt_ LPFILETIME, _Out_opt_ LPFILETIME, _Out_opt_ LPFILETIME);
2321 #endif
2322 BOOL WINAPI GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL);
2323 void WINAPI GetSystemTimeAsFileTime(LPFILETIME);
2324 #if (_WIN32_WINNT >= 0x0500)
2325 UINT WINAPI GetSystemWindowsDirectoryA(LPSTR,UINT);
2326 UINT WINAPI GetSystemWindowsDirectoryW(LPWSTR,UINT);
2327 #endif
2328 
2329 #if (_WIN32_WINNT >= 0x0501)
2330 
2331 _Success_(return != 0 && return < uSize)
2332 UINT
2333 WINAPI
2335  _Out_writes_to_opt_(uSize, return + 1) LPSTR lpBuffer,
2336  _In_ UINT uSize);
2337 
2338 _Success_(return != 0 && return < uSize)
2339 UINT
2340 WINAPI
2342  _Out_writes_to_opt_(uSize, return + 1) LPWSTR lpBuffer,
2343  _In_ UINT uSize);
2344 
2345 #endif
2346 
2347 DWORD
2348 WINAPI
2350  _In_ HANDLE hDevice,
2351  _In_ DWORD dwOperation,
2352  _Inout_ LPDWORD lpdwSize,
2353  _Out_writes_bytes_(*lpdwSize) LPVOID lpTapeInformation);
2354 
2355 DWORD WINAPI GetTapePosition(_In_ HANDLE, _In_ DWORD, _Out_ PDWORD, _Out_ PDWORD, _Out_ PDWORD);
2356 DWORD WINAPI GetTapeStatus(_In_ HANDLE);
2357 
2358 UINT
2359 WINAPI
2361  _In_ LPCSTR lpPathName,
2362  _In_ LPCSTR lpPrefixString,
2363  _In_ UINT uUnique,
2364  _Out_writes_(MAX_PATH) LPSTR lpTempFileName);
2365 
2366 UINT WINAPI GetTempFileNameW(LPCWSTR,LPCWSTR,UINT,LPWSTR);
2367 
2368 DWORD
2369 WINAPI
2370 GetTempPathA(
2371  _In_ DWORD nBufferLength,
2372  _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer);
2373 
2374 DWORD WINAPI GetTempPathW(DWORD,LPWSTR);
2376 #if (_WIN32_WINNT >= 0x0502)
2378 #endif
2379 int WINAPI GetThreadPriority(HANDLE);
2381 BOOL WINAPI GetThreadSelectorEntry(_In_ HANDLE, _In_ DWORD, _Out_ LPLDT_ENTRY);
2382 BOOL WINAPI GetThreadTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME);
2383 DWORD WINAPI GetTickCount(VOID);
2384 #if (_WIN32_WINNT >= 0x0600)
2386 #endif
2387 DWORD WINAPI GetThreadId(HANDLE);
2388 DWORD WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION);
2389 BOOL WINAPI GetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD,PDWORD);
2390 
2391 BOOL
2392 WINAPI
2393 GetUserNameA(
2394  _Out_writes_to_opt_(*pcbBuffer, *pcbBuffer) LPSTR lpBuffer,
2395  _Inout_ LPDWORD pcbBuffer);
2396 
2397 BOOL
2398 WINAPI
2399 GetUserNameW(
2400  _Out_writes_to_opt_(*pcbBuffer, *pcbBuffer) LPWSTR lpBuffer,
2401  _Inout_ LPDWORD pcbBuffer);
2402 
2403 DWORD WINAPI GetVersion(void);
2406 
2407 BOOL
2408 WINAPI
2410  _In_opt_ LPCSTR lpRootPathName,
2411  _Out_writes_opt_(nVolumeNameSize) LPSTR lpVolumeNameBuffer,
2412  _In_ DWORD nVolumeNameSize,
2413  _Out_opt_ LPDWORD lpVolumeSerialNumber,
2414  _Out_opt_ LPDWORD lpMaximumComponentLength,
2415  _Out_opt_ LPDWORD lpFileSystemFlags,
2416  _Out_writes_opt_(nFileSystemNameSize) LPSTR lpFileSystemNameBuffer,
2417  _In_ DWORD nFileSystemNameSize);
2418 
2419 BOOL WINAPI GetVolumeInformationW(LPCWSTR,LPWSTR,DWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD);
2420 
2421 #if (_WIN32_WINNT >= 0x0500)
2422 
2423 BOOL
2424 WINAPI
2426  _In_ LPCSTR lpszVolumeMountPoint,
2427  _Out_writes_(cchBufferLength) LPSTR lpszVolumeName,
2428  _In_ DWORD cchBufferLength);
2429 
2430 BOOL WINAPI GetVolumeNameForVolumeMountPointW(LPCWSTR,LPWSTR,DWORD);
2431 
2432 BOOL
2433 WINAPI
2435  _In_ LPCSTR lpszFileName,
2436  _Out_writes_(cchBufferLength) LPSTR lpszVolumePathName,
2437  _In_ DWORD cchBufferLength);
2438 
2439 BOOL WINAPI GetVolumePathNameW(LPCWSTR,LPWSTR,DWORD);
2440 
2441 #endif
2442 
2443 #if (_WIN32_WINNT >= 0x0501)
2444 
2445 BOOL
2446 WINAPI
2448  _In_ LPCSTR lpszVolumeName,
2449  _Out_writes_to_opt_(cchBufferLength, *lpcchReturnLength) _Post_ _NullNull_terminated_ LPCH lpszVolumePathNames,
2450  _In_ DWORD cchBufferLength,
2451  _Out_ PDWORD lpcchReturnLength);
2452 
2453 BOOL WINAPI GetVolumePathNamesForVolumeNameW(LPCWSTR,LPWSTR,DWORD,PDWORD);
2454 
2455 #endif
2456 
2457 UINT WINAPI GetWindowsDirectoryA(LPSTR,UINT);
2458 UINT WINAPI GetWindowsDirectoryW(LPWSTR,UINT);
2459 DWORD WINAPI GetWindowThreadProcessId(HWND,PDWORD);
2460 UINT WINAPI GetWriteWatch(DWORD,PVOID,SIZE_T,PVOID*,PULONG_PTR,PULONG);
2464 SIZE_T WINAPI GlobalCompact(_In_ DWORD); /* Obsolete: Has no effect. */
2466 #define GlobalDiscard(m) GlobalReAlloc((m),0,GMEM_MOVEABLE)
2469 VOID WINAPI GlobalFix(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2470 UINT WINAPI GlobalFlags(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2472 
2473 UINT
2474 WINAPI
2476  _In_ ATOM nAtom,
2477  _Out_writes_to_(nSize, return + 1) LPSTR lpBuffer,
2478  _In_ int nSize);
2479 
2480 UINT
2481 WINAPI
2483  _In_ ATOM nAtom,
2484  _Out_writes_to_(nSize, return + 1) LPWSTR lpBuffer,
2485  _In_ int nSize);
2486 
2489 VOID WINAPI GlobalMemoryStatus(_Out_ LPMEMORYSTATUS);
2490 #if (_WIN32_WINNT >= 0x0500)
2491 BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX);
2492 #endif
2495 VOID WINAPI GlobalUnfix(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2497 BOOL WINAPI GlobalUnWire(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2498 PVOID WINAPI GlobalWire(_In_ HGLOBAL); /* Obsolete: Has no effect. */
2499 #define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING)
2500 PVOID WINAPI HeapAlloc(HANDLE,DWORD,SIZE_T);
2501 SIZE_T WINAPI HeapCompact(HANDLE,DWORD);
2502 HANDLE WINAPI HeapCreate(DWORD,SIZE_T,SIZE_T);
2503 BOOL WINAPI HeapDestroy(HANDLE);
2504 BOOL WINAPI HeapFree(HANDLE,DWORD,PVOID);
2505 BOOL WINAPI HeapLock(HANDLE);
2506 #if (_WIN32_WINNT >= 0x0501)
2508 #endif
2509 PVOID WINAPI HeapReAlloc(HANDLE,DWORD,PVOID,SIZE_T);
2510 #if (_WIN32_WINNT >= 0x0501)
2512 #endif
2513 SIZE_T WINAPI HeapSize(HANDLE,DWORD,LPCVOID);
2514 BOOL WINAPI HeapUnlock(HANDLE);
2515 BOOL WINAPI HeapValidate(HANDLE,DWORD,LPCVOID);
2516 BOOL WINAPI HeapWalk(HANDLE,LPPROCESS_HEAP_ENTRY);
2521 BOOL WINAPI InitAtomTable(_In_ DWORD);
2522 BOOL WINAPI InitializeAcl(PACL,DWORD,DWORD);
2523 #if (_WIN32_WINNT >= 0x0600)
2524 VOID WINAPI InitializeConditionVariable(PCONDITION_VARIABLE);
2525 #endif
2526 VOID WINAPI InitializeCriticalSection(LPCRITICAL_SECTION);
2527 BOOL WINAPI InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION,DWORD);
2528 DWORD WINAPI SetCriticalSectionSpinCount(LPCRITICAL_SECTION,DWORD);
2531 
2532 #if (_WIN32_WINNT >= 0x0600)
2533 VOID WINAPI InitializeSRWLock(PSRWLOCK);
2534 #endif
2535 
2544 #if (_WIN32_WINNT >= 0x0501)
2545 BOOL WINAPI IsProcessInJob(HANDLE,HANDLE,PBOOL);
2546 #endif
2549 
2550 BOOL
2551 WINAPI
2553  _In_reads_bytes_(iSize) CONST VOID *lpv,
2554  _In_ int iSize,
2555  _Inout_opt_ LPINT lpiResult);
2556 
2557 #if (_WIN32_WINNT >= 0x0600)
2559 #endif
2562 BOOL WINAPI IsValidSid(PSID);
2563 #if (_WIN32_WINNT >= 0x0501)
2566 #endif
2567 void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION);
2568 #define LimitEmsPages(n)
2571 HINSTANCE WINAPI LoadLibraryExA(LPCSTR,HANDLE,DWORD);
2572 HINSTANCE WINAPI LoadLibraryExW(LPCWSTR,HANDLE,DWORD);
2573 DWORD WINAPI LoadModule(_In_ LPCSTR, _In_ PVOID);
2576 SIZE_T WINAPI LocalCompact(_In_ UINT); /* Obsolete: Has no effect. */
2577 #define LocalDiscard(m) (LocalReAlloc((m),0,LMEM_MOVEABLE))
2579 UINT WINAPI LocalFlags(_In_ HLOCAL); /* Obsolete: Has no effect. */
2582 PVOID WINAPI LocalLock(HLOCAL);
2584 SIZE_T WINAPI LocalShrink(_In_ HLOCAL, _In_ UINT); /* Obsolete: Has no effect. */
2587 BOOL WINAPI LockFile(HANDLE,DWORD,DWORD,DWORD,DWORD);
2588 BOOL WINAPI LockFileEx(HANDLE,DWORD,DWORD,DWORD,DWORD,LPOVERLAPPED);
2589 PVOID WINAPI LockResource(HGLOBAL);
2590 #define LockSegment(w) GlobalFix((HANDLE)(w)) /* Obsolete: Has no effect. */
2591 BOOL WINAPI LogonUserA(_In_ LPSTR, _In_opt_ LPSTR, _In_opt_ LPSTR, _In_ DWORD, _In_ DWORD, _Outptr_ PHANDLE);
2592 BOOL WINAPI LogonUserW(_In_ LPWSTR, _In_opt_ LPWSTR, _In_opt_ LPWSTR, _In_ DWORD, _In_ DWORD, _Outptr_ PHANDLE);
2593 
2594 _Success_(return != FALSE)
2595 BOOL
2596 WINAPI
2597 LogonUserExA(
2598  _In_ LPSTR lpszUsername,
2600  _In_opt_ LPSTR lpszPassword,
2601  _In_ DWORD dwLogonType,
2602  _In_ DWORD dwLogonProvider,
2604  _Out_opt_ PSID *ppLogonSid,
2605  _Out_opt_ PVOID *ppProfileBuffer,
2608 
2610 BOOL
2611 WINAPI
2612 LogonUserExW(
2613  _In_ LPWSTR lpszUsername,
2614  _In_opt_ LPWSTR lpszDomain,
2615  _In_opt_ LPWSTR lpszPassword,
2616  _In_ DWORD dwLogonType,
2617  _In_ DWORD dwLogonProvider,
2618  _Out_opt_ PHANDLE phToken,
2619  _Out_opt_ PSID *ppLogonSid,
2620  _Out_opt_ PVOID *ppProfileBuffer,
2621  _Out_opt_ LPDWORD pdwProfileLength,
2622  _Out_opt_ PQUOTA_LIMITS pQuotaLimits);
2623 
2625 BOOL
2626 WINAPI
2628  _In_opt_ LPCSTR lpSystemName,
2631  _Inout_ LPDWORD cbSid,
2633  _Inout_ LPDWORD cchReferencedDomainName,
2635 
2637 BOOL
2638 WINAPI
2640  _In_opt_ LPCWSTR lpSystemName,
2641  _In_ LPCWSTR lpAccountName,
2642  _Out_writes_bytes_to_opt_(*cbSid, *cbSid) PSID Sid,
2643  _Inout_ LPDWORD cbSid,
2644  _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPWSTR ReferencedDomainName,
2645  _Inout_ LPDWORD cchReferencedDomainName,
2646  _Out_ PSID_NAME_USE peUse);
2647 
2649 BOOL
2650 WINAPI
2652  _In_opt_ LPCSTR lpSystemName,
2653  _In_ PSID Sid,
2654  _Out_writes_to_opt_(*cchName, *cchName + 1) LPSTR Name,
2655  _Inout_ LPDWORD cchName,
2656  _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPSTR ReferencedDomainName,
2657  _Inout_ LPDWORD cchReferencedDomainName,
2658  _Out_ PSID_NAME_USE peUse);
2659 
2661 BOOL
2662 WINAPI
2664  _In_opt_ LPCWSTR lpSystemName,
2665  _In_ PSID Sid,
2666  _Out_writes_to_opt_(*cchName, *cchName + 1) LPWSTR Name,
2667  _Inout_ LPDWORD cchName,
2668  _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPWSTR ReferencedDomainName,
2669  _Inout_ LPDWORD cchReferencedDomainName,
2670  _Out_ PSID_NAME_USE peUse);
2671 
2673 BOOL
2674 WINAPI
2676  _In_opt_ LPCSTR lpSystemName,
2677  _In_ LPCSTR lpName,
2678  _Out_writes_to_opt_(*cchDisplayName, *cchDisplayName + 1) LPSTR lpDisplayName,
2679  _Inout_ LPDWORD cchDisplayName,
2681 
2683 BOOL
2684 WINAPI
2686  _In_opt_ LPCWSTR lpSystemName,
2687  _In_ LPCWSTR lpName,
2688  _Out_writes_to_opt_(*cchDisplayName, *cchDisplayName + 1) LPWSTR lpDisplayName,
2689  _Inout_ LPDWORD cchDisplayName,
2690  _Out_ LPDWORD lpLanguageId);
2691 
2693 BOOL
2694 WINAPI
2696  _In_opt_ LPCSTR lpSystemName,
2698  _Out_writes_to_opt_(*cchName, *cchName + 1) LPSTR lpName,
2699  _Inout_ LPDWORD cchName);
2700 
2702 BOOL
2703 WINAPI
2705  _In_opt_ LPCWSTR lpSystemName,
2706  _In_ PLUID lpLuid,
2707  _Out_writes_to_opt_(*cchName, *cchName + 1) LPWSTR lpName,
2708  _Inout_ LPDWORD cchName);
2709 
2711 BOOL WINAPI LookupPrivilegeValueW(_In_opt_ LPCWSTR, _In_ LPCWSTR, _Out_ PLUID);
2712 
2713 LPSTR
2714 WINAPI
2715 lstrcatA(
2716  _Inout_updates_z_(_String_length_(lpString1) + _String_length_(lpString2) + 1) LPSTR lpString1,
2717  _In_ LPCSTR lpString2);
2718 
2719 LPWSTR
2720 WINAPI
2721 lstrcatW(
2722  _Inout_updates_z_(_String_length_(lpString1) + _String_length_(lpString2) + 1) LPWSTR lpString1,
2723  _In_ LPCWSTR lpString2);
2724 
2725 int WINAPI lstrcmpA(LPCSTR,LPCSTR);
2726 int WINAPI lstrcmpiA(LPCSTR,LPCSTR);
2727 int WINAPI lstrcmpiW( LPCWSTR,LPCWSTR);
2728 int WINAPI lstrcmpW(LPCWSTR,LPCWSTR);
2729 
2730 LPSTR
2731 WINAPI
2732 lstrcpyA(
2733  _Out_writes_(_String_length_(lpString2) + 1) LPSTR lpString1,
2734  _In_ LPCSTR lpString2);
2735 
2736 LPWSTR
2737 WINAPI
2738 lstrcpyW(
2739  _Out_writes_(_String_length_(lpString2) + 1) LPWSTR lpString1,
2740  _In_ LPCWSTR lpString2);
2741 
2742 LPSTR WINAPI lstrcpynA(LPSTR,LPCSTR,int);
2743 LPWSTR WINAPI lstrcpynW(LPWSTR,LPCWSTR,int);
2744 int WINAPI lstrlenA(LPCSTR);
2745 int WINAPI lstrlenW(LPCWSTR);
2746 BOOL WINAPI MakeAbsoluteSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD,PACL,PDWORD,PACL,PDWORD,PSID,PDWORD,PSID,PDWORD);
2747 #define MakeProcInstance(p,i) (p)
2748 BOOL WINAPI MakeSelfRelativeSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD);
2750 PVOID WINAPI MapViewOfFile(HANDLE,DWORD,DWORD,DWORD,SIZE_T);
2751 PVOID WINAPI MapViewOfFileEx(HANDLE,DWORD,DWORD,DWORD,SIZE_T,PVOID);
2752 BOOL WINAPI MoveFileA(_In_ LPCSTR, _In_ LPCSTR);
2753 BOOL WINAPI MoveFileW(_In_ LPCWSTR, _In_ LPCWSTR);
2754 BOOL WINAPI MoveFileExA(_In_ LPCSTR, _In_opt_ LPCSTR, _In_ DWORD);
2755 BOOL WINAPI MoveFileExW(_In_ LPCWSTR, _In_opt_ LPCWSTR, _In_ DWORD);
2758 int WINAPI MulDiv(_In_ int, _In_ int, _In_ int);
2759 BOOL WINAPI NotifyChangeEventLog(_In_ HANDLE, _In_ HANDLE);
2761 BOOL WINAPI ObjectCloseAuditAlarmW(LPCWSTR,PVOID,BOOL);
2763 BOOL WINAPI ObjectDeleteAuditAlarmW(LPCWSTR,PVOID,BOOL);
2764 BOOL WINAPI ObjectOpenAuditAlarmA(_In_ LPCSTR, _In_ PVOID, _In_ LPSTR, _In_opt_ LPSTR, _In_ PSECURITY_DESCRIPTOR, _In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_opt_ PPRIVILEGE_SET, _In_ BOOL, _In_ BOOL, _Out_ PBOOL);
2765 BOOL WINAPI ObjectOpenAuditAlarmW(LPCWSTR,PVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL);
2767 BOOL WINAPI ObjectPrivilegeAuditAlarmW(LPCWSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL);
2768 HANDLE WINAPI OpenBackupEventLogA(_In_opt_ LPCSTR, _In_ LPCSTR);
2769 HANDLE WINAPI OpenBackupEventLogW(_In_opt_ LPCWSTR, _In_ LPCWSTR);
2770 HANDLE WINAPI OpenEventA(DWORD,BOOL,LPCSTR);
2771 HANDLE WINAPI OpenEventLogA(_In_opt_ LPCSTR, _In_ LPCSTR);
2772 HANDLE WINAPI OpenEventLogW(_In_opt_ LPCWSTR, _In_ LPCWSTR);
2773 HANDLE WINAPI OpenEventW(DWORD,BOOL,LPCWSTR);
2774 HFILE WINAPI OpenFile(_In_ LPCSTR, _Inout_ LPOFSTRUCT, _In_ UINT);
2775 #if (_WIN32_WINNT >= 0x0600)
2776 HANDLE WINAPI OpenFileById(_In_ HANDLE, _In_ LPFILE_ID_DESCRIPTOR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES, _In_ DWORD);
2777 #endif
2778 HANDLE WINAPI OpenFileMappingA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR);
2779 HANDLE WINAPI OpenFileMappingW(DWORD,BOOL,LPCWSTR);
2780 _Ret_maybenull_ HANDLE WINAPI OpenMutexA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR);
2781 HANDLE WINAPI OpenMutexW(DWORD,BOOL,LPCWSTR);
2782 HANDLE WINAPI OpenProcess(DWORD,BOOL,DWORD);
2783 BOOL WINAPI OpenProcessToken(HANDLE,DWORD,PHANDLE);
2784 _Ret_maybenull_ HANDLE WINAPI OpenSemaphoreA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR);
2785 HANDLE WINAPI OpenSemaphoreW(DWORD,BOOL,LPCWSTR);
2786 #if (_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)
2787 HANDLE WINAPI OpenThread(DWORD,BOOL,DWORD);
2788 #endif
2789 BOOL WINAPI OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE);
2790 _Ret_maybenull_ HANDLE WINAPI OpenWaitableTimerA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR);
2791 HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR);
2792 WINBASEAPI void WINAPI OutputDebugStringA(LPCSTR);
2793 WINBASEAPI void WINAPI OutputDebugStringW(LPCWSTR);
2794 BOOL WINAPI PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD);
2795 BOOL WINAPI PostQueuedCompletionStatus(HANDLE,DWORD,ULONG_PTR,LPOVERLAPPED);
2796 DWORD WINAPI PrepareTape(_In_ HANDLE, _In_ DWORD, _In_ BOOL);
2800 #if (_WIN32_WINNT >= 0x0500)
2801 BOOL WINAPI ProcessIdToSessionId(DWORD,DWORD*);
2802 #endif
2803 BOOL WINAPI PulseEvent(HANDLE);
2804 BOOL WINAPI PurgeComm(_In_ HANDLE, _In_ DWORD);
2805 
2806 #if (_WIN32_WINNT >= 0x0501)
2807 BOOL
2808 WINAPI
2809 QueryActCtxW(
2810  _In_ DWORD dwFlags,
2811  _In_ HANDLE hActCtx,
2812  _In_opt_ PVOID pvSubInstance,
2813  _In_ ULONG ulInfoClass,
2814  _Out_writes_bytes_to_opt_(cbBuffer, *pcbWrittenOrRequired) PVOID pvBuffer,
2816  _Out_opt_ SIZE_T *pcbWrittenOrRequired);
2817 #endif
2818 
2819 DWORD
2820 WINAPI
2822  _In_opt_ LPCSTR lpDeviceName,
2823  _Out_writes_to_opt_(ucchMax, return) LPSTR lpTargetPath,
2824  _In_ DWORD ucchMax);
2825 
2826 DWORD WINAPI QueryDosDeviceW(LPCWSTR,LPWSTR,DWORD);
2827 #if (_WIN32_WINNT >= 0x0501)
2829 #endif
2832 #if (_WIN32_WINNT >= 0x0600)
2834 #endif
2835 DWORD WINAPI QueueUserAPC(PAPCFUNC,HANDLE,ULONG_PTR);
2836 #if (_WIN32_WINNT >= 0x0500)
2838 #endif
2839 void WINAPI RaiseException(DWORD,DWORD,DWORD,const ULONG_PTR*);
2840 
2841 BOOL
2842 WINAPI
2844  _In_opt_ HANDLE hJob,
2845  _In_ JOBOBJECTINFOCLASS JobObjectInformationClass,
2846  _Out_writes_bytes_to_(cbJobObjectInformationLength, *lpReturnLength) LPVOID lpJobObjectInformation,
2847  _In_ DWORD cbJobObjectInformationLength,
2848  _Out_opt_ LPDWORD lpReturnLength);
2849 
2850 BOOL
2851 WINAPI
2853  _In_ HANDLE hDirectory,
2854  _Out_writes_bytes_to_(nBufferLength, *lpBytesReturned) LPVOID lpBuffer,
2855  _In_ DWORD nBufferLength,
2856  _In_ BOOL bWatchSubtree,
2857  _In_ DWORD dwNotifyFilter,
2859  _Inout_opt_ LPOVERLAPPED lpOverlapped,
2860  _In_opt_ LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
2861 
2862 BOOL
2863 WINAPI
2865  _In_ HANDLE hEventLog,
2866  _In_ DWORD dwReadFlags,
2867  _In_ DWORD dwRecordOffset,
2868  _Out_writes_bytes_to_(nNumberOfBytesToRead, *pnBytesRead) LPVOID lpBuffer,
2869  _In_ DWORD nNumberOfBytesToRead,
2870  _Out_ DWORD *pnBytesRead,
2871  _Out_ DWORD *pnMinNumberOfBytesNeeded);
2872 
2873 BOOL
2874 WINAPI
2876  _In_ HANDLE hEventLog,
2877  _In_ DWORD dwReadFlags,
2878  _In_ DWORD dwRecordOffset,
2879  _Out_writes_bytes_to_(nNumberOfBytesToRead, *pnBytesRead) LPVOID lpBuffer,
2880  _In_ DWORD nNumberOfBytesToRead,
2881  _Out_ DWORD *pnBytesRead,
2882  _Out_ DWORD *pnMinNumberOfBytesNeeded);
2883 
2884 BOOL WINAPI ReadFile(HANDLE,PVOID,DWORD,PDWORD,LPOVERLAPPED);
2885 BOOL WINAPI ReadFileEx(HANDLE,PVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE);
2886 BOOL WINAPI ReadFileScatter(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED);
2888 #if (_WIN32_WINNT >= 0x0600)
2889 VOID WINAPI RecoveryFinished(BOOL);
2890 HRESULT WINAPI RecoveryInProgress(OUT PBOOL);
2891 HRESULT WINAPI RegisterApplicationRecoveryCallback(_In_ APPLICATION_RECOVERY_CALLBACK, _In_opt_ PVOID, _In_ DWORD, _In_ DWORD);
2892 HRESULT WINAPI RegisterApplicationRestart(_In_opt_ PCWSTR, _In_ DWORD);
2893 #endif
2894 HANDLE WINAPI RegisterEventSourceA(_In_opt_ LPCSTR, _In_ LPCSTR);
2895 HANDLE WINAPI RegisterEventSourceW(_In_opt_ LPCWSTR, _In_ LPCWSTR);
2896 #if (_WIN32_WINNT >= 0x0500)
2897 BOOL WINAPI RegisterWaitForSingleObject(_Outptr_ PHANDLE, _In_ HANDLE, _In_ WAITORTIMERCALLBACK, _In_opt_ PVOID, _In_ ULONG, _In_ ULONG);
2898 HANDLE WINAPI RegisterWaitForSingleObjectEx(HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
2899 #endif
2900 #if (_WIN32_WINNT >= 0x0501)
2901 void WINAPI ReleaseActCtx(_Inout_ HANDLE);
2902 #endif
2903 BOOL WINAPI ReleaseMutex(HANDLE);
2905 #if (_WIN32_WINNT >= 0x0600)
2907 VOID WINAPI ReleaseSRWLockShared(PSRWLOCK);
2908 #endif
2909 BOOL WINAPI RemoveDirectoryA(LPCSTR);
2910 BOOL WINAPI RemoveDirectoryW(LPCWSTR);
2911 #if (_WIN32_WINNT >= 0x0500)
2912 ULONG WINAPI RemoveVectoredExceptionHandler(_In_ PVOID);
2913 ULONG WINAPI RemoveVectoredContinueHandler(_In_ PVOID);
2914 #endif
2915 #if (_WIN32_WINNT >= 0x0500)
2916 BOOL WINAPI ReplaceFileA(_In_ LPCSTR, _In_ LPCSTR, _In_opt_ LPCSTR, _In_ DWORD, _Reserved_ LPVOID, _Reserved_ LPVOID);
2917 BOOL WINAPI ReplaceFileW(_In_ LPCWSTR, _In_ LPCWSTR, _In_opt_ LPCWSTR, _In_ DWORD, _Reserved_ LPVOID, _Reserved_ LPVOID);
2918 #endif
2919 
2920 BOOL
2921 WINAPI
2922 ReportEventA(
2923  _In_ HANDLE hEventLog,
2924  _In_ WORD wType,
2925  _In_ WORD wCategory,
2926  _In_ DWORD dwEventID,
2927  _In_opt_ PSID lpUserSid,
2928  _In_ WORD wNumStrings,
2929  _In_ DWORD dwDataSize,
2930  _In_reads_opt_(wNumStrings) LPCSTR *lpStrings,
2931  _In_reads_bytes_opt_(dwDataSize) LPVOID lpRawData);
2932 
2933 BOOL
2934 WINAPI
2935 ReportEventW(
2936  _In_ HANDLE hEventLog,
2937  _In_ WORD wType,
2938  _In_ WORD wCategory,
2939  _In_ DWORD dwEventID,
2940  _In_opt_ PSID lpUserSid,
2941  _In_ WORD wNumStrings,
2942  _In_ DWORD dwDataSize,
2943  _In_reads_opt_(wNumStrings) LPCWSTR *lpStrings,
2944  _In_reads_bytes_opt_(dwDataSize) LPVOID lpRawData);
2945 
2946 BOOL WINAPI ResetEvent(HANDLE);
2947 UINT WINAPI ResetWriteWatch(LPVOID,SIZE_T);
2948 #if (_WIN32_WINNT >= 0x0510)
2949 VOID WINAPI RestoreLastError(_In_ DWORD);
2950 #endif
2951 DWORD WINAPI ResumeThread(HANDLE);
2952 BOOL WINAPI RevertToSelf(void);
2953 
2954 _Success_(return != 0 && return < nBufferLength)
2955 DWORD
2956 WINAPI
2957 SearchPathA(
2958  _In_opt_ LPCSTR lpPath,
2959  _In_ LPCSTR lpFileName,
2960  _In_opt_ LPCSTR lpExtension,
2961  _In_ DWORD nBufferLength,
2962  _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer,
2964 
2965 DWORD WINAPI SearchPathW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*);
2967 BOOL WINAPI SetCommBreak(_In_ HANDLE);
2968 
2969 BOOL
2970 WINAPI
2972  _In_ HANDLE hCommDev,
2973  _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC,
2974  _In_ DWORD dwSize);
2975 
2976 BOOL WINAPI SetCommMask(_In_ HANDLE, _In_ DWORD);
2977 BOOL WINAPI SetCommState(_In_ HANDLE, _In_ LPDCB);
2978 BOOL WINAPI SetCommTimeouts(_In_ HANDLE, _In_ LPCOMMTIMEOUTS);
2980 BOOL WINAPI SetComputerNameW(_In_ LPCWSTR);
2981 #if (_WIN32_WINNT >= 0x0500)
2982 BOOL WINAPI SetComputerNameExA(_In_ COMPUTER_NAME_FORMAT, _In_ LPCSTR);
2983 BOOL WINAPI SetComputerNameExW(COMPUTER_NAME_FORMAT,LPCWSTR);
2984 #endif
2987 
2988 BOOL
2989 WINAPI
2991  _In_ LPCSTR lpszName,
2992  _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC,
2993  _In_ DWORD dwSize);
2994 
2995 BOOL
2996 WINAPI
2998  _In_ LPCWSTR lpszName,
2999  _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC,
3000  _In_ DWORD dwSize);
3001 
3002 #if (_WIN32_WINNT >= 0x0502)
3005 #endif
3006 BOOL WINAPI SetEndOfFile(HANDLE);
3007 BOOL WINAPI SetEnvironmentVariableA(LPCSTR,LPCSTR);
3008 BOOL WINAPI SetEnvironmentVariableW(LPCWSTR,LPCWSTR);
3009 UINT WINAPI SetErrorMode(UINT);
3010 BOOL WINAPI SetEvent(HANDLE);
3013 BOOL WINAPI SetFileAttributesA(LPCSTR,DWORD);
3014 #if (_WIN32_WINNT >= 0x0600)
3015 BOOL WINAPI SetFileAttributesByHandle(HANDLE,DWORD,DWORD);
3016 #endif
3017 BOOL WINAPI SetFileAttributesW(LPCWSTR,DWORD);
3018 #if (_WIN32_WINNT >= 0x0600)
3019 BOOL WINAPI SetFileBandwidthReservation(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ BOOL, _Out_ LPDWORD, _Out_ LPDWORD);
3021 #endif
3022 DWORD WINAPI SetFilePointer(HANDLE,LONG,PLONG,DWORD);
3023 BOOL WINAPI SetFilePointerEx(HANDLE,LARGE_INTEGER,PLARGE_INTEGER,DWORD);
3024 BOOL WINAPI SetFileSecurityA(_In_ LPCSTR, _In_ SECURITY_INFORMATION, _In_ PSECURITY_DESCRIPTOR);
3025 BOOL WINAPI SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
3026 #if (_WIN32_WINNT >= 0x0501)
3027 BOOL WINAPI SetFileShortNameA(_In_ HANDLE, _In_ LPCSTR);
3028 BOOL WINAPI SetFileShortNameW(_In_ HANDLE, _In_ LPCWSTR);
3029 #endif
3030 BOOL WINAPI SetFileTime(HANDLE,const FILETIME*,const FILETIME*,const FILETIME*);
3031 #if (_WIN32_WINNT >= 0x0501)
3033 #endif
3034 
3035 #if (_WIN32_WINNT >= 0x0502)
3036 
3037 BOOL
3038 WINAPI
3040  _In_ LPCSTR lpName,
3041  _In_ LPCSTR lpGuid,
3042  _In_reads_bytes_opt_(nSize) PVOID pValue,
3043  _In_ DWORD nSize);
3044 
3045 BOOL
3046 WINAPI
3048  _In_ LPCWSTR lpName,
3049  _In_ LPCWSTR lpGuid,
3050  _In_reads_bytes_opt_(nSize) PVOID pValue,
3051  _In_ DWORD nSize);
3052 
3053 #endif
3054 
3055 UINT WINAPI SetHandleCount(UINT);
3056 BOOL WINAPI SetHandleInformation(HANDLE,DWORD,DWORD);
3057 
3058 BOOL
3059 WINAPI
3061  _In_ HANDLE hJob,
3062  _In_ JOBOBJECTINFOCLASS JobObjectInformationClass,
3063  _In_reads_bytes_(cbJobObjectInformationLength) LPVOID lpJobObjectInformation,
3064  _In_ DWORD cbJobObjectInformationLength);
3065 
3066 BOOL WINAPI SetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
3067 void WINAPI SetLastError(DWORD);
3068 void WINAPI SetLastErrorEx(DWORD,DWORD);
3070 BOOL WINAPI SetMailslotInfo(_In_ HANDLE, _In_ DWORD);
3071 BOOL WINAPI SetNamedPipeHandleState(HANDLE,PDWORD,PDWORD,PDWORD);
3072 BOOL WINAPI SetPriorityClass(HANDLE,DWORD);
3073 BOOL WINAPI SetPrivateObjectSecurity(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR *,PGENERIC_MAPPING,HANDLE);
3078 #if (_WIN32_WINNT >= 0x0600)
3080 #endif
3082 BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL);
3083 BOOL WINAPI SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID,BOOL);
3084 BOOL WINAPI SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID,BOOL);
3085 DWORD WINAPI SetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR,PUCHAR);
3086 BOOL WINAPI SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL);
3087 BOOL WINAPI SetStdHandle(_In_ DWORD, _In_ HANDLE);
3088 #define SetSwapAreaSize(w) (w)
3092 DWORD WINAPI SetTapeParameters(_In_ HANDLE, _In_ DWORD, _In_ PVOID);
3093 DWORD WINAPI SetTapePosition(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ BOOL);
3095 BOOL WINAPI SetThreadContext(HANDLE,const CONTEXT*);
3096 DWORD WINAPI SetThreadIdealProcessor(_In_ HANDLE, _In_ DWORD);
3097 BOOL WINAPI SetThreadPriority(HANDLE,int);
3102 LPTOP_LEVEL_EXCEPTION_FILTER WINAPI SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER);
3103 BOOL WINAPI SetupComm(_In_ HANDLE, _In_ DWORD, _In_ DWORD);
3104 BOOL WINAPI SetVolumeLabelA(_In_opt_ LPCSTR, _In_opt_ LPCSTR);
3105 BOOL WINAPI SetVolumeLabelW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR);
3106 #if (_WIN32_WINNT >= 0x0500)
3107 BOOL WINAPI SetVolumeMountPointA(_In_ LPCSTR, _In_ LPCSTR);
3108 BOOL WINAPI SetVolumeMountPointW(_In_ LPCWSTR, _In_ LPCWSTR);
3109 #endif
3110 BOOL WINAPI SetWaitableTimer(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,PVOID,BOOL);
3111 DWORD WINAPI SignalObjectAndWait(_In_ HANDLE, _In_ HANDLE, _In_ DWORD, _In_ BOOL);
3112 DWORD WINAPI SizeofResource(HINSTANCE,HRSRC);
3113 WINBASEAPI void WINAPI Sleep(DWORD);
3114 #if (_WIN32_WINNT >= 0x0600)
3115 BOOL WINAPI SleepConditionVariableCS(PCONDITION_VARIABLE,PCRITICAL_SECTION,DWORD);
3116 BOOL WINAPI SleepConditionVariableSRW(PCONDITION_VARIABLE,PSRWLOCK,DWORD,ULONG);
3117 #endif
3118 DWORD WINAPI SleepEx(DWORD,BOOL);
3119 DWORD WINAPI SuspendThread(HANDLE);
3120 void WINAPI SwitchToFiber(_In_ PVOID);
3121 BOOL WINAPI SwitchToThread(void);
3122 BOOL WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME);
3124 BOOL WINAPI TerminateProcess(HANDLE,UINT);
3125 BOOL WINAPI TerminateThread(HANDLE,DWORD);
3126 DWORD WINAPI TlsAlloc(VOID);
3127 BOOL WINAPI TlsFree(DWORD);
3128 PVOID WINAPI TlsGetValue(DWORD);
3129 BOOL WINAPI TlsSetValue(DWORD,PVOID);
3130 BOOL WINAPI TransactNamedPipe(HANDLE,PVOID,DWORD,PVOID,DWORD,PDWORD,LPOVERLAPPED);
3131 BOOL WINAPI TransmitCommChar(_In_ HANDLE, _In_ char);
3132 BOOL WINAPI TryEnterCriticalSection(LPCRITICAL_SECTION);
3133 BOOL WINAPI TzSpecificLocalTimeToSystemTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME);
3134 LONG WINAPI UnhandledExceptionFilter(LPEXCEPTION_POINTERS);
3135 BOOL WINAPI UnlockFile(HANDLE,DWORD,DWORD,DWORD,DWORD);
3136 BOOL WINAPI UnlockFileEx(HANDLE,DWORD,DWORD,DWORD,LPOVERLAPPED);
3137 #define UnlockResource(h) (h)
3138 #define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) /* Obsolete: Has no effect. */
3140 #if (_WIN32_WINNT >= 0x0500)
3142 BOOL WINAPI UnregisterWaitEx(HANDLE,HANDLE);
3143 #endif
3144 
3145 BOOL
3146 WINAPI
3148  _In_ HANDLE hUpdate,
3149  _In_ LPCSTR lpType,
3150  _In_ LPCSTR lpName,
3151  _In_ WORD wLanguage,
3152  _In_reads_bytes_opt_(cb) LPVOID lpData,
3153  _In_ DWORD cb);
3154 
3155 BOOL
3156 WINAPI
3158  _In_ HANDLE hUpdate,
3159  _In_ LPCWSTR lpType,
3160  _In_ LPCWSTR lpName,
3161  _In_ WORD wLanguage,
3162  _In_reads_bytes_opt_(cb) LPVOID lpData,
3163  _In_ DWORD cb);
3164 
3167 PVOID WINAPI VirtualAlloc(PVOID,SIZE_T,DWORD,DWORD);
3168 PVOID WINAPI VirtualAllocEx(HANDLE,PVOID,SIZE_T,DWORD,DWORD);
3169 BOOL WINAPI VirtualFree(PVOID,SIZE_T,DWORD);
3170 BOOL WINAPI VirtualFreeEx(HANDLE,PVOID,SIZE_T,DWORD);
3171 BOOL WINAPI VirtualLock(PVOID,SIZE_T);
3172 BOOL WINAPI VirtualProtect(PVOID,SIZE_T,DWORD,PDWORD);
3173 BOOL WINAPI VirtualProtectEx(HANDLE,PVOID,SIZE_T,DWORD,PDWORD);
3177 BOOL WINAPI WaitCommEvent(_In_ HANDLE, _Inout_ PDWORD, _Inout_opt_ LPOVERLAPPED);
3178 BOOL WINAPI WaitForDebugEvent(LPDEBUG_EVENT,DWORD);
3179 
3180 DWORD
3181 WINAPI
3183  _In_ DWORD nCount,
3184  _In_reads_(nCount) CONST HANDLE *lpHandles,
3185  _In_ BOOL bWaitAll,
3186  _In_ DWORD dwMilliseconds);
3187 
3188 DWORD WINAPI WaitForMultipleObjectsEx(DWORD,const HANDLE*,BOOL,DWORD,BOOL);
3189 DWORD WINAPI WaitForSingleObject(HANDLE,DWORD);
3190 DWORD WINAPI WaitForSingleObjectEx(HANDLE,DWORD,BOOL);
3191 BOOL WINAPI WaitNamedPipeA(_In_ LPCSTR, _In_ DWORD);
3192 BOOL WINAPI WaitNamedPipeW(_In_ LPCWSTR, _In_ DWORD);
3193 #if (_WIN32_WINNT >= 0x0600)
3194 VOID WINAPI WakeConditionVariable(PCONDITION_VARIABLE);
3195 VOID WINAPI WakeAllConditionVariable(PCONDITION_VARIABLE);
3196 #endif
3201 DWORD WINAPI WriteEncryptedFileRaw(_In_ PFE_IMPORT_FUNC, _In_opt_ PVOID, _In_ PVOID);
3202 BOOL WINAPI WriteFile(HANDLE,LPCVOID,DWORD,LPDWORD,LPOVERLAPPED);
3204 BOOL WINAPI WriteFileGather(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED);
3207 BOOL WINAPI WritePrivateProfileStringA(_In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR);
3208 BOOL WINAPI WritePrivateProfileStringW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR);
3209 
3210 BOOL
3211 WINAPI
3213  _In_ LPCSTR lpszSection,
3214  _In_ LPCSTR lpszKey,
3215  _In_reads_bytes_opt_(uSizeStruct) LPVOID lpStruct,
3216  _In_ UINT uSizeStruct,
3217  _In_opt_ LPCSTR szFile);
3218 
3219 BOOL
3220 WINAPI
3222  _In_ LPCWSTR lpszSection,
3223  _In_ LPCWSTR lpszKey,
3224  _In_reads_bytes_opt_(uSizeStruct) LPVOID lpStruct,
3225  _In_ UINT uSizeStruct,
3226  _In_opt_ LPCWSTR szFile);
3227 
3229 BOOL WINAPI WriteProfileSectionA(_In_ LPCSTR, _In_ LPCSTR);
3230 BOOL WINAPI WriteProfileSectionW(_In_ LPCWSTR, _In_ LPCWSTR);
3231 BOOL WINAPI WriteProfileStringA(_In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR);
3232 BOOL WINAPI WriteProfileStringW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR);
3233 DWORD WINAPI WriteTapemark(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ BOOL);
3234 #define Yield()
3235 #if (_WIN32_WINNT >= 0x0501)
3237 #endif
3238 
3239 #if (_WIN32_WINNT >= 0x0500)
3240 
3241 BOOL
3242 WINAPI
3244  _In_ HANDLE hProcess,
3245  _Inout_ PULONG_PTR NumberOfPages,
3246  _Out_writes_to_(*NumberOfPages, *NumberOfPages) PULONG_PTR PageArray);
3247 
3248 BOOL
3249 WINAPI
3251  _In_ HANDLE hProcess,
3252  _Inout_ PULONG_PTR NumberOfPages,
3253  _In_reads_(*NumberOfPages) PULONG_PTR PageArray);
3254 
3255 BOOL
3256 WINAPI
3258  _In_ PVOID VirtualAddress,
3259  _In_ ULONG_PTR NumberOfPages,
3260  _In_reads_opt_(NumberOfPages) PULONG_PTR PageArray);
3261 
3262 BOOL
3263 WINAPI
3265  _In_reads_(NumberOfPages) PVOID *VirtualAddresses,
3266  _In_ ULONG_PTR NumberOfPages,
3267  _In_reads_opt_(NumberOfPages) PULONG_PTR PageArray);
3268 
3269 #endif
3270 
3271 #ifdef UNICODE
3278 #if (_WIN32_WINNT >= 0x0501)
3279 typedef ACTCTXW ACTCTX,*PACTCTX;
3280 typedef PCACTCTXW PCACTCTX;
3281 #endif
3282 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmW
3283 #define AddAtom AddAtomW
3284 #define BackupEventLog BackupEventLogW
3285 #define BeginUpdateResource BeginUpdateResourceW
3286 #define BuildCommDCB BuildCommDCBW
3287 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsW
3288 #define CallNamedPipe CallNamedPipeW
3289 #if (_WIN32_WINNT >= 0x0501)
3290 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3W
3291 #endif
3292 #define ClearEventLog ClearEventLogW
3293 #define CommConfigDialog CommConfigDialogW
3294 #define CopyFile CopyFileW
3295 #define CopyFileEx CopyFileExW
3296 #if (_WIN32_WINNT >= 0x0501)
3297 #define CreateActCtx CreateActCtxW
3298 #endif
3299 #define CreateDirectory CreateDirectoryW
3300 #define CreateDirectoryEx CreateDirectoryExW
3301 #define CreateEvent CreateEventW
3302 #define CreateFile CreateFileW
3303 #define CreateFileMapping CreateFileMappingW
3304 #if (_WIN32_WINNT >= 0x0500)
3305 #define CreateHardLink CreateHardLinkW
3306 #define CreateJobObject CreateJobObjectW
3307 #endif
3308 #define CreateMailslot CreateMailslotW
3309 #define CreateMutex CreateMutexW
3310 #define CreateNamedPipe CreateNamedPipeW
3311 #define CreateProcess CreateProcessW
3312 #define CreateProcessAsUser CreateProcessAsUserW
3313 #define CreateSemaphore CreateSemaphoreW
3314 #define CreateWaitableTimer CreateWaitableTimerW
3315 #define DecryptFile DecryptFileW
3316 #define DefineDosDevice DefineDosDeviceW
3317 #define DeleteFile DeleteFileW
3318 #if (_WIN32_WINNT >= 0x0500)
3319 #define DeleteVolumeMountPoint DeleteVolumeMountPointW
3320 #define DnsHostnameToComputerName DnsHostnameToComputerNameW
3321 #endif
3322 #define EncryptFile EncryptFileW
3323 #define EndUpdateResource EndUpdateResourceW
3324 #define EnumResourceLanguages EnumResourceLanguagesW
3325 #define EnumResourceNames EnumResourceNamesW
3326 #define EnumResourceTypes EnumResourceTypesW
3327 #define ExpandEnvironmentStrings ExpandEnvironmentStringsW
3328 #define FatalAppExit FatalAppExitW
3329 #define FileEncryptionStatus FileEncryptionStatusW
3330 #if (_WIN32_WINNT >= 0x0501)
3331 #define FindActCtxSectionString FindActCtxSectionStringW
3332 #endif
3333 #define FindAtom FindAtomW
3334 #define FindFirstChangeNotification FindFirstChangeNotificationW
3335 #define FindFirstFile FindFirstFileW
3336 #define FindFirstFileEx FindFirstFileExW
3337 #if (_WIN32_WINNT >= 0x0500)
3338 #define FindFirstVolume FindFirstVolumeW
3339 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointW
3340 #endif
3341 #define FindNextFile FindNextFileW
3342 #if (_WIN32_WINNT >= 0x0500)
3343 #define FindNextVolume FindNextVolumeW
3344 #define FindNextVolumeMountPoint FindNextVolumeMountPointW
3345 #endif
3346 #define FindResource FindResourceW
3347 #define FindResourceEx FindResourceExW
3348 #define FormatMessage FormatMessageW
3349 #define FreeEnvironmentStrings FreeEnvironmentStringsW
3350 #define GetAtomName GetAtomNameW
3351 #define GetBinaryType GetBinaryTypeW
3352 #define GetCommandLine GetCommandLineW
3353 #define GetCompressedFileSize GetCompressedFileSizeW
3354 #define GetComputerName GetComputerNameW
3355 #if (_WIN32_WINNT >= 0x0500)
3356 #define GetComputerNameEx GetComputerNameExW
3357 #endif
3358 #define GetCurrentDirectory GetCurrentDirectoryW
3359 #define GetDefaultCommConfig GetDefaultCommConfigW
3360 #define GetDiskFreeSpace GetDiskFreeSpaceW
3361 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExW
3362 #if (_WIN32_WINNT >= 0x0502)
3363 #define GetDllDirectory GetDllDirectoryW
3364 #endif
3365 #define GetDriveType GetDriveTypeW
3366 #define GetEnvironmentStrings GetEnvironmentStringsW
3367 #define GetEnvironmentVariable GetEnvironmentVariableW
3368 #define GetFileAttributes GetFileAttributesW
3369 #define GetFileAttributesEx GetFileAttributesExW
3370 #define GetFileSecurity GetFileSecurityW
3371