4 #if !defined(_KERNEL32_)
5 #define WINBASEAPI DECLSPEC_IMPORT
14 #include <libloaderapi.h>
18 #pragma warning(disable:4201)
19 #pragma warning(disable:4214)
20 #pragma warning(disable:4820)
23 #define PROCESS_NAME_NATIVE 1
25 #define FILE_ENCRYPTABLE 0
26 #define FILE_IS_ENCRYPTED 1
27 #define FILE_SYSTEM_ATTR 2
28 #define FILE_ROOT_DIR 3
29 #define FILE_SYSTEM_DIR 4
30 #define FILE_UNKNOWN 5
31 #define FILE_SYSTEM_NOT_SUPPORT 6
32 #define FILE_USER_DISALLOWED 7
33 #define FILE_READ_ONLY 8
34 #define FILE_DIR_DISALLOWED 9
36 #define COMMPROP_INITIALIZED 0xE73CF52E
37 #define SP_SERIALCOMM 1
38 #define PST_UNSPECIFIED 0
40 #define PST_PARALLELPORT 2
46 #define PST_SCANNER 0x22
47 #define PST_NETWORK_BRIDGE 0x100
49 #define PST_TCPIP_TELNET 0x102
61 #define BAUD_7200 1024
62 #define BAUD_9600 2048
63 #define BAUD_14400 4096
64 #define BAUD_19200 8192
65 #define BAUD_38400 16384
66 #define BAUD_56K 32768
67 #define BAUD_128K 65536
68 #define BAUD_115200 131072
69 #define BAUD_57600 262144
70 #define BAUD_USER 0x10000000
74 #define PCF_PARITY_CHECK 8
75 #define PCF_XONXOFF 16
76 #define PCF_SETXCHAR 32
77 #define PCF_TOTALTIMEOUTS 64
78 #define PCF_INTTIMEOUTS 128
79 #define PCF_SPECIALCHARS 256
80 #define PCF_16BITMODE 512
85 #define SP_HANDSHAKING 16
86 #define SP_PARITY_CHECK 32
92 #define DATABITS_16 16
93 #define DATABITS_16X 32
97 #define PARITY_NONE 256
98 #define PARITY_ODD 512
99 #define PARITY_EVEN 1024
100 #define PARITY_MARK 2048
101 #define PARITY_SPACE 4096
102 #define EXCEPTION_DEBUG_EVENT 1
103 #define CREATE_THREAD_DEBUG_EVENT 2
104 #define CREATE_PROCESS_DEBUG_EVENT 3
105 #define EXIT_THREAD_DEBUG_EVENT 4
106 #define EXIT_PROCESS_DEBUG_EVENT 5
107 #define LOAD_DLL_DEBUG_EVENT 6
108 #define UNLOAD_DLL_DEBUG_EVENT 7
109 #define OUTPUT_DEBUG_STRING_EVENT 8
111 #define HFILE_ERROR ((HFILE)-1)
113 #define FILE_CURRENT 1
115 #define INVALID_SET_FILE_POINTER ((DWORD)-1)
117 #define OF_READWRITE 2
119 #define OF_SHARE_COMPAT 0
120 #define OF_SHARE_DENY_NONE 64
121 #define OF_SHARE_DENY_READ 48
122 #define OF_SHARE_DENY_WRITE 32
123 #define OF_SHARE_EXCLUSIVE 16
124 #define OF_CANCEL 2048
125 #define OF_CREATE 4096
126 #define OF_DELETE 512
127 #define OF_EXIST 16384
129 #define OF_PROMPT 8192
130 #define OF_REOPEN 32768
131 #define OF_VERIFY 1024
132 #define NMPWAIT_NOWAIT 1
133 #define NMPWAIT_WAIT_FOREVER ((DWORD)-1)
134 #define NMPWAIT_USE_DEFAULT_WAIT 0
139 #define CE_MODE 32768
144 #define CE_RXPARITY 4
145 #define CE_TXFULL 256
146 #define PROGRESS_CONTINUE 0
147 #define PROGRESS_CANCEL 1
148 #define PROGRESS_STOP 2
149 #define PROGRESS_QUIET 3
150 #define CALLBACK_CHUNK_FINISHED 0
151 #define CALLBACK_STREAM_SWITCH 1
152 #define OFS_MAXPATHNAME 128
153 #define FILE_MAP_COPY SECTION_QUERY
154 #define FILE_MAP_WRITE SECTION_MAP_WRITE
155 #define FILE_MAP_READ SECTION_MAP_READ
156 #define FILE_MAP_ALL_ACCESS SECTION_ALL_ACCESS
157 #define FILE_MAP_EXECUTE SECTION_MAP_EXECUTE_EXPLICIT
158 #define MUTEX_ALL_ACCESS 0x1f0001
159 #define MUTEX_MODIFY_STATE 1
160 #define SEMAPHORE_ALL_ACCESS 0x1f0003
161 #define SEMAPHORE_MODIFY_STATE 2
162 #define EVENT_ALL_ACCESS 0x1f0003
163 #define EVENT_MODIFY_STATE 2
164 #define PIPE_ACCESS_DUPLEX 3
165 #define PIPE_ACCESS_INBOUND 1
166 #define PIPE_ACCESS_OUTBOUND 2
167 #define PIPE_TYPE_BYTE 0
168 #define PIPE_TYPE_MESSAGE 4
169 #define PIPE_READMODE_BYTE 0
170 #define PIPE_READMODE_MESSAGE 2
172 #define PIPE_NOWAIT 1
173 #define PIPE_CLIENT_END 0
174 #define PIPE_SERVER_END 1
175 #define PIPE_UNLIMITED_INSTANCES 255
176 #define DEBUG_PROCESS 0x00000001
177 #define DEBUG_ONLY_THIS_PROCESS 0x00000002
178 #define CREATE_SUSPENDED 0x00000004
179 #define DETACHED_PROCESS 0x00000008
180 #define CREATE_NEW_CONSOLE 0x00000010
181 #define NORMAL_PRIORITY_CLASS 0x00000020
182 #define IDLE_PRIORITY_CLASS 0x00000040
183 #define HIGH_PRIORITY_CLASS 0x00000080
184 #define REALTIME_PRIORITY_CLASS 0x00000100
185 #define CREATE_NEW_PROCESS_GROUP 0x00000200
186 #define CREATE_UNICODE_ENVIRONMENT 0x00000400
187 #define CREATE_SEPARATE_WOW_VDM 0x00000800
188 #define CREATE_SHARED_WOW_VDM 0x00001000
189 #define CREATE_FORCEDOS 0x00002000
190 #define BELOW_NORMAL_PRIORITY_CLASS 0x00004000
191 #define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000
192 #define CREATE_BREAKAWAY_FROM_JOB 0x01000000
193 #define CREATE_PRESERVE_CODE_AUTHZ_LEVEL 0x02000000
194 #define CREATE_DEFAULT_ERROR_MODE 0x04000000
195 #define CREATE_NO_WINDOW 0x08000000
196 #define PROFILE_USER 0x10000000
197 #define PROFILE_KERNEL 0x20000000
198 #define PROFILE_SERVER 0x40000000
200 #define CREATE_ALWAYS 2
201 #define OPEN_EXISTING 3
202 #define OPEN_ALWAYS 4
203 #define TRUNCATE_EXISTING 5
204 #define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x00000008
205 #define COPY_FILE_FAIL_IF_EXISTS 0x00000001
206 #define COPY_FILE_RESTARTABLE 0x00000002
207 #define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004
208 #define FILE_FLAG_WRITE_THROUGH 0x80000000
209 #define FILE_FLAG_OVERLAPPED 1073741824
210 #define FILE_FLAG_NO_BUFFERING 536870912
211 #define FILE_FLAG_RANDOM_ACCESS 268435456
212 #define FILE_FLAG_SEQUENTIAL_SCAN 134217728
213 #define FILE_FLAG_DELETE_ON_CLOSE 67108864
214 #define FILE_FLAG_BACKUP_SEMANTICS 33554432
215 #define FILE_FLAG_POSIX_SEMANTICS 16777216
216 #define FILE_FLAG_OPEN_REPARSE_POINT 2097152
217 #define FILE_FLAG_OPEN_NO_RECALL 1048576
218 #if (_WIN32_WINNT >= 0x0500)
219 #define FILE_FLAG_FIRST_PIPE_INSTANCE 524288
230 #define STILL_ACTIVE 0x103
231 #define FIND_FIRST_EX_CASE_SENSITIVE 1
232 #define FIND_FIRST_EX_LARGE_FETCH 2
233 #define SCS_32BIT_BINARY 0
234 #define SCS_64BIT_BINARY 6
235 #define SCS_DOS_BINARY 1
236 #define SCS_OS216_BINARY 5
237 #define SCS_PIF_BINARY 3
238 #define SCS_POSIX_BINARY 4
239 #define SCS_WOW_BINARY 2
240 #define MAX_COMPUTERNAME_LENGTH 15
241 #define HW_PROFILE_GUIDLEN 39
242 #define MAX_PROFILE_LEN 80
243 #define DOCKINFO_UNDOCKED 1
244 #define DOCKINFO_DOCKED 2
245 #define DOCKINFO_USER_SUPPLIED 4
246 #define DOCKINFO_USER_UNDOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_UNDOCKED)
247 #define DOCKINFO_USER_DOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_DOCKED)
248 #define DRIVE_REMOVABLE 2
249 #define DRIVE_FIXED 3
250 #define DRIVE_REMOTE 4
251 #define DRIVE_CDROM 5
252 #define DRIVE_RAMDISK 6
253 #define DRIVE_UNKNOWN 0
254 #define DRIVE_NO_ROOT_DIR 1
255 #define FILE_TYPE_UNKNOWN 0
256 #define FILE_TYPE_DISK 1
257 #define FILE_TYPE_CHAR 2
258 #define FILE_TYPE_PIPE 3
259 #define FILE_TYPE_REMOTE 0x8000
260 /* also in ddk/ntapi.h */
261 #define HANDLE_FLAG_INHERIT 0x01
262 #define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x02
264 #define STD_INPUT_HANDLE (DWORD)(0xfffffff6)
265 #define STD_OUTPUT_HANDLE (DWORD)(0xfffffff5)
266 #define STD_ERROR_HANDLE (DWORD)(0xfffffff4)
267 #define INVALID_HANDLE_VALUE (HANDLE)(-1)
268 #define GET_TAPE_MEDIA_INFORMATION 0
269 #define GET_TAPE_DRIVE_INFORMATION 1
270 #define SET_TAPE_MEDIA_INFORMATION 0
271 #define SET_TAPE_DRIVE_INFORMATION 1
272 #define THREAD_PRIORITY_ABOVE_NORMAL 1
273 #define THREAD_PRIORITY_BELOW_NORMAL (-1)
274 #define THREAD_PRIORITY_HIGHEST 2
275 #define THREAD_PRIORITY_IDLE (-15)
276 #define THREAD_PRIORITY_LOWEST (-2)
277 #define THREAD_PRIORITY_NORMAL 0
278 #define THREAD_PRIORITY_TIME_CRITICAL 15
279 #define THREAD_PRIORITY_ERROR_RETURN 2147483647
280 #define TIME_ZONE_ID_UNKNOWN 0
281 #define TIME_ZONE_ID_STANDARD 1
282 #define TIME_ZONE_ID_DAYLIGHT 2
283 #define TIME_ZONE_ID_INVALID 0xFFFFFFFF
284 #define FS_CASE_IS_PRESERVED 2
285 #define FS_CASE_SENSITIVE 1
286 #define FS_UNICODE_STORED_ON_DISK 4
287 #define FS_PERSISTENT_ACLS 8
288 #define FS_FILE_COMPRESSION 16
289 #define FS_VOL_IS_COMPRESSED 32768
291 #define GMEM_MOVEABLE 2
292 #define GMEM_MODIFY 128
295 #define GMEM_DDESHARE 8192
296 #define GMEM_DISCARDABLE 256
297 #define GMEM_LOWER 4096
298 #define GMEM_NOCOMPACT 16
299 #define GMEM_NODISCARD 32
300 #define GMEM_NOT_BANKED 4096
301 #define GMEM_NOTIFY 16384
302 #define GMEM_SHARE 8192
303 #define GMEM_ZEROINIT 64
304 #define GMEM_DISCARDED 16384
305 #define GMEM_INVALID_HANDLE 32768
306 #define GMEM_LOCKCOUNT 255
307 #define GMEM_VALID_FLAGS 32626
308 #define EXCEPTION_ACCESS_VIOLATION ((DWORD)0xC0000005)
309 #define EXCEPTION_DATATYPE_MISALIGNMENT ((DWORD)0x80000002)
310 #define EXCEPTION_BREAKPOINT ((DWORD)0x80000003)
311 #define EXCEPTION_SINGLE_STEP ((DWORD)0x80000004)
312 #define EXCEPTION_ARRAY_BOUNDS_EXCEEDED ((DWORD)0xC000008C)
313 #define EXCEPTION_FLT_DENORMAL_OPERAND ((DWORD)0xC000008D)
314 #define EXCEPTION_FLT_DIVIDE_BY_ZERO ((DWORD)0xC000008E)
315 #define EXCEPTION_FLT_INEXACT_RESULT ((DWORD)0xC000008F)
316 #define EXCEPTION_FLT_INVALID_OPERATION ((DWORD)0xC0000090)
317 #define EXCEPTION_FLT_OVERFLOW ((DWORD)0xC0000091)
318 #define EXCEPTION_FLT_STACK_CHECK ((DWORD)0xC0000092)
319 #define EXCEPTION_FLT_UNDERFLOW ((DWORD)0xC0000093)
320 #define EXCEPTION_INT_DIVIDE_BY_ZERO ((DWORD)0xC0000094)
321 #define EXCEPTION_INT_OVERFLOW ((DWORD)0xC0000095)
322 #define EXCEPTION_PRIV_INSTRUCTION ((DWORD)0xC0000096)
323 #define EXCEPTION_IN_PAGE_ERROR ((DWORD)0xC0000006)
324 #define EXCEPTION_ILLEGAL_INSTRUCTION ((DWORD)0xC000001D)
325 #define EXCEPTION_NONCONTINUABLE_EXCEPTION ((DWORD)0xC0000025)
326 #define EXCEPTION_STACK_OVERFLOW ((DWORD)0xC00000FD)
327 #define EXCEPTION_INVALID_DISPOSITION ((DWORD)0xC0000026)
328 #define EXCEPTION_GUARD_PAGE ((DWORD)0x80000001)
329 #define EXCEPTION_INVALID_HANDLE ((DWORD)0xC0000008L)
330 #define CONTROL_C_EXIT ((DWORD)0xC000013A)
331 #define PROCESS_HEAP_REGION 1
332 #define PROCESS_HEAP_UNCOMMITTED_RANGE 2
333 #define PROCESS_HEAP_ENTRY_BUSY 4
334 #define PROCESS_HEAP_ENTRY_MOVEABLE 16
335 #define PROCESS_HEAP_ENTRY_DDESHARE 32
337 #define DONT_RESOLVE_DLL_REFERENCES 1
338 #define LOAD_LIBRARY_AS_DATAFILE 2
339 #define LOAD_WITH_ALTERED_SEARCH_PATH 8
340 #define LOAD_IGNORE_CODE_AUTHZ_LEVEL 16
341 #define LOAD_LIBRARY_AS_IMAGE_RESOURCE 32
342 #define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 64
343 #define LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR 256
344 #define LOAD_LIBRARY_SEARCH_APPLICATION_DIR 512
345 #define LOAD_LIBRARY_SEARCH_USER_DIRS 1024
346 #define LOAD_LIBRARY_SEARCH_SYSTEM32 2048
347 #define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 4096
350 #define LMEM_MOVEABLE 2
351 #define LMEM_NONZEROLHND 2
352 #define LMEM_NONZEROLPTR 0
353 #define LMEM_DISCARDABLE 3840
354 #define LMEM_NOCOMPACT 16
355 #define LMEM_NODISCARD 32
356 #define LMEM_ZEROINIT 64
357 #define LMEM_DISCARDED 16384
358 #define LMEM_MODIFY 128
359 #define LMEM_INVALID_HANDLE 32768
360 #define LMEM_LOCKCOUNT 255
361 #define LMEM_VALID_FLAGS 0x0F72
364 #define NONZEROLHND 2
365 #define NONZEROLPTR 0
366 #define LOCKFILE_FAIL_IMMEDIATELY 1
367 #define LOCKFILE_EXCLUSIVE_LOCK 2
368 #define LOGON32_PROVIDER_DEFAULT 0
369 #define LOGON32_PROVIDER_WINNT35 1
370 #define LOGON32_PROVIDER_WINNT40 2
371 #define LOGON32_PROVIDER_WINNT50 3
372 #define LOGON32_LOGON_INTERACTIVE 2
373 #define LOGON32_LOGON_NETWORK 3
374 #define LOGON32_LOGON_BATCH 4
375 #define LOGON32_LOGON_SERVICE 5
376 #define LOGON32_LOGON_UNLOCK 7
377 #define LOGON32_LOGON_NETWORK_CLEARTEXT 8
378 #define LOGON32_LOGON_NEW_CREDENTIALS 9
379 #define MOVEFILE_REPLACE_EXISTING 1
380 #define MOVEFILE_COPY_ALLOWED 2
381 #define MOVEFILE_DELAY_UNTIL_REBOOT 4
382 #define MOVEFILE_WRITE_THROUGH 8
383 #define MOVEFILE_CREATE_HARDLINK 16
384 #define MOVEFILE_FAIL_IF_NOT_TRACKABLE 32
385 #define MAXIMUM_WAIT_OBJECTS 64
386 #define MAXIMUM_SUSPEND_COUNT 0x7F
387 #define WAIT_OBJECT_0 0
388 #define WAIT_ABANDONED_0 128
389 #ifndef WAIT_TIMEOUT /* also in winerror.h */
390 #define WAIT_TIMEOUT 258
392 #define WAIT_IO_COMPLETION 0xC0
393 #define WAIT_ABANDONED 128
394 #define WAIT_FAILED ((DWORD)0xFFFFFFFF)
395 #define PURGE_TXABORT 1
396 #define PURGE_RXABORT 2
397 #define PURGE_TXCLEAR 4
398 #define PURGE_RXCLEAR 8
400 #define FORMAT_MESSAGE_ALLOCATE_BUFFER 256
401 #define FORMAT_MESSAGE_IGNORE_INSERTS 512
402 #define FORMAT_MESSAGE_FROM_STRING 1024
403 #define FORMAT_MESSAGE_FROM_HMODULE 2048
404 #define FORMAT_MESSAGE_FROM_SYSTEM 4096
405 #define FORMAT_MESSAGE_ARGUMENT_ARRAY 8192
406 #define FORMAT_MESSAGE_MAX_WIDTH_MASK 255
411 #define EV_EVENT1 2048
412 #define EV_EVENT2 4096
416 #define EV_RX80FULL 1024
420 /* also in ddk/ntapi.h */
421 #define SEM_FAILCRITICALERRORS 0x0001
422 #define SEM_NOGPFAULTERRORBOX 0x0002
423 #define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
424 #define SEM_NOOPENFILEERRORBOX 0x8000
427 #define SLE_MINORERROR 2
428 #define SLE_WARNING 3
429 #define SHUTDOWN_NORETRY 1
430 #define MAXINTATOM 0xC000
431 #define INVALID_ATOM ((ATOM)0)
433 #define INFINITE 0xFFFFFFFF
438 #define SPACEPARITY 4
440 #define ONE5STOPBITS 1
441 #define TWOSTOPBITS 2
445 #define CBR_1200 1200
446 #define CBR_2400 2400
447 #define CBR_4800 4800
448 #define CBR_9600 9600
449 #define CBR_14400 14400
450 #define CBR_19200 19200
451 #define CBR_38400 38400
452 #define CBR_56000 56000
453 #define CBR_57600 57600
454 #define CBR_115200 115200
455 #define CBR_128000 128000
456 #define CBR_256000 256000
457 #define BACKUP_INVALID 0
458 #define BACKUP_DATA 1
459 #define BACKUP_EA_DATA 2
460 #define BACKUP_SECURITY_DATA 3
461 #define BACKUP_ALTERNATE_DATA 4
462 #define BACKUP_LINK 5
463 #define BACKUP_PROPERTY_DATA 6
464 #define BACKUP_OBJECT_ID 7
465 #define BACKUP_REPARSE_DATA 8
466 #define BACKUP_SPARSE_BLOCK 9
467 #define STREAM_NORMAL_ATTRIBUTE 0
468 #define STREAM_MODIFIED_WHEN_READ 1
469 #define STREAM_CONTAINS_SECURITY 2
470 #define STREAM_CONTAINS_PROPERTIES 4
472 #define STARTF_USESHOWWINDOW 0x00000001
473 #define STARTF_USESIZE 0x00000002
474 #define STARTF_USEPOSITION 0x00000004
475 #define STARTF_USECOUNTCHARS 0x00000008
476 #define STARTF_USEFILLATTRIBUTE 0x00000010
477 #define STARTF_RUNFULLSCREEN 0x00000020
478 #define STARTF_FORCEONFEEDBACK 0x00000040
479 #define STARTF_FORCEOFFFEEDBACK 0x00000080
480 #define STARTF_USESTDHANDLES 0x00000100
481 #if (WINVER >= 0x400)
482 #define STARTF_USEHOTKEY 0x00000200
483 #define STARTF_TITLEISLINKNAME 0x00000800
484 #define STARTF_TITLEISAPPID 0x00001000
485 #define STARTF_PREVENTPINNING 0x00002000
486 #endif /* (WINVER >= 0x400) */
492 #define AC_LINE_OFFLINE 0
493 #define AC_LINE_ONLINE 1
494 #define AC_LINE_BACKUP_POWER 2
495 #define AC_LINE_UNKNOWN 255
496 #define BATTERY_FLAG_HIGH 1
497 #define BATTERY_FLAG_LOW 2
498 #define BATTERY_FLAG_CRITICAL 4
499 #define BATTERY_FLAG_CHARGING 8
500 #define BATTERY_FLAG_NO_BATTERY 128
501 #define BATTERY_FLAG_UNKNOWN 255
502 #define BATTERY_PERCENTAGE_UNKNOWN 255
503 #define BATTERY_LIFE_UNKNOWN 0xFFFFFFFF
504 #define DDD_RAW_TARGET_PATH 1
505 #define DDD_REMOVE_DEFINITION 2
506 #define DDD_EXACT_MATCH_ON_REMOVE 4
507 #define DDD_NO_BROADCAST_SYSTEM 8
508 #define DDD_LUID_BROADCAST_DRIVE 16
509 #define HINSTANCE_ERROR 32
512 #define MS_RING_ON 64
513 #define MS_RLSD_ON 128
514 #define DTR_CONTROL_DISABLE 0
515 #define DTR_CONTROL_ENABLE 1
516 #define DTR_CONTROL_HANDSHAKE 2
517 #define RTS_CONTROL_DISABLE 0
518 #define RTS_CONTROL_ENABLE 1
519 #define RTS_CONTROL_HANDSHAKE 2
520 #define RTS_CONTROL_TOGGLE 3
521 #define SECURITY_ANONYMOUS (SecurityAnonymous<<16)
522 #define SECURITY_IDENTIFICATION (SecurityIdentification<<16)
523 #define SECURITY_IMPERSONATION (SecurityImpersonation<<16)
524 #define SECURITY_DELEGATION (SecurityDelegation<<16)
525 #define SECURITY_CONTEXT_TRACKING 0x40000
526 #define SECURITY_EFFECTIVE_ONLY 0x80000
527 #define SECURITY_SQOS_PRESENT 0x100000
528 #define SECURITY_VALID_SQOS_FLAGS 0x1F0000
529 #define INVALID_FILE_SIZE 0xFFFFFFFF
530 #define TLS_OUT_OF_INDEXES (DWORD)0xFFFFFFFF
531 #if (_WIN32_WINNT >= 0x0501)
532 #define ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID 0x00000001
533 #define ACTCTX_FLAG_LANGID_VALID 0x00000002
534 #define ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID 0x00000004
535 #define ACTCTX_FLAG_RESOURCE_NAME_VALID 0x00000008
536 #define ACTCTX_FLAG_SET_PROCESS_DEFAULT 0x00000010
537 #define ACTCTX_FLAG_APPLICATION_NAME_VALID 0x00000020
538 #define ACTCTX_FLAG_SOURCE_IS_ASSEMBLYREF 0x00000040
539 #define ACTCTX_FLAG_HMODULE_VALID 0x00000080
540 #define DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION 0x00000001
541 #define FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX 0x00000001
542 #define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX 0x00000004
543 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE 0x00000008
544 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS 0x00000010
545 #define QUERY_ACTCTX_FLAG_NO_ADDREF 0x80000000
546 #if (_WIN32_WINNT >= 0x0600)
547 #define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1
549 #endif /* (_WIN32_WINNT >= 0x0501) */
550 #if (_WIN32_WINNT >= 0x0500)
551 #define REPLACEFILE_WRITE_THROUGH 0x00000001
552 #define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002
553 #endif /* (_WIN32_WINNT >= 0x0500) */
554 #if (_WIN32_WINNT >= 0x0400)
555 #define FIBER_FLAG_FLOAT_SWITCH 0x1
557 #define FLS_OUT_OF_INDEXES 0xFFFFFFFF
558 #define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
559 #if (_WIN32_WINNT >= 0x0600)
560 #define MAX_RESTART_CMD_LINE 0x800
561 #define RESTART_CYCLICAL 0x1
562 #define RESTART_NOTIFY_SOLUTION 0x2
563 #define RESTART_NOTIFY_FAULT 0x4
564 #define VOLUME_NAME_DOS 0x0
565 #define VOLUME_NAME_GUID 0x1
566 #define VOLUME_NAME_NT 0x2
567 #define VOLUME_NAME_NONE 0x4
568 #define FILE_NAME_NORMALIZED 0x0
569 #define FILE_NAME_OPENED 0x8
570 #define FILE_SKIP_COMPLETION_PORT_ON_SUCCESS 0x1
571 #define FILE_SKIP_SET_EVENT_ON_HANDLE 0x2
573 #if (_WIN32_WINNT >= 0x0500)
574 #define GET_MODULE_HANDLE_EX_FLAG_PIN 0x1
575 #define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT 0x2
576 #define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 0x4
578 #if (_WIN32_WINNT >= 0x0600)
579 #define CREATE_EVENT_MANUAL_RESET 0x1
580 #define CREATE_EVENT_INITIAL_SET 0x2
581 #define CREATE_MUTEX_INITIAL_OWNER 0x1
582 #define CREATE_WAITABLE_TIMER_MANUAL_RESET 0x1
583 #define SRWLOCK_INIT RTL_SRWLOCK_INIT
584 #define CONDITION_VARIABLE_INIT RTL_CONDITION_VARIABLE_INIT
585 #define CONDITION_VARIABLE_LOCKMODE_SHARED RTL_CONDITION_VARIABLE_LOCKMODE_SHARED
588 #define BASE_SEARCH_PATH_ENABLE_SAFE_SEARCHMODE 0x00001
589 #define BASE_SEARCH_PATH_DISABLE_SAFE_SEARCHMODE 0x10000
590 #define BASE_SEARCH_PATH_PERMANENT 0x08000
591 #define BASE_SEARCH_PATH_INVALID_FLAGS (~0x18001)
593 #define INIT_ONCE_STATIC_INIT RTL_RUN_ONCE_INIT
595 #if (_WIN32_WINNT >= 0x0600)
596 #define PROCESS_DEP_ENABLE 0x00000001
597 #define PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION 0x00000002
604 typedef struct _FILETIME
{
606 DWORD dwHighDateTime
;
607 } FILETIME
,*PFILETIME
,*LPFILETIME
;
610 typedef struct _BY_HANDLE_FILE_INFORMATION
{
611 DWORD dwFileAttributes
;
612 FILETIME ftCreationTime
;
613 FILETIME ftLastAccessTime
;
614 FILETIME ftLastWriteTime
;
615 DWORD dwVolumeSerialNumber
;
618 DWORD nNumberOfLinks
;
619 DWORD nFileIndexHigh
;
621 } BY_HANDLE_FILE_INFORMATION
,*PBY_HANDLE_FILE_INFORMATION
,*LPBY_HANDLE_FILE_INFORMATION
;
623 typedef struct _DCB
{
628 DWORD fOutxCtsFlow
:1;
629 DWORD fOutxDsrFlow
:1;
631 DWORD fDsrSensitivity
:1;
632 DWORD fTXContinueOnXoff
:1;
638 DWORD fAbortOnError
:1;
654 typedef struct _COMM_CONFIG
{
659 DWORD dwProviderSubType
;
660 DWORD dwProviderOffset
;
661 DWORD dwProviderSize
;
662 WCHAR wcProviderData
[1];
663 } COMMCONFIG
,*LPCOMMCONFIG
;
665 typedef struct _COMMPROP
{
674 DWORD dwProvCapabilities
;
675 DWORD dwSettableParams
;
676 DWORD dwSettableBaud
;
678 WORD wSettableStopParity
;
679 DWORD dwCurrentTxQueue
;
680 DWORD dwCurrentRxQueue
;
684 } COMMPROP
,*LPCOMMPROP
;
686 typedef struct _COMMTIMEOUTS
{
687 DWORD ReadIntervalTimeout
;
688 DWORD ReadTotalTimeoutMultiplier
;
689 DWORD ReadTotalTimeoutConstant
;
690 DWORD WriteTotalTimeoutMultiplier
;
691 DWORD WriteTotalTimeoutConstant
;
692 } COMMTIMEOUTS
,*LPCOMMTIMEOUTS
;
694 typedef struct _COMSTAT
{
705 } COMSTAT
,*LPCOMSTAT
;
707 typedef DWORD (WINAPI
*LPTHREAD_START_ROUTINE
)(LPVOID
);
709 typedef struct _CREATE_PROCESS_DEBUG_INFO
{
713 LPVOID lpBaseOfImage
;
714 DWORD dwDebugInfoFileOffset
;
715 DWORD nDebugInfoSize
;
716 LPVOID lpThreadLocalBase
;
717 LPTHREAD_START_ROUTINE lpStartAddress
;
720 } CREATE_PROCESS_DEBUG_INFO
,*LPCREATE_PROCESS_DEBUG_INFO
;
722 typedef struct _CREATE_THREAD_DEBUG_INFO
{
724 LPVOID lpThreadLocalBase
;
725 LPTHREAD_START_ROUTINE lpStartAddress
;
726 } CREATE_THREAD_DEBUG_INFO
,*LPCREATE_THREAD_DEBUG_INFO
;
728 typedef struct _EXCEPTION_DEBUG_INFO
{
729 EXCEPTION_RECORD ExceptionRecord
;
731 } EXCEPTION_DEBUG_INFO
,*LPEXCEPTION_DEBUG_INFO
;
733 typedef struct _EXIT_THREAD_DEBUG_INFO
{
735 } EXIT_THREAD_DEBUG_INFO
,*LPEXIT_THREAD_DEBUG_INFO
;
737 typedef struct _EXIT_PROCESS_DEBUG_INFO
{
739 } EXIT_PROCESS_DEBUG_INFO
,*LPEXIT_PROCESS_DEBUG_INFO
;
741 typedef struct _LOAD_DLL_DEBUG_INFO
{
744 DWORD dwDebugInfoFileOffset
;
745 DWORD nDebugInfoSize
;
748 } LOAD_DLL_DEBUG_INFO
,*LPLOAD_DLL_DEBUG_INFO
;
750 typedef struct _UNLOAD_DLL_DEBUG_INFO
{
752 } UNLOAD_DLL_DEBUG_INFO
,*LPUNLOAD_DLL_DEBUG_INFO
;
754 typedef struct _OUTPUT_DEBUG_STRING_INFO
{
755 LPSTR lpDebugStringData
;
757 WORD nDebugStringLength
;
758 } OUTPUT_DEBUG_STRING_INFO
,*LPOUTPUT_DEBUG_STRING_INFO
;
760 typedef struct _RIP_INFO
{
763 } RIP_INFO
,*LPRIP_INFO
;
765 typedef struct _DEBUG_EVENT
{
766 DWORD dwDebugEventCode
;
770 EXCEPTION_DEBUG_INFO Exception
;
771 CREATE_THREAD_DEBUG_INFO CreateThread
;
772 CREATE_PROCESS_DEBUG_INFO CreateProcessInfo
;
773 EXIT_THREAD_DEBUG_INFO ExitThread
;
774 EXIT_PROCESS_DEBUG_INFO ExitProcess
;
775 LOAD_DLL_DEBUG_INFO LoadDll
;
776 UNLOAD_DLL_DEBUG_INFO UnloadDll
;
777 OUTPUT_DEBUG_STRING_INFO DebugString
;
780 } DEBUG_EVENT
,*LPDEBUG_EVENT
;
782 typedef struct _OVERLAPPED
{
784 ULONG_PTR InternalHigh
;
793 } OVERLAPPED
, *POVERLAPPED
, *LPOVERLAPPED
;
795 typedef struct _OVERLAPPED_ENTRY
{
796 ULONG_PTR lpCompletionKey
;
797 LPOVERLAPPED lpOverlapped
;
799 DWORD dwNumberOfBytesTransferred
;
800 } OVERLAPPED_ENTRY
, *LPOVERLAPPED_ENTRY
;
802 typedef struct _STARTUPINFOA
{
813 DWORD dwFillAttribute
;
821 } STARTUPINFOA
,*LPSTARTUPINFOA
;
823 typedef struct _STARTUPINFOW
{
834 DWORD dwFillAttribute
;
842 } STARTUPINFOW
,*LPSTARTUPINFOW
;
844 typedef struct _PROCESS_INFORMATION
{
849 } PROCESS_INFORMATION
,*PPROCESS_INFORMATION
,*LPPROCESS_INFORMATION
;
851 typedef struct _CRITICAL_SECTION_DEBUG
{
853 WORD CreatorBackTraceIndex
;
854 struct _CRITICAL_SECTION
*CriticalSection
;
855 LIST_ENTRY ProcessLocksList
;
857 DWORD ContentionCount
;
858 //#ifdef __WINESRC__ //not all wine code is marked so
859 DWORD_PTR Spare
[8/sizeof(DWORD_PTR
)];/* in Wine they store a string here */
863 } CRITICAL_SECTION_DEBUG
,*PCRITICAL_SECTION_DEBUG
,*LPCRITICAL_SECTION_DEBUG
;
865 typedef struct _CRITICAL_SECTION
{
866 PCRITICAL_SECTION_DEBUG DebugInfo
;
870 HANDLE LockSemaphore
;
872 } CRITICAL_SECTION
,*PCRITICAL_SECTION
,*LPCRITICAL_SECTION
;
876 typedef struct _SYSTEMTIME
{
885 } SYSTEMTIME
,*LPSYSTEMTIME
,*PSYSTEMTIME
;
886 #endif /* _SYSTEMTIME_ */
887 #if (_WIN32_WINNT >= 0x0500)
888 typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK
;
890 typedef struct _WIN32_FILE_ATTRIBUTE_DATA
{
891 DWORD dwFileAttributes
;
892 FILETIME ftCreationTime
;
893 FILETIME ftLastAccessTime
;
894 FILETIME ftLastWriteTime
;
897 } WIN32_FILE_ATTRIBUTE_DATA
,*LPWIN32_FILE_ATTRIBUTE_DATA
;
898 typedef struct _WIN32_FIND_DATAA
{
899 DWORD dwFileAttributes
;
900 FILETIME ftCreationTime
;
901 FILETIME ftLastAccessTime
;
902 FILETIME ftLastWriteTime
;
907 CHAR cFileName
[MAX_PATH
];
908 CHAR cAlternateFileName
[14];
909 } WIN32_FIND_DATAA
,*PWIN32_FIND_DATAA
,*LPWIN32_FIND_DATAA
;
910 typedef struct _WIN32_FIND_DATAW
{
911 DWORD dwFileAttributes
;
912 FILETIME ftCreationTime
;
913 FILETIME ftLastAccessTime
;
914 FILETIME ftLastWriteTime
;
919 WCHAR cFileName
[MAX_PATH
];
920 WCHAR cAlternateFileName
[14];
921 } WIN32_FIND_DATAW
,*PWIN32_FIND_DATAW
,*LPWIN32_FIND_DATAW
;
923 #if (_WIN32_WINNT >= 0x0501)
924 typedef enum _STREAM_INFO_LEVELS
{
925 FindStreamInfoStandard
926 } STREAM_INFO_LEVELS
;
928 typedef struct _WIN32_FIND_STREAM_DATA
{
929 LARGE_INTEGER StreamSize
;
930 WCHAR cStreamName
[MAX_PATH
+ 36];
931 } WIN32_FIND_STREAM_DATA
, *PWIN32_FIND_STREAM_DATA
;
934 typedef struct _WIN32_STREAM_ID
{
936 DWORD dwStreamAttributes
;
938 DWORD dwStreamNameSize
;
939 WCHAR cStreamName
[ANYSIZE_ARRAY
];
940 } WIN32_STREAM_ID
, *LPWIN32_STREAM_ID
;
942 #if (_WIN32_WINNT >= 0x0600)
944 typedef enum _FILE_ID_TYPE
{
949 } FILE_ID_TYPE
, *PFILE_ID_TYPE
;
951 typedef struct _FILE_ID_DESCRIPTOR
{
955 LARGE_INTEGER FileId
;
958 } FILE_ID_DESCRIPTOR
, *LPFILE_ID_DESCRIPTOR
;
960 typedef enum _FILE_INFO_BY_HANDLE_CLASS
{
970 FileAttributeTagInfo
,
971 FileIdBothDirectoryInfo
,
972 FileIdBothDirectoryRestartInfo
,
973 FileIoPriorityHintInfo
,
974 FileRemoteProtocolInfo
,
975 FileFullDirectoryInfo
,
976 FileFullDirectoryRestartInfo
,
980 FileIdExtdDirectoryInfo
,
981 FileIdExtdDirectoryRestartInfo
,
982 MaximumFileInfoByHandlesClass
983 } FILE_INFO_BY_HANDLE_CLASS
, *PFILE_INFO_BY_HANDLE_CLASS
;
985 typedef struct _FILE_ID_BOTH_DIR_INFO
{
986 DWORD NextEntryOffset
;
988 LARGE_INTEGER CreationTime
;
989 LARGE_INTEGER LastAccessTime
;
990 LARGE_INTEGER LastWriteTime
;
991 LARGE_INTEGER ChangeTime
;
992 LARGE_INTEGER EndOfFile
;
993 LARGE_INTEGER AllocationSize
;
994 DWORD FileAttributes
;
995 DWORD FileNameLength
;
997 CCHAR ShortNameLength
;
999 LARGE_INTEGER FileId
;
1001 } FILE_ID_BOTH_DIR_INFO
, *PFILE_ID_BOTH_DIR_INFO
;
1003 typedef struct _FILE_BASIC_INFO
{
1004 LARGE_INTEGER CreationTime
;
1005 LARGE_INTEGER LastAccessTime
;
1006 LARGE_INTEGER LastWriteTime
;
1007 LARGE_INTEGER ChangeTime
;
1008 DWORD FileAttributes
;
1009 } FILE_BASIC_INFO
, *PFILE_BASIC_INFO
;
1011 typedef struct _FILE_STANDARD_INFO
{
1012 LARGE_INTEGER AllocationSize
;
1013 LARGE_INTEGER EndOfFile
;
1014 DWORD NumberOfLinks
;
1015 BOOLEAN DeletePending
;
1017 } FILE_STANDARD_INFO
, *PFILE_STANDARD_INFO
;
1019 typedef struct _FILE_NAME_INFO
{
1020 DWORD FileNameLength
;
1022 } FILE_NAME_INFO
, *PFILE_NAME_INFO
;
1024 typedef enum _PRIORITY_HINT
{
1025 IoPriorityHintVeryLow
,
1027 IoPriorityHintNormal
,
1028 MaximumIoPriorityHintType
1031 typedef struct _FILE_IO_PRIORITY_HINT_INFO
{
1032 PRIORITY_HINT PriorityHint
;
1033 } FILE_IO_PRIORITY_HINT_INFO
;
1035 typedef struct _FILE_ALLOCATION_INFO
{
1036 LARGE_INTEGER AllocationSize
;
1037 } FILE_ALLOCATION_INFO
, *PFILE_ALLOCATION_INFO
;
1039 typedef struct _FILE_DISPOSITION_INFO
{
1041 } FILE_DISPOSITION_INFO
, *PFILE_DISPOSITION_INFO
;
1043 typedef struct _FILE_END_OF_FILE_INFO
{
1044 LARGE_INTEGER EndOfFile
;
1045 } FILE_END_OF_FILE_INFO
, *PFILE_END_OF_FILE_INFO
;
1047 typedef struct _FILE_RENAME_INFO
{
1048 BOOLEAN ReplaceIfExists
;
1049 HANDLE RootDirectory
;
1050 DWORD FileNameLength
;
1052 } FILE_RENAME_INFO
, *PFILE_RENAME_INFO
;
1054 typedef struct _FILE_ATTRIBUTE_TAG_INFO
{
1055 DWORD FileAttributes
;
1057 } FILE_ATTRIBUTE_TAG_INFO
, *PFILE_ATTRIBUTE_TAG_INFO
;
1059 typedef struct _FILE_COMPRESSION_INFO
{
1060 LARGE_INTEGER CompressedFileSize
;
1061 WORD CompressionFormat
;
1062 UCHAR CompressionUnitShift
;
1066 } FILE_COMPRESSION_INFO
, *PFILE_COMPRESSION_INFO
;
1068 typedef struct _FILE_REMOTE_PROTOCOL_INFO
{
1069 USHORT StructureVersion
;
1070 USHORT StructureSize
;
1072 USHORT ProtocolMajorVersion
;
1073 USHORT ProtocolMinorVersion
;
1074 USHORT ProtocolRevision
;
1082 } ProtocolSpecificReserved
;
1083 } FILE_REMOTE_PROTOCOL_INFO
, *PFILE_REMOTE_PROTOCOL_INFO
;
1087 typedef enum _FINDEX_INFO_LEVELS
{
1090 FindExInfoMaxInfoLevel
1091 } FINDEX_INFO_LEVELS
;
1093 typedef enum _FINDEX_SEARCH_OPS
{
1094 FindExSearchNameMatch
,
1095 FindExSearchLimitToDirectories
,
1096 FindExSearchLimitToDevices
,
1097 FindExSearchMaxSearchOp
1098 } FINDEX_SEARCH_OPS
;
1100 typedef struct tagHW_PROFILE_INFOA
{
1102 CHAR szHwProfileGuid
[HW_PROFILE_GUIDLEN
];
1103 CHAR szHwProfileName
[MAX_PROFILE_LEN
];
1104 } HW_PROFILE_INFOA
,*LPHW_PROFILE_INFOA
;
1106 typedef struct tagHW_PROFILE_INFOW
{
1108 WCHAR szHwProfileGuid
[HW_PROFILE_GUIDLEN
];
1109 WCHAR szHwProfileName
[MAX_PROFILE_LEN
];
1110 } HW_PROFILE_INFOW
,*LPHW_PROFILE_INFOW
;
1114 #define EVENTLOG_FULL_INFO 0
1116 typedef struct _EVENTLOG_FULL_INFORMATION
{
1118 } EVENTLOG_FULL_INFORMATION
, *LPEVENTLOG_FULL_INFORMATION
;
1120 typedef enum _GET_FILEEX_INFO_LEVELS
{
1121 GetFileExInfoStandard
,
1122 GetFileExMaxInfoLevel
1123 } GET_FILEEX_INFO_LEVELS
;
1125 typedef struct _SYSTEM_INFO
{
1126 _ANONYMOUS_UNION
union {
1128 _ANONYMOUS_STRUCT
struct {
1129 WORD wProcessorArchitecture
;
1134 PVOID lpMinimumApplicationAddress
;
1135 PVOID lpMaximumApplicationAddress
;
1136 DWORD_PTR dwActiveProcessorMask
;
1137 DWORD dwNumberOfProcessors
;
1138 DWORD dwProcessorType
;
1139 DWORD dwAllocationGranularity
;
1140 WORD wProcessorLevel
;
1141 WORD wProcessorRevision
;
1142 } SYSTEM_INFO
,*LPSYSTEM_INFO
;
1144 typedef struct _SYSTEM_POWER_STATUS
{
1147 BYTE BatteryLifePercent
;
1149 DWORD BatteryLifeTime
;
1150 DWORD BatteryFullLifeTime
;
1151 } SYSTEM_POWER_STATUS
,*LPSYSTEM_POWER_STATUS
;
1153 typedef struct _TIME_DYNAMIC_ZONE_INFORMATION
{
1155 WCHAR StandardName
[32];
1156 SYSTEMTIME StandardDate
;
1158 WCHAR DaylightName
[32];
1159 SYSTEMTIME DaylightDate
;
1161 WCHAR TimeZoneKeyName
[128];
1162 BOOLEAN DynamicDaylightTimeDisabled
;
1163 } DYNAMIC_TIME_ZONE_INFORMATION
, *PDYNAMIC_TIME_ZONE_INFORMATION
;
1165 typedef struct _TIME_ZONE_INFORMATION
{
1167 WCHAR StandardName
[32];
1168 SYSTEMTIME StandardDate
;
1170 WCHAR DaylightName
[32];
1171 SYSTEMTIME DaylightDate
;
1173 } TIME_ZONE_INFORMATION
,*PTIME_ZONE_INFORMATION
,*LPTIME_ZONE_INFORMATION
;
1175 typedef struct _MEMORYSTATUS
{
1180 SIZE_T dwTotalPageFile
;
1181 SIZE_T dwAvailPageFile
;
1182 SIZE_T dwTotalVirtual
;
1183 SIZE_T dwAvailVirtual
;
1184 } MEMORYSTATUS
,*LPMEMORYSTATUS
;
1186 #if (_WIN32_WINNT >= 0x0500)
1187 typedef struct _MEMORYSTATUSEX
{
1190 DWORDLONG ullTotalPhys
;
1191 DWORDLONG ullAvailPhys
;
1192 DWORDLONG ullTotalPageFile
;
1193 DWORDLONG ullAvailPageFile
;
1194 DWORDLONG ullTotalVirtual
;
1195 DWORDLONG ullAvailVirtual
;
1196 DWORDLONG ullAvailExtendedVirtual
;
1197 } MEMORYSTATUSEX
, *LPMEMORYSTATUSEX
;
1200 #ifndef _LDT_ENTRY_DEFINED
1201 #define _LDT_ENTRY_DEFINED
1202 typedef struct _LDT_ENTRY
{
1220 DWORD Default_Big
:1;
1221 DWORD Granularity
:1;
1225 } LDT_ENTRY
,*PLDT_ENTRY
,*LPLDT_ENTRY
;
1228 typedef struct _PROCESS_HEAP_ENTRY
{
1234 _ANONYMOUS_UNION
union {
1237 DWORD dwReserved
[3];
1240 DWORD dwCommittedSize
;
1241 DWORD dwUnCommittedSize
;
1242 LPVOID lpFirstBlock
;
1246 } PROCESS_HEAP_ENTRY
,*PPROCESS_HEAP_ENTRY
,*LPPROCESS_HEAP_ENTRY
;
1248 typedef struct _OFSTRUCT
{
1254 CHAR szPathName
[OFS_MAXPATHNAME
];
1255 } OFSTRUCT
,*LPOFSTRUCT
,*POFSTRUCT
;
1257 #if (_WIN32_WINNT >= 0x0501)
1258 typedef struct tagACTCTXA
{
1262 USHORT wProcessorArchitecture
;
1264 LPCSTR lpAssemblyDirectory
;
1265 LPCSTR lpResourceName
;
1266 LPCSTR lpApplicationName
;
1268 } ACTCTXA
,*PACTCTXA
;
1269 typedef const ACTCTXA
*PCACTCTXA
;
1271 typedef struct tagACTCTXW
{
1275 USHORT wProcessorArchitecture
;
1277 LPCWSTR lpAssemblyDirectory
;
1278 LPCWSTR lpResourceName
;
1279 LPCWSTR lpApplicationName
;
1281 } ACTCTXW
,*PACTCTXW
;
1282 typedef const ACTCTXW
*PCACTCTXW
;
1284 typedef struct tagACTCTX_SECTION_KEYED_DATA_2600
{
1286 ULONG ulDataFormatVersion
;
1289 PVOID lpSectionGlobalData
;
1290 ULONG ulSectionGlobalDataLength
;
1291 PVOID lpSectionBase
;
1292 ULONG ulSectionTotalLength
;
1294 ULONG ulAssemblyRosterIndex
;
1295 } ACTCTX_SECTION_KEYED_DATA_2600
, *PACTCTX_SECTION_KEYED_DATA_2600
;
1296 typedef const ACTCTX_SECTION_KEYED_DATA_2600
*PCACTCTX_SECTION_KEYED_DATA_2600
;
1298 typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA
{
1299 PVOID lpInformation
;
1300 PVOID lpSectionBase
;
1301 ULONG ulSectionLength
;
1302 PVOID lpSectionGlobalDataBase
;
1303 ULONG ulSectionGlobalDataLength
;
1304 } ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA
, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA
;
1305 typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA
*PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA
;
1307 typedef struct tagACTCTX_SECTION_KEYED_DATA
{
1309 ULONG ulDataFormatVersion
;
1312 PVOID lpSectionGlobalData
;
1313 ULONG ulSectionGlobalDataLength
;
1314 PVOID lpSectionBase
;
1315 ULONG ulSectionTotalLength
;
1317 ULONG ulAssemblyRosterIndex
;
1318 /* Non 2600 extra fields */
1320 ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata
;
1321 } ACTCTX_SECTION_KEYED_DATA
,*PACTCTX_SECTION_KEYED_DATA
;
1323 typedef const ACTCTX_SECTION_KEYED_DATA
*PCACTCTX_SECTION_KEYED_DATA
;
1325 typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION
{
1328 } ACTIVATION_CONTEXT_BASIC_INFORMATION
, *PACTIVATION_CONTEXT_BASIC_INFORMATION
;
1329 typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION
*PCACTIVATION_CONTEXT_BASIC_INFORMATION
;
1332 (WINAPI
*PQUERYACTCTXW_FUNC
)(
1334 _In_ HANDLE hActCtx
,
1335 _In_opt_ PVOID pvSubInstance
,
1336 _In_ ULONG ulInfoClass
,
1337 _Out_writes_bytes_to_opt_(cbBuffer
, *pcbWrittenOrRequired
) PVOID pvBuffer
,
1338 _In_ SIZE_T cbBuffer
,
1339 _Out_opt_ SIZE_T
*pcbWrittenOrRequired
);
1342 LowMemoryResourceNotification
,
1343 HighMemoryResourceNotification
1344 } MEMORY_RESOURCE_NOTIFICATION_TYPE
;
1345 #endif /* (_WIN32_WINNT >= 0x0501) */
1347 #if (_WIN32_WINNT >= 0x0500)
1348 typedef enum _COMPUTER_NAME_FORMAT
{
1349 ComputerNameNetBIOS
,
1350 ComputerNameDnsHostname
,
1351 ComputerNameDnsDomain
,
1352 ComputerNameDnsFullyQualified
,
1353 ComputerNamePhysicalNetBIOS
,
1354 ComputerNamePhysicalDnsHostname
,
1355 ComputerNamePhysicalDnsDomain
,
1356 ComputerNamePhysicalDnsFullyQualified
,
1358 } COMPUTER_NAME_FORMAT
;
1359 #endif /* (_WIN32_WINNT >= 0x0500) */
1361 #if (_WIN32_WINNT >= 0x0600)
1362 typedef RTL_SRWLOCK SRWLOCK
, *PSRWLOCK
;
1363 typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE
, *PCONDITION_VARIABLE
;
1366 typedef struct _PROC_THREAD_ATTRIBUTE_LIST
*PPROC_THREAD_ATTRIBUTE_LIST
, *LPPROC_THREAD_ATTRIBUTE_LIST
;
1368 #define PROC_THREAD_ATTRIBUTE_NUMBER 0x0000ffff
1369 #define PROC_THREAD_ATTRIBUTE_THREAD 0x00010000
1370 #define PROC_THREAD_ATTRIBUTE_INPUT 0x00020000
1371 #define PROC_THREAD_ATTRIBUTE_ADDITIVE 0x00040000
1373 typedef enum _PROC_THREAD_ATTRIBUTE_NUM
{
1374 ProcThreadAttributeParentProcess
= 0,
1375 ProcThreadAttributeHandleList
= 2,
1376 ProcThreadAttributeGroupAffinity
= 3,
1377 ProcThreadAttributeIdealProcessor
= 5,
1378 ProcThreadAttributeUmsThread
= 6,
1379 ProcThreadAttributeMitigationPolicy
= 7,
1380 ProcThreadAttributeSecurityCapabilities
= 9,
1381 ProcThreadAttributeProtectionLevel
= 11,
1382 ProcThreadAttributeJobList
= 13,
1383 ProcThreadAttributeChildProcessPolicy
= 14,
1384 ProcThreadAttributeAllApplicationPackagesPolicy
= 15,
1385 ProcThreadAttributeWin32kFilter
= 16,
1386 ProcThreadAttributeSafeOpenPromptOriginClaim
= 17,
1387 } PROC_THREAD_ATTRIBUTE_NUM
;
1389 #define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
1390 #define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT)
1391 #define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS (ProcThreadAttributeParentProcess | PROC_THREAD_ATTRIBUTE_INPUT)
1394 (WINAPI
*PFE_EXPORT_FUNC
)(
1395 _In_reads_bytes_(ulLength
) PBYTE pbData
,
1396 _In_opt_ PVOID pvCallbackContext
,
1397 _In_ ULONG ulLength
);
1399 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
);
1401 typedef VOID (WINAPI
*PFIBER_START_ROUTINE
)( LPVOID lpFiberParameter
);
1402 typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE
;
1404 typedef VOID (WINAPI
*PFLS_CALLBACK_FUNCTION
)(PVOID
);
1405 typedef BOOL(CALLBACK
*ENUMRESLANGPROCA
)(HMODULE
,LPCSTR
,LPCSTR
,WORD
,LONG_PTR
);
1406 typedef BOOL(CALLBACK
*ENUMRESLANGPROCW
)(HMODULE
,LPCWSTR
,LPCWSTR
,WORD
,LONG_PTR
);
1407 typedef BOOL(CALLBACK
*ENUMRESNAMEPROCA
)(HMODULE
,LPCSTR
,LPSTR
,LONG_PTR
);
1408 typedef BOOL(CALLBACK
*ENUMRESNAMEPROCW
)(HMODULE
,LPCWSTR
,LPWSTR
,LONG_PTR
);
1409 typedef BOOL(CALLBACK
*ENUMRESTYPEPROCA
)(HMODULE
,LPSTR
,LONG_PTR
);
1410 typedef BOOL(CALLBACK
*ENUMRESTYPEPROCW
)(HMODULE
,LPWSTR
,LONG_PTR
);
1411 typedef void(CALLBACK
*LPOVERLAPPED_COMPLETION_ROUTINE
)(DWORD
,DWORD
,LPOVERLAPPED
);
1412 typedef LONG(CALLBACK
*PTOP_LEVEL_EXCEPTION_FILTER
)(LPEXCEPTION_POINTERS
);
1413 typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER
;
1414 typedef void(APIENTRY
*PAPCFUNC
)(ULONG_PTR
);
1415 typedef void(CALLBACK
*PTIMERAPCROUTINE
)(PVOID
,DWORD
,DWORD
);
1416 #if (_WIN32_WINNT >= 0x0600)
1417 typedef DWORD (WINAPI
*APPLICATION_RECOVERY_CALLBACK
)(PVOID
);
1420 #ifdef WINE_NO_UNICODE_MACROS /* force using a cast */
1421 #define MAKEINTATOM(atom) ((ULONG_PTR)((WORD)(atom)))
1423 #define MAKEINTATOM(i) (LPTSTR)((ULONG_PTR)((WORD)(i)))
1427 (WINAPI
*PFE_IMPORT_FUNC
)(
1428 _Out_writes_bytes_to_(*ulLength
, *ulLength
) PBYTE pbData
,
1429 _In_opt_ PVOID pvCallbackContext
,
1430 _Inout_ PULONG ulLength
);
1434 int APIENTRY
WinMain(_In_ HINSTANCE
, _In_opt_ HINSTANCE
, _In_ LPSTR
, _In_
int);
1436 int APIENTRY
WinMain(_In_ HINSTANCE
, _In_opt_ HINSTANCE
, _In_ LPWSTR
, _In_
int);
1438 int APIENTRY
wWinMain(_In_ HINSTANCE
, _In_opt_ HINSTANCE
, _In_ LPWSTR
, _In_
int);
1444 _Out_writes_bytes_to_(lBytes
, return) LPVOID lpBuffer
,
1451 _In_reads_bytes_(lBytes
) LPCCH lpBuffer
,
1454 HFILE WINAPI
_lclose(_In_ HFILE
);
1455 HFILE WINAPI
_lcreat(_In_ LPCSTR
, _In_
int);
1456 LONG WINAPI
_llseek(_In_ HFILE
, _In_ LONG
, _In_
int);
1457 HFILE WINAPI
_lopen(_In_ LPCSTR
, _In_
int);
1463 _Out_writes_bytes_to_(uBytes
, return) LPVOID lpBuffer
,
1470 _In_reads_bytes_(uBytes
) LPCCH lpBuffer
,
1473 BOOL WINAPI
AccessCheck(PSECURITY_DESCRIPTOR
,HANDLE
,DWORD
,PGENERIC_MAPPING
,PPRIVILEGE_SET
,PDWORD
,PDWORD
,PBOOL
);
1477 AccessCheckAndAuditAlarmA(
1478 _In_ LPCSTR SubsystemName
,
1479 _In_opt_ LPVOID HandleId
,
1480 _In_ LPSTR ObjectTypeName
,
1481 _In_opt_ LPSTR ObjectName
,
1482 _In_ PSECURITY_DESCRIPTOR SecurityDescriptor
,
1483 _In_ DWORD DesiredAccess
,
1484 _In_ PGENERIC_MAPPING GenericMapping
,
1485 _In_ BOOL ObjectCreation
,
1486 _Out_ LPDWORD GrantedAccess
,
1487 _Out_ LPBOOL AccessStatus
,
1488 _Out_ LPBOOL pfGenerateOnClose
);
1490 BOOL WINAPI
AccessCheckAndAuditAlarmW(LPCWSTR
,LPVOID
,LPWSTR
,LPWSTR
,PSECURITY_DESCRIPTOR
,DWORD
,PGENERIC_MAPPING
,BOOL
,PDWORD
,PBOOL
,PBOOL
);
1491 #if (_WIN32_WINNT >= 0x0600)
1492 VOID WINAPI
AcquireSRWLockExclusive(PSRWLOCK
);
1493 VOID WINAPI
AcquireSRWLockShared(PSRWLOCK
);
1495 #if (_WIN32_WINNT >= 0x0501)
1496 BOOL WINAPI
ActivateActCtx(_Inout_opt_ HANDLE
, _Out_ ULONG_PTR
*);
1498 BOOL WINAPI
AddAccessAllowedAce(PACL
,DWORD
,DWORD
,PSID
);
1499 BOOL WINAPI
AddAccessDeniedAce(PACL
,DWORD
,DWORD
,PSID
);
1500 #if (_WIN32_WINNT >= 0x0500)
1501 BOOL WINAPI
AddAccessAllowedAceEx(PACL
,DWORD
,DWORD
,DWORD
,PSID
);
1502 BOOL WINAPI
AddAccessDeniedAceEx(PACL
,DWORD
,DWORD
,DWORD
,PSID
);
1503 BOOL WINAPI
AddAccessAllowedObjectAce(PACL
,DWORD
,DWORD
,DWORD
,GUID
*,GUID
*,PSID
);
1504 BOOL WINAPI
AddAccessDeniedObjectAce(PACL
,DWORD
,DWORD
,DWORD
,GUID
*,GUID
*,PSID
);
1506 BOOL WINAPI
AddAce(PACL
,DWORD
,DWORD
,PVOID
,DWORD
);
1507 ATOM WINAPI
AddAtomA(_In_opt_ LPCSTR
);
1508 ATOM WINAPI
AddAtomW(_In_opt_ LPCWSTR
);
1509 BOOL WINAPI
AddAuditAccessAce(PACL
,DWORD
,DWORD
,PSID
,BOOL
,BOOL
);
1510 #if (_WIN32_WINNT >= 0x0500)
1511 BOOL WINAPI
AddAuditAccessObjectAce(PACL
,DWORD
,DWORD
,DWORD
,GUID
*,GUID
*,PSID
,BOOL
,BOOL
);
1513 #if (_WIN32_WINNT >= 0x0501)
1514 void WINAPI
AddRefActCtx(_Inout_ HANDLE
);
1516 #if (_WIN32_WINNT >= 0x0500)
1517 _Ret_maybenull_ PVOID WINAPI
AddVectoredExceptionHandler(_In_ ULONG
, _In_ PVECTORED_EXCEPTION_HANDLER
);
1518 _Ret_maybenull_ PVOID WINAPI
AddVectoredContinueHandler(_In_ ULONG
, _In_ PVECTORED_EXCEPTION_HANDLER
);
1520 BOOL WINAPI
AccessCheckByType(PSECURITY_DESCRIPTOR
,PSID
,HANDLE
,DWORD
,POBJECT_TYPE_LIST
,DWORD
,PGENERIC_MAPPING
,PPRIVILEGE_SET
,LPDWORD
,LPDWORD
,LPBOOL
);
1521 BOOL WINAPI
AdjustTokenGroups(HANDLE
,BOOL
,PTOKEN_GROUPS
,DWORD
,PTOKEN_GROUPS
,PDWORD
);
1522 BOOL WINAPI
AdjustTokenPrivileges(HANDLE
,BOOL
,PTOKEN_PRIVILEGES
,DWORD
,PTOKEN_PRIVILEGES
,PDWORD
);
1523 BOOL WINAPI
AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY
,BYTE
,DWORD
,DWORD
,DWORD
,DWORD
,DWORD
,DWORD
,DWORD
,DWORD
,PSID
*);
1524 BOOL WINAPI
CheckTokenMembership(HANDLE
,PSID
,PBOOL
);
1525 BOOL WINAPI
AllocateLocallyUniqueId(PLUID
);
1526 BOOL WINAPI
AreAllAccessesGranted(DWORD
,DWORD
);
1527 BOOL WINAPI
AreAnyAccessesGranted(DWORD
,DWORD
);
1528 BOOL WINAPI
AreFileApisANSI(void);
1529 BOOL WINAPI
BackupEventLogA(_In_ HANDLE
, _In_ LPCSTR
);
1530 BOOL WINAPI
BackupEventLogW(_In_ HANDLE
, _In_ LPCWSTR
);
1536 _Out_writes_bytes_to_(nNumberOfBytesToRead
, *lpNumberOfBytesRead
) LPBYTE lpBuffer
,
1537 _In_ DWORD nNumberOfBytesToRead
,
1538 _Out_ LPDWORD lpNumberOfBytesRead
,
1540 _In_ BOOL bProcessSecurity
,
1541 _Inout_ LPVOID
*lpContext
);
1543 BOOL WINAPI
BackupSeek(_In_ HANDLE
, _In_ DWORD
, _In_ DWORD
, _Out_ LPDWORD
, _Out_ LPDWORD
, _Inout_ LPVOID
*);
1549 _In_reads_bytes_(nNumberOfBytesToWrite
) LPBYTE lpBuffer
,
1550 _In_ DWORD nNumberOfBytesToWrite
,
1551 _Out_ LPDWORD lpNumberOfBytesWritten
,
1553 _In_ BOOL bProcessSecurity
,
1554 _Inout_ LPVOID
*lpContext
);
1556 BOOL WINAPI
Beep(DWORD
,DWORD
);
1557 HANDLE WINAPI
BeginUpdateResourceA(_In_ LPCSTR
, _In_ BOOL
);
1558 HANDLE WINAPI
BeginUpdateResourceW(_In_ LPCWSTR
, _In_ BOOL
);
1559 #if (_WIN32_WINNT >= 0x0500)
1560 BOOL WINAPI
BindIoCompletionCallback(_In_ HANDLE
, _In_ LPOVERLAPPED_COMPLETION_ROUTINE
, _In_ ULONG
);
1562 BOOL WINAPI
BuildCommDCBA(_In_ LPCSTR
, _Out_ LPDCB
);
1563 BOOL WINAPI
BuildCommDCBW(_In_ LPCWSTR
, _Out_ LPDCB
);
1564 BOOL WINAPI
BuildCommDCBAndTimeoutsA(_In_ LPCSTR
, _Out_ LPDCB
, _Out_ LPCOMMTIMEOUTS
);
1565 BOOL WINAPI
BuildCommDCBAndTimeoutsW(_In_ LPCWSTR
, _Out_ LPDCB
, _Out_ LPCOMMTIMEOUTS
);
1570 _In_ LPCSTR lpNamedPipeName
,
1571 _In_reads_bytes_opt_(nInBufferSize
) LPVOID lpInBuffer
,
1572 _In_ DWORD nInBufferSize
,
1573 _Out_writes_bytes_to_opt_(nOutBufferSize
, *lpBytesRead
) LPVOID lpOutBuffer
,
1574 _In_ DWORD nOutBufferSize
,
1575 _Out_ LPDWORD lpBytesRead
,
1576 _In_ DWORD nTimeOut
);
1581 _In_ LPCWSTR lpNamedPipeName
,
1582 _In_reads_bytes_opt_(nInBufferSize
) LPVOID lpInBuffer
,
1583 _In_ DWORD nInBufferSize
,
1584 _Out_writes_bytes_to_opt_(nOutBufferSize
, *lpBytesRead
) LPVOID lpOutBuffer
,
1585 _In_ DWORD nOutBufferSize
,
1586 _Out_ LPDWORD lpBytesRead
,
1587 _In_ DWORD nTimeOut
);
1589 BOOL WINAPI
CancelDeviceWakeupRequest(_In_ HANDLE
);
1590 BOOL WINAPI
CancelIo(HANDLE
);
1591 #if (_WIN32_WINNT >= 0x0600)
1592 BOOL WINAPI
CancelIoEx(HANDLE
,LPOVERLAPPED
);
1593 BOOL WINAPI
CancelSynchronousIo(HANDLE
);
1595 BOOL WINAPI
CancelWaitableTimer(HANDLE
);
1597 #if (_WIN32_WINNT >= 0x0501)
1601 CheckNameLegalDOS8Dot3A(
1603 _Out_writes_opt_(OemNameSize
) LPSTR lpOemName
,
1604 _In_ DWORD OemNameSize
,
1605 _Out_opt_ PBOOL pbNameContainsSpaces
,
1606 _Out_ PBOOL pbNameLegal
);
1610 CheckNameLegalDOS8Dot3W(
1611 _In_ LPCWSTR lpName
,
1612 _Out_writes_opt_(OemNameSize
) LPSTR lpOemName
,
1613 _In_ DWORD OemNameSize
,
1614 _Out_opt_ PBOOL pbNameContainsSpaces
,
1615 _Out_ PBOOL pbNameLegal
);
1617 BOOL WINAPI
CheckRemoteDebuggerPresent(_In_ HANDLE
, _Out_ PBOOL
);
1620 BOOL WINAPI
ClearCommBreak(_In_ HANDLE
);
1621 BOOL WINAPI
ClearCommError(_In_ HANDLE
, _Out_opt_ PDWORD
, _Out_opt_ LPCOMSTAT
);
1622 BOOL WINAPI
ClearEventLogA(_In_ HANDLE
, _In_opt_ LPCSTR
);
1623 BOOL WINAPI
ClearEventLogW(_In_ HANDLE
, _In_opt_ LPCWSTR
);
1624 BOOL WINAPI
CloseEventLog(_In_ HANDLE
);
1625 BOOL WINAPI
CloseHandle(HANDLE
);
1626 BOOL WINAPI
CommConfigDialogA(_In_ LPCSTR
, _In_opt_ HWND
, _Inout_ LPCOMMCONFIG
);
1627 BOOL WINAPI
CommConfigDialogW(_In_ LPCWSTR
, _In_opt_ HWND
, _Inout_ LPCOMMCONFIG
);
1628 LONG WINAPI
CompareFileTime(CONST FILETIME
*,CONST FILETIME
*);
1629 BOOL WINAPI
ConnectNamedPipe(HANDLE
,LPOVERLAPPED
);
1630 BOOL WINAPI
ContinueDebugEvent(DWORD
,DWORD
,DWORD
);
1631 #if (_WIN32_WINNT >= 0x0400)
1632 BOOL WINAPI
ConvertFiberToThread(void);
1634 _Ret_maybenull_ PVOID WINAPI
ConvertThreadToFiber(_In_opt_ PVOID
);
1635 BOOL WINAPI
CopyFileA(_In_ LPCSTR
, _In_ LPCSTR
, _In_ BOOL
);
1636 BOOL WINAPI
CopyFileW(_In_ LPCWSTR
, _In_ LPCWSTR
, _In_ BOOL
);
1637 BOOL WINAPI
CopyFileExA(_In_ LPCSTR
, _In_ LPCSTR
, _In_opt_ LPPROGRESS_ROUTINE
, _In_opt_ LPVOID
, _In_opt_ LPBOOL
, _In_ DWORD
);
1638 BOOL WINAPI
CopyFileExW(_In_ LPCWSTR
, _In_ LPCWSTR
, _In_opt_ LPPROGRESS_ROUTINE
, _In_opt_ LPVOID
, _In_opt_ LPBOOL
, _In_ DWORD
);
1639 #define MoveMemory RtlMoveMemory
1640 #define CopyMemory RtlCopyMemory
1641 #define FillMemory RtlFillMemory
1642 #define ZeroMemory RtlZeroMemory
1643 #define SecureZeroMemory RtlSecureZeroMemory
1644 BOOL WINAPI
CopySid(DWORD
,PSID
,PSID
);
1645 #if (_WIN32_WINNT >= 0x0501)
1646 HANDLE WINAPI
CreateActCtxA(_In_ PCACTCTXA
);
1647 HANDLE WINAPI
CreateActCtxW(_In_ PCACTCTXW
);
1649 BOOL WINAPI
CreateDirectoryA(LPCSTR
,LPSECURITY_ATTRIBUTES
);
1650 BOOL WINAPI
CreateDirectoryW(LPCWSTR
,LPSECURITY_ATTRIBUTES
);
1651 BOOL WINAPI
CreateDirectoryExA(_In_ LPCSTR
, _In_ LPCSTR
, _In_opt_ LPSECURITY_ATTRIBUTES
);
1652 BOOL WINAPI
CreateDirectoryExW(_In_ LPCWSTR
, _In_ LPCWSTR
, _In_opt_ LPSECURITY_ATTRIBUTES
);
1653 HANDLE WINAPI
CreateEventA(LPSECURITY_ATTRIBUTES
,BOOL
,BOOL
,LPCSTR
);
1654 HANDLE WINAPI
CreateEventW(LPSECURITY_ATTRIBUTES
,BOOL
,BOOL
,LPCWSTR
);
1655 #if (_WIN32_WINNT >= 0x0600)
1656 HANDLE WINAPI
CreateEventExA(LPSECURITY_ATTRIBUTES
,LPCSTR
,DWORD
,DWORD
);
1657 HANDLE WINAPI
CreateEventExW(LPSECURITY_ATTRIBUTES
,LPCWSTR
,DWORD
,DWORD
);
1659 _Ret_maybenull_ LPVOID WINAPI
CreateFiber(_In_ SIZE_T
, _In_ LPFIBER_START_ROUTINE
, _In_opt_ LPVOID
);
1660 #if (_WIN32_WINNT >= 0x0400)
1661 _Ret_maybenull_ LPVOID WINAPI
CreateFiberEx(_In_ SIZE_T
, _In_ SIZE_T
, _In_ DWORD
, _In_ LPFIBER_START_ROUTINE
, _In_opt_ LPVOID
);
1663 HANDLE WINAPI
CreateFileA(LPCSTR
,DWORD
,DWORD
,LPSECURITY_ATTRIBUTES
,DWORD
,DWORD
,HANDLE
);
1664 HANDLE WINAPI
CreateFileW(LPCWSTR
,DWORD
,DWORD
,LPSECURITY_ATTRIBUTES
,DWORD
,DWORD
,HANDLE
);
1665 _Ret_maybenull_ HANDLE WINAPI
CreateFileMappingA(_In_ HANDLE
, _In_opt_ LPSECURITY_ATTRIBUTES
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_opt_ LPCSTR
);
1666 HANDLE WINAPI
CreateFileMappingW(HANDLE
,LPSECURITY_ATTRIBUTES
,DWORD
,DWORD
,DWORD
,LPCWSTR
);
1667 #if (_WIN32_WINNT >= 0x0500)
1668 BOOL WINAPI
CreateHardLinkA(_In_ LPCSTR
, _In_ LPCSTR
, _Reserved_ LPSECURITY_ATTRIBUTES
);
1669 BOOL WINAPI
CreateHardLinkW(_In_ LPCWSTR
, _In_ LPCWSTR
, _Reserved_ LPSECURITY_ATTRIBUTES
);
1671 HANDLE WINAPI
CreateIoCompletionPort(HANDLE
,HANDLE
,ULONG_PTR
,DWORD
);
1672 #if (_WIN32_WINNT >= 0x0500)
1673 _Ret_maybenull_ HANDLE WINAPI
CreateJobObjectA(_In_opt_ LPSECURITY_ATTRIBUTES
, _In_opt_ LPCSTR
);
1674 _Ret_maybenull_ HANDLE WINAPI
CreateJobObjectW(_In_opt_ LPSECURITY_ATTRIBUTES
, _In_opt_ LPCWSTR
);
1675 BOOL WINAPI
TerminateJobObject(_In_ HANDLE
, _In_ UINT
);
1676 BOOL WINAPI
AssignProcessToJobObject(_In_ HANDLE
, _In_ HANDLE
);
1678 HANDLE WINAPI
CreateMailslotA(_In_ LPCSTR
, _In_ DWORD
, _In_ DWORD
, _In_opt_ LPSECURITY_ATTRIBUTES
);
1679 HANDLE WINAPI
CreateMailslotW(_In_ LPCWSTR
, _In_ DWORD
, _In_ DWORD
, _In_opt_ LPSECURITY_ATTRIBUTES
);
1680 #if (_WIN32_WINNT >= 0x0501)
1681 HANDLE WINAPI
CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE
);
1683 HANDLE WINAPI
CreateMutexA(LPSECURITY_ATTRIBUTES
,BOOL
,LPCSTR
);
1684 HANDLE WINAPI
CreateMutexW(LPSECURITY_ATTRIBUTES
,BOOL
,LPCWSTR
);
1685 #if (_WIN32_WINNT >= 0x0600)
1686 HANDLE WINAPI
CreateMutexExA(LPSECURITY_ATTRIBUTES
,LPCSTR
,DWORD
,DWORD
);
1687 HANDLE WINAPI
CreateMutexExW(LPSECURITY_ATTRIBUTES
,LPCWSTR
,DWORD
,DWORD
);
1689 HANDLE WINAPI
CreateNamedPipeA(_In_ LPCSTR
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_opt_ LPSECURITY_ATTRIBUTES
);
1690 HANDLE WINAPI
CreateNamedPipeW(_In_ LPCWSTR
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_opt_ LPSECURITY_ATTRIBUTES
);
1691 BOOL WINAPI
CreatePipe(PHANDLE
,PHANDLE
,LPSECURITY_ATTRIBUTES
,DWORD
);
1692 BOOL WINAPI
CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR
,PSECURITY_DESCRIPTOR
,PSECURITY_DESCRIPTOR
*,BOOL
,HANDLE
,PGENERIC_MAPPING
);
1693 BOOL WINAPI
CreateProcessA(LPCSTR
,LPSTR
,LPSECURITY_ATTRIBUTES
,LPSECURITY_ATTRIBUTES
,BOOL
,DWORD
,PVOID
,LPCSTR
,LPSTARTUPINFOA
,LPPROCESS_INFORMATION
);
1694 BOOL WINAPI
CreateProcessW(LPCWSTR
,LPWSTR
,LPSECURITY_ATTRIBUTES
,LPSECURITY_ATTRIBUTES
,BOOL
,DWORD
,PVOID
,LPCWSTR
,LPSTARTUPINFOW
,LPPROCESS_INFORMATION
);
1698 CreateProcessAsUserA(
1702 _In_opt_ LPSECURITY_ATTRIBUTES
,
1703 _In_opt_ LPSECURITY_ATTRIBUTES
,
1708 _In_ LPSTARTUPINFOA
,
1709 _Out_ LPPROCESS_INFORMATION
);
1711 BOOL WINAPI
CreateProcessAsUserW(HANDLE
,LPCWSTR
,LPWSTR
,LPSECURITY_ATTRIBUTES
,LPSECURITY_ATTRIBUTES
,BOOL
,DWORD
,PVOID
,LPCWSTR
,LPSTARTUPINFOW
,LPPROCESS_INFORMATION
);
1712 HANDLE WINAPI
CreateRemoteThread(HANDLE
,LPSECURITY_ATTRIBUTES
,DWORD
,LPTHREAD_START_ROUTINE
,LPVOID
,DWORD
,LPDWORD
);
1716 CreateRestrictedToken(
1717 _In_ HANDLE ExistingTokenHandle
,
1719 _In_ DWORD DisableSidCount
,
1720 _In_reads_opt_(DisableSidCount
) PSID_AND_ATTRIBUTES SidsToDisable
,
1721 _In_ DWORD DeletePrivilegeCount
,
1722 _In_reads_opt_(DeletePrivilegeCount
) PLUID_AND_ATTRIBUTES PrivilegesToDelete
,
1723 _In_ DWORD RestrictedSidCount
,
1724 _In_reads_opt_(RestrictedSidCount
) PSID_AND_ATTRIBUTES SidsToRestrict
,
1725 _Outptr_ PHANDLE NewTokenHandle
);
1727 _Ret_maybenull_ HANDLE WINAPI
CreateSemaphoreA(_In_opt_ LPSECURITY_ATTRIBUTES
, _In_ LONG
, _In_ LONG
, _In_opt_ LPCSTR
);
1728 _Ret_maybenull_ HANDLE WINAPI
CreateSemaphoreW(_In_opt_ LPSECURITY_ATTRIBUTES
, _In_ LONG
, _In_ LONG
, _In_opt_ LPCWSTR
);
1729 #if (_WIN32_WINNT >= 0x0600)
1730 _Ret_maybenull_ HANDLE WINAPI
CreateSemaphoreExA(_In_opt_ LPSECURITY_ATTRIBUTES
, _In_ LONG
, _In_ LONG
, _In_opt_ LPCSTR
, _Reserved_ DWORD
, _In_ DWORD
);
1731 HANDLE WINAPI
CreateSemaphoreExW(LPSECURITY_ATTRIBUTES
,LONG
,LONG
,LPCWSTR
,DWORD
,DWORD
);
1733 DWORD WINAPI
CreateTapePartition(_In_ HANDLE
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
);
1735 #if (_WIN32_WINNT >= 0x0500)
1737 HANDLE WINAPI
CreateTimerQueue(void);
1741 CreateTimerQueueTimer(
1744 _In_ WAITORTIMERCALLBACK
,
1750 _Must_inspect_result_
1753 ChangeTimerQueueTimer(
1754 _In_opt_ HANDLE TimerQueue
,
1755 _Inout_ HANDLE Timer
,
1759 #endif /* (_WIN32_WINNT >= 0x0500) */
1761 HANDLE WINAPI
CreateThread(LPSECURITY_ATTRIBUTES
,DWORD
,LPTHREAD_START_ROUTINE
,PVOID
,DWORD
,PDWORD
);
1762 _Ret_maybenull_ HANDLE WINAPI
CreateWaitableTimerA(_In_opt_ LPSECURITY_ATTRIBUTES
, _In_ BOOL
, _In_opt_ LPCSTR
);
1763 _Ret_maybenull_ HANDLE WINAPI
CreateWaitableTimerW(_In_opt_ LPSECURITY_ATTRIBUTES
, _In_ BOOL
, _In_opt_ LPCWSTR
);
1764 #if (_WIN32_WINNT >= 0x0600)
1765 _Ret_maybenull_ HANDLE WINAPI
CreateWaitableTimerExA(_In_opt_ LPSECURITY_ATTRIBUTES
, _In_opt_ LPCSTR
, _In_ DWORD
, _In_ DWORD
);
1766 HANDLE WINAPI
CreateWaitableTimerExW(LPSECURITY_ATTRIBUTES
,LPCWSTR
,DWORD
,DWORD
);
1768 #if (_WIN32_WINNT >= 0x0501)
1769 BOOL WINAPI
CreateWellKnownSid(WELL_KNOWN_SID_TYPE
,PSID
,PSID
,DWORD
*);
1770 BOOL WINAPI
DeactivateActCtx(_In_ DWORD
, _In_ ULONG_PTR
);
1772 BOOL WINAPI
DebugActiveProcess(DWORD
);
1773 #if (_WIN32_WINNT >= 0x0501)
1774 BOOL WINAPI
DebugActiveProcessStop(DWORD
);
1776 void WINAPI
DebugBreak(void);
1777 #if (_WIN32_WINNT >= 0x0501)
1778 BOOL WINAPI
DebugBreakProcess(_In_ HANDLE
);
1779 BOOL WINAPI
DebugSetProcessKillOnExit(_In_ BOOL
);
1781 PVOID WINAPI
DecodePointer(PVOID
);
1782 PVOID WINAPI
DecodeSystemPointer(PVOID
);
1783 BOOL WINAPI
DecryptFileA(_In_ LPCSTR
, _Reserved_ DWORD
);
1784 BOOL WINAPI
DecryptFileW(_In_ LPCWSTR
, _Reserved_ DWORD
);
1785 BOOL WINAPI
DefineDosDeviceA(_In_ DWORD
, _In_ LPCSTR
, _In_opt_ LPCSTR
);
1786 BOOL WINAPI
DefineDosDeviceW(DWORD
,LPCWSTR
,LPCWSTR
);
1787 #define DefineHandleTable(w) ((w),TRUE)
1788 BOOL WINAPI
DeleteAce(PACL
,DWORD
);
1789 ATOM WINAPI
DeleteAtom(_In_ ATOM
);
1790 void WINAPI
DeleteCriticalSection(PCRITICAL_SECTION
);
1791 void WINAPI
DeleteFiber(_In_ PVOID
);
1792 BOOL WINAPI
DeleteFileA(LPCSTR
);
1793 BOOL WINAPI
DeleteFileW(LPCWSTR
);
1794 #if (_WIN32_WINNT >= 0x0500)
1795 _Must_inspect_result_ BOOL WINAPI
DeleteTimerQueue(_In_ HANDLE
);
1796 BOOL WINAPI
DeleteTimerQueueEx(HANDLE
,HANDLE
);
1797 BOOL WINAPI
DeleteTimerQueueTimer(HANDLE
,HANDLE
,HANDLE
);
1798 BOOL WINAPI
DeleteVolumeMountPointA(_In_ LPCSTR
);
1799 BOOL WINAPI
DeleteVolumeMountPointW(LPCWSTR
);
1801 BOOL WINAPI
DeregisterEventSource(_In_ HANDLE
);
1802 BOOL WINAPI
DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR
*);
1803 BOOL WINAPI
DeviceIoControl(HANDLE
,DWORD
,PVOID
,DWORD
,PVOID
,DWORD
,PDWORD
,POVERLAPPED
);
1804 BOOL WINAPI
DisableThreadLibraryCalls(HMODULE
);
1806 #if (_WIN32_WINNT >= 0x0500)
1808 _Success_(return != FALSE
)
1811 DnsHostnameToComputerNameA(
1812 _In_ LPCSTR Hostname
,
1813 _Out_writes_to_opt_(*nSize
, *nSize
+ 1) LPSTR ComputerName
,
1814 _Inout_ LPDWORD nSize
);
1816 _Success_(return != FALSE
)
1819 DnsHostnameToComputerNameW(
1820 _In_ LPCWSTR Hostname
,
1821 _Out_writes_to_opt_(*nSize
, *nSize
+ 1) LPWSTR ComputerName
,
1822 _Inout_ LPDWORD nSize
);
1826 BOOL WINAPI
DisconnectNamedPipe(HANDLE
);
1827 BOOL WINAPI
DosDateTimeToFileTime(_In_ WORD
, _In_ WORD
, _Out_ LPFILETIME
);
1828 BOOL WINAPI
DuplicateHandle(HANDLE
,HANDLE
,HANDLE
,PHANDLE
,DWORD
,BOOL
,DWORD
);
1829 BOOL WINAPI
DuplicateToken(HANDLE
,SECURITY_IMPERSONATION_LEVEL
,PHANDLE
);
1830 BOOL WINAPI
DuplicateTokenEx(HANDLE
,DWORD
,LPSECURITY_ATTRIBUTES
,SECURITY_IMPERSONATION_LEVEL
,TOKEN_TYPE
,PHANDLE
);
1831 PVOID WINAPI
EncodePointer(PVOID
);
1832 PVOID WINAPI
EncodeSystemPointer(PVOID
);
1833 BOOL WINAPI
EncryptFileA(_In_ LPCSTR
);
1834 BOOL WINAPI
EncryptFileW(_In_ LPCWSTR
);
1835 BOOL WINAPI
EndUpdateResourceA(_In_ HANDLE
, _In_ BOOL
);
1836 BOOL WINAPI
EndUpdateResourceW(_In_ HANDLE
, _In_ BOOL
);
1837 void WINAPI
EnterCriticalSection(LPCRITICAL_SECTION
);
1838 BOOL WINAPI
EnumResourceLanguagesA(_In_opt_ HMODULE
, _In_ LPCSTR
, _In_ LPCSTR
, _In_ ENUMRESLANGPROCA
, _In_ LONG_PTR
);
1839 BOOL WINAPI
EnumResourceLanguagesW(_In_opt_ HMODULE
, _In_ LPCWSTR
, _In_ LPCWSTR
, _In_ ENUMRESLANGPROCW
, _In_ LONG_PTR
);
1840 BOOL WINAPI
EnumResourceNamesA(_In_opt_ HMODULE
, _In_ LPCSTR
, _In_ ENUMRESNAMEPROCA
, _In_ LONG_PTR
);
1841 BOOL WINAPI
EnumResourceNamesW(_In_opt_ HMODULE
, _In_ LPCWSTR
, _In_ ENUMRESNAMEPROCW
, _In_ LONG_PTR
);
1842 BOOL WINAPI
EnumResourceTypesA(_In_opt_ HMODULE
, _In_ ENUMRESTYPEPROCA
, _In_ LONG_PTR
);
1843 BOOL WINAPI
EnumResourceTypesW(_In_opt_ HMODULE
, _In_ ENUMRESTYPEPROCW
, _In_ LONG_PTR
);
1844 BOOL WINAPI
EqualPrefixSid(PSID
,PSID
);
1845 BOOL WINAPI
EqualSid(PSID
,PSID
);
1846 DWORD WINAPI
EraseTape(_In_ HANDLE
, _In_ DWORD
, _In_ BOOL
);
1847 BOOL WINAPI
EscapeCommFunction(_In_ HANDLE
, _In_ DWORD
);
1848 DECLSPEC_NORETURN
void WINAPI
ExitProcess(UINT
);
1849 DECLSPEC_NORETURN
void WINAPI
ExitThread(DWORD
);
1850 DWORD WINAPI
ExpandEnvironmentStringsA(LPCSTR
,LPSTR
,DWORD
);
1851 DWORD WINAPI
ExpandEnvironmentStringsW(LPCWSTR
,LPWSTR
,DWORD
);
1852 void WINAPI
FatalAppExitA(UINT
,LPCSTR
);
1853 void WINAPI
FatalAppExitW(UINT
,LPCWSTR
);
1854 __analysis_noreturn
void WINAPI
FatalExit(_In_
int);
1855 BOOL WINAPI
FileEncryptionStatusA(_In_ LPCSTR
, _Out_ LPDWORD
);
1856 BOOL WINAPI
FileEncryptionStatusW(_In_ LPCWSTR
, _Out_ LPDWORD
);
1857 BOOL WINAPI
FileTimeToDosDateTime(_In_ CONST FILETIME
*, _Out_ LPWORD
, _Out_ LPWORD
);
1858 BOOL WINAPI
FileTimeToLocalFileTime(CONST FILETIME
*,LPFILETIME
);
1859 BOOL WINAPI
FileTimeToSystemTime(CONST FILETIME
*,LPSYSTEMTIME
);
1860 #if (_WIN32_WINNT >= 0x0501)
1861 BOOL WINAPI
FindActCtxSectionGuid(_In_ DWORD
, _Reserved_
const GUID
*, _In_ ULONG
, _In_opt_
const GUID
*, _Out_ PACTCTX_SECTION_KEYED_DATA
);
1862 BOOL WINAPI
FindActCtxSectionStringA(_In_ DWORD
, _Reserved_
const GUID
*, _In_ ULONG
, _In_ LPCSTR
, _Out_ PACTCTX_SECTION_KEYED_DATA
);
1863 BOOL WINAPI
FindActCtxSectionStringW(_In_ DWORD
, _Reserved_
const GUID
*, _In_ ULONG
, _In_ LPCWSTR
, _Out_ PACTCTX_SECTION_KEYED_DATA
);
1865 ATOM WINAPI
FindAtomA(_In_opt_ LPCSTR
);
1866 ATOM WINAPI
FindAtomW(_In_opt_ LPCWSTR
);
1867 BOOL WINAPI
FindClose(HANDLE
);
1868 BOOL WINAPI
FindCloseChangeNotification(HANDLE
);
1869 HANDLE WINAPI
FindFirstChangeNotificationA(LPCSTR
,BOOL
,DWORD
);
1870 HANDLE WINAPI
FindFirstChangeNotificationW(LPCWSTR
,BOOL
,DWORD
);
1871 HANDLE WINAPI
FindFirstFileA(LPCSTR
,LPWIN32_FIND_DATAA
);
1872 HANDLE WINAPI
FindFirstFileW(LPCWSTR
,LPWIN32_FIND_DATAW
);
1873 HANDLE WINAPI
FindFirstFileExA(LPCSTR
,FINDEX_INFO_LEVELS
,PVOID
,FINDEX_SEARCH_OPS
,PVOID
,DWORD
);
1874 HANDLE WINAPI
FindFirstFileExW(LPCWSTR
,FINDEX_INFO_LEVELS
,PVOID
,FINDEX_SEARCH_OPS
,PVOID
,DWORD
);
1875 #if (_WIN32_WINNT >= 0x0501)
1876 HANDLE WINAPI
FindFirstStreamW(_In_ LPCWSTR
, _In_ STREAM_INFO_LEVELS
, _Out_ LPVOID
, _Reserved_ DWORD
);
1878 BOOL WINAPI
FindFirstFreeAce(PACL
,PVOID
*);
1880 #if (_WIN32_WINNT >= 0x0500)
1885 _Out_writes_(cchBufferLength
) LPSTR lpszVolumeName
,
1886 _In_ DWORD cchBufferLength
);
1888 HANDLE WINAPI
FindFirstVolumeW(LPWSTR
,DWORD
);
1892 FindFirstVolumeMountPointA(
1893 _In_ LPCSTR lpszRootPathName
,
1894 _Out_writes_(cchBufferLength
) LPSTR lpszVolumeMountPoint
,
1895 _In_ DWORD cchBufferLength
);
1899 FindFirstVolumeMountPointW(
1900 _In_ LPCWSTR lpszRootPathName
,
1901 _Out_writes_(cchBufferLength
) LPWSTR lpszVolumeMountPoint
,
1902 _In_ DWORD cchBufferLength
);
1906 BOOL WINAPI
FindNextChangeNotification(HANDLE
);
1907 BOOL WINAPI
FindNextFileA(HANDLE
,LPWIN32_FIND_DATAA
);
1908 BOOL WINAPI
FindNextFileW(HANDLE
,LPWIN32_FIND_DATAW
);
1909 #if (_WIN32_WINNT >= 0x0501)
1910 BOOL WINAPI
FindNextStreamW(_In_ HANDLE
, _Out_ LPVOID
);
1913 #if (_WIN32_WINNT >= 0x0500)
1918 _Inout_ HANDLE hFindVolume
,
1919 _Out_writes_(cchBufferLength
) LPSTR lpszVolumeName
,
1920 _In_ DWORD cchBufferLength
);
1922 BOOL WINAPI
FindNextVolumeW(HANDLE
,LPWSTR
,DWORD
);
1926 FindNextVolumeMountPointA(
1927 _In_ HANDLE hFindVolumeMountPoint
,
1928 _Out_writes_(cchBufferLength
) LPSTR lpszVolumeMountPoint
,
1929 _In_ DWORD cchBufferLength
);
1933 FindNextVolumeMountPointW(
1934 _In_ HANDLE hFindVolumeMountPoint
,
1935 _Out_writes_(cchBufferLength
) LPWSTR lpszVolumeMountPoint
,
1936 _In_ DWORD cchBufferLength
);
1938 BOOL WINAPI
FindVolumeClose(HANDLE
);
1939 BOOL WINAPI
FindVolumeMountPointClose(_In_ HANDLE
);
1943 _Ret_maybenull_ HRSRC WINAPI
FindResourceA(_In_opt_ HMODULE
,_In_ LPCSTR
, _In_ LPCSTR
);
1944 _Ret_maybenull_ HRSRC WINAPI
FindResourceW(_In_opt_ HMODULE
,_In_ LPCWSTR
, _In_ LPCWSTR
);
1945 _Ret_maybenull_ HRSRC WINAPI
FindResourceExA(_In_opt_ HMODULE
, _In_ LPCSTR
, _In_ LPCSTR
, _In_ WORD
);
1946 HRSRC WINAPI
FindResourceExW(HINSTANCE
,LPCWSTR
,LPCWSTR
,WORD
);
1947 #if (_WIN32_WINNT >= 0x0502)
1951 GetFirmwareEnvironmentVariableA(
1954 _Out_writes_bytes_to_opt_(nSize
, return) PVOID pBuffer
,
1959 GetFirmwareEnvironmentVariableW(
1960 _In_ LPCWSTR lpName
,
1961 _In_ LPCWSTR lpGuid
,
1962 _Out_writes_bytes_to_opt_(nSize
, return) PVOID pBuffer
,
1966 BOOL WINAPI
FlushFileBuffers(HANDLE
);
1967 BOOL WINAPI
FlushInstructionCache(HANDLE
,LPCVOID
,SIZE_T
);
1968 BOOL WINAPI
FlushViewOfFile(LPCVOID
,SIZE_T
);
1969 DWORD WINAPI
FlsAlloc(PFLS_CALLBACK_FUNCTION
);
1970 PVOID WINAPI
FlsGetValue(DWORD
);
1971 BOOL WINAPI
FlsSetValue(DWORD
,PVOID
);
1972 BOOL WINAPI
FlsFree(DWORD
);
1973 DWORD WINAPI
FormatMessageA(DWORD
,LPCVOID
,DWORD
,DWORD
,LPSTR
,DWORD
,va_list*);
1974 DWORD WINAPI
FormatMessageW(DWORD
,LPCVOID
,DWORD
,DWORD
,LPWSTR
,DWORD
,va_list*);
1975 BOOL WINAPI
FreeEnvironmentStringsA(LPSTR
);
1976 BOOL WINAPI
FreeEnvironmentStringsW(LPWSTR
);
1977 BOOL WINAPI
FreeLibrary(HMODULE
);
1978 DECLSPEC_NORETURN
void WINAPI
FreeLibraryAndExitThread(HMODULE
,DWORD
);
1979 #define FreeModule(m) FreeLibrary(m)
1980 #define FreeProcInstance(p) (void)(p)
1981 #ifndef XFree86Server
1982 BOOL WINAPI
FreeResource(HGLOBAL
);
1983 #endif /* ndef XFree86Server */
1984 PVOID WINAPI
FreeSid(PSID
);
1985 BOOL WINAPI
GetAce(PACL
,DWORD
,LPVOID
*);
1986 BOOL WINAPI
GetAclInformation(PACL
,PVOID
,DWORD
,ACL_INFORMATION_CLASS
);
1987 #if (_WIN32_WINNT >= 0x0600)
1988 HRESULT WINAPI
GetApplicationRecoveryCallback(_In_ HANDLE
, _Out_ APPLICATION_RECOVERY_CALLBACK
*, _Outptr_opt_result_maybenull_ PVOID
*, _Out_opt_ DWORD
*, _Out_opt_ DWORD
*);
1989 HRESULT WINAPI
GetApplicationRestart(HANDLE
,PWSTR
,PDWORD
,PDWORD
);
1996 _Out_writes_to_(nSize
, return + 1) LPSTR lpBuffer
,
2003 _Out_writes_to_(nSize
, return + 1) LPWSTR lpBuffer
,
2006 BOOL WINAPI
GetBinaryTypeA(_In_ LPCSTR
, _Out_ PDWORD
);
2007 BOOL WINAPI
GetBinaryTypeW(_In_ LPCWSTR
, _Out_ PDWORD
);
2008 LPSTR WINAPI
GetCommandLineA(VOID
);
2009 LPWSTR WINAPI
GetCommandLineW(VOID
);
2011 _Success_(return != FALSE
)
2015 _In_ HANDLE hCommDev
,
2016 _Out_writes_bytes_opt_(*lpdwSize
) LPCOMMCONFIG lpCC
,
2017 _Inout_ LPDWORD lpdwSize
);
2019 BOOL WINAPI
GetCommMask(_In_ HANDLE
, _Out_ PDWORD
);
2020 BOOL WINAPI
GetCommModemStatus(_In_ HANDLE
, _Out_ PDWORD
);
2021 BOOL WINAPI
GetCommProperties(_In_ HANDLE
, _Inout_ LPCOMMPROP
);
2022 BOOL WINAPI
GetCommState(_In_ HANDLE
, _Out_ LPDCB
);
2023 BOOL WINAPI
GetCommTimeouts(_In_ HANDLE
, _Out_ LPCOMMTIMEOUTS
);
2024 DWORD WINAPI
GetCompressedFileSizeA(_In_ LPCSTR
, _Out_opt_ PDWORD
);
2025 DWORD WINAPI
GetCompressedFileSizeW(_In_ LPCWSTR
, _Out_opt_ PDWORD
);
2027 _Success_(return != 0)
2031 _Out_writes_to_opt_(*nSize
, *nSize
+ 1) LPSTR lpBuffer
,
2032 _Inout_ LPDWORD nSize
);
2034 _Success_(return != 0)
2038 _Out_writes_to_opt_(*nSize
, *nSize
+ 1) LPWSTR lpBuffer
,
2039 _Inout_ LPDWORD nSize
);
2041 #if (_WIN32_WINNT >= 0x0500)
2042 BOOL WINAPI
GetComputerNameExA(COMPUTER_NAME_FORMAT
,LPSTR
,LPDWORD
);
2043 BOOL WINAPI
GetComputerNameExW(COMPUTER_NAME_FORMAT
,LPWSTR
,LPDWORD
);
2045 #if (_WIN32_WINNT >= 0x0501)
2046 BOOL WINAPI
GetCurrentActCtx( _Outptr_ HANDLE
*);
2048 DWORD WINAPI
GetCurrentDirectoryA(DWORD
,LPSTR
);
2049 DWORD WINAPI
GetCurrentDirectoryW(DWORD
,LPWSTR
);
2050 BOOL WINAPI
GetCurrentHwProfileA(_Out_ LPHW_PROFILE_INFOA
);
2051 BOOL WINAPI
GetCurrentHwProfileW(_Out_ LPHW_PROFILE_INFOW
);
2052 HANDLE WINAPI
GetCurrentProcess(void);
2053 DWORD WINAPI
GetCurrentProcessId(void);
2054 HANDLE WINAPI
GetCurrentThread(void);
2055 DWORD WINAPI
GetCurrentThreadId(void);
2056 #define GetCurrentTime GetTickCount
2060 GetDefaultCommConfigA(
2061 _In_ LPCSTR lpszName
,
2062 _Out_writes_bytes_to_(*lpdwSize
, *lpdwSize
) LPCOMMCONFIG lpCC
,
2063 _Inout_ LPDWORD lpdwSize
);
2067 GetDefaultCommConfigW(
2068 _In_ LPCWSTR lpszName
,
2069 _Out_writes_bytes_to_(*lpdwSize
, *lpdwSize
) LPCOMMCONFIG lpCC
,
2070 _Inout_ LPDWORD lpdwSize
);
2072 BOOL WINAPI
GetDiskFreeSpaceA(LPCSTR
,PDWORD
,PDWORD
,PDWORD
,PDWORD
);
2073 BOOL WINAPI
GetDiskFreeSpaceW(LPCWSTR
,PDWORD
,PDWORD
,PDWORD
,PDWORD
);
2074 BOOL WINAPI
GetDiskFreeSpaceExA(LPCSTR
,PULARGE_INTEGER
,PULARGE_INTEGER
,PULARGE_INTEGER
);
2075 BOOL WINAPI
GetDiskFreeSpaceExW(LPCWSTR
,PULARGE_INTEGER
,PULARGE_INTEGER
,PULARGE_INTEGER
);
2077 #if (_WIN32_WINNT >= 0x0502)
2079 _Success_(return != 0 && return < nBufferLength
)
2083 _In_ DWORD nBufferLength
,
2084 _Out_writes_to_opt_(nBufferLength
, return + 1) LPSTR lpBuffer
);
2086 _Success_(return != 0 && return < nBufferLength
)
2090 _In_ DWORD nBufferLength
,
2091 _Out_writes_to_opt_(nBufferLength
, return + 1) LPWSTR lpBuffer
);
2095 UINT WINAPI
GetDriveTypeA(LPCSTR
);
2096 UINT WINAPI
GetDriveTypeW(LPCWSTR
);
2097 LPSTR WINAPI
GetEnvironmentStrings(void);
2098 LPWSTR WINAPI
GetEnvironmentStringsW(void);
2099 DWORD WINAPI
GetEnvironmentVariableA(LPCSTR
,LPSTR
,DWORD
);
2100 DWORD WINAPI
GetEnvironmentVariableW(LPCWSTR
,LPWSTR
,DWORD
);
2101 BOOL WINAPI
GetExitCodeProcess(HANDLE
,PDWORD
);
2102 BOOL WINAPI
GetExitCodeThread(HANDLE
,PDWORD
);
2103 DWORD WINAPI
GetFileAttributesA(LPCSTR
);
2104 #if (_WIN32_WINNT >= 0x0600)
2105 BOOL WINAPI
GetFileAttributesByHandle(HANDLE
,LPDWORD
,DWORD
);
2106 DWORD WINAPI
GetFinalPathNameByHandleA(HANDLE
,LPSTR
,DWORD
,DWORD
);
2107 DWORD WINAPI
GetFinalPathNameByHandleW(HANDLE
,LPWSTR
,DWORD
,DWORD
);
2109 DWORD WINAPI
GetFileAttributesW(LPCWSTR
);
2110 BOOL WINAPI
GetFileAttributesExA(LPCSTR
,GET_FILEEX_INFO_LEVELS
,PVOID
);
2111 BOOL WINAPI
GetFileAttributesExW(LPCWSTR
,GET_FILEEX_INFO_LEVELS
,PVOID
);
2112 #if (_WIN32_WINNT >= 0x0600)
2113 BOOL WINAPI
GetFileBandwidthReservation(_In_ HANDLE
, _Out_ LPDWORD
, _Out_ LPDWORD
, _Out_ LPBOOL
, _Out_ LPDWORD
, _Out_ LPDWORD
);
2115 BOOL WINAPI
GetFileInformationByHandle(HANDLE
,LPBY_HANDLE_FILE_INFORMATION
);
2117 #if (_WIN32_WINNT >= 0x0600)
2120 GetFileInformationByHandleEx(
2122 _In_ FILE_INFO_BY_HANDLE_CLASS FileInformationClass
,
2123 _Out_writes_bytes_(dwBufferSize
) LPVOID lpFileInformation
,
2124 _In_ DWORD dwBufferSize
);
2130 _In_ LPCSTR lpFileName
,
2131 _In_ SECURITY_INFORMATION RequestedInformation
,
2132 _Out_writes_bytes_to_opt_(nLength
, *lpnLengthNeeded
) PSECURITY_DESCRIPTOR pSecurityDescriptor
,
2134 _Out_ LPDWORD lpnLengthNeeded
);
2136 BOOL WINAPI
GetFileSecurityW(LPCWSTR
,SECURITY_INFORMATION
,PSECURITY_DESCRIPTOR
,DWORD
,PDWORD
);
2137 DWORD WINAPI
GetFileSize(HANDLE
,PDWORD
);
2138 BOOL WINAPI
GetFileSizeEx(HANDLE
,PLARGE_INTEGER
);
2139 BOOL WINAPI
GetFileTime(HANDLE
,LPFILETIME
,LPFILETIME
,LPFILETIME
);
2140 DWORD WINAPI
GetFileType(HANDLE
);
2141 #define GetFreeSpace(w) (0x100000L)
2142 DWORD WINAPI
GetFullPathNameA(LPCSTR
,DWORD
,LPSTR
,LPSTR
*);
2143 DWORD WINAPI
GetFullPathNameW(LPCWSTR
,DWORD
,LPWSTR
,LPWSTR
*);
2144 BOOL WINAPI
GetHandleInformation(HANDLE
,PDWORD
);
2145 BOOL WINAPI
GetKernelObjectSecurity(HANDLE
,SECURITY_INFORMATION
,PSECURITY_DESCRIPTOR
,DWORD
,PDWORD
);
2146 DWORD WINAPI
GetLastError(void);
2147 DWORD WINAPI
GetLengthSid(PSID
);
2148 void WINAPI
GetLocalTime(LPSYSTEMTIME
);
2149 DWORD WINAPI
GetLogicalDrives(void);
2151 _Success_(return != 0 && return <= nBufferLength
)
2154 GetLogicalDriveStringsA(
2155 _In_ DWORD nBufferLength
,
2156 _Out_writes_to_opt_(nBufferLength
, return + 1) LPSTR lpBuffer
);
2158 DWORD WINAPI
GetLogicalDriveStringsW(DWORD
,LPWSTR
);
2159 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
2160 DWORD WINAPI
GetLongPathNameA(LPCSTR
,LPSTR
,DWORD
);
2161 DWORD WINAPI
GetLongPathNameW(LPCWSTR
,LPWSTR
,DWORD
);
2163 BOOL WINAPI
GetMailslotInfo(_In_ HANDLE
, _Out_opt_ PDWORD
, _Out_opt_ PDWORD
, _Out_opt_ PDWORD
, _Out_opt_ PDWORD
);
2164 DWORD WINAPI
GetModuleFileNameA(HINSTANCE
,LPSTR
,DWORD
);
2165 DWORD WINAPI
GetModuleFileNameW(HINSTANCE
,LPWSTR
,DWORD
);
2166 HMODULE WINAPI
GetModuleHandleA(LPCSTR
);
2167 HMODULE WINAPI
GetModuleHandleW(LPCWSTR
);
2168 #if (_WIN32_WINNT >= 0x0500)
2169 BOOL WINAPI
GetModuleHandleExA(DWORD
,LPCSTR
,HMODULE
*);
2170 BOOL WINAPI
GetModuleHandleExW(DWORD
,LPCWSTR
,HMODULE
*);
2173 #if _WIN32_WINNT >= 0x0502
2174 WINBASEAPI WINBOOL WINAPI
NeedCurrentDirectoryForExePathA(LPCSTR ExeName
);
2175 WINBASEAPI WINBOOL WINAPI
NeedCurrentDirectoryForExePathW(LPCWSTR ExeName
);
2180 GetNamedPipeHandleStateA(
2181 _In_ HANDLE hNamedPipe
,
2182 _Out_opt_ LPDWORD lpState
,
2183 _Out_opt_ LPDWORD lpCurInstances
,
2184 _Out_opt_ LPDWORD lpMaxCollectionCount
,
2185 _Out_opt_ LPDWORD lpCollectDataTimeout
,
2186 _Out_writes_opt_(nMaxUserNameSize
) LPSTR lpUserName
,
2187 _In_ DWORD nMaxUserNameSize
);
2191 GetNamedPipeHandleStateW(
2192 _In_ HANDLE hNamedPipe
,
2193 _Out_opt_ LPDWORD lpState
,
2194 _Out_opt_ LPDWORD lpCurInstances
,
2195 _Out_opt_ LPDWORD lpMaxCollectionCount
,
2196 _Out_opt_ LPDWORD lpCollectDataTimeout
,
2197 _Out_writes_opt_(nMaxUserNameSize
) LPWSTR lpUserName
,
2198 _In_ DWORD nMaxUserNameSize
);
2200 BOOL WINAPI
GetNamedPipeInfo(_In_ HANDLE
, _Out_opt_ PDWORD
, _Out_opt_ PDWORD
, _Out_opt_ PDWORD
, _Out_opt_ PDWORD
);
2201 #if (_WIN32_WINNT >= 0x0501)
2202 VOID WINAPI
GetNativeSystemInfo(LPSYSTEM_INFO
);
2207 GetEventLogInformation(
2208 _In_ HANDLE hEventLog
,
2209 _In_ DWORD dwInfoLevel
,
2210 _Out_writes_bytes_to_(cbBufSize
, *pcbBytesNeeded
) LPVOID lpBuffer
,
2211 _In_ DWORD cbBufSize
,
2212 _Out_ LPDWORD pcbBytesNeeded
);
2214 BOOL WINAPI
GetNumberOfEventLogRecords(_In_ HANDLE
, _Out_ PDWORD
);
2215 BOOL WINAPI
GetOldestEventLogRecord(_In_ HANDLE
, _Out_ PDWORD
);
2216 BOOL WINAPI
GetOverlappedResult(HANDLE
,LPOVERLAPPED
,PDWORD
,BOOL
);
2217 DWORD WINAPI
GetPriorityClass(HANDLE
);
2218 BOOL WINAPI
GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR
,SECURITY_INFORMATION
,PSECURITY_DESCRIPTOR
,DWORD
,PDWORD
);
2219 UINT WINAPI
GetPrivateProfileIntA(_In_ LPCSTR
, _In_ LPCSTR
, _In_ INT
, _In_opt_ LPCSTR
);
2220 UINT WINAPI
GetPrivateProfileIntW(_In_ LPCWSTR
, _In_ LPCWSTR
, _In_ INT
, _In_opt_ LPCWSTR
);
2224 GetPrivateProfileSectionA(
2225 _In_ LPCSTR lpAppName
,
2226 _Out_writes_to_opt_(nSize
, return + 1) LPSTR lpReturnedString
,
2228 _In_opt_ LPCSTR lpFileName
);
2232 GetPrivateProfileSectionW(
2233 _In_ LPCWSTR lpAppName
,
2234 _Out_writes_to_opt_(nSize
, return + 1) LPWSTR lpReturnedString
,
2236 _In_opt_ LPCWSTR lpFileName
);
2240 GetPrivateProfileSectionNamesA(
2241 _Out_writes_to_opt_(nSize
, return + 1) LPSTR lpszReturnBuffer
,
2243 _In_opt_ LPCSTR lpFileName
);
2247 GetPrivateProfileSectionNamesW(
2248 _Out_writes_to_opt_(nSize
, return + 1) LPWSTR lpszReturnBuffer
,
2250 _In_opt_ LPCWSTR lpFileName
);
2254 GetPrivateProfileStringA(
2255 _In_opt_ LPCSTR lpAppName
,
2256 _In_opt_ LPCSTR lpKeyName
,
2257 _In_opt_ LPCSTR lpDefault
,
2258 _Out_writes_to_opt_(nSize
, return + 1) LPSTR lpReturnedString
,
2260 _In_opt_ LPCSTR lpFileName
);
2264 GetPrivateProfileStringW(
2265 _In_opt_ LPCWSTR lpAppName
,
2266 _In_opt_ LPCWSTR lpKeyName
,
2267 _In_opt_ LPCWSTR lpDefault
,
2268 _Out_writes_to_opt_(nSize
, return + 1) LPWSTR lpReturnedString
,
2270 _In_opt_ LPCWSTR lpFileName
);
2274 GetPrivateProfileStructA(
2275 _In_ LPCSTR lpszSection
,
2276 _In_ LPCSTR lpszKey
,
2277 _Out_writes_bytes_opt_(uSizeStruct
) LPVOID lpStruct
,
2278 _In_ UINT uSizeStruct
,
2279 _In_opt_ LPCSTR szFile
);
2283 GetPrivateProfileStructW(
2284 _In_ LPCWSTR lpszSection
,
2285 _In_ LPCWSTR lpszKey
,
2286 _Out_writes_bytes_opt_(uSizeStruct
) LPVOID lpStruct
,
2287 _In_ UINT uSizeStruct
,
2288 _In_opt_ LPCWSTR szFile
);
2290 FARPROC WINAPI
GetProcAddress(HINSTANCE
,LPCSTR
);
2291 BOOL WINAPI
GetProcessAffinityMask(_In_ HANDLE
, _Out_ PDWORD_PTR
, _Out_ PDWORD_PTR
);
2292 #if (_WIN32_WINNT >= 0x0502)
2293 BOOL WINAPI
GetProcessHandleCount(_In_ HANDLE
, _Out_ PDWORD
);
2295 HANDLE WINAPI
GetProcessHeap(VOID
);
2296 DWORD WINAPI
GetProcessHeaps(DWORD
,PHANDLE
);
2297 #if (_WIN32_WINNT >= 0x0502)
2298 DWORD WINAPI
GetProcessId(HANDLE
);
2299 DWORD WINAPI
GetProcessIdOfThread(HANDLE
);
2301 #if (_WIN32_WINNT >= 0x0500)
2302 BOOL WINAPI
GetProcessIoCounters(_In_ HANDLE
, _Out_ PIO_COUNTERS
);
2304 BOOL WINAPI
GetProcessPriorityBoost(_In_ HANDLE
, _Out_ PBOOL
);
2305 BOOL WINAPI
GetProcessShutdownParameters(_Out_ PDWORD
, _Out_ PDWORD
);
2306 BOOL WINAPI
GetProcessTimes(HANDLE
,LPFILETIME
,LPFILETIME
,LPFILETIME
,LPFILETIME
);
2307 DWORD WINAPI
GetProcessVersion(DWORD
);
2308 HWINSTA WINAPI
GetProcessWindowStation(void);
2309 BOOL WINAPI
GetProcessWorkingSetSize(_In_ HANDLE
, _Out_ PSIZE_T
, _Out_ PSIZE_T
);
2310 UINT WINAPI
GetProfileIntA(_In_ LPCSTR
, _In_ LPCSTR
, _In_ INT
);
2311 UINT WINAPI
GetProfileIntW(_In_ LPCWSTR
, _In_ LPCWSTR
, _In_ INT
);
2316 _In_ LPCSTR lpAppName
,
2317 _Out_writes_to_opt_(nSize
, return + 1) LPSTR lpReturnedString
,
2323 _In_ LPCWSTR lpAppName
,
2324 _Out_writes_to_opt_(nSize
, return + 1) LPWSTR lpReturnedString
,
2330 _In_opt_ LPCSTR lpAppName
,
2331 _In_opt_ LPCSTR lpKeyName
,
2332 _In_opt_ LPCSTR lpDefault
,
2333 _Out_writes_to_opt_(nSize
, return + 1) LPSTR lpReturnedString
,
2339 _In_opt_ LPCWSTR lpAppName
,
2340 _In_opt_ LPCWSTR lpKeyName
,
2341 _In_opt_ LPCWSTR lpDefault
,
2342 _Out_writes_to_opt_(nSize
, return + 1) LPWSTR lpReturnedString
,
2345 BOOL WINAPI
GetQueuedCompletionStatus(HANDLE
,PDWORD
,PULONG_PTR
,LPOVERLAPPED
*,DWORD
);
2346 BOOL WINAPI
GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR
,PSECURITY_DESCRIPTOR_CONTROL
,PDWORD
);
2347 BOOL WINAPI
GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR
,LPBOOL
,PACL
*,LPBOOL
);
2348 BOOL WINAPI
GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR
,PSID
*,LPBOOL
);
2349 DWORD WINAPI
GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR
);
2350 BOOL WINAPI
GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR
,PSID
*,LPBOOL
);
2351 DWORD WINAPI
GetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR
,PUCHAR
);
2352 BOOL WINAPI
GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR
,LPBOOL
,PACL
*,LPBOOL
);
2354 _Success_(return != 0 && return < cchBuffer
)
2358 _In_ LPCSTR lpszLongPath
,
2359 _Out_writes_to_opt_(cchBuffer
, return + 1) LPSTR lpszShortPath
,
2360 _In_ DWORD cchBuffer
);
2362 DWORD WINAPI
GetShortPathNameW(LPCWSTR
,LPWSTR
,DWORD
);
2363 PSID_IDENTIFIER_AUTHORITY WINAPI
GetSidIdentifierAuthority(PSID
);
2364 DWORD WINAPI
GetSidLengthRequired(UCHAR
);
2365 PDWORD WINAPI
GetSidSubAuthority(PSID
,DWORD
);
2366 PUCHAR WINAPI
GetSidSubAuthorityCount(PSID
);
2367 VOID WINAPI
GetStartupInfoA(_Out_ LPSTARTUPINFOA
);
2368 VOID WINAPI
GetStartupInfoW(LPSTARTUPINFOW
);
2369 HANDLE WINAPI
GetStdHandle(_In_ DWORD
);
2370 UINT WINAPI
GetSystemDirectoryA(LPSTR
,UINT
);
2371 UINT WINAPI
GetSystemDirectoryW(LPWSTR
,UINT
);
2372 VOID WINAPI
GetSystemInfo(LPSYSTEM_INFO
);
2373 BOOL WINAPI
GetSystemPowerStatus(_Out_ LPSYSTEM_POWER_STATUS
);
2374 #if (_WIN32_WINNT >= 0x0502)
2375 BOOL WINAPI
GetSystemRegistryQuota(_Out_opt_ PDWORD
, _Out_opt_ PDWORD
);
2377 VOID WINAPI
GetSystemTime(LPSYSTEMTIME
);
2378 #if (_WIN32_WINNT >= 0x0501)
2379 BOOL WINAPI
GetSystemTimes(_Out_opt_ LPFILETIME
, _Out_opt_ LPFILETIME
, _Out_opt_ LPFILETIME
);
2381 BOOL WINAPI
GetSystemTimeAdjustment(PDWORD
,PDWORD
,PBOOL
);
2382 void WINAPI
GetSystemTimeAsFileTime(LPFILETIME
);
2383 #if (_WIN32_WINNT >= 0x0500)
2384 UINT WINAPI
GetSystemWindowsDirectoryA(LPSTR
,UINT
);
2385 UINT WINAPI
GetSystemWindowsDirectoryW(LPWSTR
,UINT
);
2388 #if (_WIN32_WINNT >= 0x0501)
2390 _Success_(return != 0 && return < uSize
)
2393 GetSystemWow64DirectoryA(
2394 _Out_writes_to_opt_(uSize
, return + 1) LPSTR lpBuffer
,
2397 _Success_(return != 0 && return < uSize
)
2400 GetSystemWow64DirectoryW(
2401 _Out_writes_to_opt_(uSize
, return + 1) LPWSTR lpBuffer
,
2409 _In_ HANDLE hDevice
,
2410 _In_ DWORD dwOperation
,
2411 _Inout_ LPDWORD lpdwSize
,
2412 _Out_writes_bytes_(*lpdwSize
) LPVOID lpTapeInformation
);
2414 DWORD WINAPI
GetTapePosition(_In_ HANDLE
, _In_ DWORD
, _Out_ PDWORD
, _Out_ PDWORD
, _Out_ PDWORD
);
2415 DWORD WINAPI
GetTapeStatus(_In_ HANDLE
);
2420 _In_ LPCSTR lpPathName
,
2421 _In_ LPCSTR lpPrefixString
,
2423 _Out_writes_(MAX_PATH
) LPSTR lpTempFileName
);
2425 UINT WINAPI
GetTempFileNameW(LPCWSTR
,LPCWSTR
,UINT
,LPWSTR
);
2430 _In_ DWORD nBufferLength
,
2431 _Out_writes_to_opt_(nBufferLength
, return + 1) LPSTR lpBuffer
);
2433 DWORD WINAPI
GetTempPathW(DWORD
,LPWSTR
);
2434 BOOL WINAPI
GetThreadContext(HANDLE
,LPCONTEXT
);
2435 #if (_WIN32_WINNT >= 0x0502)
2436 BOOL WINAPI
GetThreadIOPendingFlag(_In_ HANDLE
, _Out_ PBOOL
);
2438 int WINAPI
GetThreadPriority(HANDLE
);
2439 BOOL WINAPI
GetThreadPriorityBoost(HANDLE
,PBOOL
);
2440 BOOL WINAPI
GetThreadSelectorEntry(_In_ HANDLE
, _In_ DWORD
, _Out_ LPLDT_ENTRY
);
2441 BOOL WINAPI
GetThreadTimes(HANDLE
,LPFILETIME
,LPFILETIME
,LPFILETIME
,LPFILETIME
);
2442 DWORD WINAPI
GetTickCount(VOID
);
2443 #if (_WIN32_WINNT >= 0x0600)
2444 ULONGLONG WINAPI
GetTickCount64(VOID
);
2446 DWORD WINAPI
GetThreadId(HANDLE
);
2447 DWORD WINAPI
GetTimeZoneInformation(LPTIME_ZONE_INFORMATION
);
2448 BOOL WINAPI
GetTokenInformation(HANDLE
,TOKEN_INFORMATION_CLASS
,PVOID
,DWORD
,PDWORD
);
2453 _Out_writes_to_opt_(*pcbBuffer
, *pcbBuffer
) LPSTR lpBuffer
,
2454 _Inout_ LPDWORD pcbBuffer
);
2459 _Out_writes_to_opt_(*pcbBuffer
, *pcbBuffer
) LPWSTR lpBuffer
,
2460 _Inout_ LPDWORD pcbBuffer
);
2462 DWORD WINAPI
GetVersion(void);
2463 BOOL WINAPI
GetVersionExA(LPOSVERSIONINFOA
);
2464 BOOL WINAPI
GetVersionExW(LPOSVERSIONINFOW
);
2468 GetVolumeInformationA(
2469 _In_opt_ LPCSTR lpRootPathName
,
2470 _Out_writes_opt_(nVolumeNameSize
) LPSTR lpVolumeNameBuffer
,
2471 _In_ DWORD nVolumeNameSize
,
2472 _Out_opt_ LPDWORD lpVolumeSerialNumber
,
2473 _Out_opt_ LPDWORD lpMaximumComponentLength
,
2474 _Out_opt_ LPDWORD lpFileSystemFlags
,
2475 _Out_writes_opt_(nFileSystemNameSize
) LPSTR lpFileSystemNameBuffer
,
2476 _In_ DWORD nFileSystemNameSize
);
2478 BOOL WINAPI
GetVolumeInformationW(LPCWSTR
,LPWSTR
,DWORD
,PDWORD
,PDWORD
,PDWORD
,LPWSTR
,DWORD
);
2480 #if (_WIN32_WINNT >= 0x0500)
2484 GetVolumeNameForVolumeMountPointA(
2485 _In_ LPCSTR lpszVolumeMountPoint
,
2486 _Out_writes_(cchBufferLength
) LPSTR lpszVolumeName
,
2487 _In_ DWORD cchBufferLength
);
2489 BOOL WINAPI
GetVolumeNameForVolumeMountPointW(LPCWSTR
,LPWSTR
,DWORD
);
2494 _In_ LPCSTR lpszFileName
,
2495 _Out_writes_(cchBufferLength
) LPSTR lpszVolumePathName
,
2496 _In_ DWORD cchBufferLength
);
2498 BOOL WINAPI
GetVolumePathNameW(LPCWSTR
,LPWSTR
,DWORD
);
2502 #if (_WIN32_WINNT >= 0x0501)
2506 GetVolumePathNamesForVolumeNameA(
2507 _In_ LPCSTR lpszVolumeName
,
2508 _Out_writes_to_opt_(cchBufferLength
, *lpcchReturnLength
) _Post_ _NullNull_terminated_ LPCH lpszVolumePathNames
,
2509 _In_ DWORD cchBufferLength
,
2510 _Out_ PDWORD lpcchReturnLength
);
2512 BOOL WINAPI
GetVolumePathNamesForVolumeNameW(LPCWSTR
,LPWSTR
,DWORD
,PDWORD
);
2516 UINT WINAPI
GetWindowsDirectoryA(LPSTR
,UINT
);
2517 UINT WINAPI
GetWindowsDirectoryW(LPWSTR
,UINT
);
2518 DWORD WINAPI
GetWindowThreadProcessId(HWND
,PDWORD
);
2519 UINT WINAPI
GetWriteWatch(DWORD
,PVOID
,SIZE_T
,PVOID
*,PULONG_PTR
,PULONG
);
2520 ATOM WINAPI
GlobalAddAtomA(_In_opt_ LPCSTR
);
2521 ATOM WINAPI
GlobalAddAtomW(_In_opt_ LPCWSTR
);
2522 HGLOBAL WINAPI
GlobalAlloc(UINT
,SIZE_T
);
2523 SIZE_T WINAPI
GlobalCompact(_In_ DWORD
); /* Obsolete: Has no effect. */
2524 ATOM WINAPI
GlobalDeleteAtom(_In_ ATOM
);
2525 #define GlobalDiscard(m) GlobalReAlloc((m),0,GMEM_MOVEABLE)
2526 ATOM WINAPI
GlobalFindAtomA(_In_opt_ LPCSTR
);
2527 ATOM WINAPI
GlobalFindAtomW(_In_opt_ LPCWSTR
);
2528 VOID WINAPI
GlobalFix(_In_ HGLOBAL
); /* Obsolete: Has no effect. */
2529 UINT WINAPI
GlobalFlags(_In_ HGLOBAL
); /* Obsolete: Has no effect. */
2530 HGLOBAL WINAPI
GlobalFree(HGLOBAL
);
2536 _Out_writes_to_(nSize
, return + 1) LPSTR lpBuffer
,
2543 _Out_writes_to_(nSize
, return + 1) LPWSTR lpBuffer
,
2546 _Ret_maybenull_ HGLOBAL WINAPI
GlobalHandle(_In_ LPCVOID
);
2547 _Ret_maybenull_ LPVOID WINAPI
GlobalLock(_In_ HGLOBAL
);
2548 VOID WINAPI
GlobalMemoryStatus(_Out_ LPMEMORYSTATUS
);
2549 #if (_WIN32_WINNT >= 0x0500)
2550 BOOL WINAPI
GlobalMemoryStatusEx(LPMEMORYSTATUSEX
);
2552 HGLOBAL WINAPI
GlobalReAlloc(HGLOBAL
,SIZE_T
,UINT
);
2553 SIZE_T WINAPI
GlobalSize(_In_ HGLOBAL
);
2554 VOID WINAPI
GlobalUnfix(_In_ HGLOBAL
); /* Obsolete: Has no effect. */
2555 BOOL WINAPI
GlobalUnlock(_In_ HGLOBAL
);
2556 BOOL WINAPI
GlobalUnWire(_In_ HGLOBAL
); /* Obsolete: Has no effect. */
2557 PVOID WINAPI
GlobalWire(_In_ HGLOBAL
); /* Obsolete: Has no effect. */
2558 #define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING)
2559 PVOID WINAPI
HeapAlloc(HANDLE
,DWORD
,SIZE_T
);
2560 SIZE_T WINAPI
HeapCompact(HANDLE
,DWORD
);
2561 HANDLE WINAPI
HeapCreate(DWORD
,SIZE_T
,SIZE_T
);
2562 BOOL WINAPI
HeapDestroy(HANDLE
);
2563 BOOL WINAPI
HeapFree(HANDLE
,DWORD
,PVOID
);
2564 BOOL WINAPI
HeapLock(HANDLE
);
2565 #if (_WIN32_WINNT >= 0x0501)
2566 BOOL WINAPI
HeapQueryInformation(HANDLE
,HEAP_INFORMATION_CLASS
,PVOID
,SIZE_T
,PSIZE_T
);
2568 PVOID WINAPI
HeapReAlloc(HANDLE
,DWORD
,PVOID
,SIZE_T
);
2569 #if (_WIN32_WINNT >= 0x0501)
2570 BOOL WINAPI
HeapSetInformation(HANDLE
,HEAP_INFORMATION_CLASS
,PVOID
,SIZE_T
);
2572 SIZE_T WINAPI
HeapSize(HANDLE
,DWORD
,LPCVOID
);
2573 BOOL WINAPI
HeapUnlock(HANDLE
);
2574 BOOL WINAPI
HeapValidate(HANDLE
,DWORD
,LPCVOID
);
2575 BOOL WINAPI
HeapWalk(HANDLE
,LPPROCESS_HEAP_ENTRY
);
2576 BOOL WINAPI
ImpersonateAnonymousToken(HANDLE
);
2577 BOOL WINAPI
ImpersonateLoggedOnUser(HANDLE
);
2578 BOOL WINAPI
ImpersonateNamedPipeClient(HANDLE
);
2579 BOOL WINAPI
ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL
);
2580 BOOL WINAPI
InitAtomTable(_In_ DWORD
);
2581 BOOL WINAPI
InitializeAcl(PACL
,DWORD
,DWORD
);
2582 #if (_WIN32_WINNT >= 0x0600)
2583 VOID WINAPI
InitializeConditionVariable(PCONDITION_VARIABLE
);
2585 VOID WINAPI
InitializeCriticalSection(LPCRITICAL_SECTION
);
2586 BOOL WINAPI
InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION
,DWORD
);
2587 DWORD WINAPI
SetCriticalSectionSpinCount(LPCRITICAL_SECTION
,DWORD
);
2588 BOOL WINAPI
InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR
,DWORD
);
2589 BOOL WINAPI
InitializeSid (PSID
,PSID_IDENTIFIER_AUTHORITY
,BYTE
);
2591 #if (_WIN32_WINNT >= 0x0600)
2592 VOID WINAPI
InitializeSRWLock(PSRWLOCK
);
2595 BOOL WINAPI
IsBadCodePtr(_In_opt_ FARPROC
);
2596 BOOL WINAPI
IsBadHugeReadPtr(_In_opt_ CONST VOID
*, _In_ UINT_PTR
);
2597 BOOL WINAPI
IsBadHugeWritePtr(_In_opt_ PVOID
, _In_ UINT_PTR
);
2598 BOOL WINAPI
IsBadReadPtr(_In_opt_ CONST VOID
*, _In_ UINT_PTR
);
2599 BOOL WINAPI
IsBadStringPtrA(_In_opt_ LPCSTR
, _In_ UINT_PTR
);
2600 BOOL WINAPI
IsBadStringPtrW(_In_opt_ LPCWSTR
, _In_ UINT_PTR
);
2601 BOOL WINAPI
IsBadWritePtr(_In_opt_ PVOID
, _In_ UINT_PTR
);
2602 BOOL WINAPI
IsDebuggerPresent(void);
2603 #if (_WIN32_WINNT >= 0x0501)
2604 BOOL WINAPI
IsProcessInJob(HANDLE
,HANDLE
,PBOOL
);
2606 BOOL WINAPI
IsProcessorFeaturePresent(DWORD
);
2607 BOOL WINAPI
IsSystemResumeAutomatic(void);
2612 _In_reads_bytes_(iSize
) CONST VOID
*lpv
,
2614 _Inout_opt_ LPINT lpiResult
);
2616 #if (_WIN32_WINNT >= 0x0600)
2617 BOOL WINAPI
IsThreadAFiber(VOID
);
2619 BOOL WINAPI
IsValidAcl(PACL
);
2620 BOOL WINAPI
IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR
);
2621 BOOL WINAPI
IsValidSid(PSID
);
2622 #if (_WIN32_WINNT >= 0x0501)
2623 BOOL WINAPI
IsWellKnownSid(PSID
,WELL_KNOWN_SID_TYPE
);
2624 BOOL WINAPI
IsWow64Process(HANDLE
,PBOOL
);
2626 void WINAPI
LeaveCriticalSection(LPCRITICAL_SECTION
);
2627 #define LimitEmsPages(n)
2628 _Ret_maybenull_ HINSTANCE WINAPI
LoadLibraryA(_In_ LPCSTR
);
2629 _Ret_maybenull_ HINSTANCE WINAPI
LoadLibraryW(_In_ LPCWSTR
);
2630 HINSTANCE WINAPI
LoadLibraryExA(LPCSTR
,HANDLE
,DWORD
);
2631 HINSTANCE WINAPI
LoadLibraryExW(LPCWSTR
,HANDLE
,DWORD
);
2632 DWORD WINAPI
LoadModule(_In_ LPCSTR
, _In_ PVOID
);
2633 HGLOBAL WINAPI
LoadResource(HINSTANCE
,HRSRC
);
2634 HLOCAL WINAPI
LocalAlloc(UINT
,SIZE_T
);
2635 SIZE_T WINAPI
LocalCompact(_In_ UINT
); /* Obsolete: Has no effect. */
2636 #define LocalDiscard(m) (LocalReAlloc((m),0,LMEM_MOVEABLE))
2637 BOOL WINAPI
LocalFileTimeToFileTime(CONST FILETIME
*,LPFILETIME
);
2638 UINT WINAPI
LocalFlags(_In_ HLOCAL
); /* Obsolete: Has no effect. */
2639 HLOCAL WINAPI
LocalFree(HLOCAL
);
2640 _Ret_maybenull_ HLOCAL WINAPI
LocalHandle(_In_ LPCVOID
);
2641 PVOID WINAPI
LocalLock(HLOCAL
);
2642 HLOCAL WINAPI
LocalReAlloc(HLOCAL
,SIZE_T
,UINT
);
2643 SIZE_T WINAPI
LocalShrink(_In_ HLOCAL
, _In_ UINT
); /* Obsolete: Has no effect. */
2644 SIZE_T WINAPI
LocalSize(_In_ HLOCAL
);
2645 BOOL WINAPI
LocalUnlock(HLOCAL
);
2646 BOOL WINAPI
LockFile(HANDLE
,DWORD
,DWORD
,DWORD
,DWORD
);
2647 BOOL WINAPI
LockFileEx(HANDLE
,DWORD
,DWORD
,DWORD
,DWORD
,LPOVERLAPPED
);
2648 PVOID WINAPI
LockResource(HGLOBAL
);
2649 #define LockSegment(w) GlobalFix((HANDLE)(w)) /* Obsolete: Has no effect. */
2650 BOOL WINAPI
LogonUserA(_In_ LPSTR
, _In_opt_ LPSTR
, _In_opt_ LPSTR
, _In_ DWORD
, _In_ DWORD
, _Outptr_ PHANDLE
);
2651 BOOL WINAPI
LogonUserW(_In_ LPWSTR
, _In_opt_ LPWSTR
, _In_opt_ LPWSTR
, _In_ DWORD
, _In_ DWORD
, _Outptr_ PHANDLE
);
2653 _Success_(return != FALSE
)
2657 _In_ LPSTR lpszUsername
,
2658 _In_opt_ LPSTR lpszDomain
,
2659 _In_opt_ LPSTR lpszPassword
,
2660 _In_ DWORD dwLogonType
,
2661 _In_ DWORD dwLogonProvider
,
2662 _Out_opt_ PHANDLE phToken
,
2663 _Out_opt_ PSID
*ppLogonSid
,
2664 _Out_opt_ PVOID
*ppProfileBuffer
,
2665 _Out_opt_ LPDWORD pdwProfileLength
,
2666 _Out_opt_ PQUOTA_LIMITS pQuotaLimits
);
2668 _Success_(return != FALSE
)
2672 _In_ LPWSTR lpszUsername
,
2673 _In_opt_ LPWSTR lpszDomain
,
2674 _In_opt_ LPWSTR lpszPassword
,
2675 _In_ DWORD dwLogonType
,
2676 _In_ DWORD dwLogonProvider
,
2677 _Out_opt_ PHANDLE phToken
,
2678 _Out_opt_ PSID
*ppLogonSid
,
2679 _Out_opt_ PVOID
*ppProfileBuffer
,
2680 _Out_opt_ LPDWORD pdwProfileLength
,
2681 _Out_opt_ PQUOTA_LIMITS pQuotaLimits
);
2683 _Success_(return != FALSE
)
2687 _In_opt_ LPCSTR lpSystemName
,
2688 _In_ LPCSTR lpAccountName
,
2689 _Out_writes_bytes_to_opt_(*cbSid
, *cbSid
) PSID Sid
,
2690 _Inout_ LPDWORD cbSid
,
2691 _Out_writes_to_opt_(*cchReferencedDomainName
, *cchReferencedDomainName
+ 1) LPSTR ReferencedDomainName
,
2692 _Inout_ LPDWORD cchReferencedDomainName
,
2693 _Out_ PSID_NAME_USE peUse
);
2695 _Success_(return != FALSE
)
2699 _In_opt_ LPCWSTR lpSystemName
,
2700 _In_ LPCWSTR lpAccountName
,
2701 _Out_writes_bytes_to_opt_(*cbSid
, *cbSid
) PSID Sid
,
2702 _Inout_ LPDWORD cbSid
,
2703 _Out_writes_to_opt_(*cchReferencedDomainName
, *cchReferencedDomainName
+ 1) LPWSTR ReferencedDomainName
,
2704 _Inout_ LPDWORD cchReferencedDomainName
,
2705 _Out_ PSID_NAME_USE peUse
);
2707 _Success_(return != FALSE
)
2711 _In_opt_ LPCSTR lpSystemName
,
2713 _Out_writes_to_opt_(*cchName
, *cchName
+ 1) LPSTR Name
,
2714 _Inout_ LPDWORD cchName
,
2715 _Out_writes_to_opt_(*cchReferencedDomainName
, *cchReferencedDomainName
+ 1) LPSTR ReferencedDomainName
,
2716 _Inout_ LPDWORD cchReferencedDomainName
,
2717 _Out_ PSID_NAME_USE peUse
);
2719 _Success_(return != FALSE
)
2723 _In_opt_ LPCWSTR lpSystemName
,
2725 _Out_writes_to_opt_(*cchName
, *cchName
+ 1) LPWSTR Name
,
2726 _Inout_ LPDWORD cchName
,
2727 _Out_writes_to_opt_(*cchReferencedDomainName
, *cchReferencedDomainName
+ 1) LPWSTR ReferencedDomainName
,
2728 _Inout_ LPDWORD cchReferencedDomainName
,
2729 _Out_ PSID_NAME_USE peUse
);
2731 _Success_(return != FALSE
)
2734 LookupPrivilegeDisplayNameA(
2735 _In_opt_ LPCSTR lpSystemName
,
2737 _Out_writes_to_opt_(*cchDisplayName
, *cchDisplayName
+ 1) LPSTR lpDisplayName
,
2738 _Inout_ LPDWORD cchDisplayName
,
2739 _Out_ LPDWORD lpLanguageId
);
2741 _Success_(return != FALSE
)
2744 LookupPrivilegeDisplayNameW(
2745 _In_opt_ LPCWSTR lpSystemName
,
2746 _In_ LPCWSTR lpName
,
2747 _Out_writes_to_opt_(*cchDisplayName
, *cchDisplayName
+ 1) LPWSTR lpDisplayName
,
2748 _Inout_ LPDWORD cchDisplayName
,
2749 _Out_ LPDWORD lpLanguageId
);
2751 _Success_(return != FALSE
)
2754 LookupPrivilegeNameA(
2755 _In_opt_ LPCSTR lpSystemName
,
2757 _Out_writes_to_opt_(*cchName
, *cchName
+ 1) LPSTR lpName
,
2758 _Inout_ LPDWORD cchName
);
2760 _Success_(return != FALSE
)
2763 LookupPrivilegeNameW(
2764 _In_opt_ LPCWSTR lpSystemName
,
2766 _Out_writes_to_opt_(*cchName
, *cchName
+ 1) LPWSTR lpName
,
2767 _Inout_ LPDWORD cchName
);
2769 BOOL WINAPI
LookupPrivilegeValueA(_In_opt_ LPCSTR
, _In_ LPCSTR
, _Out_ PLUID
);
2770 BOOL WINAPI
LookupPrivilegeValueW(_In_opt_ LPCWSTR
, _In_ LPCWSTR
, _Out_ PLUID
);
2775 _Inout_updates_z_(_String_length_(lpString1
) + _String_length_(lpString2
) + 1) LPSTR lpString1
,
2776 _In_ LPCSTR lpString2
);
2781 _Inout_updates_z_(_String_length_(lpString1
) + _String_length_(lpString2
) + 1) LPWSTR lpString1
,
2782 _In_ LPCWSTR lpString2
);
2784 int WINAPI
lstrcmpA(LPCSTR
,LPCSTR
);
2785 int WINAPI
lstrcmpiA(LPCSTR
,LPCSTR
);
2786 int WINAPI
lstrcmpiW( LPCWSTR
,LPCWSTR
);
2787 int WINAPI
lstrcmpW(LPCWSTR
,LPCWSTR
);
2792 _Out_writes_(_String_length_(lpString2
) + 1) LPSTR lpString1
,
2793 _In_ LPCSTR lpString2
);
2798 _Out_writes_(_String_length_(lpString2
) + 1) LPWSTR lpString1
,
2799 _In_ LPCWSTR lpString2
);
2801 LPSTR WINAPI
lstrcpynA(LPSTR
,LPCSTR
,int);
2802 LPWSTR WINAPI
lstrcpynW(LPWSTR
,LPCWSTR
,int);
2803 int WINAPI
lstrlenA(LPCSTR
);
2804 int WINAPI
lstrlenW(LPCWSTR
);
2805 BOOL WINAPI
MakeAbsoluteSD(PSECURITY_DESCRIPTOR
,PSECURITY_DESCRIPTOR
,PDWORD
,PACL
,PDWORD
,PACL
,PDWORD
,PSID
,PDWORD
,PSID
,PDWORD
);
2806 #define MakeProcInstance(p,i) (p)
2807 BOOL WINAPI
MakeSelfRelativeSD(PSECURITY_DESCRIPTOR
,PSECURITY_DESCRIPTOR
,PDWORD
);
2808 VOID WINAPI
MapGenericMask(PDWORD
,PGENERIC_MAPPING
);
2809 PVOID WINAPI
MapViewOfFile(HANDLE
,DWORD
,DWORD
,DWORD
,SIZE_T
);
2810 PVOID WINAPI
MapViewOfFileEx(HANDLE
,DWORD
,DWORD
,DWORD
,SIZE_T
,PVOID
);
2811 BOOL WINAPI
MoveFileA(_In_ LPCSTR
, _In_ LPCSTR
);
2812 BOOL WINAPI
MoveFileW(_In_ LPCWSTR
, _In_ LPCWSTR
);
2813 BOOL WINAPI
MoveFileExA(_In_ LPCSTR
, _In_opt_ LPCSTR
, _In_ DWORD
);
2814 BOOL WINAPI
MoveFileExW(_In_ LPCWSTR
, _In_opt_ LPCWSTR
, _In_ DWORD
);
2815 BOOL WINAPI
MoveFileWithProgressA(_In_ LPCSTR
, _In_opt_ LPCSTR
, _In_opt_ LPPROGRESS_ROUTINE
, _In_opt_ LPVOID
, _In_ DWORD
);
2816 BOOL WINAPI
MoveFileWithProgressW(_In_ LPCWSTR
, _In_opt_ LPCWSTR
, _In_opt_ LPPROGRESS_ROUTINE
, _In_opt_ LPVOID
, _In_ DWORD
);
2817 int WINAPI
MulDiv(_In_
int, _In_
int, _In_
int);
2818 BOOL WINAPI
NotifyChangeEventLog(_In_ HANDLE
, _In_ HANDLE
);
2819 BOOL WINAPI
ObjectCloseAuditAlarmA(_In_ LPCSTR
, _In_ PVOID
, _In_ BOOL
);
2820 BOOL WINAPI
ObjectCloseAuditAlarmW(LPCWSTR
,PVOID
,BOOL
);
2821 BOOL WINAPI
ObjectDeleteAuditAlarmA(_In_ LPCSTR
, _In_ PVOID
, _In_ BOOL
);
2822 BOOL WINAPI
ObjectDeleteAuditAlarmW(LPCWSTR
,PVOID
,BOOL
);
2823 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
);
2824 BOOL WINAPI
ObjectOpenAuditAlarmW(LPCWSTR
,PVOID
,LPWSTR
,LPWSTR
,PSECURITY_DESCRIPTOR
,HANDLE
,DWORD
,DWORD
,PPRIVILEGE_SET
,BOOL
,BOOL
,PBOOL
);
2825 BOOL WINAPI
ObjectPrivilegeAuditAlarmA(_In_ LPCSTR
, _In_ PVOID
, _In_ HANDLE
, _In_ DWORD
, _In_ PPRIVILEGE_SET
, _In_ BOOL
);
2826 BOOL WINAPI
ObjectPrivilegeAuditAlarmW(LPCWSTR
,PVOID
,HANDLE
,DWORD
,PPRIVILEGE_SET
,BOOL
);
2827 HANDLE WINAPI
OpenBackupEventLogA(_In_opt_ LPCSTR
, _In_ LPCSTR
);
2828 HANDLE WINAPI
OpenBackupEventLogW(_In_opt_ LPCWSTR
, _In_ LPCWSTR
);
2829 HANDLE WINAPI
OpenEventA(DWORD
,BOOL
,LPCSTR
);
2830 HANDLE WINAPI
OpenEventLogA(_In_opt_ LPCSTR
, _In_ LPCSTR
);
2831 HANDLE WINAPI
OpenEventLogW(_In_opt_ LPCWSTR
, _In_ LPCWSTR
);
2832 HANDLE WINAPI
OpenEventW(DWORD
,BOOL
,LPCWSTR
);
2833 HFILE WINAPI
OpenFile(_In_ LPCSTR
, _Inout_ LPOFSTRUCT
, _In_ UINT
);
2834 #if (_WIN32_WINNT >= 0x0600)
2835 HANDLE WINAPI
OpenFileById(_In_ HANDLE
, _In_ LPFILE_ID_DESCRIPTOR
, _In_ DWORD
, _In_ DWORD
, _In_opt_ LPSECURITY_ATTRIBUTES
, _In_ DWORD
);
2837 HANDLE WINAPI
OpenFileMappingA(_In_ DWORD
, _In_ BOOL
, _In_ LPCSTR
);
2838 HANDLE WINAPI
OpenFileMappingW(DWORD
,BOOL
,LPCWSTR
);
2839 _Ret_maybenull_ HANDLE WINAPI
OpenMutexA(_In_ DWORD
, _In_ BOOL
, _In_ LPCSTR
);
2840 HANDLE WINAPI
OpenMutexW(DWORD
,BOOL
,LPCWSTR
);
2841 HANDLE WINAPI
OpenProcess(DWORD
,BOOL
,DWORD
);
2842 BOOL WINAPI
OpenProcessToken(HANDLE
,DWORD
,PHANDLE
);
2843 _Ret_maybenull_ HANDLE WINAPI
OpenSemaphoreA(_In_ DWORD
, _In_ BOOL
, _In_ LPCSTR
);
2844 HANDLE WINAPI
OpenSemaphoreW(DWORD
,BOOL
,LPCWSTR
);
2845 #if (_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)
2846 HANDLE WINAPI
OpenThread(DWORD
,BOOL
,DWORD
);
2848 BOOL WINAPI
OpenThreadToken(HANDLE
,DWORD
,BOOL
,PHANDLE
);
2849 _Ret_maybenull_ HANDLE WINAPI
OpenWaitableTimerA(_In_ DWORD
, _In_ BOOL
, _In_ LPCSTR
);
2850 HANDLE WINAPI
OpenWaitableTimerW(DWORD
,BOOL
,LPCWSTR
);
2851 WINBASEAPI
void WINAPI
OutputDebugStringA(LPCSTR
);
2852 WINBASEAPI
void WINAPI
OutputDebugStringW(LPCWSTR
);
2853 BOOL WINAPI
PeekNamedPipe(HANDLE
,PVOID
,DWORD
,PDWORD
,PDWORD
,PDWORD
);
2854 BOOL WINAPI
PostQueuedCompletionStatus(HANDLE
,DWORD
,ULONG_PTR
,LPOVERLAPPED
);
2855 DWORD WINAPI
PrepareTape(_In_ HANDLE
, _In_ DWORD
, _In_ BOOL
);
2856 BOOL WINAPI
PrivilegeCheck (HANDLE
,PPRIVILEGE_SET
,PBOOL
);
2857 BOOL WINAPI
PrivilegedServiceAuditAlarmA(_In_ LPCSTR
, _In_ LPCSTR
, _In_ HANDLE
, _In_ PPRIVILEGE_SET
, _In_ BOOL
);
2858 BOOL WINAPI
PrivilegedServiceAuditAlarmW(LPCWSTR
,LPCWSTR
,HANDLE
,PPRIVILEGE_SET
,BOOL
);
2859 #if (_WIN32_WINNT >= 0x0500)
2860 BOOL WINAPI
ProcessIdToSessionId(DWORD
,DWORD
*);
2862 BOOL WINAPI
PulseEvent(HANDLE
);
2863 BOOL WINAPI
PurgeComm(_In_ HANDLE
, _In_ DWORD
);
2865 #if (_WIN32_WINNT >= 0x0501)
2870 _In_ HANDLE hActCtx
,
2871 _In_opt_ PVOID pvSubInstance
,
2872 _In_ ULONG ulInfoClass
,
2873 _Out_writes_bytes_to_opt_(cbBuffer
, *pcbWrittenOrRequired
) PVOID pvBuffer
,
2874 _In_ SIZE_T cbBuffer
,
2875 _Out_opt_ SIZE_T
*pcbWrittenOrRequired
);
2881 _In_opt_ LPCSTR lpDeviceName
,
2882 _Out_writes_to_opt_(ucchMax
, return) LPSTR lpTargetPath
,
2883 _In_ DWORD ucchMax
);
2885 DWORD WINAPI
QueryDosDeviceW(LPCWSTR
,LPWSTR
,DWORD
);
2886 #if (_WIN32_WINNT >= 0x0501)
2887 BOOL WINAPI
QueryMemoryResourceNotification(HANDLE
,PBOOL
);
2889 BOOL WINAPI
QueryPerformanceCounter(PLARGE_INTEGER
);
2890 BOOL WINAPI
QueryPerformanceFrequency(PLARGE_INTEGER
);
2891 #if (_WIN32_WINNT >= 0x0600)
2892 VOID WINAPI
QuerySecurityAccessMask(SECURITY_INFORMATION
,LPDWORD
);
2894 DWORD WINAPI
QueueUserAPC(PAPCFUNC
,HANDLE
,ULONG_PTR
);
2895 #if (_WIN32_WINNT >= 0x0500)
2896 BOOL WINAPI
QueueUserWorkItem(LPTHREAD_START_ROUTINE
,PVOID
,ULONG
);
2898 void WINAPI
RaiseException(DWORD
,DWORD
,DWORD
,const ULONG_PTR
*);
2902 QueryInformationJobObject(
2903 _In_opt_ HANDLE hJob
,
2904 _In_ JOBOBJECTINFOCLASS JobObjectInformationClass
,
2905 _Out_writes_bytes_to_(cbJobObjectInformationLength
, *lpReturnLength
) LPVOID lpJobObjectInformation
,
2906 _In_ DWORD cbJobObjectInformationLength
,
2907 _Out_opt_ LPDWORD lpReturnLength
);
2911 ReadDirectoryChangesW(
2912 _In_ HANDLE hDirectory
,
2913 _Out_writes_bytes_to_(nBufferLength
, *lpBytesReturned
) LPVOID lpBuffer
,
2914 _In_ DWORD nBufferLength
,
2915 _In_ BOOL bWatchSubtree
,
2916 _In_ DWORD dwNotifyFilter
,
2917 _Out_opt_ LPDWORD lpBytesReturned
,
2918 _Inout_opt_ LPOVERLAPPED lpOverlapped
,
2919 _In_opt_ LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
);
2924 _In_ HANDLE hEventLog
,
2925 _In_ DWORD dwReadFlags
,
2926 _In_ DWORD dwRecordOffset
,
2927 _Out_writes_bytes_to_(nNumberOfBytesToRead
, *pnBytesRead
) LPVOID lpBuffer
,
2928 _In_ DWORD nNumberOfBytesToRead
,
2929 _Out_ DWORD
*pnBytesRead
,
2930 _Out_ DWORD
*pnMinNumberOfBytesNeeded
);
2935 _In_ HANDLE hEventLog
,
2936 _In_ DWORD dwReadFlags
,
2937 _In_ DWORD dwRecordOffset
,
2938 _Out_writes_bytes_to_(nNumberOfBytesToRead
, *pnBytesRead
) LPVOID lpBuffer
,
2939 _In_ DWORD nNumberOfBytesToRead
,
2940 _Out_ DWORD
*pnBytesRead
,
2941 _Out_ DWORD
*pnMinNumberOfBytesNeeded
);
2943 BOOL WINAPI
ReadFile(HANDLE
,PVOID
,DWORD
,PDWORD
,LPOVERLAPPED
);
2944 BOOL WINAPI
ReadFileEx(HANDLE
,PVOID
,DWORD
,LPOVERLAPPED
,LPOVERLAPPED_COMPLETION_ROUTINE
);
2945 BOOL WINAPI
ReadFileScatter(HANDLE
,FILE_SEGMENT_ELEMENT
*,DWORD
,LPDWORD
,LPOVERLAPPED
);
2946 BOOL WINAPI
ReadProcessMemory(HANDLE
,LPCVOID
,LPVOID
,SIZE_T
,PSIZE_T
);
2947 #if (_WIN32_WINNT >= 0x0600)
2948 VOID WINAPI
RecoveryFinished(BOOL
);
2949 HRESULT WINAPI
RecoveryInProgress(OUT PBOOL
);
2950 HRESULT WINAPI
RegisterApplicationRecoveryCallback(_In_ APPLICATION_RECOVERY_CALLBACK
, _In_opt_ PVOID
, _In_ DWORD
, _In_ DWORD
);
2951 HRESULT WINAPI
RegisterApplicationRestart(_In_opt_ PCWSTR
, _In_ DWORD
);
2953 HANDLE WINAPI
RegisterEventSourceA(_In_opt_ LPCSTR
, _In_ LPCSTR
);
2954 HANDLE WINAPI
RegisterEventSourceW(_In_opt_ LPCWSTR
, _In_ LPCWSTR
);
2955 #if (_WIN32_WINNT >= 0x0500)
2956 BOOL WINAPI
RegisterWaitForSingleObject(_Outptr_ PHANDLE
, _In_ HANDLE
, _In_ WAITORTIMERCALLBACK
, _In_opt_ PVOID
, _In_ ULONG
, _In_ ULONG
);
2957 HANDLE WINAPI
RegisterWaitForSingleObjectEx(HANDLE
,WAITORTIMERCALLBACK
,PVOID
,ULONG
,ULONG
);
2959 #if (_WIN32_WINNT >= 0x0501)
2960 void WINAPI
ReleaseActCtx(_Inout_ HANDLE
);
2962 BOOL WINAPI
ReleaseMutex(HANDLE
);
2963 BOOL WINAPI
ReleaseSemaphore(HANDLE
,LONG
,LPLONG
);
2964 #if (_WIN32_WINNT >= 0x0600)
2965 VOID WINAPI
ReleaseSRWLockExclusive(PSRWLOCK
);
2966 VOID WINAPI
ReleaseSRWLockShared(PSRWLOCK
);
2968 BOOL WINAPI
RemoveDirectoryA(LPCSTR
);
2969 BOOL WINAPI
RemoveDirectoryW(LPCWSTR
);
2970 #if (_WIN32_WINNT >= 0x0500)
2971 ULONG WINAPI
RemoveVectoredExceptionHandler(_In_ PVOID
);
2972 ULONG WINAPI
RemoveVectoredContinueHandler(_In_ PVOID
);
2974 #if (_WIN32_WINNT >= 0x0500)
2975 BOOL WINAPI
ReplaceFileA(_In_ LPCSTR
, _In_ LPCSTR
, _In_opt_ LPCSTR
, _In_ DWORD
, _Reserved_ LPVOID
, _Reserved_ LPVOID
);
2976 BOOL WINAPI
ReplaceFileW(_In_ LPCWSTR
, _In_ LPCWSTR
, _In_opt_ LPCWSTR
, _In_ DWORD
, _Reserved_ LPVOID
, _Reserved_ LPVOID
);
2982 _In_ HANDLE hEventLog
,
2984 _In_ WORD wCategory
,
2985 _In_ DWORD dwEventID
,
2986 _In_opt_ PSID lpUserSid
,
2987 _In_ WORD wNumStrings
,
2988 _In_ DWORD dwDataSize
,
2989 _In_reads_opt_(wNumStrings
) LPCSTR
*lpStrings
,
2990 _In_reads_bytes_opt_(dwDataSize
) LPVOID lpRawData
);
2995 _In_ HANDLE hEventLog
,
2997 _In_ WORD wCategory
,
2998 _In_ DWORD dwEventID
,
2999 _In_opt_ PSID lpUserSid
,
3000 _In_ WORD wNumStrings
,
3001 _In_ DWORD dwDataSize
,
3002 _In_reads_opt_(wNumStrings
) LPCWSTR
*lpStrings
,
3003 _In_reads_bytes_opt_(dwDataSize
) LPVOID lpRawData
);
3005 BOOL WINAPI
ResetEvent(HANDLE
);
3006 UINT WINAPI
ResetWriteWatch(LPVOID
,SIZE_T
);
3007 #if (_WIN32_WINNT >= 0x0510)
3008 VOID WINAPI
RestoreLastError(_In_ DWORD
);
3010 DWORD WINAPI
ResumeThread(HANDLE
);
3011 BOOL WINAPI
RevertToSelf(void);
3013 _Success_(return != 0 && return < nBufferLength
)
3017 _In_opt_ LPCSTR lpPath
,
3018 _In_ LPCSTR lpFileName
,
3019 _In_opt_ LPCSTR lpExtension
,
3020 _In_ DWORD nBufferLength
,
3021 _Out_writes_to_opt_(nBufferLength
, return + 1) LPSTR lpBuffer
,
3022 _Out_opt_ LPSTR
*lpFilePart
);
3024 DWORD WINAPI
SearchPathW(LPCWSTR
,LPCWSTR
,LPCWSTR
,DWORD
,LPWSTR
,LPWSTR
*);
3025 BOOL WINAPI
SetAclInformation(PACL
,PVOID
,DWORD
,ACL_INFORMATION_CLASS
);
3026 BOOL WINAPI
SetCommBreak(_In_ HANDLE
);
3031 _In_ HANDLE hCommDev
,
3032 _In_reads_bytes_(dwSize
) LPCOMMCONFIG lpCC
,
3035 BOOL WINAPI
SetCommMask(_In_ HANDLE
, _In_ DWORD
);
3036 BOOL WINAPI
SetCommState(_In_ HANDLE
, _In_ LPDCB
);
3037 BOOL WINAPI
SetCommTimeouts(_In_ HANDLE
, _In_ LPCOMMTIMEOUTS
);
3038 BOOL WINAPI
SetComputerNameA(_In_ LPCSTR
);
3039 BOOL WINAPI
SetComputerNameW(_In_ LPCWSTR
);
3040 #if (_WIN32_WINNT >= 0x0500)
3041 BOOL WINAPI
SetComputerNameExA(_In_ COMPUTER_NAME_FORMAT
, _In_ LPCSTR
);
3042 BOOL WINAPI
SetComputerNameExW(COMPUTER_NAME_FORMAT
,LPCWSTR
);
3044 BOOL WINAPI
SetCurrentDirectoryA(LPCSTR
);
3045 BOOL WINAPI
SetCurrentDirectoryW(LPCWSTR
);
3049 SetDefaultCommConfigA(
3050 _In_ LPCSTR lpszName
,
3051 _In_reads_bytes_(dwSize
) LPCOMMCONFIG lpCC
,
3056 SetDefaultCommConfigW(
3057 _In_ LPCWSTR lpszName
,
3058 _In_reads_bytes_(dwSize
) LPCOMMCONFIG lpCC
,
3061 #if (_WIN32_WINNT >= 0x0502)
3062 BOOL WINAPI
SetDllDirectoryA(_In_opt_ LPCSTR
);
3063 BOOL WINAPI
SetDllDirectoryW(_In_opt_ LPCWSTR
);
3065 BOOL WINAPI
SetEndOfFile(HANDLE
);
3066 BOOL WINAPI
SetEnvironmentVariableA(LPCSTR
,LPCSTR
);
3067 BOOL WINAPI
SetEnvironmentVariableW(LPCWSTR
,LPCWSTR
);
3068 UINT WINAPI
SetErrorMode(UINT
);
3069 BOOL WINAPI
SetEvent(HANDLE
);
3070 VOID WINAPI
SetFileApisToANSI(void);
3071 VOID WINAPI
SetFileApisToOEM(void);
3072 BOOL WINAPI
SetFileAttributesA(LPCSTR
,DWORD
);
3073 #if (_WIN32_WINNT >= 0x0600)
3074 BOOL WINAPI
SetFileAttributesByHandle(HANDLE
,DWORD
,DWORD
);
3076 BOOL WINAPI
SetFileAttributesW(LPCWSTR
,DWORD
);
3077 #if (_WIN32_WINNT >= 0x0600)
3078 BOOL WINAPI
SetFileBandwidthReservation(_In_ HANDLE
, _In_ DWORD
, _In_ DWORD
, _In_ BOOL
, _Out_ LPDWORD
, _Out_ LPDWORD
);
3079 BOOL WINAPI
SetFileCompletionNotificationModes(_In_ HANDLE
, _In_ UCHAR
);
3081 DWORD WINAPI
SetFilePointer(HANDLE
,LONG
,PLONG
,DWORD
);
3082 BOOL WINAPI
SetFilePointerEx(HANDLE
,LARGE_INTEGER
,PLARGE_INTEGER
,DWORD
);
3083 BOOL WINAPI
SetFileSecurityA(_In_ LPCSTR
, _In_ SECURITY_INFORMATION
, _In_ PSECURITY_DESCRIPTOR
);
3084 BOOL WINAPI
SetFileSecurityW(LPCWSTR
,SECURITY_INFORMATION
,PSECURITY_DESCRIPTOR
);
3085 #if (_WIN32_WINNT >= 0x0501)
3086 BOOL WINAPI
SetFileShortNameA(_In_ HANDLE
, _In_ LPCSTR
);
3087 BOOL WINAPI
SetFileShortNameW(_In_ HANDLE
, _In_ LPCWSTR
);
3089 BOOL WINAPI
SetFileTime(HANDLE
,const FILETIME
*,const FILETIME
*,const FILETIME
*);
3090 #if (_WIN32_WINNT >= 0x0501)
3091 BOOL WINAPI
SetFileValidData(HANDLE
,LONGLONG
);
3094 #if (_WIN32_WINNT >= 0x0502)
3098 SetFirmwareEnvironmentVariableA(
3101 _In_reads_bytes_opt_(nSize
) PVOID pValue
,
3106 SetFirmwareEnvironmentVariableW(
3107 _In_ LPCWSTR lpName
,
3108 _In_ LPCWSTR lpGuid
,
3109 _In_reads_bytes_opt_(nSize
) PVOID pValue
,
3114 UINT WINAPI
SetHandleCount(UINT
);
3115 BOOL WINAPI
SetHandleInformation(HANDLE
,DWORD
,DWORD
);
3119 SetInformationJobObject(
3121 _In_ JOBOBJECTINFOCLASS JobObjectInformationClass
,
3122 _In_reads_bytes_(cbJobObjectInformationLength
) LPVOID lpJobObjectInformation
,
3123 _In_ DWORD cbJobObjectInformationLength
);
3125 BOOL WINAPI
SetKernelObjectSecurity(HANDLE
,SECURITY_INFORMATION
,PSECURITY_DESCRIPTOR
);
3126 void WINAPI
SetLastError(DWORD
);
3127 void WINAPI
SetLastErrorEx(DWORD
,DWORD
);
3128 BOOL WINAPI
SetLocalTime(const SYSTEMTIME
*);
3129 BOOL WINAPI
SetMailslotInfo(_In_ HANDLE
, _In_ DWORD
);
3130 BOOL WINAPI
SetNamedPipeHandleState(HANDLE
,PDWORD
,PDWORD
,PDWORD
);
3131 BOOL WINAPI
SetPriorityClass(HANDLE
,DWORD
);
3132 BOOL WINAPI
SetPrivateObjectSecurity(SECURITY_INFORMATION
,PSECURITY_DESCRIPTOR
,PSECURITY_DESCRIPTOR
*,PGENERIC_MAPPING
,HANDLE
);
3133 BOOL WINAPI
SetProcessAffinityMask(_In_ HANDLE
, _In_ DWORD_PTR
);
3134 BOOL WINAPI
SetProcessPriorityBoost(_In_ HANDLE
, _In_ BOOL
);
3135 BOOL WINAPI
SetProcessShutdownParameters(DWORD
,DWORD
);
3136 BOOL WINAPI
SetProcessWorkingSetSize(_In_ HANDLE
, _In_ SIZE_T
, _In_ SIZE_T
);
3137 #if (_WIN32_WINNT >= 0x0600)
3138 VOID WINAPI
SetSecurityAccessMask(SECURITY_INFORMATION
,LPDWORD
);
3140 BOOL WINAPI
SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR
,SECURITY_DESCRIPTOR_CONTROL
,SECURITY_DESCRIPTOR_CONTROL
);
3141 BOOL WINAPI
SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR
,BOOL
,PACL
,BOOL
);
3142 BOOL WINAPI
SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR
,PSID
,BOOL
);
3143 BOOL WINAPI
SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR
,PSID
,BOOL
);
3144 DWORD WINAPI
SetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR
,PUCHAR
);
3145 BOOL WINAPI
SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR
,BOOL
,PACL
,BOOL
);
3146 BOOL WINAPI
SetStdHandle(_In_ DWORD
, _In_ HANDLE
);
3147 #define SetSwapAreaSize(w) (w)
3148 BOOL WINAPI
SetSystemPowerState(_In_ BOOL
, _In_ BOOL
);
3149 BOOL WINAPI
SetSystemTime(const SYSTEMTIME
*);
3150 BOOL WINAPI
SetSystemTimeAdjustment(_In_ DWORD
, _In_ BOOL
);
3151 DWORD WINAPI
SetTapeParameters(_In_ HANDLE
, _In_ DWORD
, _In_ PVOID
);
3152 DWORD WINAPI
SetTapePosition(_In_ HANDLE
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_ DWORD
, _In_ BOOL
);
3153 DWORD_PTR WINAPI
SetThreadAffinityMask(_In_ HANDLE
, _In_ DWORD_PTR
);
3154 BOOL WINAPI
SetThreadContext(HANDLE
,const CONTEXT
*);
3155 DWORD WINAPI
SetThreadIdealProcessor(_In_ HANDLE
, _In_ DWORD
);
3156 BOOL WINAPI
SetThreadPriority(HANDLE
,int);
3157 BOOL WINAPI
SetThreadPriorityBoost(HANDLE
,BOOL
);
3158 BOOL WINAPI
SetThreadToken (PHANDLE
,HANDLE
);
3159 BOOL WINAPI
SetTimeZoneInformation(const TIME_ZONE_INFORMATION
*);
3160 BOOL WINAPI
SetTokenInformation(HANDLE
,TOKEN_INFORMATION_CLASS
,PVOID
,DWORD
);
3161 LPTOP_LEVEL_EXCEPTION_FILTER WINAPI
SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER
);
3162 BOOL WINAPI
SetupComm(_In_ HANDLE
, _In_ DWORD
, _In_ DWORD
);
3163 BOOL WINAPI
SetVolumeLabelA(_In_opt_ LPCSTR
, _In_opt_ LPCSTR
);
3164 BOOL WINAPI
SetVolumeLabelW(_In_opt_ LPCWSTR
, _In_opt_ LPCWSTR
);
3165 #if (_WIN32_WINNT >= 0x0500)
3166 BOOL WINAPI
SetVolumeMountPointA(_In_ LPCSTR
, _In_ LPCSTR
);
3167 BOOL WINAPI
SetVolumeMountPointW(_In_ LPCWSTR
, _In_ LPCWSTR
);
3169 BOOL WINAPI
SetWaitableTimer(HANDLE
,const LARGE_INTEGER
*,LONG
,PTIMERAPCROUTINE
,PVOID
,BOOL
);
3170 DWORD WINAPI
SignalObjectAndWait(_In_ HANDLE
, _In_ HANDLE
, _In_ DWORD
, _In_ BOOL
);
3171 DWORD WINAPI
SizeofResource(HINSTANCE
,HRSRC
);
3172 WINBASEAPI
void WINAPI
Sleep(DWORD
);
3173 #if (_WIN32_WINNT >= 0x0600)
3174 BOOL WINAPI
SleepConditionVariableCS(PCONDITION_VARIABLE
,PCRITICAL_SECTION
,DWORD
);
3175 BOOL WINAPI
SleepConditionVariableSRW(PCONDITION_VARIABLE
,PSRWLOCK
,DWORD
,ULONG
);
3177 DWORD WINAPI
SleepEx(DWORD
,BOOL
);
3178 DWORD WINAPI
SuspendThread(HANDLE
);
3179 void WINAPI
SwitchToFiber(_In_ PVOID
);
3180 BOOL WINAPI
SwitchToThread(void);
3181 BOOL WINAPI
SystemTimeToFileTime(const SYSTEMTIME
*,LPFILETIME
);
3182 BOOL WINAPI
SystemTimeToTzSpecificLocalTime(CONST TIME_ZONE_INFORMATION
*,CONST SYSTEMTIME
*,LPSYSTEMTIME
);
3183 BOOL WINAPI
TerminateProcess(HANDLE
,UINT
);
3184 BOOL WINAPI
TerminateThread(HANDLE
,DWORD
);
3185 DWORD WINAPI
TlsAlloc(VOID
);
3186 BOOL WINAPI
TlsFree(DWORD
);
3187 PVOID WINAPI
TlsGetValue(DWORD
);
3188 BOOL WINAPI
TlsSetValue(DWORD
,PVOID
);
3189 BOOL WINAPI
TransactNamedPipe(HANDLE
,PVOID
,DWORD
,PVOID
,DWORD
,PDWORD
,LPOVERLAPPED
);
3190 BOOL WINAPI
TransmitCommChar(_In_ HANDLE
, _In_
char);
3191 BOOL WINAPI
TryEnterCriticalSection(LPCRITICAL_SECTION
);
3192 BOOL WINAPI
TzSpecificLocalTimeToSystemTime(LPTIME_ZONE_INFORMATION
,LPSYSTEMTIME
,LPSYSTEMTIME
);
3193 LONG WINAPI
UnhandledExceptionFilter(LPEXCEPTION_POINTERS
);
3194 BOOL WINAPI
UnlockFile(HANDLE
,DWORD
,DWORD
,DWORD
,DWORD
);
3195 BOOL WINAPI
UnlockFileEx(HANDLE
,DWORD
,DWORD
,DWORD
,LPOVERLAPPED
);
3196 #define UnlockResource(h) (h)
3197 #define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) /* Obsolete: Has no effect. */
3198 BOOL WINAPI
UnmapViewOfFile(LPCVOID
);
3199 #if (_WIN32_WINNT >= 0x0500)
3200 _Must_inspect_result_ BOOL WINAPI
UnregisterWait(_In_ HANDLE
);
3201 BOOL WINAPI
UnregisterWaitEx(HANDLE
,HANDLE
);
3207 _In_ HANDLE hUpdate
,
3210 _In_ WORD wLanguage
,
3211 _In_reads_bytes_opt_(cb
) LPVOID lpData
,
3217 _In_ HANDLE hUpdate
,
3218 _In_ LPCWSTR lpType
,
3219 _In_ LPCWSTR lpName
,
3220 _In_ WORD wLanguage
,
3221 _In_reads_bytes_opt_(cb
) LPVOID lpData
,
3224 BOOL WINAPI
VerifyVersionInfoA(_Inout_ LPOSVERSIONINFOEXA
, _In_ DWORD
, _In_ DWORDLONG
);
3225 BOOL WINAPI
VerifyVersionInfoW(_Inout_ LPOSVERSIONINFOEXW
, _In_ DWORD
, _In_ DWORDLONG
);
3226 PVOID WINAPI
VirtualAlloc(PVOID
,SIZE_T
,DWORD
,DWORD
);
3227 PVOID WINAPI
VirtualAllocEx(HANDLE
,PVOID
,SIZE_T
,DWORD
,DWORD
);
3228 BOOL WINAPI
VirtualFree(PVOID
,SIZE_T
,DWORD
);
3229 BOOL WINAPI
VirtualFreeEx(HANDLE
,PVOID
,SIZE_T
,DWORD
);
3230 BOOL WINAPI
VirtualLock(PVOID
,SIZE_T
);
3231 BOOL WINAPI
VirtualProtect(PVOID
,SIZE_T
,DWORD
,PDWORD
);
3232 BOOL WINAPI
VirtualProtectEx(HANDLE
,PVOID
,SIZE_T
,DWORD
,PDWORD
);
3233 SIZE_T WINAPI
VirtualQuery(LPCVOID
,PMEMORY_BASIC_INFORMATION
,SIZE_T
);
3234 SIZE_T WINAPI
VirtualQueryEx(HANDLE
,LPCVOID
,PMEMORY_BASIC_INFORMATION
,SIZE_T
);
3235 BOOL WINAPI
VirtualUnlock(PVOID
,SIZE_T
);
3236 BOOL WINAPI
WaitCommEvent(_In_ HANDLE
, _Inout_ PDWORD
, _Inout_opt_ LPOVERLAPPED
);
3237 BOOL WINAPI
WaitForDebugEvent(LPDEBUG_EVENT
,DWORD
);
3241 WaitForMultipleObjects(
3243 _In_reads_(nCount
) CONST HANDLE
*lpHandles
,
3245 _In_ DWORD dwMilliseconds
);
3247 DWORD WINAPI
WaitForMultipleObjectsEx(DWORD
,const HANDLE
*,BOOL
,DWORD
,BOOL
);
3248 DWORD WINAPI
WaitForSingleObject(HANDLE
,DWORD
);
3249 DWORD WINAPI
WaitForSingleObjectEx(HANDLE
,DWORD
,BOOL
);
3250 BOOL WINAPI
WaitNamedPipeA(_In_ LPCSTR
, _In_ DWORD
);
3251 BOOL WINAPI
WaitNamedPipeW(_In_ LPCWSTR
, _In_ DWORD
);
3252 #if (_WIN32_WINNT >= 0x0600)
3253 VOID WINAPI
WakeConditionVariable(PCONDITION_VARIABLE
);
3254 VOID WINAPI
WakeAllConditionVariable(PCONDITION_VARIABLE
);
3256 BOOL WINAPI
WinLoadTrustProvider(GUID
*);
3257 BOOL WINAPI
Wow64DisableWow64FsRedirection(PVOID
*);
3258 BOOLEAN WINAPI
Wow64EnableWow64FsRedirection(_In_ BOOLEAN
);
3259 BOOL WINAPI
Wow64RevertWow64FsRedirection(PVOID
);
3260 DWORD WINAPI
WriteEncryptedFileRaw(_In_ PFE_IMPORT_FUNC
, _In_opt_ PVOID
, _In_ PVOID
);
3261 BOOL WINAPI
WriteFile(HANDLE
,LPCVOID
,DWORD
,LPDWORD
,LPOVERLAPPED
);
3262 BOOL WINAPI
WriteFileEx(HANDLE
,LPCVOID
,DWORD
,LPOVERLAPPED
,LPOVERLAPPED_COMPLETION_ROUTINE
);
3263 BOOL WINAPI
WriteFileGather(HANDLE
,FILE_SEGMENT_ELEMENT
*,DWORD
,LPDWORD
,LPOVERLAPPED
);
3264 BOOL WINAPI
WritePrivateProfileSectionA(_In_opt_ LPCSTR
, _In_opt_ LPCSTR
, _In_opt_ LPCSTR
);
3265 BOOL WINAPI
WritePrivateProfileSectionW(_In_opt_ LPCWSTR
, _In_opt_ LPCWSTR
, _In_opt_ LPCWSTR
);
3266 BOOL WINAPI
WritePrivateProfileStringA(_In_opt_ LPCSTR
, _In_opt_ LPCSTR
, _In_opt_ LPCSTR
, _In_opt_ LPCSTR
);
3267 BOOL WINAPI
WritePrivateProfileStringW(_In_opt_ LPCWSTR
, _In_opt_ LPCWSTR
, _In_opt_ LPCWSTR
, _In_opt_ LPCWSTR
);
3271 WritePrivateProfileStructA(
3272 _In_ LPCSTR lpszSection
,
3273 _In_ LPCSTR lpszKey
,
3274 _In_reads_bytes_opt_(uSizeStruct
) LPVOID lpStruct
,
3275 _In_ UINT uSizeStruct
,
3276 _In_opt_ LPCSTR szFile
);
3280 WritePrivateProfileStructW(
3281 _In_ LPCWSTR lpszSection
,
3282 _In_ LPCWSTR lpszKey
,
3283 _In_reads_bytes_opt_(uSizeStruct
) LPVOID lpStruct
,
3284 _In_ UINT uSizeStruct
,
3285 _In_opt_ LPCWSTR szFile
);
3287 BOOL WINAPI
WriteProcessMemory(HANDLE
,LPVOID
,LPCVOID
,SIZE_T
,SIZE_T
*);
3288 BOOL WINAPI
WriteProfileSectionA(_In_ LPCSTR
, _In_ LPCSTR
);
3289 BOOL WINAPI
WriteProfileSectionW(_In_ LPCWSTR
, _In_ LPCWSTR
);
3290 BOOL WINAPI
WriteProfileStringA(_In_opt_ LPCSTR
, _In_opt_ LPCSTR
, _In_opt_ LPCSTR
);
3291 BOOL WINAPI
WriteProfileStringW(_In_opt_ LPCWSTR
, _In_opt_ LPCWSTR
, _In_opt_ LPCWSTR
);
3292 DWORD WINAPI
WriteTapemark(_In_ HANDLE
, _In_ DWORD
, _In_ DWORD
, _In_ BOOL
);
3296 #if (_WIN32_WINNT >= 0x0501)
3297 DWORD WINAPI
WTSGetActiveConsoleSessionId(VOID
);
3298 BOOL WINAPI
ZombifyActCtx(_Inout_ HANDLE
);
3301 #if (_WIN32_WINNT >= 0x0500)
3305 AllocateUserPhysicalPages(
3306 _In_ HANDLE hProcess
,
3307 _Inout_ PULONG_PTR NumberOfPages
,
3308 _Out_writes_to_(*NumberOfPages
, *NumberOfPages
) PULONG_PTR PageArray
);
3312 FreeUserPhysicalPages(
3313 _In_ HANDLE hProcess
,
3314 _Inout_ PULONG_PTR NumberOfPages
,
3315 _In_reads_(*NumberOfPages
) PULONG_PTR PageArray
);
3319 MapUserPhysicalPages(
3320 _In_ PVOID VirtualAddress
,
3321 _In_ ULONG_PTR NumberOfPages
,
3322 _In_reads_opt_(NumberOfPages
) PULONG_PTR PageArray
);
3326 MapUserPhysicalPagesScatter(
3327 _In_reads_(NumberOfPages
) PVOID
*VirtualAddresses
,
3328 _In_ ULONG_PTR NumberOfPages
,
3329 _In_reads_opt_(NumberOfPages
) PULONG_PTR PageArray
);
3334 typedef STARTUPINFOW STARTUPINFO
,*LPSTARTUPINFO
;
3335 typedef WIN32_FIND_DATAW WIN32_FIND_DATA
, *PWIN32_FIND_DATA
, *LPWIN32_FIND_DATA
;
3336 typedef HW_PROFILE_INFOW HW_PROFILE_INFO
,*LPHW_PROFILE_INFO
;
3337 typedef ENUMRESLANGPROCW ENUMRESLANGPROC
;
3338 typedef ENUMRESNAMEPROCW ENUMRESNAMEPROC
;
3339 typedef ENUMRESTYPEPROCW ENUMRESTYPEPROC
;
3340 #if (_WIN32_WINNT >= 0x0501)
3341 typedef ACTCTXW ACTCTX
,*PACTCTX
;
3342 typedef PCACTCTXW PCACTCTX
;
3344 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmW
3345 #define AddAtom AddAtomW
3346 #define BackupEventLog BackupEventLogW
3347 #define BeginUpdateResource BeginUpdateResourceW
3348 #define BuildCommDCB BuildCommDCBW
3349 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsW
3350 #define CallNamedPipe CallNamedPipeW
3351 #if (_WIN32_WINNT >= 0x0501)
3352 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3W
3354 #define ClearEventLog ClearEventLogW
3355 #define CommConfigDialog CommConfigDialogW
3356 #define CopyFile CopyFileW
3357 #define CopyFileEx CopyFileExW
3358 #if (_WIN32_WINNT >= 0x0501)
3359 #define CreateActCtx CreateActCtxW
3361 #define CreateDirectory CreateDirectoryW
3362 #define CreateDirectoryEx CreateDirectoryExW
3363 #define CreateEvent CreateEventW
3364 #define CreateFile CreateFileW
3365 #define CreateFileMapping CreateFileMappingW
3366 #if (_WIN32_WINNT >= 0x0500)
3367 #define CreateHardLink CreateHardLinkW
3368 #define CreateJobObject CreateJobObjectW
3370 #define CreateMailslot CreateMailslotW
3371 #define CreateMutex CreateMutexW
3372 #define CreateNamedPipe CreateNamedPipeW
3373 #define CreateProcess CreateProcessW
3374 #define CreateProcessAsUser CreateProcessAsUserW
3375 #define CreateSemaphore CreateSemaphoreW
3376 #define CreateWaitableTimer CreateWaitableTimerW
3377 #define DecryptFile DecryptFileW
3378 #define DefineDosDevice DefineDosDeviceW
3379 #define DeleteFile DeleteFileW
3380 #if (_WIN32_WINNT >= 0x0500)
3381 #define DeleteVolumeMountPoint DeleteVolumeMountPointW
3382 #define DnsHostnameToComputerName DnsHostnameToComputerNameW
3384 #define EncryptFile EncryptFileW
3385 #define EndUpdateResource EndUpdateResourceW
3386 #define EnumResourceLanguages EnumResourceLanguagesW
3387 #define EnumResourceNames EnumResourceNamesW
3388 #define EnumResourceTypes EnumResourceTypesW
3389 #define ExpandEnvironmentStrings ExpandEnvironmentStringsW
3390 #define FatalAppExit FatalAppExitW
3391 #define FileEncryptionStatus FileEncryptionStatusW
3392 #if (_WIN32_WINNT >= 0x0501)
3393 #define FindActCtxSectionString FindActCtxSectionStringW
3395 #define FindAtom FindAtomW
3396 #define FindFirstChangeNotification FindFirstChangeNotificationW
3397 #define FindFirstFile FindFirstFileW
3398 #define FindFirstFileEx FindFirstFileExW
3399 #if (_WIN32_WINNT >= 0x0500)
3400 #define FindFirstVolume FindFirstVolumeW
3401 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointW
3403 #define FindNextFile FindNextFileW
3404 #if (_WIN32_WINNT >= 0x0500)
3405 #define FindNextVolume FindNextVolumeW
3406 #define FindNextVolumeMountPoint FindNextVolumeMountPointW
3408 #define FindResource FindResourceW
3409 #define FindResourceEx FindResourceExW
3410 #define FormatMessage FormatMessageW
3411 #define FreeEnvironmentStrings FreeEnvironmentStringsW
3412 #define GetAtomName GetAtomNameW
3413 #define GetBinaryType GetBinaryTypeW
3414 #define GetCommandLine GetCommandLineW
3415 #define GetCompressedFileSize GetCompressedFileSizeW
3416 #define GetComputerName GetComputerNameW
3417 #if (_WIN32_WINNT >= 0x0500)
3418 #define GetComputerNameEx GetComputerNameExW
3420 #define GetCurrentDirectory GetCurrentDirectoryW
3421 #define GetDefaultCommConfig GetDefaultCommConfigW
3422 #define GetDiskFreeSpace GetDiskFreeSpaceW
3423 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExW
3424 #if (_WIN32_WINNT >= 0x0502)
3425 #define GetDllDirectory GetDllDirectoryW
3427 #define GetDriveType GetDriveTypeW
3428 #define GetEnvironmentStrings GetEnvironmentStringsW
3429 #define GetEnvironmentVariable GetEnvironmentVariableW
3430 #define GetFileAttributes GetFileAttributesW
3431 #define GetFileAttributesEx GetFileAttributesExW
3432 #define GetFileSecurity GetFileSecurityW
3433 #if (_WIN32_WINNT >= 0x0600)
3434 #define GetFinalPathNameByHandle GetFinalPathNameByHandleW
3436 #define GetFullPathName GetFullPathNameW
3437 #define GetLogicalDriveStrings GetLogicalDriveStringsW
3438 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
3439 #define GetLongPathName GetLongPathNameW
3441 #define GetModuleFileName GetModuleFileNameW
3442 #define GetModuleHandle GetModuleHandleW
3443 #if (_WIN32_WINNT >= 0x0500)
3444 #define GetModuleHandleEx GetModuleHandleExW
3446 #define GetNamedPipeHandleState GetNamedPipeHandleStateW
3447 #define GetPrivateProfileInt GetPrivateProfileIntW
3448 #define GetPrivateProfileSection GetPrivateProfileSectionW
3449 #define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesW
3450 #define GetPrivateProfileString GetPrivateProfileStringW
3451 #define GetPrivateProfileStruct GetPrivateProfileStructW
3452 #define GetProfileInt GetProfileIntW
3453 #define GetProfileSection GetProfileSectionW
3454 #define GetProfileString GetProfileStringW
3455 #define GetShortPathName GetShortPathNameW
3456 #define GetStartupInfo GetStartupInfoW
3457 #define GetSystemDirectory GetSystemDirectoryW
3458 #if (_WIN32_WINNT >= 0x0500)
3459 #define GetSystemWindowsDirectory GetSystemWindowsDirectoryW
3461 #if (_WIN32_WINNT >= 0x0501)
3462 #define GetSystemWow64Directory GetSystemWow64DirectoryW
3464 #define GetTempFileName GetTempFileNameW
3465 #define GetTempPath GetTempPathW
3466 #define GetUserName GetUserNameW
3467 #define GetVersionEx GetVersionExW
3468 #define GetVolumeInformation GetVolumeInformationW
3469 #define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointW
3470 #define GetVolumePathName GetVolumePathNameW
3471 #define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameW
3472 #define GetWindowsDirectory GetWindowsDirectoryW
3473 #define GlobalAddAtom GlobalAddAtomW
3474 #define GlobalFindAtom GlobalFindAtomW
3475 #define GlobalGetAtomName GlobalGetAtomNameW
3476 #define IsBadStringPtr IsBadStringPtrW
3477 #define LoadLibrary LoadLibraryW
3478 #define LoadLibraryEx LoadLibraryExW
3479 #define LogonUser LogonUserW
3480 #define LogonUserEx LogonUserExW
3481 #define LookupAccountName LookupAccountNameW
3482 #define LookupAccountSid LookupAccountSidW
3483 #define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameW
3484 #define LookupPrivilegeName LookupPrivilegeNameW
3485 #define LookupPrivilegeValue LookupPrivilegeValueW
3486 #define lstrcat lstrcatW
3487 #define lstrcmp lstrcmpW
3488 #define lstrcmpi lstrcmpiW
3489 #define lstrcpy lstrcpyW
3490 #define lstrcpyn lstrcpynW
3491 #define lstrlen lstrlenW
3492 #define MoveFile MoveFileW
3493 #define MoveFileEx MoveFileExW
3494 #define MoveFileWithProgress MoveFileWithProgressW
3495 #define ObjectCloseAuditAlarm ObjectCloseAuditAlarmW
3496 #define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmW
3497 #define ObjectOpenAuditAlarm ObjectOpenAuditAlarmW
3498 #define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmW
3499 #define OpenBackupEventLog OpenBackupEventLogW
3500 #define OpenEvent OpenEventW
3501 #define OpenEventLog OpenEventLogW
3502 #define OpenFileMapping OpenFileMappingW
3503 #define OpenMutex OpenMutexW
3504 #define OpenSemaphore OpenSemaphoreW
3505 #define OutputDebugString OutputDebugStringW
3506 #define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmW
3507 #define QueryDosDevice QueryDosDeviceW
3508 #define ReadEventLog ReadEventLogW
3509 #define RegisterEventSource RegisterEventSourceW
3510 #define RemoveDirectory RemoveDirectoryW
3511 #if (_WIN32_WINNT >= 0x0500)
3512 #define ReplaceFile ReplaceFileW
3514 #define ReportEvent ReportEventW
3515 #define SearchPath SearchPathW
3516 #define SetComputerName SetComputerNameW
3517 #define SetComputerNameEx SetComputerNameExW
3518 #define SetCurrentDirectory SetCurrentDirectoryW
3519 #define SetDefaultCommConfig SetDefaultCommConfigW
3520 #if (_WIN32_WINNT >= 0x0502)
3521 #define SetDllDirectory SetDllDirectoryW
3523 #define SetEnvironmentVariable SetEnvironmentVariableW
3524 #define SetFileAttributes SetFileAttributesW
3525 #define SetFileSecurity SetFileSecurityW
3526 #if (_WIN32_WINNT >= 0x0501)
3527 #define SetFileShortName SetFileShortNameW
3529 #if (_WIN32_WINNT >= 0x0502)
3530 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableW
3532 #define SetVolumeLabel SetVolumeLabelW
3533 #define SetVolumeMountPoint SetVolumeMountPointW
3534 #define UpdateResource UpdateResourceW
3535 #define VerifyVersionInfo VerifyVersionInfoW
3536 #define WaitNamedPipe WaitNamedPipeW
3537 #define WritePrivateProfileSection WritePrivateProfileSectionW
3538 #define WritePrivateProfileString WritePrivateProfileStringW
3539 #define WritePrivateProfileStruct WritePrivateProfileStructW
3540 #define WriteProfileSection WriteProfileSectionW
3541 #define WriteProfileString WriteProfileStringW
3543 typedef STARTUPINFOA STARTUPINFO
,*LPSTARTUPINFO
;
3544 typedef WIN32_FIND_DATAA WIN32_FIND_DATA
, *PWIN32_FIND_DATA
, *LPWIN32_FIND_DATA
;
3545 typedef HW_PROFILE_INFOA HW_PROFILE_INFO
,*LPHW_PROFILE_INFO
;
3546 #if (_WIN32_WINNT >= 0x0501)
3547 typedef ACTCTXA ACTCTX
,*PACTCTX
;
3548 typedef PCACTCTXA PCACTCTX
;
3550 typedef ENUMRESLANGPROCA ENUMRESLANGPROC
;
3551 typedef ENUMRESNAMEPROCA ENUMRESNAMEPROC
;
3552 typedef ENUMRESTYPEPROCA ENUMRESTYPEPROC
;
3553 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmA
3554 #define AddAtom AddAtomA
3555 #define BackupEventLog BackupEventLogA
3556 #define BeginUpdateResource BeginUpdateResourceA
3557 #define BuildCommDCB BuildCommDCBA
3558 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsA
3559 #define CallNamedPipe CallNamedPipeA
3560 #if (_WIN32_WINNT >= 0x0501)
3561 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3A
3563 #define ClearEventLog ClearEventLogA
3564 #define CommConfigDialog CommConfigDialogA
3565 #define CopyFile CopyFileA
3566 #define CopyFileEx CopyFileExA
3567 #if (_WIN32_WINNT >= 0x0501)
3568 #define CreateActCtx CreateActCtxA
3570 #define CreateDirectory CreateDirectoryA
3571 #define CreateDirectoryEx CreateDirectoryExA
3572 #define CreateEvent CreateEventA
3573 #define CreateFile CreateFileA
3574 #define CreateFileMapping CreateFileMappingA
3575 #if (_WIN32_WINNT >= 0x0500)
3576 #define CreateHardLink CreateHardLinkA
3577 #define CreateJobObject CreateJobObjectA
3579 #define CreateMailslot CreateMailslotA
3580 #define CreateMutex CreateMutexA
3581 #define CreateNamedPipe CreateNamedPipeA
3582 #define CreateProcess CreateProcessA
3583 #define CreateProcessAsUser CreateProcessAsUserA
3584 #define CreateSemaphore CreateSemaphoreA
3585 #define CreateWaitableTimer CreateWaitableTimerA
3586 #define DecryptFile DecryptFileA
3587 #define DefineDosDevice DefineDosDeviceA
3588 #define DeleteFile DeleteFileA
3589 #if (_WIN32_WINNT >= 0x0500)
3590 #define DeleteVolumeMountPoint DeleteVolumeMountPointA
3591 #define DnsHostnameToComputerName DnsHostnameToComputerNameA
3593 #define EncryptFile EncryptFileA
3594 #define EndUpdateResource EndUpdateResourceA
3595 #define EnumResourceLanguages EnumResourceLanguagesA
3596 #define EnumResourceNames EnumResourceNamesA
3597 #define EnumResourceTypes EnumResourceTypesA
3598 #define ExpandEnvironmentStrings ExpandEnvironmentStringsA
3599 #define FatalAppExit FatalAppExitA
3600 #define FileEncryptionStatus FileEncryptionStatusA
3601 #if (_WIN32_WINNT >= 0x0501)
3602 #define FindActCtxSectionString FindActCtxSectionStringA
3604 #define FindAtom FindAtomA
3605 #define FindFirstChangeNotification FindFirstChangeNotificationA
3606 #define FindFirstFile FindFirstFileA
3607 #define FindFirstFileEx FindFirstFileExA
3608 #if (_WIN32_WINNT >= 0x0500)
3609 #define FindFirstVolume FindFirstVolumeA
3610 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointA
3612 #define FindNextFile FindNextFileA
3613 #if (_WIN32_WINNT >= 0x0500)
3614 #define FindNextVolume FindNextVolumeA
3615 #define FindNextVolumeMountPoint FindNextVolumeMountPointA
3617 #define FindResource FindResourceA
3618 #define FindResourceEx FindResourceExA
3619 #define FormatMessage FormatMessageA
3620 #define FreeEnvironmentStrings FreeEnvironmentStringsA
3621 #define GetAtomName GetAtomNameA
3622 #define GetBinaryType GetBinaryTypeA
3623 #define GetCommandLine GetCommandLineA
3624 #define GetComputerName GetComputerNameA
3625 #if (_WIN32_WINNT >= 0x0500)
3626 #define GetComputerNameEx GetComputerNameExA
3628 #define GetCompressedFileSize GetCompressedFileSizeA
3629 #define GetCurrentDirectory GetCurrentDirectoryA
3630 #define GetDefaultCommConfig GetDefaultCommConfigA
3631 #define GetDiskFreeSpace GetDiskFreeSpaceA
3632 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExA
3633 #if (_WIN32_WINNT >= 0x0502)
3634 #define GetDllDirectory GetDllDirectoryA
3636 #define GetDriveType GetDriveTypeA
3637 #define GetEnvironmentStringsA GetEnvironmentStrings
3638 #define GetEnvironmentVariable GetEnvironmentVariableA
3639 #define GetFileAttributes GetFileAttributesA
3640 #define GetFileAttributesEx GetFileAttributesExA
3641 #define GetFileSecurity GetFileSecurityA
3642 #if (_WIN32_WINNT >= 0x0600)
3643 #define GetFinalPathNameByHandle GetFinalPathNameByHandleA
3645 #define GetFullPathName GetFullPathNameA
3646 #define GetLogicalDriveStrings GetLogicalDriveStringsA
3647 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
3648 #define GetLongPathName GetLongPathNameA
3650 #define GetNamedPipeHandleState GetNamedPipeHandleStateA
3651 #define GetModuleHandle GetModuleHandleA
3652 #if (_WIN32_WINNT >= 0x0500)
3653 #define GetModuleHandleEx GetModuleHandleExA
3655 #define GetModuleFileName GetModuleFileNameA
3656 #define GetPrivateProfileInt GetPrivateProfileIntA
3657 #define GetPrivateProfileSection GetPrivateProfileSectionA
3658 #define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesA
3659 #define GetPrivateProfileString GetPrivateProfileStringA
3660 #define GetPrivateProfileStruct GetPrivateProfileStructA
3661 #define GetProfileInt GetProfileIntA
3662 #define GetProfileSection GetProfileSectionA
3663 #define GetProfileString GetProfileStringA
3664 #define GetShortPathName GetShortPathNameA
3665 #define GetStartupInfo GetStartupInfoA
3666 #define GetSystemDirectory GetSystemDirectoryA
3667 #if (_WIN32_WINNT >= 0x0500)
3668 #define GetSystemWindowsDirectory GetSystemWindowsDirectoryA
3670 #if (_WIN32_WINNT >= 0x0501)
3671 #define GetSystemWow64Directory GetSystemWow64DirectoryA
3673 #define GetTempFileName GetTempFileNameA
3674 #define GetTempPath GetTempPathA
3675 #define GetUserName GetUserNameA
3676 #define GetVersionEx GetVersionExA
3677 #define GetVolumeInformation GetVolumeInformationA
3678 #define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointA
3679 #define GetVolumePathName GetVolumePathNameA
3680 #define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameA
3681 #define GetWindowsDirectory GetWindowsDirectoryA
3682 #define GlobalAddAtom GlobalAddAtomA
3683 #define GlobalFindAtom GlobalFindAtomA
3684 #define GlobalGetAtomName GlobalGetAtomNameA
3685 #define IsBadStringPtr IsBadStringPtrA
3686 #define LoadLibrary LoadLibraryA
3687 #define LoadLibraryEx LoadLibraryExA
3688 #define LogonUser LogonUserA
3689 #define LogonUserEx LogonUserExA
3690 #define LookupAccountName LookupAccountNameA
3691 #define LookupAccountSid LookupAccountSidA
3692 #define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameA
3693 #define LookupPrivilegeName LookupPrivilegeNameA
3694 #define LookupPrivilegeValue LookupPrivilegeValueA
3695 #define lstrcat lstrcatA
3696 #define lstrcmp lstrcmpA
3697 #define lstrcmpi lstrcmpiA
3698 #define lstrcpy lstrcpyA
3699 #define lstrcpyn lstrcpynA
3700 #define lstrlen lstrlenA
3701 #define MoveFile MoveFileA
3702 #define MoveFileEx MoveFileExA
3703 #define MoveFileWithProgress MoveFileWithProgressA
3704 #define ObjectCloseAuditAlarm ObjectCloseAuditAlarmA
3705 #define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmA
3706 #define ObjectOpenAuditAlarm ObjectOpenAuditAlarmA
3707 #define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmA
3708 #define OpenBackupEventLog OpenBackupEventLogA
3709 #define OpenEvent OpenEventA
3710 #define OpenEventLog OpenEventLogA
3711 #define OpenFileMapping OpenFileMappingA
3712 #define OpenMutex OpenMutexA
3713 #define OpenSemaphore OpenSemaphoreA
3714 #define OutputDebugString OutputDebugStringA
3715 #define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmA
3716 #define QueryDosDevice QueryDosDeviceA
3717 #define ReadEventLog ReadEventLogA
3718 #define RegisterEventSource RegisterEventSourceA
3719 #define RemoveDirectory RemoveDirectoryA
3720 #if (_WIN32_WINNT >= 0x0500)
3721 #define ReplaceFile ReplaceFileA
3723 #define ReportEvent ReportEventA
3724 #define SearchPath SearchPathA
3725 #define SetComputerName SetComputerNameA
3726 #define SetComputerNameEx SetComputerNameExA
3727 #define SetCurrentDirectory SetCurrentDirectoryA
3728 #define SetDefaultCommConfig SetDefaultCommConfigA
3729 #if (_WIN32_WINNT >= 0x0502)
3730 #define SetDllDirectory SetDllDirectoryA
3732 #define SetEnvironmentVariable SetEnvironmentVariableA
3733 #define SetFileAttributes SetFileAttributesA
3734 #define SetFileSecurity SetFileSecurityA
3735 #if (_WIN32_WINNT >= 0x0501)
3736 #define SetFileShortName SetFileShortNameA
3738 #if (_WIN32_WINNT >= 0x0502)
3739 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableA
3741 #define SetVolumeLabel SetVolumeLabelA
3742 #define SetVolumeMountPoint SetVolumeMountPointA
3743 #define UpdateResource UpdateResourceA
3744 #define VerifyVersionInfo VerifyVersionInfoA
3745 #define WaitNamedPipe WaitNamedPipeA
3746 #define WritePrivateProfileSection WritePrivateProfileSectionA
3747 #define WritePrivateProfileString WritePrivateProfileStringA
3748 #define WritePrivateProfileStruct WritePrivateProfileStructA
3749 #define WriteProfileSection WriteProfileSectionA
3750 #define WriteProfileString WriteProfileStringA
3754 /* one-time initialisation API */
3755 typedef RTL_RUN_ONCE INIT_ONCE
;
3756 typedef PRTL_RUN_ONCE PINIT_ONCE
;
3757 typedef PRTL_RUN_ONCE LPINIT_ONCE
;
3759 #define INIT_ONCE_CHECK_ONLY RTL_RUN_ONCE_CHECK_ONLY
3760 #define INIT_ONCE_ASYNC RTL_RUN_ONCE_ASYNC
3761 #define INIT_ONCE_INIT_FAILED RTL_RUN_ONCE_INIT_FAILED
3764 (WINAPI
*PINIT_ONCE_FN
)(
3765 _Inout_ PINIT_ONCE InitOnce
,
3766 _Inout_opt_ PVOID Parameter
,
3767 _Outptr_opt_result_maybenull_ PVOID
*Context
);
3769 #if _WIN32_WINNT >= 0x0601
3771 #define COPYFILE2_MESSAGE_COPY_OFFLOAD 0x00000001L
3773 typedef enum _COPYFILE2_MESSAGE_TYPE
{
3774 COPYFILE2_CALLBACK_NONE
= 0,
3775 COPYFILE2_CALLBACK_CHUNK_STARTED
,
3776 COPYFILE2_CALLBACK_CHUNK_FINISHED
,
3777 COPYFILE2_CALLBACK_STREAM_STARTED
,
3778 COPYFILE2_CALLBACK_STREAM_FINISHED
,
3779 COPYFILE2_CALLBACK_POLL_CONTINUE
,
3780 COPYFILE2_CALLBACK_ERROR
,
3781 COPYFILE2_CALLBACK_MAX
,
3782 } COPYFILE2_MESSAGE_TYPE
;
3784 typedef enum _COPYFILE2_MESSAGE_ACTION
{
3785 COPYFILE2_PROGRESS_CONTINUE
= 0,
3786 COPYFILE2_PROGRESS_CANCEL
,
3787 COPYFILE2_PROGRESS_STOP
,
3788 COPYFILE2_PROGRESS_QUIET
,
3789 COPYFILE2_PROGRESS_PAUSE
,
3790 } COPYFILE2_MESSAGE_ACTION
;
3792 typedef enum _COPYFILE2_COPY_PHASE
{
3793 COPYFILE2_PHASE_NONE
= 0,
3794 COPYFILE2_PHASE_PREPARE_SOURCE
,
3795 COPYFILE2_PHASE_PREPARE_DEST
,
3796 COPYFILE2_PHASE_READ_SOURCE
,
3797 COPYFILE2_PHASE_WRITE_DESTINATION
,
3798 COPYFILE2_PHASE_SERVER_COPY
,
3799 COPYFILE2_PHASE_NAMEGRAFT_COPY
,
3800 COPYFILE2_PHASE_MAX
,
3801 } COPYFILE2_COPY_PHASE
;
3803 typedef struct COPYFILE2_MESSAGE
{
3804 COPYFILE2_MESSAGE_TYPE Type
;
3808 DWORD dwStreamNumber
;
3811 HANDLE hDestinationFile
;
3812 ULARGE_INTEGER uliChunkNumber
;
3813 ULARGE_INTEGER uliChunkSize
;
3814 ULARGE_INTEGER uliStreamSize
;
3815 ULARGE_INTEGER uliTotalFileSize
;
3818 DWORD dwStreamNumber
;
3821 HANDLE hDestinationFile
;
3822 ULARGE_INTEGER uliChunkNumber
;
3823 ULARGE_INTEGER uliChunkSize
;
3824 ULARGE_INTEGER uliStreamSize
;
3825 ULARGE_INTEGER uliStreamBytesTransferred
;
3826 ULARGE_INTEGER uliTotalFileSize
;
3827 ULARGE_INTEGER uliTotalBytesTransferred
;
3830 DWORD dwStreamNumber
;
3833 HANDLE hDestinationFile
;
3834 ULARGE_INTEGER uliStreamSize
;
3835 ULARGE_INTEGER uliTotalFileSize
;
3838 DWORD dwStreamNumber
;
3841 HANDLE hDestinationFile
;
3842 ULARGE_INTEGER uliStreamSize
;
3843 ULARGE_INTEGER uliStreamBytesTransferred
;
3844 ULARGE_INTEGER uliTotalFileSize
;
3845 ULARGE_INTEGER uliTotalBytesTransferred
;
3851 COPYFILE2_COPY_PHASE CopyPhase
;
3852 DWORD dwStreamNumber
;
3855 ULARGE_INTEGER uliChunkNumber
;
3856 ULARGE_INTEGER uliStreamSize
;
3857 ULARGE_INTEGER uliStreamBytesTransferred
;
3858 ULARGE_INTEGER uliTotalFileSize
;
3859 ULARGE_INTEGER uliTotalBytesTransferred
;
3862 } COPYFILE2_MESSAGE
;
3864 typedef COPYFILE2_MESSAGE_ACTION
3865 (CALLBACK
*PCOPYFILE2_PROGRESS_ROUTINE
)(
3866 _In_
const COPYFILE2_MESSAGE
*pMessage
,
3867 _In_opt_ PVOID pvCallbackContext
);
3869 typedef struct COPYFILE2_EXTENDED_PARAMETERS
{
3873 PCOPYFILE2_PROGRESS_ROUTINE pProgressRoutine
;
3874 PVOID pvCallbackContext
;
3875 } COPYFILE2_EXTENDED_PARAMETERS
;
3881 _In_ PCWSTR pwszExistingFileName
,
3882 _In_ PCWSTR pwszNewFileName
,
3883 _In_opt_ COPYFILE2_EXTENDED_PARAMETERS
*pExtendedParameters
);
3885 #endif /* _WIN32_WINNT >= 0x0601 */
3890 InitOnceExecuteOnce(
3891 _Inout_ PINIT_ONCE InitOnce
,
3892 _In_ __callback PINIT_ONCE_FN InitFn
,
3893 _Inout_opt_ PVOID Parameter
,
3894 _Outptr_opt_result_maybenull_ LPVOID
*Context
);
3897 #if defined(_SLIST_HEADER_) && !defined(_NTOS_) && !defined(_NTOSP_)
3902 InitializeSListHead(
3903 _Out_ PSLIST_HEADER ListHead
);
3908 InterlockedPopEntrySList(
3909 _Inout_ PSLIST_HEADER ListHead
);
3914 InterlockedPushEntrySList(
3915 _Inout_ PSLIST_HEADER ListHead
,
3916 _Inout_ PSLIST_ENTRY ListEntry
);
3921 InterlockedFlushSList(
3922 _Inout_ PSLIST_HEADER ListHead
);
3928 _In_ PSLIST_HEADER ListHead
);
3930 #endif /* _SLIST_HEADER_ */
3933 #pragma warning(pop)
3939 #endif /* _WINBASE_H */