1 #ifndef _WINBASE_ 2 #define _WINBASE_ 3 4 #if !defined(_KERNEL32_) 5 #define WINBASEAPI DECLSPEC_IMPORT 6 #else 7 #define WINBASEAPI 8 #endif 9 10 #ifdef __cplusplus 11 extern "C" { 12 #endif 13 14 #include <libloaderapi.h> 15 #include <sysinfoapi.h> 16 17 #ifdef _MSC_VER 18 #pragma warning(push) 19 #pragma warning(disable:4201) 20 #pragma warning(disable:4214) 21 #pragma warning(disable:4820) 22 #endif 23 24 #define PROCESS_NAME_NATIVE 1 25 26 #define FILE_ENCRYPTABLE 0 27 #define FILE_IS_ENCRYPTED 1 28 #define FILE_SYSTEM_ATTR 2 29 #define FILE_ROOT_DIR 3 30 #define FILE_SYSTEM_DIR 4 31 #define FILE_UNKNOWN 5 32 #define FILE_SYSTEM_NOT_SUPPORT 6 33 #define FILE_USER_DISALLOWED 7 34 #define FILE_READ_ONLY 8 35 #define FILE_DIR_DISALLOWED 9 36 37 #define COMMPROP_INITIALIZED 0xE73CF52E 38 #define SP_SERIALCOMM 1 39 #define PST_UNSPECIFIED 0 40 #define PST_RS232 1 41 #define PST_PARALLELPORT 2 42 #define PST_RS422 3 43 #define PST_RS423 4 44 #define PST_RS449 5 45 #define PST_MODEM 6 46 #define PST_FAX 0x21 47 #define PST_SCANNER 0x22 48 #define PST_NETWORK_BRIDGE 0x100 49 #define PST_LAT 0x101 50 #define PST_TCPIP_TELNET 0x102 51 #define PST_X25 0x103 52 #define BAUD_075 1 53 #define BAUD_110 2 54 #define BAUD_134_5 4 55 #define BAUD_150 8 56 #define BAUD_300 16 57 #define BAUD_600 32 58 #define BAUD_1200 64 59 #define BAUD_1800 128 60 #define BAUD_2400 256 61 #define BAUD_4800 512 62 #define BAUD_7200 1024 63 #define BAUD_9600 2048 64 #define BAUD_14400 4096 65 #define BAUD_19200 8192 66 #define BAUD_38400 16384 67 #define BAUD_56K 32768 68 #define BAUD_128K 65536 69 #define BAUD_115200 131072 70 #define BAUD_57600 262144 71 #define BAUD_USER 0x10000000 72 #define PCF_DTRDSR 1 73 #define PCF_RTSCTS 2 74 #define PCF_RLSD 4 75 #define PCF_PARITY_CHECK 8 76 #define PCF_XONXOFF 16 77 #define PCF_SETXCHAR 32 78 #define PCF_TOTALTIMEOUTS 64 79 #define PCF_INTTIMEOUTS 128 80 #define PCF_SPECIALCHARS 256 81 #define PCF_16BITMODE 512 82 #define SP_PARITY 1 83 #define SP_BAUD 2 84 #define SP_DATABITS 4 85 #define SP_STOPBITS 8 86 #define SP_HANDSHAKING 16 87 #define SP_PARITY_CHECK 32 88 #define SP_RLSD 64 89 #define DATABITS_5 1 90 #define DATABITS_6 2 91 #define DATABITS_7 4 92 #define DATABITS_8 8 93 #define DATABITS_16 16 94 #define DATABITS_16X 32 95 #define STOPBITS_10 1 96 #define STOPBITS_15 2 97 #define STOPBITS_20 4 98 #define PARITY_NONE 256 99 #define PARITY_ODD 512 100 #define PARITY_EVEN 1024 101 #define PARITY_MARK 2048 102 #define PARITY_SPACE 4096 103 #define EXCEPTION_DEBUG_EVENT 1 104 #define CREATE_THREAD_DEBUG_EVENT 2 105 #define CREATE_PROCESS_DEBUG_EVENT 3 106 #define EXIT_THREAD_DEBUG_EVENT 4 107 #define EXIT_PROCESS_DEBUG_EVENT 5 108 #define LOAD_DLL_DEBUG_EVENT 6 109 #define UNLOAD_DLL_DEBUG_EVENT 7 110 #define OUTPUT_DEBUG_STRING_EVENT 8 111 #define RIP_EVENT 9 112 #define HFILE_ERROR ((HFILE)-1) 113 #define FILE_BEGIN 0 114 #define FILE_CURRENT 1 115 #define FILE_END 2 116 #define INVALID_SET_FILE_POINTER ((DWORD)-1) 117 #define OF_READ 0 118 #define OF_READWRITE 2 119 #define OF_WRITE 1 120 #define OF_SHARE_COMPAT 0 121 #define OF_SHARE_DENY_NONE 64 122 #define OF_SHARE_DENY_READ 48 123 #define OF_SHARE_DENY_WRITE 32 124 #define OF_SHARE_EXCLUSIVE 16 125 #define OF_CANCEL 2048 126 #define OF_CREATE 4096 127 #define OF_DELETE 512 128 #define OF_EXIST 16384 129 #define OF_PARSE 256 130 #define OF_PROMPT 8192 131 #define OF_REOPEN 32768 132 #define OF_VERIFY 1024 133 #define NMPWAIT_NOWAIT 1 134 #define NMPWAIT_WAIT_FOREVER ((DWORD)-1) 135 #define NMPWAIT_USE_DEFAULT_WAIT 0 136 #define CE_BREAK 16 137 #define CE_DNS 2048 138 #define CE_FRAME 8 139 #define CE_IOE 1024 140 #define CE_MODE 32768 141 #define CE_OOP 4096 142 #define CE_OVERRUN 2 143 #define CE_PTO 512 144 #define CE_RXOVER 1 145 #define CE_RXPARITY 4 146 #define CE_TXFULL 256 147 #define PROGRESS_CONTINUE 0 148 #define PROGRESS_CANCEL 1 149 #define PROGRESS_STOP 2 150 #define PROGRESS_QUIET 3 151 #define CALLBACK_CHUNK_FINISHED 0 152 #define CALLBACK_STREAM_SWITCH 1 153 #define OFS_MAXPATHNAME 128 154 #define FILE_MAP_COPY SECTION_QUERY 155 #define FILE_MAP_WRITE SECTION_MAP_WRITE 156 #define FILE_MAP_READ SECTION_MAP_READ 157 #define FILE_MAP_ALL_ACCESS SECTION_ALL_ACCESS 158 #define FILE_MAP_EXECUTE SECTION_MAP_EXECUTE_EXPLICIT 159 #define MUTEX_ALL_ACCESS 0x1f0001 160 #define MUTEX_MODIFY_STATE 1 161 #define SEMAPHORE_ALL_ACCESS 0x1f0003 162 #define SEMAPHORE_MODIFY_STATE 2 163 #define EVENT_ALL_ACCESS 0x1f0003 164 #define EVENT_MODIFY_STATE 2 165 #define PIPE_ACCESS_DUPLEX 3 166 #define PIPE_ACCESS_INBOUND 1 167 #define PIPE_ACCESS_OUTBOUND 2 168 #define PIPE_TYPE_BYTE 0 169 #define PIPE_TYPE_MESSAGE 4 170 #define PIPE_READMODE_BYTE 0 171 #define PIPE_READMODE_MESSAGE 2 172 #define PIPE_WAIT 0 173 #define PIPE_NOWAIT 1 174 #define PIPE_CLIENT_END 0 175 #define PIPE_SERVER_END 1 176 #define PIPE_UNLIMITED_INSTANCES 255 177 178 /* CreateProcess() dwCreationFlags values */ 179 #define DEBUG_PROCESS 0x00000001 180 #define DEBUG_ONLY_THIS_PROCESS 0x00000002 181 #define CREATE_SUSPENDED 0x00000004 182 #define DETACHED_PROCESS 0x00000008 183 #define CREATE_NEW_CONSOLE 0x00000010 184 #define NORMAL_PRIORITY_CLASS 0x00000020 185 #define IDLE_PRIORITY_CLASS 0x00000040 186 #define HIGH_PRIORITY_CLASS 0x00000080 187 #define REALTIME_PRIORITY_CLASS 0x00000100 188 #define CREATE_NEW_PROCESS_GROUP 0x00000200 189 #define CREATE_UNICODE_ENVIRONMENT 0x00000400 190 #define CREATE_SEPARATE_WOW_VDM 0x00000800 191 #define CREATE_SHARED_WOW_VDM 0x00001000 192 #define CREATE_FORCEDOS 0x00002000 193 #define BELOW_NORMAL_PRIORITY_CLASS 0x00004000 194 #define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000 195 196 #if (_WIN32_WINNT >= _WIN32_WINNT_WIN7) 197 #define INHERIT_PARENT_AFFINITY 0x00010000 198 #endif // _WIN32_WINNT_WIN7 199 200 #if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) 201 #define INHERIT_CALLER_PRIORITY 0x00020000 // Deprecated 202 #define CREATE_PROTECTED_PROCESS 0x00040000 203 #define EXTENDED_STARTUPINFO_PRESENT 0x00080000 204 #define PROCESS_MODE_BACKGROUND_BEGIN 0x00100000 205 #define PROCESS_MODE_BACKGROUND_END 0x00200000 206 #endif // _WIN32_WINNT_VISTA 207 208 #if (NTDDI_VERSION >= NTDDI_WIN10_RS4) 209 #define CREATE_SECURE_PROCESS 0x00400000 210 #endif // NTDDI_WIN10_RS4 211 212 #define CREATE_BREAKAWAY_FROM_JOB 0x01000000 213 #define CREATE_PRESERVE_CODE_AUTHZ_LEVEL 0x02000000 214 #define CREATE_DEFAULT_ERROR_MODE 0x04000000 215 #define CREATE_NO_WINDOW 0x08000000 216 #define PROFILE_USER 0x10000000 217 #define PROFILE_KERNEL 0x20000000 218 #define PROFILE_SERVER 0x40000000 219 #define CREATE_IGNORE_SYSTEM_DEFAULT 0x80000000 220 221 /* CreateThread()/CreateRemoteThread() dwCreationFlags values */ 222 // #define CREATE_SUSPENDED 0x00000004 // See above 223 #define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000 224 225 #define CREATE_NEW 1 226 #define CREATE_ALWAYS 2 227 #define OPEN_EXISTING 3 228 #define OPEN_ALWAYS 4 229 #define TRUNCATE_EXISTING 5 230 231 #define COPY_FILE_FAIL_IF_EXISTS 0x00000001 232 #define COPY_FILE_RESTARTABLE 0x00000002 233 #define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004 234 #define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x00000008 235 236 #define FILE_FLAG_WRITE_THROUGH 0x80000000 237 #define FILE_FLAG_OVERLAPPED 0x40000000 238 #define FILE_FLAG_NO_BUFFERING 0x20000000 239 #define FILE_FLAG_RANDOM_ACCESS 0x10000000 240 #define FILE_FLAG_SEQUENTIAL_SCAN 0x08000000 241 #define FILE_FLAG_DELETE_ON_CLOSE 0x04000000 242 #define FILE_FLAG_BACKUP_SEMANTICS 0x02000000 243 #define FILE_FLAG_POSIX_SEMANTICS 0x01000000 244 #define FILE_FLAG_OPEN_REPARSE_POINT 0x00200000 245 #define FILE_FLAG_OPEN_NO_RECALL 0x00100000 246 #if (_WIN32_WINNT >= 0x0500) 247 #define FILE_FLAG_FIRST_PIPE_INSTANCE 0x00080000 248 #endif 249 250 #define CLRDTR 6 251 #define CLRRTS 4 252 #define SETDTR 5 253 #define SETRTS 3 254 #define SETXOFF 1 255 #define SETXON 2 256 #define RESETDEV 7 257 #define SETBREAK 8 258 #define CLRBREAK 9 259 #define STILL_ACTIVE 0x103 260 #define FIND_FIRST_EX_CASE_SENSITIVE 1 261 #define FIND_FIRST_EX_LARGE_FETCH 2 262 #define SCS_32BIT_BINARY 0 263 #define SCS_64BIT_BINARY 6 264 #define SCS_DOS_BINARY 1 265 #define SCS_OS216_BINARY 5 266 #define SCS_PIF_BINARY 3 267 #define SCS_POSIX_BINARY 4 268 #define SCS_WOW_BINARY 2 269 #define MAX_COMPUTERNAME_LENGTH 15 270 #define HW_PROFILE_GUIDLEN 39 271 #define MAX_PROFILE_LEN 80 272 #define DOCKINFO_UNDOCKED 1 273 #define DOCKINFO_DOCKED 2 274 #define DOCKINFO_USER_SUPPLIED 4 275 #define DOCKINFO_USER_UNDOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_UNDOCKED) 276 #define DOCKINFO_USER_DOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_DOCKED) 277 #define DRIVE_REMOVABLE 2 278 #define DRIVE_FIXED 3 279 #define DRIVE_REMOTE 4 280 #define DRIVE_CDROM 5 281 #define DRIVE_RAMDISK 6 282 #define DRIVE_UNKNOWN 0 283 #define DRIVE_NO_ROOT_DIR 1 284 #define FILE_TYPE_UNKNOWN 0 285 #define FILE_TYPE_DISK 1 286 #define FILE_TYPE_CHAR 2 287 #define FILE_TYPE_PIPE 3 288 #define FILE_TYPE_REMOTE 0x8000 289 /* also in ddk/ntapi.h */ 290 #define HANDLE_FLAG_INHERIT 0x01 291 #define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x02 292 /* end ntapi.h */ 293 #define STD_INPUT_HANDLE (DWORD)(0xfffffff6) 294 #define STD_OUTPUT_HANDLE (DWORD)(0xfffffff5) 295 #define STD_ERROR_HANDLE (DWORD)(0xfffffff4) 296 #define INVALID_HANDLE_VALUE (HANDLE)(-1) 297 #define GET_TAPE_MEDIA_INFORMATION 0 298 #define GET_TAPE_DRIVE_INFORMATION 1 299 #define SET_TAPE_MEDIA_INFORMATION 0 300 #define SET_TAPE_DRIVE_INFORMATION 1 301 #define THREAD_PRIORITY_ABOVE_NORMAL 1 302 #define THREAD_PRIORITY_BELOW_NORMAL (-1) 303 #define THREAD_PRIORITY_HIGHEST 2 304 #define THREAD_PRIORITY_IDLE (-15) 305 #define THREAD_PRIORITY_LOWEST (-2) 306 #define THREAD_PRIORITY_NORMAL 0 307 #define THREAD_PRIORITY_TIME_CRITICAL 15 308 #define THREAD_PRIORITY_ERROR_RETURN 2147483647 309 #define TIME_ZONE_ID_UNKNOWN 0 310 #define TIME_ZONE_ID_STANDARD 1 311 #define TIME_ZONE_ID_DAYLIGHT 2 312 #define TIME_ZONE_ID_INVALID 0xFFFFFFFF 313 #define FS_CASE_IS_PRESERVED 2 314 #define FS_CASE_SENSITIVE 1 315 #define FS_UNICODE_STORED_ON_DISK 4 316 #define FS_PERSISTENT_ACLS 8 317 #define FS_FILE_COMPRESSION 16 318 #define FS_VOL_IS_COMPRESSED 32768 319 #define GMEM_FIXED 0 320 #define GMEM_MOVEABLE 2 321 #define GMEM_MODIFY 128 322 #define GPTR 64 323 #define GHND 66 324 #define GMEM_DDESHARE 8192 325 #define GMEM_DISCARDABLE 256 326 #define GMEM_LOWER 4096 327 #define GMEM_NOCOMPACT 16 328 #define GMEM_NODISCARD 32 329 #define GMEM_NOT_BANKED 4096 330 #define GMEM_NOTIFY 16384 331 #define GMEM_SHARE 8192 332 #define GMEM_ZEROINIT 64 333 #define GMEM_DISCARDED 16384 334 #define GMEM_INVALID_HANDLE 32768 335 #define GMEM_LOCKCOUNT 255 336 #define GMEM_VALID_FLAGS 32626 337 #define EXCEPTION_ACCESS_VIOLATION ((DWORD)0xC0000005) 338 #define EXCEPTION_DATATYPE_MISALIGNMENT ((DWORD)0x80000002) 339 #define EXCEPTION_BREAKPOINT ((DWORD)0x80000003) 340 #define EXCEPTION_SINGLE_STEP ((DWORD)0x80000004) 341 #define EXCEPTION_ARRAY_BOUNDS_EXCEEDED ((DWORD)0xC000008C) 342 #define EXCEPTION_FLT_DENORMAL_OPERAND ((DWORD)0xC000008D) 343 #define EXCEPTION_FLT_DIVIDE_BY_ZERO ((DWORD)0xC000008E) 344 #define EXCEPTION_FLT_INEXACT_RESULT ((DWORD)0xC000008F) 345 #define EXCEPTION_FLT_INVALID_OPERATION ((DWORD)0xC0000090) 346 #define EXCEPTION_FLT_OVERFLOW ((DWORD)0xC0000091) 347 #define EXCEPTION_FLT_STACK_CHECK ((DWORD)0xC0000092) 348 #define EXCEPTION_FLT_UNDERFLOW ((DWORD)0xC0000093) 349 #define EXCEPTION_INT_DIVIDE_BY_ZERO ((DWORD)0xC0000094) 350 #define EXCEPTION_INT_OVERFLOW ((DWORD)0xC0000095) 351 #define EXCEPTION_PRIV_INSTRUCTION ((DWORD)0xC0000096) 352 #define EXCEPTION_IN_PAGE_ERROR ((DWORD)0xC0000006) 353 #define EXCEPTION_ILLEGAL_INSTRUCTION ((DWORD)0xC000001D) 354 #define EXCEPTION_NONCONTINUABLE_EXCEPTION ((DWORD)0xC0000025) 355 #define EXCEPTION_STACK_OVERFLOW ((DWORD)0xC00000FD) 356 #define EXCEPTION_INVALID_DISPOSITION ((DWORD)0xC0000026) 357 #define EXCEPTION_GUARD_PAGE ((DWORD)0x80000001) 358 #define EXCEPTION_INVALID_HANDLE ((DWORD)0xC0000008L) 359 #define CONTROL_C_EXIT ((DWORD)0xC000013A) 360 #define PROCESS_HEAP_REGION 1 361 #define PROCESS_HEAP_UNCOMMITTED_RANGE 2 362 #define PROCESS_HEAP_ENTRY_BUSY 4 363 #define PROCESS_HEAP_ENTRY_MOVEABLE 16 364 #define PROCESS_HEAP_ENTRY_DDESHARE 32 365 366 // LoadLibraryEx() dwFlags. 367 #define DONT_RESOLVE_DLL_REFERENCES 0x00000001 368 #define LOAD_LIBRARY_AS_DATAFILE 0x00000002 369 // #define LOAD_PACKAGED_LIBRARY 0x00000004 // Internal use only. 370 #define LOAD_WITH_ALTERED_SEARCH_PATH 0x00000008 371 #define LOAD_IGNORE_CODE_AUTHZ_LEVEL 0x00000010 372 #if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) 373 #define LOAD_LIBRARY_AS_IMAGE_RESOURCE 0x00000020 374 #define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 0x00000040 375 #define LOAD_LIBRARY_REQUIRE_SIGNED_TARGET 0x00000080 376 #define LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR 0x00000100 377 #define LOAD_LIBRARY_SEARCH_APPLICATION_DIR 0x00000200 378 #define LOAD_LIBRARY_SEARCH_USER_DIRS 0x00000400 379 #define LOAD_LIBRARY_SEARCH_SYSTEM32 0x00000800 380 #define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 0x00001000 381 #endif // _WIN32_WINNT_VISTA 382 #if (NTDDI_VERSION >= NTDDI_WIN10_RS1) 383 #define LOAD_LIBRARY_SAFE_CURRENT_DIRS 0x00002000 384 #define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER 0x00004000 385 #else // NTDDI_WIN10_RS1 386 #if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) 387 #define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER LOAD_LIBRARY_SEARCH_SYSTEM32 388 #endif // _WIN32_WINNT_VISTA 389 #endif // NTDDI_WIN10_RS1 390 #if (NTDDI_VERSION >= NTDDI_WIN10_RS2) 391 #define LOAD_LIBRARY_OS_INTEGRITY_CONTINUITY 0x00008000 392 #endif // NTDDI_WIN10_RS2 393 394 #define LMEM_FIXED 0 395 #define LMEM_MOVEABLE 2 396 #define LMEM_NONZEROLHND 2 397 #define LMEM_NONZEROLPTR 0 398 #define LMEM_DISCARDABLE 3840 399 #define LMEM_NOCOMPACT 16 400 #define LMEM_NODISCARD 32 401 #define LMEM_ZEROINIT 64 402 #define LMEM_DISCARDED 16384 403 #define LMEM_MODIFY 128 404 #define LMEM_INVALID_HANDLE 32768 405 #define LMEM_LOCKCOUNT 255 406 #define LMEM_VALID_FLAGS 0x0F72 407 #define LPTR 64 408 #define LHND 66 409 #define NONZEROLHND 2 410 #define NONZEROLPTR 0 411 #define LOCKFILE_FAIL_IMMEDIATELY 1 412 #define LOCKFILE_EXCLUSIVE_LOCK 2 413 #define LOGON32_PROVIDER_DEFAULT 0 414 #define LOGON32_PROVIDER_WINNT35 1 415 #define LOGON32_PROVIDER_WINNT40 2 416 #define LOGON32_PROVIDER_WINNT50 3 417 #define LOGON32_LOGON_INTERACTIVE 2 418 #define LOGON32_LOGON_NETWORK 3 419 #define LOGON32_LOGON_BATCH 4 420 #define LOGON32_LOGON_SERVICE 5 421 #define LOGON32_LOGON_UNLOCK 7 422 #define LOGON32_LOGON_NETWORK_CLEARTEXT 8 423 #define LOGON32_LOGON_NEW_CREDENTIALS 9 424 #define MOVEFILE_REPLACE_EXISTING 1 425 #define MOVEFILE_COPY_ALLOWED 2 426 #define MOVEFILE_DELAY_UNTIL_REBOOT 4 427 #define MOVEFILE_WRITE_THROUGH 8 428 #define MOVEFILE_CREATE_HARDLINK 16 429 #define MOVEFILE_FAIL_IF_NOT_TRACKABLE 32 430 #define MAXIMUM_WAIT_OBJECTS 64 431 #define MAXIMUM_SUSPEND_COUNT 0x7F 432 #define WAIT_OBJECT_0 0 433 #define WAIT_ABANDONED_0 128 434 #ifndef WAIT_TIMEOUT /* also in winerror.h */ 435 #define WAIT_TIMEOUT 258 436 #endif 437 #define WAIT_IO_COMPLETION 0xC0 438 #define WAIT_ABANDONED 128 439 #define WAIT_FAILED ((DWORD)0xFFFFFFFF) 440 #define PURGE_TXABORT 1 441 #define PURGE_RXABORT 2 442 #define PURGE_TXCLEAR 4 443 #define PURGE_RXCLEAR 8 444 445 #define FORMAT_MESSAGE_ALLOCATE_BUFFER 256 446 #define FORMAT_MESSAGE_IGNORE_INSERTS 512 447 #define FORMAT_MESSAGE_FROM_STRING 1024 448 #define FORMAT_MESSAGE_FROM_HMODULE 2048 449 #define FORMAT_MESSAGE_FROM_SYSTEM 4096 450 #define FORMAT_MESSAGE_ARGUMENT_ARRAY 8192 451 #define FORMAT_MESSAGE_MAX_WIDTH_MASK 255 452 #define EV_BREAK 64 453 #define EV_CTS 8 454 #define EV_DSR 16 455 #define EV_ERR 128 456 #define EV_EVENT1 2048 457 #define EV_EVENT2 4096 458 #define EV_PERR 512 459 #define EV_RING 256 460 #define EV_RLSD 32 461 #define EV_RX80FULL 1024 462 #define EV_RXCHAR 1 463 #define EV_RXFLAG 2 464 #define EV_TXEMPTY 4 465 /* also in ddk/ntapi.h */ 466 #define SEM_FAILCRITICALERRORS 0x0001 467 #define SEM_NOGPFAULTERRORBOX 0x0002 468 #define SEM_NOALIGNMENTFAULTEXCEPT 0x0004 469 #define SEM_NOOPENFILEERRORBOX 0x8000 470 /* end ntapi.h */ 471 #define SLE_ERROR 1 472 #define SLE_MINORERROR 2 473 #define SLE_WARNING 3 474 #define SHUTDOWN_NORETRY 1 475 #define MAXINTATOM 0xC000 476 #define INVALID_ATOM ((ATOM)0) 477 #define IGNORE 0 478 #define INFINITE 0xFFFFFFFF 479 #define NOPARITY 0 480 #define ODDPARITY 1 481 #define EVENPARITY 2 482 #define MARKPARITY 3 483 #define SPACEPARITY 4 484 #define ONESTOPBIT 0 485 #define ONE5STOPBITS 1 486 #define TWOSTOPBITS 2 487 #define CBR_110 110 488 #define CBR_300 300 489 #define CBR_600 600 490 #define CBR_1200 1200 491 #define CBR_2400 2400 492 #define CBR_4800 4800 493 #define CBR_9600 9600 494 #define CBR_14400 14400 495 #define CBR_19200 19200 496 #define CBR_38400 38400 497 #define CBR_56000 56000 498 #define CBR_57600 57600 499 #define CBR_115200 115200 500 #define CBR_128000 128000 501 #define CBR_256000 256000 502 #define BACKUP_INVALID 0 503 #define BACKUP_DATA 1 504 #define BACKUP_EA_DATA 2 505 #define BACKUP_SECURITY_DATA 3 506 #define BACKUP_ALTERNATE_DATA 4 507 #define BACKUP_LINK 5 508 #define BACKUP_PROPERTY_DATA 6 509 #define BACKUP_OBJECT_ID 7 510 #define BACKUP_REPARSE_DATA 8 511 #define BACKUP_SPARSE_BLOCK 9 512 #define STREAM_NORMAL_ATTRIBUTE 0 513 #define STREAM_MODIFIED_WHEN_READ 1 514 #define STREAM_CONTAINS_SECURITY 2 515 #define STREAM_CONTAINS_PROPERTIES 4 516 517 #define STARTF_USESHOWWINDOW 0x00000001 518 #define STARTF_USESIZE 0x00000002 519 #define STARTF_USEPOSITION 0x00000004 520 #define STARTF_USECOUNTCHARS 0x00000008 521 #define STARTF_USEFILLATTRIBUTE 0x00000010 522 #define STARTF_RUNFULLSCREEN 0x00000020 523 #define STARTF_FORCEONFEEDBACK 0x00000040 524 #define STARTF_FORCEOFFFEEDBACK 0x00000080 525 #define STARTF_USESTDHANDLES 0x00000100 526 #if (WINVER >= 0x400) 527 #define STARTF_USEHOTKEY 0x00000200 528 #define STARTF_TITLEISLINKNAME 0x00000800 529 #define STARTF_TITLEISAPPID 0x00001000 530 #define STARTF_PREVENTPINNING 0x00002000 531 #endif /* (WINVER >= 0x400) */ 532 533 #define TC_NORMAL 0 534 #define TC_HARDERR 1 535 #define TC_GP_TRAP 2 536 #define TC_SIGNAL 3 537 #define AC_LINE_OFFLINE 0 538 #define AC_LINE_ONLINE 1 539 #define AC_LINE_BACKUP_POWER 2 540 #define AC_LINE_UNKNOWN 255 541 #define BATTERY_FLAG_HIGH 1 542 #define BATTERY_FLAG_LOW 2 543 #define BATTERY_FLAG_CRITICAL 4 544 #define BATTERY_FLAG_CHARGING 8 545 #define BATTERY_FLAG_NO_BATTERY 128 546 #define BATTERY_FLAG_UNKNOWN 255 547 #define BATTERY_PERCENTAGE_UNKNOWN 255 548 #define BATTERY_LIFE_UNKNOWN 0xFFFFFFFF 549 #define DDD_RAW_TARGET_PATH 1 550 #define DDD_REMOVE_DEFINITION 2 551 #define DDD_EXACT_MATCH_ON_REMOVE 4 552 #define DDD_NO_BROADCAST_SYSTEM 8 553 #define DDD_LUID_BROADCAST_DRIVE 16 554 #define HINSTANCE_ERROR 32 555 #define MS_CTS_ON 16 556 #define MS_DSR_ON 32 557 #define MS_RING_ON 64 558 #define MS_RLSD_ON 128 559 #define DTR_CONTROL_DISABLE 0 560 #define DTR_CONTROL_ENABLE 1 561 #define DTR_CONTROL_HANDSHAKE 2 562 #define RTS_CONTROL_DISABLE 0 563 #define RTS_CONTROL_ENABLE 1 564 #define RTS_CONTROL_HANDSHAKE 2 565 #define RTS_CONTROL_TOGGLE 3 566 #define SECURITY_ANONYMOUS (SecurityAnonymous<<16) 567 #define SECURITY_IDENTIFICATION (SecurityIdentification<<16) 568 #define SECURITY_IMPERSONATION (SecurityImpersonation<<16) 569 #define SECURITY_DELEGATION (SecurityDelegation<<16) 570 #define SECURITY_CONTEXT_TRACKING 0x40000 571 #define SECURITY_EFFECTIVE_ONLY 0x80000 572 #define SECURITY_SQOS_PRESENT 0x100000 573 #define SECURITY_VALID_SQOS_FLAGS 0x1F0000 574 #define INVALID_FILE_SIZE 0xFFFFFFFF 575 #define TLS_OUT_OF_INDEXES (DWORD)0xFFFFFFFF 576 #if (_WIN32_WINNT >= 0x0501) 577 #define ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID 0x00000001 578 #define ACTCTX_FLAG_LANGID_VALID 0x00000002 579 #define ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID 0x00000004 580 #define ACTCTX_FLAG_RESOURCE_NAME_VALID 0x00000008 581 #define ACTCTX_FLAG_SET_PROCESS_DEFAULT 0x00000010 582 #define ACTCTX_FLAG_APPLICATION_NAME_VALID 0x00000020 583 #define ACTCTX_FLAG_SOURCE_IS_ASSEMBLYREF 0x00000040 584 #define ACTCTX_FLAG_HMODULE_VALID 0x00000080 585 #define DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION 0x00000001 586 #define FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX 0x00000001 587 #define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX 0x00000004 588 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE 0x00000008 589 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS 0x00000010 590 #define QUERY_ACTCTX_FLAG_NO_ADDREF 0x80000000 591 #if (_WIN32_WINNT >= 0x0600) 592 #define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1 593 #endif 594 #endif /* (_WIN32_WINNT >= 0x0501) */ 595 #if (_WIN32_WINNT >= 0x0500) 596 #define REPLACEFILE_WRITE_THROUGH 0x00000001 597 #define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002 598 #endif /* (_WIN32_WINNT >= 0x0500) */ 599 #if (_WIN32_WINNT >= 0x0400) 600 #define FIBER_FLAG_FLOAT_SWITCH 0x1 601 #endif 602 #define FLS_OUT_OF_INDEXES 0xFFFFFFFF 603 #if (_WIN32_WINNT >= 0x0600) 604 #define MAX_RESTART_CMD_LINE 0x800 605 #define RESTART_CYCLICAL 0x1 606 #define RESTART_NOTIFY_SOLUTION 0x2 607 #define RESTART_NOTIFY_FAULT 0x4 608 #define VOLUME_NAME_DOS 0x0 609 #define VOLUME_NAME_GUID 0x1 610 #define VOLUME_NAME_NT 0x2 611 #define VOLUME_NAME_NONE 0x4 612 #define FILE_NAME_NORMALIZED 0x0 613 #define FILE_NAME_OPENED 0x8 614 #define FILE_SKIP_COMPLETION_PORT_ON_SUCCESS 0x1 615 #define FILE_SKIP_SET_EVENT_ON_HANDLE 0x2 616 #endif 617 #if (_WIN32_WINNT >= 0x0500) 618 #define GET_MODULE_HANDLE_EX_FLAG_PIN 0x1 619 #define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT 0x2 620 #define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 0x4 621 #endif 622 #if (_WIN32_WINNT >= 0x0600) 623 #define CREATE_EVENT_MANUAL_RESET 0x1 624 #define CREATE_EVENT_INITIAL_SET 0x2 625 #define CREATE_MUTEX_INITIAL_OWNER 0x1 626 #define CREATE_WAITABLE_TIMER_MANUAL_RESET 0x1 627 #define SRWLOCK_INIT RTL_SRWLOCK_INIT 628 #define CONDITION_VARIABLE_INIT RTL_CONDITION_VARIABLE_INIT 629 #define CONDITION_VARIABLE_LOCKMODE_SHARED RTL_CONDITION_VARIABLE_LOCKMODE_SHARED 630 #endif 631 632 #define BASE_SEARCH_PATH_ENABLE_SAFE_SEARCHMODE 0x00001 633 #define BASE_SEARCH_PATH_DISABLE_SAFE_SEARCHMODE 0x10000 634 #define BASE_SEARCH_PATH_PERMANENT 0x08000 635 #define BASE_SEARCH_PATH_INVALID_FLAGS (~0x18001) 636 637 #define INIT_ONCE_STATIC_INIT RTL_RUN_ONCE_INIT 638 639 #if (_WIN32_WINNT >= 0x0600) 640 #define PROCESS_DEP_ENABLE 0x00000001 641 #define PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION 0x00000002 642 #endif 643 644 #define LOGON_WITH_PROFILE 0x00000001 645 #define LOGON_NETCREDENTIALS_ONLY 0x00000002 646 647 #ifndef RC_INVOKED 648 649 #ifndef _FILETIME_ 650 #define _FILETIME_ 651 typedef struct _FILETIME { 652 DWORD dwLowDateTime; 653 DWORD dwHighDateTime; 654 } FILETIME,*PFILETIME,*LPFILETIME; 655 #endif 656 657 typedef struct _BY_HANDLE_FILE_INFORMATION { 658 DWORD dwFileAttributes; 659 FILETIME ftCreationTime; 660 FILETIME ftLastAccessTime; 661 FILETIME ftLastWriteTime; 662 DWORD dwVolumeSerialNumber; 663 DWORD nFileSizeHigh; 664 DWORD nFileSizeLow; 665 DWORD nNumberOfLinks; 666 DWORD nFileIndexHigh; 667 DWORD nFileIndexLow; 668 } BY_HANDLE_FILE_INFORMATION,*PBY_HANDLE_FILE_INFORMATION,*LPBY_HANDLE_FILE_INFORMATION; 669 670 typedef struct _DCB { 671 DWORD DCBlength; 672 DWORD BaudRate; 673 DWORD fBinary:1; 674 DWORD fParity:1; 675 DWORD fOutxCtsFlow:1; 676 DWORD fOutxDsrFlow:1; 677 DWORD fDtrControl:2; 678 DWORD fDsrSensitivity:1; 679 DWORD fTXContinueOnXoff:1; 680 DWORD fOutX:1; 681 DWORD fInX:1; 682 DWORD fErrorChar:1; 683 DWORD fNull:1; 684 DWORD fRtsControl:2; 685 DWORD fAbortOnError:1; 686 DWORD fDummy2:17; 687 WORD wReserved; 688 WORD XonLim; 689 WORD XoffLim; 690 BYTE ByteSize; 691 BYTE Parity; 692 BYTE StopBits; 693 char XonChar; 694 char XoffChar; 695 char ErrorChar; 696 char EofChar; 697 char EvtChar; 698 WORD wReserved1; 699 } DCB,*LPDCB; 700 701 typedef struct _COMM_CONFIG { 702 DWORD dwSize; 703 WORD wVersion; 704 WORD wReserved; 705 DCB dcb; 706 DWORD dwProviderSubType; 707 DWORD dwProviderOffset; 708 DWORD dwProviderSize; 709 WCHAR wcProviderData[1]; 710 } COMMCONFIG,*LPCOMMCONFIG; 711 712 typedef struct _COMMPROP { 713 WORD wPacketLength; 714 WORD wPacketVersion; 715 DWORD dwServiceMask; 716 DWORD dwReserved1; 717 DWORD dwMaxTxQueue; 718 DWORD dwMaxRxQueue; 719 DWORD dwMaxBaud; 720 DWORD dwProvSubType; 721 DWORD dwProvCapabilities; 722 DWORD dwSettableParams; 723 DWORD dwSettableBaud; 724 WORD wSettableData; 725 WORD wSettableStopParity; 726 DWORD dwCurrentTxQueue; 727 DWORD dwCurrentRxQueue; 728 DWORD dwProvSpec1; 729 DWORD dwProvSpec2; 730 WCHAR wcProvChar[1]; 731 } COMMPROP,*LPCOMMPROP; 732 733 typedef struct _COMMTIMEOUTS { 734 DWORD ReadIntervalTimeout; 735 DWORD ReadTotalTimeoutMultiplier; 736 DWORD ReadTotalTimeoutConstant; 737 DWORD WriteTotalTimeoutMultiplier; 738 DWORD WriteTotalTimeoutConstant; 739 } COMMTIMEOUTS,*LPCOMMTIMEOUTS; 740 741 typedef struct _COMSTAT { 742 DWORD fCtsHold:1; 743 DWORD fDsrHold:1; 744 DWORD fRlsdHold:1; 745 DWORD fXoffHold:1; 746 DWORD fXoffSent:1; 747 DWORD fEof:1; 748 DWORD fTxim:1; 749 DWORD fReserved:25; 750 DWORD cbInQue; 751 DWORD cbOutQue; 752 } COMSTAT,*LPCOMSTAT; 753 754 typedef DWORD (WINAPI *LPTHREAD_START_ROUTINE)(LPVOID); 755 756 typedef struct _CREATE_PROCESS_DEBUG_INFO { 757 HANDLE hFile; 758 HANDLE hProcess; 759 HANDLE hThread; 760 LPVOID lpBaseOfImage; 761 DWORD dwDebugInfoFileOffset; 762 DWORD nDebugInfoSize; 763 LPVOID lpThreadLocalBase; 764 LPTHREAD_START_ROUTINE lpStartAddress; 765 LPVOID lpImageName; 766 WORD fUnicode; 767 } CREATE_PROCESS_DEBUG_INFO,*LPCREATE_PROCESS_DEBUG_INFO; 768 769 typedef struct _CREATE_THREAD_DEBUG_INFO { 770 HANDLE hThread; 771 LPVOID lpThreadLocalBase; 772 LPTHREAD_START_ROUTINE lpStartAddress; 773 } CREATE_THREAD_DEBUG_INFO,*LPCREATE_THREAD_DEBUG_INFO; 774 775 typedef struct _EXCEPTION_DEBUG_INFO { 776 EXCEPTION_RECORD ExceptionRecord; 777 DWORD dwFirstChance; 778 } EXCEPTION_DEBUG_INFO,*LPEXCEPTION_DEBUG_INFO; 779 780 typedef struct _EXIT_THREAD_DEBUG_INFO { 781 DWORD dwExitCode; 782 } EXIT_THREAD_DEBUG_INFO,*LPEXIT_THREAD_DEBUG_INFO; 783 784 typedef struct _EXIT_PROCESS_DEBUG_INFO { 785 DWORD dwExitCode; 786 } EXIT_PROCESS_DEBUG_INFO,*LPEXIT_PROCESS_DEBUG_INFO; 787 788 typedef struct _LOAD_DLL_DEBUG_INFO { 789 HANDLE hFile; 790 LPVOID lpBaseOfDll; 791 DWORD dwDebugInfoFileOffset; 792 DWORD nDebugInfoSize; 793 LPVOID lpImageName; 794 WORD fUnicode; 795 } LOAD_DLL_DEBUG_INFO,*LPLOAD_DLL_DEBUG_INFO; 796 797 typedef struct _UNLOAD_DLL_DEBUG_INFO { 798 LPVOID lpBaseOfDll; 799 } UNLOAD_DLL_DEBUG_INFO,*LPUNLOAD_DLL_DEBUG_INFO; 800 801 typedef struct _OUTPUT_DEBUG_STRING_INFO { 802 LPSTR lpDebugStringData; 803 WORD fUnicode; 804 WORD nDebugStringLength; 805 } OUTPUT_DEBUG_STRING_INFO,*LPOUTPUT_DEBUG_STRING_INFO; 806 807 typedef struct _RIP_INFO { 808 DWORD dwError; 809 DWORD dwType; 810 } RIP_INFO,*LPRIP_INFO; 811 812 typedef struct _DEBUG_EVENT { 813 DWORD dwDebugEventCode; 814 DWORD dwProcessId; 815 DWORD dwThreadId; 816 union { 817 EXCEPTION_DEBUG_INFO Exception; 818 CREATE_THREAD_DEBUG_INFO CreateThread; 819 CREATE_PROCESS_DEBUG_INFO CreateProcessInfo; 820 EXIT_THREAD_DEBUG_INFO ExitThread; 821 EXIT_PROCESS_DEBUG_INFO ExitProcess; 822 LOAD_DLL_DEBUG_INFO LoadDll; 823 UNLOAD_DLL_DEBUG_INFO UnloadDll; 824 OUTPUT_DEBUG_STRING_INFO DebugString; 825 RIP_INFO RipInfo; 826 } u; 827 } DEBUG_EVENT,*LPDEBUG_EVENT; 828 829 #ifndef MIDL_PASS 830 typedef PCONTEXT LPCONTEXT; 831 typedef PEXCEPTION_RECORD LPEXCEPTION_RECORD; 832 typedef PEXCEPTION_POINTERS LPEXCEPTION_POINTERS; 833 #endif 834 835 typedef struct _OVERLAPPED { 836 ULONG_PTR Internal; 837 ULONG_PTR InternalHigh; 838 union { 839 struct { 840 DWORD Offset; 841 DWORD OffsetHigh; 842 } DUMMYSTRUCTNAME; 843 PVOID Pointer; 844 } DUMMYUNIONNAME; 845 HANDLE hEvent; 846 } OVERLAPPED, *POVERLAPPED, *LPOVERLAPPED; 847 848 typedef struct _OVERLAPPED_ENTRY { 849 ULONG_PTR lpCompletionKey; 850 LPOVERLAPPED lpOverlapped; 851 ULONG_PTR Internal; 852 DWORD dwNumberOfBytesTransferred; 853 } OVERLAPPED_ENTRY, *LPOVERLAPPED_ENTRY; 854 855 typedef struct _STARTUPINFOA { 856 DWORD cb; 857 LPSTR lpReserved; 858 LPSTR lpDesktop; 859 LPSTR lpTitle; 860 DWORD dwX; 861 DWORD dwY; 862 DWORD dwXSize; 863 DWORD dwYSize; 864 DWORD dwXCountChars; 865 DWORD dwYCountChars; 866 DWORD dwFillAttribute; 867 DWORD dwFlags; 868 WORD wShowWindow; 869 WORD cbReserved2; 870 PBYTE lpReserved2; 871 HANDLE hStdInput; 872 HANDLE hStdOutput; 873 HANDLE hStdError; 874 } STARTUPINFOA,*LPSTARTUPINFOA; 875 876 typedef struct _STARTUPINFOW { 877 DWORD cb; 878 LPWSTR lpReserved; 879 LPWSTR lpDesktop; 880 LPWSTR lpTitle; 881 DWORD dwX; 882 DWORD dwY; 883 DWORD dwXSize; 884 DWORD dwYSize; 885 DWORD dwXCountChars; 886 DWORD dwYCountChars; 887 DWORD dwFillAttribute; 888 DWORD dwFlags; 889 WORD wShowWindow; 890 WORD cbReserved2; 891 PBYTE lpReserved2; 892 HANDLE hStdInput; 893 HANDLE hStdOutput; 894 HANDLE hStdError; 895 } STARTUPINFOW,*LPSTARTUPINFOW; 896 897 typedef struct _PROCESS_INFORMATION { 898 HANDLE hProcess; 899 HANDLE hThread; 900 DWORD dwProcessId; 901 DWORD dwThreadId; 902 } PROCESS_INFORMATION,*PPROCESS_INFORMATION,*LPPROCESS_INFORMATION; 903 904 typedef struct _CRITICAL_SECTION_DEBUG { 905 WORD Type; 906 WORD CreatorBackTraceIndex; 907 struct _CRITICAL_SECTION *CriticalSection; 908 LIST_ENTRY ProcessLocksList; 909 DWORD EntryCount; 910 DWORD ContentionCount; 911 union 912 { 913 DWORD_PTR WineDebugString; 914 DWORD_PTR Spare[1]; 915 struct 916 { 917 DWORD Flags; 918 WORD CreatorBackTraceIndexHigh; 919 WORD SpareWORD; 920 }; 921 }; 922 } CRITICAL_SECTION_DEBUG,*PCRITICAL_SECTION_DEBUG,*LPCRITICAL_SECTION_DEBUG; 923 924 typedef struct _CRITICAL_SECTION { 925 PCRITICAL_SECTION_DEBUG DebugInfo; 926 LONG LockCount; 927 LONG RecursionCount; 928 HANDLE OwningThread; 929 HANDLE LockSemaphore; 930 ULONG_PTR SpinCount; 931 } CRITICAL_SECTION,*PCRITICAL_SECTION,*LPCRITICAL_SECTION; 932 933 #ifndef _SYSTEMTIME_ 934 #define _SYSTEMTIME_ 935 typedef struct _SYSTEMTIME { 936 WORD wYear; 937 WORD wMonth; 938 WORD wDayOfWeek; 939 WORD wDay; 940 WORD wHour; 941 WORD wMinute; 942 WORD wSecond; 943 WORD wMilliseconds; 944 } SYSTEMTIME,*LPSYSTEMTIME,*PSYSTEMTIME; 945 #endif /* _SYSTEMTIME_ */ 946 #if (_WIN32_WINNT >= 0x0500) 947 typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK ; 948 #endif 949 typedef struct _WIN32_FILE_ATTRIBUTE_DATA { 950 DWORD dwFileAttributes; 951 FILETIME ftCreationTime; 952 FILETIME ftLastAccessTime; 953 FILETIME ftLastWriteTime; 954 DWORD nFileSizeHigh; 955 DWORD nFileSizeLow; 956 } WIN32_FILE_ATTRIBUTE_DATA,*LPWIN32_FILE_ATTRIBUTE_DATA; 957 typedef struct _WIN32_FIND_DATAA { 958 DWORD dwFileAttributes; 959 FILETIME ftCreationTime; 960 FILETIME ftLastAccessTime; 961 FILETIME ftLastWriteTime; 962 DWORD nFileSizeHigh; 963 DWORD nFileSizeLow; 964 DWORD dwReserved0; 965 DWORD dwReserved1; 966 CHAR cFileName[MAX_PATH]; 967 CHAR cAlternateFileName[14]; 968 } WIN32_FIND_DATAA,*PWIN32_FIND_DATAA,*LPWIN32_FIND_DATAA; 969 typedef struct _WIN32_FIND_DATAW { 970 DWORD dwFileAttributes; 971 FILETIME ftCreationTime; 972 FILETIME ftLastAccessTime; 973 FILETIME ftLastWriteTime; 974 DWORD nFileSizeHigh; 975 DWORD nFileSizeLow; 976 DWORD dwReserved0; 977 DWORD dwReserved1; 978 WCHAR cFileName[MAX_PATH]; 979 WCHAR cAlternateFileName[14]; 980 } WIN32_FIND_DATAW,*PWIN32_FIND_DATAW,*LPWIN32_FIND_DATAW; 981 982 #if (_WIN32_WINNT >= 0x0501) 983 typedef enum _STREAM_INFO_LEVELS { 984 FindStreamInfoStandard 985 } STREAM_INFO_LEVELS; 986 987 typedef struct _WIN32_FIND_STREAM_DATA { 988 LARGE_INTEGER StreamSize; 989 WCHAR cStreamName[MAX_PATH + 36]; 990 } WIN32_FIND_STREAM_DATA, *PWIN32_FIND_STREAM_DATA; 991 #endif 992 993 typedef struct _WIN32_STREAM_ID { 994 DWORD dwStreamId; 995 DWORD dwStreamAttributes; 996 LARGE_INTEGER Size; 997 DWORD dwStreamNameSize; 998 WCHAR cStreamName[ANYSIZE_ARRAY]; 999 } WIN32_STREAM_ID, *LPWIN32_STREAM_ID; 1000 1001 #if (_WIN32_WINNT >= 0x0600) 1002 1003 typedef enum _FILE_ID_TYPE { 1004 FileIdType, 1005 ObjectIdType, 1006 ExtendedFileIdType, 1007 MaximumFileIdType 1008 } FILE_ID_TYPE, *PFILE_ID_TYPE; 1009 1010 typedef struct _FILE_ID_DESCRIPTOR { 1011 DWORD dwSize; 1012 FILE_ID_TYPE Type; 1013 union { 1014 LARGE_INTEGER FileId; 1015 GUID ObjectId; 1016 } DUMMYUNIONNAME; 1017 } FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR; 1018 1019 #if (NTDDI_VERSION >= NTDDI_LONGHORN) || defined(__REACTOS__) 1020 typedef enum _FILE_INFO_BY_HANDLE_CLASS { 1021 FileBasicInfo, 1022 FileStandardInfo, 1023 FileNameInfo, 1024 FileRenameInfo, 1025 FileDispositionInfo, 1026 FileAllocationInfo, 1027 FileEndOfFileInfo, 1028 FileStreamInfo, 1029 FileCompressionInfo, 1030 FileAttributeTagInfo, 1031 FileIdBothDirectoryInfo, 1032 FileIdBothDirectoryRestartInfo, 1033 FileIoPriorityHintInfo, 1034 FileRemoteProtocolInfo, 1035 FileFullDirectoryInfo, 1036 FileFullDirectoryRestartInfo, 1037 #if (NTDDI_VERSION >= NTDDI_WIN8) || defined(__REACTOS__) 1038 FileStorageInfo, 1039 FileAlignmentInfo, 1040 FileIdInfo, 1041 FileIdExtdDirectoryInfo, 1042 FileIdExtdDirectoryRestartInfo, 1043 #endif 1044 #if (NTDDI_VERSION >= NTDDI_WIN10_RS1) || defined(__REACTOS__) 1045 FileDispositionInfoEx, 1046 FileRenameInfoEx, 1047 #endif 1048 #if (NTDDI_VERSION >= NTDDI_WIN10_19H1) || defined(__REACTOS__) 1049 FileCaseSensitiveInfo, 1050 FileNormalizedNameInfo, 1051 #endif 1052 MaximumFileInfoByHandleClass 1053 } FILE_INFO_BY_HANDLE_CLASS, *PFILE_INFO_BY_HANDLE_CLASS; 1054 #endif 1055 1056 typedef struct _FILE_ID_BOTH_DIR_INFO { 1057 DWORD NextEntryOffset; 1058 DWORD FileIndex; 1059 LARGE_INTEGER CreationTime; 1060 LARGE_INTEGER LastAccessTime; 1061 LARGE_INTEGER LastWriteTime; 1062 LARGE_INTEGER ChangeTime; 1063 LARGE_INTEGER EndOfFile; 1064 LARGE_INTEGER AllocationSize; 1065 DWORD FileAttributes; 1066 DWORD FileNameLength; 1067 DWORD EaSize; 1068 CCHAR ShortNameLength; 1069 WCHAR ShortName[12]; 1070 LARGE_INTEGER FileId; 1071 WCHAR FileName[1]; 1072 } FILE_ID_BOTH_DIR_INFO, *PFILE_ID_BOTH_DIR_INFO; 1073 1074 typedef struct _FILE_BASIC_INFO { 1075 LARGE_INTEGER CreationTime; 1076 LARGE_INTEGER LastAccessTime; 1077 LARGE_INTEGER LastWriteTime; 1078 LARGE_INTEGER ChangeTime; 1079 DWORD FileAttributes; 1080 } FILE_BASIC_INFO, *PFILE_BASIC_INFO; 1081 1082 typedef struct _FILE_STANDARD_INFO { 1083 LARGE_INTEGER AllocationSize; 1084 LARGE_INTEGER EndOfFile; 1085 DWORD NumberOfLinks; 1086 BOOLEAN DeletePending; 1087 BOOLEAN Directory; 1088 } FILE_STANDARD_INFO, *PFILE_STANDARD_INFO; 1089 1090 typedef struct _FILE_NAME_INFO { 1091 DWORD FileNameLength; 1092 WCHAR FileName[1]; 1093 } FILE_NAME_INFO, *PFILE_NAME_INFO; 1094 1095 typedef enum _PRIORITY_HINT { 1096 IoPriorityHintVeryLow, 1097 IoPriorityHintLow, 1098 IoPriorityHintNormal, 1099 MaximumIoPriorityHintType 1100 } PRIORITY_HINT; 1101 1102 typedef struct _FILE_IO_PRIORITY_HINT_INFO { 1103 PRIORITY_HINT PriorityHint; 1104 } FILE_IO_PRIORITY_HINT_INFO; 1105 1106 typedef struct _FILE_ALLOCATION_INFO { 1107 LARGE_INTEGER AllocationSize; 1108 } FILE_ALLOCATION_INFO, *PFILE_ALLOCATION_INFO; 1109 1110 typedef struct _FILE_DISPOSITION_INFO { 1111 BOOLEAN DeleteFile; 1112 } FILE_DISPOSITION_INFO, *PFILE_DISPOSITION_INFO; 1113 1114 typedef struct _FILE_END_OF_FILE_INFO { 1115 LARGE_INTEGER EndOfFile; 1116 } FILE_END_OF_FILE_INFO, *PFILE_END_OF_FILE_INFO; 1117 1118 typedef struct _FILE_RENAME_INFO { 1119 BOOLEAN ReplaceIfExists; 1120 HANDLE RootDirectory; 1121 DWORD FileNameLength; 1122 WCHAR FileName[1]; 1123 } FILE_RENAME_INFO, *PFILE_RENAME_INFO; 1124 1125 typedef struct _FILE_ATTRIBUTE_TAG_INFO { 1126 DWORD FileAttributes; 1127 DWORD ReparseTag; 1128 } FILE_ATTRIBUTE_TAG_INFO, *PFILE_ATTRIBUTE_TAG_INFO; 1129 1130 typedef struct _FILE_COMPRESSION_INFO { 1131 LARGE_INTEGER CompressedFileSize; 1132 WORD CompressionFormat; 1133 UCHAR CompressionUnitShift; 1134 UCHAR ChunkShift; 1135 UCHAR ClusterShift; 1136 UCHAR Reserved[3]; 1137 } FILE_COMPRESSION_INFO, *PFILE_COMPRESSION_INFO; 1138 1139 typedef struct _FILE_REMOTE_PROTOCOL_INFO { 1140 USHORT StructureVersion; 1141 USHORT StructureSize; 1142 ULONG Protocol; 1143 USHORT ProtocolMajorVersion; 1144 USHORT ProtocolMinorVersion; 1145 USHORT ProtocolRevision; 1146 USHORT Reserved; 1147 ULONG Flags; 1148 struct { 1149 ULONG Reserved[8]; 1150 } GenericReserved; 1151 struct { 1152 ULONG Reserved[16]; 1153 } ProtocolSpecificReserved; 1154 } FILE_REMOTE_PROTOCOL_INFO, *PFILE_REMOTE_PROTOCOL_INFO; 1155 1156 #endif 1157 1158 typedef enum _FINDEX_INFO_LEVELS { 1159 FindExInfoStandard, 1160 FindExInfoBasic, 1161 FindExInfoMaxInfoLevel 1162 } FINDEX_INFO_LEVELS; 1163 1164 typedef enum _FINDEX_SEARCH_OPS { 1165 FindExSearchNameMatch, 1166 FindExSearchLimitToDirectories, 1167 FindExSearchLimitToDevices, 1168 FindExSearchMaxSearchOp 1169 } FINDEX_SEARCH_OPS; 1170 1171 typedef struct tagHW_PROFILE_INFOA { 1172 DWORD dwDockInfo; 1173 CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; 1174 CHAR szHwProfileName[MAX_PROFILE_LEN]; 1175 } HW_PROFILE_INFOA,*LPHW_PROFILE_INFOA; 1176 1177 typedef struct tagHW_PROFILE_INFOW { 1178 DWORD dwDockInfo; 1179 WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; 1180 WCHAR szHwProfileName[MAX_PROFILE_LEN]; 1181 } HW_PROFILE_INFOW,*LPHW_PROFILE_INFOW; 1182 1183 /* Event Logging */ 1184 1185 #define EVENTLOG_FULL_INFO 0 1186 1187 typedef struct _EVENTLOG_FULL_INFORMATION { 1188 DWORD dwFull; 1189 } EVENTLOG_FULL_INFORMATION, *LPEVENTLOG_FULL_INFORMATION; 1190 1191 typedef enum _GET_FILEEX_INFO_LEVELS { 1192 GetFileExInfoStandard, 1193 GetFileExMaxInfoLevel 1194 } GET_FILEEX_INFO_LEVELS; 1195 1196 typedef struct _SYSTEM_INFO { 1197 _ANONYMOUS_UNION union { 1198 DWORD dwOemId; 1199 _ANONYMOUS_STRUCT struct { 1200 WORD wProcessorArchitecture; 1201 WORD wReserved; 1202 } DUMMYSTRUCTNAME; 1203 } DUMMYUNIONNAME; 1204 DWORD dwPageSize; 1205 PVOID lpMinimumApplicationAddress; 1206 PVOID lpMaximumApplicationAddress; 1207 DWORD_PTR dwActiveProcessorMask; 1208 DWORD dwNumberOfProcessors; 1209 DWORD dwProcessorType; 1210 DWORD dwAllocationGranularity; 1211 WORD wProcessorLevel; 1212 WORD wProcessorRevision; 1213 } SYSTEM_INFO,*LPSYSTEM_INFO; 1214 1215 typedef struct _SYSTEM_POWER_STATUS { 1216 BYTE ACLineStatus; 1217 BYTE BatteryFlag; 1218 BYTE BatteryLifePercent; 1219 BYTE SystemStatusFlag; 1220 DWORD BatteryLifeTime; 1221 DWORD BatteryFullLifeTime; 1222 } SYSTEM_POWER_STATUS,*LPSYSTEM_POWER_STATUS; 1223 1224 typedef struct _TIME_DYNAMIC_ZONE_INFORMATION { 1225 LONG Bias; 1226 WCHAR StandardName[32]; 1227 SYSTEMTIME StandardDate; 1228 LONG StandardBias; 1229 WCHAR DaylightName[32]; 1230 SYSTEMTIME DaylightDate; 1231 LONG DaylightBias; 1232 WCHAR TimeZoneKeyName[128]; 1233 BOOLEAN DynamicDaylightTimeDisabled; 1234 } DYNAMIC_TIME_ZONE_INFORMATION, *PDYNAMIC_TIME_ZONE_INFORMATION; 1235 1236 typedef struct _TIME_ZONE_INFORMATION { 1237 LONG Bias; 1238 WCHAR StandardName[32]; 1239 SYSTEMTIME StandardDate; 1240 LONG StandardBias; 1241 WCHAR DaylightName[32]; 1242 SYSTEMTIME DaylightDate; 1243 LONG DaylightBias; 1244 } TIME_ZONE_INFORMATION,*PTIME_ZONE_INFORMATION,*LPTIME_ZONE_INFORMATION; 1245 1246 typedef struct _MEMORYSTATUS { 1247 DWORD dwLength; 1248 DWORD dwMemoryLoad; 1249 SIZE_T dwTotalPhys; 1250 SIZE_T dwAvailPhys; 1251 SIZE_T dwTotalPageFile; 1252 SIZE_T dwAvailPageFile; 1253 SIZE_T dwTotalVirtual; 1254 SIZE_T dwAvailVirtual; 1255 } MEMORYSTATUS,*LPMEMORYSTATUS; 1256 1257 #if (_WIN32_WINNT >= 0x0500) 1258 typedef struct _MEMORYSTATUSEX { 1259 DWORD dwLength; 1260 DWORD dwMemoryLoad; 1261 DWORDLONG ullTotalPhys; 1262 DWORDLONG ullAvailPhys; 1263 DWORDLONG ullTotalPageFile; 1264 DWORDLONG ullAvailPageFile; 1265 DWORDLONG ullTotalVirtual; 1266 DWORDLONG ullAvailVirtual; 1267 DWORDLONG ullAvailExtendedVirtual; 1268 } MEMORYSTATUSEX, *LPMEMORYSTATUSEX; 1269 #endif 1270 1271 #ifndef _LDT_ENTRY_DEFINED 1272 #define _LDT_ENTRY_DEFINED 1273 typedef struct _LDT_ENTRY { 1274 WORD LimitLow; 1275 WORD BaseLow; 1276 union { 1277 struct { 1278 BYTE BaseMid; 1279 BYTE Flags1; 1280 BYTE Flags2; 1281 BYTE BaseHi; 1282 } Bytes; 1283 struct { 1284 DWORD BaseMid:8; 1285 DWORD Type:5; 1286 DWORD Dpl:2; 1287 DWORD Pres:1; 1288 DWORD LimitHi:4; 1289 DWORD Sys:1; 1290 DWORD Reserved_0:1; 1291 DWORD Default_Big:1; 1292 DWORD Granularity:1; 1293 DWORD BaseHi:8; 1294 } Bits; 1295 } HighWord; 1296 } LDT_ENTRY,*PLDT_ENTRY,*LPLDT_ENTRY; 1297 #endif 1298 1299 typedef struct _PROCESS_HEAP_ENTRY { 1300 PVOID lpData; 1301 DWORD cbData; 1302 BYTE cbOverhead; 1303 BYTE iRegionIndex; 1304 WORD wFlags; 1305 _ANONYMOUS_UNION union { 1306 struct { 1307 HANDLE hMem; 1308 DWORD dwReserved[3]; 1309 } Block; 1310 struct { 1311 DWORD dwCommittedSize; 1312 DWORD dwUnCommittedSize; 1313 LPVOID lpFirstBlock; 1314 LPVOID lpLastBlock; 1315 } Region; 1316 } DUMMYUNIONNAME; 1317 } PROCESS_HEAP_ENTRY,*PPROCESS_HEAP_ENTRY,*LPPROCESS_HEAP_ENTRY; 1318 1319 typedef struct _OFSTRUCT { 1320 BYTE cBytes; 1321 BYTE fFixedDisk; 1322 WORD nErrCode; 1323 WORD Reserved1; 1324 WORD Reserved2; 1325 CHAR szPathName[OFS_MAXPATHNAME]; 1326 } OFSTRUCT,*LPOFSTRUCT,*POFSTRUCT; 1327 1328 #if (_WIN32_WINNT >= 0x0501) 1329 typedef struct tagACTCTXA { 1330 ULONG cbSize; 1331 DWORD dwFlags; 1332 LPCSTR lpSource; 1333 USHORT wProcessorArchitecture; 1334 LANGID wLangId; 1335 LPCSTR lpAssemblyDirectory; 1336 LPCSTR lpResourceName; 1337 LPCSTR lpApplicationName; 1338 HMODULE hModule; 1339 } ACTCTXA,*PACTCTXA; 1340 typedef const ACTCTXA *PCACTCTXA; 1341 1342 typedef struct tagACTCTXW { 1343 ULONG cbSize; 1344 DWORD dwFlags; 1345 LPCWSTR lpSource; 1346 USHORT wProcessorArchitecture; 1347 LANGID wLangId; 1348 LPCWSTR lpAssemblyDirectory; 1349 LPCWSTR lpResourceName; 1350 LPCWSTR lpApplicationName; 1351 HMODULE hModule; 1352 } ACTCTXW,*PACTCTXW; 1353 typedef const ACTCTXW *PCACTCTXW; 1354 1355 typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 { 1356 ULONG cbSize; 1357 ULONG ulDataFormatVersion; 1358 PVOID lpData; 1359 ULONG ulLength; 1360 PVOID lpSectionGlobalData; 1361 ULONG ulSectionGlobalDataLength; 1362 PVOID lpSectionBase; 1363 ULONG ulSectionTotalLength; 1364 HANDLE hActCtx; 1365 ULONG ulAssemblyRosterIndex; 1366 } ACTCTX_SECTION_KEYED_DATA_2600, *PACTCTX_SECTION_KEYED_DATA_2600; 1367 typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600; 1368 1369 typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA { 1370 PVOID lpInformation; 1371 PVOID lpSectionBase; 1372 ULONG ulSectionLength; 1373 PVOID lpSectionGlobalDataBase; 1374 ULONG ulSectionGlobalDataLength; 1375 } ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA; 1376 typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA; 1377 1378 typedef struct tagACTCTX_SECTION_KEYED_DATA { 1379 ULONG cbSize; 1380 ULONG ulDataFormatVersion; 1381 PVOID lpData; 1382 ULONG ulLength; 1383 PVOID lpSectionGlobalData; 1384 ULONG ulSectionGlobalDataLength; 1385 PVOID lpSectionBase; 1386 ULONG ulSectionTotalLength; 1387 HANDLE hActCtx; 1388 ULONG ulAssemblyRosterIndex; 1389 /* Non 2600 extra fields */ 1390 ULONG ulFlags; 1391 ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata; 1392 } ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA; 1393 1394 typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA; 1395 1396 typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION { 1397 HANDLE hActCtx; 1398 DWORD dwFlags; 1399 } ACTIVATION_CONTEXT_BASIC_INFORMATION, *PACTIVATION_CONTEXT_BASIC_INFORMATION; 1400 typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION; 1401 1402 typedef BOOL 1403 (WINAPI *PQUERYACTCTXW_FUNC)( 1404 _In_ DWORD dwFlags, 1405 _In_ HANDLE hActCtx, 1406 _In_opt_ PVOID pvSubInstance, 1407 _In_ ULONG ulInfoClass, 1408 _Out_writes_bytes_to_opt_(cbBuffer, *pcbWrittenOrRequired) PVOID pvBuffer, 1409 _In_ SIZE_T cbBuffer, 1410 _Out_opt_ SIZE_T *pcbWrittenOrRequired); 1411 1412 typedef enum { 1413 LowMemoryResourceNotification , 1414 HighMemoryResourceNotification 1415 } MEMORY_RESOURCE_NOTIFICATION_TYPE; 1416 #endif /* (_WIN32_WINNT >= 0x0501) */ 1417 1418 #if (_WIN32_WINNT >= 0x0500) 1419 typedef enum _COMPUTER_NAME_FORMAT { 1420 ComputerNameNetBIOS, 1421 ComputerNameDnsHostname, 1422 ComputerNameDnsDomain, 1423 ComputerNameDnsFullyQualified, 1424 ComputerNamePhysicalNetBIOS, 1425 ComputerNamePhysicalDnsHostname, 1426 ComputerNamePhysicalDnsDomain, 1427 ComputerNamePhysicalDnsFullyQualified, 1428 ComputerNameMax 1429 } COMPUTER_NAME_FORMAT; 1430 #endif /* (_WIN32_WINNT >= 0x0500) */ 1431 1432 #if (_WIN32_WINNT >= 0x0600) 1433 typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK; 1434 typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE; 1435 #endif 1436 1437 typedef struct _PROC_THREAD_ATTRIBUTE_LIST *PPROC_THREAD_ATTRIBUTE_LIST, *LPPROC_THREAD_ATTRIBUTE_LIST; 1438 1439 #define PROC_THREAD_ATTRIBUTE_NUMBER 0x0000ffff 1440 #define PROC_THREAD_ATTRIBUTE_THREAD 0x00010000 1441 #define PROC_THREAD_ATTRIBUTE_INPUT 0x00020000 1442 #define PROC_THREAD_ATTRIBUTE_ADDITIVE 0x00040000 1443 1444 typedef enum _PROC_THREAD_ATTRIBUTE_NUM { 1445 ProcThreadAttributeParentProcess = 0, 1446 ProcThreadAttributeHandleList = 2, 1447 ProcThreadAttributeGroupAffinity = 3, 1448 ProcThreadAttributeIdealProcessor = 5, 1449 ProcThreadAttributeUmsThread = 6, 1450 ProcThreadAttributeMitigationPolicy = 7, 1451 ProcThreadAttributeSecurityCapabilities = 9, 1452 ProcThreadAttributeProtectionLevel = 11, 1453 ProcThreadAttributeJobList = 13, 1454 ProcThreadAttributeChildProcessPolicy = 14, 1455 ProcThreadAttributeAllApplicationPackagesPolicy = 15, 1456 ProcThreadAttributeWin32kFilter = 16, 1457 ProcThreadAttributeSafeOpenPromptOriginClaim = 17, 1458 } PROC_THREAD_ATTRIBUTE_NUM; 1459 1460 #define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT) 1461 #define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT) 1462 #define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS (ProcThreadAttributeParentProcess | PROC_THREAD_ATTRIBUTE_INPUT) 1463 1464 typedef DWORD 1465 (WINAPI *PFE_EXPORT_FUNC)( 1466 _In_reads_bytes_(ulLength) PBYTE pbData, 1467 _In_opt_ PVOID pvCallbackContext, 1468 _In_ ULONG ulLength); 1469 1470 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); 1471 1472 typedef VOID (WINAPI *PFIBER_START_ROUTINE)( LPVOID lpFiberParameter ); 1473 typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE; 1474 1475 typedef VOID (WINAPI *PFLS_CALLBACK_FUNCTION)(PVOID); 1476 typedef BOOL(CALLBACK *ENUMRESLANGPROCA)(HMODULE,LPCSTR,LPCSTR,WORD,LONG_PTR); 1477 typedef BOOL(CALLBACK *ENUMRESLANGPROCW)(HMODULE,LPCWSTR,LPCWSTR,WORD,LONG_PTR); 1478 typedef BOOL(CALLBACK *ENUMRESNAMEPROCA)(HMODULE,LPCSTR,LPSTR,LONG_PTR); 1479 typedef BOOL(CALLBACK *ENUMRESNAMEPROCW)(HMODULE,LPCWSTR,LPWSTR,LONG_PTR); 1480 typedef BOOL(CALLBACK *ENUMRESTYPEPROCA)(HMODULE,LPSTR,LONG_PTR); 1481 typedef BOOL(CALLBACK *ENUMRESTYPEPROCW)(HMODULE,LPWSTR,LONG_PTR); 1482 typedef void(CALLBACK *LPOVERLAPPED_COMPLETION_ROUTINE)(DWORD,DWORD,LPOVERLAPPED); 1483 typedef LONG(CALLBACK *PTOP_LEVEL_EXCEPTION_FILTER)(LPEXCEPTION_POINTERS); 1484 typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER; 1485 typedef void(APIENTRY *PAPCFUNC)(ULONG_PTR); 1486 typedef void(CALLBACK *PTIMERAPCROUTINE)(PVOID,DWORD,DWORD); 1487 #if (_WIN32_WINNT >= 0x0600) 1488 typedef DWORD (WINAPI *APPLICATION_RECOVERY_CALLBACK)(PVOID); 1489 #endif 1490 1491 #ifdef WINE_NO_UNICODE_MACROS /* force using a cast */ 1492 #define MAKEINTATOM(atom) ((ULONG_PTR)((WORD)(atom))) 1493 #else 1494 #define MAKEINTATOM(i) (LPTSTR)((ULONG_PTR)((WORD)(i))) 1495 #endif 1496 1497 typedef DWORD 1498 (WINAPI *PFE_IMPORT_FUNC)( 1499 _Out_writes_bytes_to_(*ulLength, *ulLength) PBYTE pbData, 1500 _In_opt_ PVOID pvCallbackContext, 1501 _Inout_ PULONG ulLength); 1502 1503 /* Functions */ 1504 #ifndef UNDER_CE 1505 int APIENTRY WinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPSTR, _In_ int); 1506 #else 1507 int APIENTRY WinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPWSTR, _In_ int); 1508 #endif 1509 int APIENTRY wWinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPWSTR, _In_ int); 1510 1511 long 1512 WINAPI 1513 _hread( 1514 _In_ HFILE hFile, 1515 _Out_writes_bytes_to_(lBytes, return) LPVOID lpBuffer, 1516 _In_ long lBytes); 1517 1518 long 1519 WINAPI 1520 _hwrite( 1521 _In_ HFILE hFile, 1522 _In_reads_bytes_(lBytes) LPCCH lpBuffer, 1523 _In_ long lBytes); 1524 1525 HFILE WINAPI _lclose(_In_ HFILE); 1526 HFILE WINAPI _lcreat(_In_ LPCSTR, _In_ int); 1527 LONG WINAPI _llseek(_In_ HFILE, _In_ LONG, _In_ int); 1528 HFILE WINAPI _lopen(_In_ LPCSTR, _In_ int); 1529 1530 UINT 1531 WINAPI 1532 _lread( 1533 _In_ HFILE hFile, 1534 _Out_writes_bytes_to_(uBytes, return) LPVOID lpBuffer, 1535 _In_ UINT uBytes); 1536 1537 UINT 1538 WINAPI 1539 _lwrite( 1540 _In_ HFILE hFile, 1541 _In_reads_bytes_(uBytes) LPCCH lpBuffer, 1542 _In_ UINT uBytes); 1543 1544 BOOL WINAPI AccessCheck(PSECURITY_DESCRIPTOR,HANDLE,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,PDWORD,PDWORD,PBOOL); 1545 1546 BOOL 1547 WINAPI 1548 AccessCheckAndAuditAlarmA( 1549 _In_ LPCSTR SubsystemName, 1550 _In_opt_ LPVOID HandleId, 1551 _In_ LPSTR ObjectTypeName, 1552 _In_opt_ LPSTR ObjectName, 1553 _In_ PSECURITY_DESCRIPTOR SecurityDescriptor, 1554 _In_ DWORD DesiredAccess, 1555 _In_ PGENERIC_MAPPING GenericMapping, 1556 _In_ BOOL ObjectCreation, 1557 _Out_ LPDWORD GrantedAccess, 1558 _Out_ LPBOOL AccessStatus, 1559 _Out_ LPBOOL pfGenerateOnClose); 1560 1561 BOOL WINAPI AccessCheckAndAuditAlarmW(LPCWSTR,LPVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL); 1562 #if (_WIN32_WINNT >= 0x0600) 1563 VOID WINAPI AcquireSRWLockExclusive(PSRWLOCK); 1564 VOID WINAPI AcquireSRWLockShared(PSRWLOCK); 1565 #endif 1566 #if (_WIN32_WINNT >= 0x0501) 1567 BOOL WINAPI ActivateActCtx(_Inout_opt_ HANDLE, _Out_ ULONG_PTR*); 1568 #endif 1569 BOOL WINAPI AddAccessAllowedAce(PACL,DWORD,DWORD,PSID); 1570 BOOL WINAPI AddAccessDeniedAce(PACL,DWORD,DWORD,PSID); 1571 #if (_WIN32_WINNT >= 0x0500) 1572 BOOL WINAPI AddAccessAllowedAceEx(PACL,DWORD,DWORD,DWORD,PSID); 1573 BOOL WINAPI AddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID); 1574 BOOL WINAPI AddAccessAllowedObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID); 1575 BOOL WINAPI AddAccessDeniedObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID); 1576 #endif 1577 BOOL WINAPI AddAce(PACL,DWORD,DWORD,PVOID,DWORD); 1578 ATOM WINAPI AddAtomA(_In_opt_ LPCSTR); 1579 ATOM WINAPI AddAtomW(_In_opt_ LPCWSTR); 1580 BOOL WINAPI AddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL); 1581 #if (_WIN32_WINNT >= 0x0500) 1582 BOOL WINAPI AddAuditAccessObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID,BOOL,BOOL); 1583 #endif 1584 #if (_WIN32_WINNT >= 0x0501) 1585 void WINAPI AddRefActCtx(_Inout_ HANDLE); 1586 #endif 1587 #if (_WIN32_WINNT >= 0x0500) 1588 _Ret_maybenull_ PVOID WINAPI AddVectoredExceptionHandler(_In_ ULONG, _In_ PVECTORED_EXCEPTION_HANDLER); 1589 _Ret_maybenull_ PVOID WINAPI AddVectoredContinueHandler(_In_ ULONG, _In_ PVECTORED_EXCEPTION_HANDLER); 1590 #endif 1591 1592 BOOL 1593 WINAPI 1594 AccessCheckByType( 1595 _In_ PSECURITY_DESCRIPTOR pSecurityDescriptor, 1596 _In_opt_ PSID PrincipalSelfSid, 1597 _In_ HANDLE ClientToken, 1598 _In_ DWORD DesiredAccess, 1599 _In_reads_opt_(ObjectTypeListLength) POBJECT_TYPE_LIST ObjectTypeList, 1600 _In_ DWORD ObjectTypeListLength, 1601 _In_ PGENERIC_MAPPING GenericMapping, 1602 _Out_writes_bytes_(*PrivilegeSetLength)PPRIVILEGE_SET PrivilegeSet, 1603 _Inout_ LPDWORD PrivilegeSetLength, 1604 _Out_ LPDWORD GrantedAccess, 1605 _Out_ LPBOOL AccessStatus); 1606 1607 BOOL 1608 WINAPI 1609 AccessCheckByTypeResultList( 1610 _In_ PSECURITY_DESCRIPTOR pSecurityDescriptor, 1611 _In_opt_ PSID PrincipalSelfSid, 1612 _In_ HANDLE ClientToken, 1613 _In_ DWORD DesiredAccess, 1614 _In_reads_(ObjectTypeListLength) POBJECT_TYPE_LIST ObjectTypeList, 1615 _In_ DWORD ObjectTypeListLength, 1616 _In_ PGENERIC_MAPPING GenericMapping, 1617 _Out_writes_bytes_(*PrivilegeSetLength) PPRIVILEGE_SET PrivilegeSet, 1618 _Inout_ LPDWORD PrivilegeSetLength, 1619 _Out_writes_(ObjectTypeListLength) LPDWORD GrantedAccess, 1620 _Out_writes_(ObjectTypeListLength) LPBOOL AccessStatus); 1621 1622 BOOL WINAPI AdjustTokenGroups(HANDLE,BOOL,PTOKEN_GROUPS,DWORD,PTOKEN_GROUPS,PDWORD); 1623 BOOL WINAPI AdjustTokenPrivileges(HANDLE,BOOL,PTOKEN_PRIVILEGES,DWORD,PTOKEN_PRIVILEGES,PDWORD); 1624 BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID*); 1625 BOOL WINAPI CheckTokenMembership(HANDLE,PSID,PBOOL); 1626 BOOL WINAPI AllocateLocallyUniqueId(PLUID); 1627 BOOL WINAPI AreAllAccessesGranted(DWORD,DWORD); 1628 BOOL WINAPI AreAnyAccessesGranted(DWORD,DWORD); 1629 BOOL WINAPI AreFileApisANSI(void); 1630 BOOL WINAPI BackupEventLogA(_In_ HANDLE, _In_ LPCSTR); 1631 BOOL WINAPI BackupEventLogW(_In_ HANDLE, _In_ LPCWSTR); 1632 1633 BOOL 1634 WINAPI 1635 BackupRead( 1636 _In_ HANDLE hFile, 1637 _Out_writes_bytes_to_(nNumberOfBytesToRead, *lpNumberOfBytesRead) LPBYTE lpBuffer, 1638 _In_ DWORD nNumberOfBytesToRead, 1639 _Out_ LPDWORD lpNumberOfBytesRead, 1640 _In_ BOOL bAbort, 1641 _In_ BOOL bProcessSecurity, 1642 _Inout_ LPVOID *lpContext); 1643 1644 BOOL WINAPI BackupSeek(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _Out_ LPDWORD, _Out_ LPDWORD, _Inout_ LPVOID*); 1645 1646 BOOL 1647 WINAPI 1648 BackupWrite( 1649 _In_ HANDLE hFile, 1650 _In_reads_bytes_(nNumberOfBytesToWrite) LPBYTE lpBuffer, 1651 _In_ DWORD nNumberOfBytesToWrite, 1652 _Out_ LPDWORD lpNumberOfBytesWritten, 1653 _In_ BOOL bAbort, 1654 _In_ BOOL bProcessSecurity, 1655 _Inout_ LPVOID *lpContext); 1656 1657 BOOL WINAPI Beep(DWORD,DWORD); 1658 HANDLE WINAPI BeginUpdateResourceA(_In_ LPCSTR, _In_ BOOL); 1659 HANDLE WINAPI BeginUpdateResourceW(_In_ LPCWSTR, _In_ BOOL); 1660 #if (_WIN32_WINNT >= 0x0500) 1661 BOOL WINAPI BindIoCompletionCallback(_In_ HANDLE, _In_ LPOVERLAPPED_COMPLETION_ROUTINE, _In_ ULONG); 1662 #endif 1663 BOOL WINAPI BuildCommDCBA(_In_ LPCSTR, _Out_ LPDCB); 1664 BOOL WINAPI BuildCommDCBW(_In_ LPCWSTR, _Out_ LPDCB); 1665 BOOL WINAPI BuildCommDCBAndTimeoutsA(_In_ LPCSTR, _Out_ LPDCB, _Out_ LPCOMMTIMEOUTS); 1666 BOOL WINAPI BuildCommDCBAndTimeoutsW(_In_ LPCWSTR, _Out_ LPDCB, _Out_ LPCOMMTIMEOUTS); 1667 1668 BOOL 1669 WINAPI 1670 CallNamedPipeA( 1671 _In_ LPCSTR lpNamedPipeName, 1672 _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer, 1673 _In_ DWORD nInBufferSize, 1674 _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesRead) LPVOID lpOutBuffer, 1675 _In_ DWORD nOutBufferSize, 1676 _Out_ LPDWORD lpBytesRead, 1677 _In_ DWORD nTimeOut); 1678 1679 BOOL 1680 WINAPI 1681 CallNamedPipeW( 1682 _In_ LPCWSTR lpNamedPipeName, 1683 _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer, 1684 _In_ DWORD nInBufferSize, 1685 _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesRead) LPVOID lpOutBuffer, 1686 _In_ DWORD nOutBufferSize, 1687 _Out_ LPDWORD lpBytesRead, 1688 _In_ DWORD nTimeOut); 1689 1690 BOOL WINAPI CancelDeviceWakeupRequest(_In_ HANDLE); 1691 BOOL WINAPI CancelIo(HANDLE); 1692 #if (_WIN32_WINNT >= 0x0600) 1693 BOOL WINAPI CancelIoEx(HANDLE,LPOVERLAPPED); 1694 BOOL WINAPI CancelSynchronousIo(HANDLE); 1695 #endif 1696 BOOL WINAPI CancelWaitableTimer(HANDLE); 1697 1698 #if (_WIN32_WINNT >= 0x0501) 1699 1700 BOOL 1701 WINAPI 1702 CheckNameLegalDOS8Dot3A( 1703 _In_ LPCSTR lpName, 1704 _Out_writes_opt_(OemNameSize) LPSTR lpOemName, 1705 _In_ DWORD OemNameSize, 1706 _Out_opt_ PBOOL pbNameContainsSpaces, 1707 _Out_ PBOOL pbNameLegal); 1708 1709 BOOL 1710 WINAPI 1711 CheckNameLegalDOS8Dot3W( 1712 _In_ LPCWSTR lpName, 1713 _Out_writes_opt_(OemNameSize) LPSTR lpOemName, 1714 _In_ DWORD OemNameSize, 1715 _Out_opt_ PBOOL pbNameContainsSpaces, 1716 _Out_ PBOOL pbNameLegal); 1717 1718 BOOL WINAPI CheckRemoteDebuggerPresent(_In_ HANDLE, _Out_ PBOOL); 1719 #endif 1720 1721 BOOL WINAPI ClearCommBreak(_In_ HANDLE); 1722 BOOL WINAPI ClearCommError(_In_ HANDLE, _Out_opt_ PDWORD, _Out_opt_ LPCOMSTAT); 1723 BOOL WINAPI ClearEventLogA(_In_ HANDLE, _In_opt_ LPCSTR); 1724 BOOL WINAPI ClearEventLogW(_In_ HANDLE, _In_opt_ LPCWSTR); 1725 BOOL WINAPI CloseEventLog(_In_ HANDLE); 1726 BOOL WINAPI CloseHandle(HANDLE); 1727 BOOL WINAPI CommConfigDialogA(_In_ LPCSTR, _In_opt_ HWND, _Inout_ LPCOMMCONFIG); 1728 BOOL WINAPI CommConfigDialogW(_In_ LPCWSTR, _In_opt_ HWND, _Inout_ LPCOMMCONFIG); 1729 LONG WINAPI CompareFileTime(CONST FILETIME*,CONST FILETIME*); 1730 BOOL WINAPI ConnectNamedPipe(HANDLE,LPOVERLAPPED); 1731 BOOL WINAPI ContinueDebugEvent(DWORD,DWORD,DWORD); 1732 #if (_WIN32_WINNT >= 0x0400) 1733 BOOL WINAPI ConvertFiberToThread(void); 1734 #endif 1735 _Ret_maybenull_ PVOID WINAPI ConvertThreadToFiber(_In_opt_ PVOID); 1736 BOOL WINAPI CopyFileA(_In_ LPCSTR, _In_ LPCSTR, _In_ BOOL); 1737 BOOL WINAPI CopyFileW(_In_ LPCWSTR lpExistingFileName, _In_ LPCWSTR lpNewFileName, _In_ BOOL bFailIfExists); 1738 BOOL WINAPI CopyFileExA(_In_ LPCSTR, _In_ LPCSTR, _In_opt_ LPPROGRESS_ROUTINE, _In_opt_ LPVOID, _In_opt_ LPBOOL, _In_ DWORD); 1739 BOOL WINAPI CopyFileExW(_In_ LPCWSTR, _In_ LPCWSTR, _In_opt_ LPPROGRESS_ROUTINE, _In_opt_ LPVOID, _In_opt_ LPBOOL, _In_ DWORD); 1740 #define MoveMemory RtlMoveMemory 1741 #define CopyMemory RtlCopyMemory 1742 #define FillMemory RtlFillMemory 1743 #define ZeroMemory RtlZeroMemory 1744 #define SecureZeroMemory RtlSecureZeroMemory 1745 BOOL WINAPI CopySid(DWORD,PSID,PSID); 1746 #if (_WIN32_WINNT >= 0x0501) 1747 HANDLE WINAPI CreateActCtxA(_In_ PCACTCTXA); 1748 HANDLE WINAPI CreateActCtxW(_In_ PCACTCTXW); 1749 #endif 1750 BOOL WINAPI CreateDirectoryA(LPCSTR lpPathName,LPSECURITY_ATTRIBUTES lpSecurityAttributes); 1751 BOOL WINAPI CreateDirectoryW(LPCWSTR lpPathName,LPSECURITY_ATTRIBUTES lpSecurityAttributes); 1752 BOOL WINAPI CreateDirectoryExA(_In_ LPCSTR, _In_ LPCSTR, _In_opt_ LPSECURITY_ATTRIBUTES); 1753 BOOL WINAPI CreateDirectoryExW(_In_ LPCWSTR, _In_ LPCWSTR, _In_opt_ LPSECURITY_ATTRIBUTES); 1754 HANDLE WINAPI CreateEventA(_In_opt_ LPSECURITY_ATTRIBUTES lpEventAttributes, _In_ BOOL bManualReset, _In_ BOOL bInitialState, _In_opt_ LPCSTR lpName); 1755 HANDLE WINAPI CreateEventW(_In_opt_ LPSECURITY_ATTRIBUTES,_In_ BOOL bManualReset, _In_ BOOL bInitialState,_In_opt_ LPCWSTR lpName); 1756 #if (_WIN32_WINNT >= 0x0600) 1757 HANDLE WINAPI CreateEventExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD); 1758 HANDLE WINAPI CreateEventExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD); 1759 #endif 1760 _Ret_maybenull_ LPVOID WINAPI CreateFiber(_In_ SIZE_T, _In_ LPFIBER_START_ROUTINE, _In_opt_ LPVOID); 1761 #if (_WIN32_WINNT >= 0x0400) 1762 _Ret_maybenull_ LPVOID WINAPI CreateFiberEx(_In_ SIZE_T, _In_ SIZE_T, _In_ DWORD, _In_ LPFIBER_START_ROUTINE, _In_opt_ LPVOID); 1763 #endif 1764 HANDLE WINAPI CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); 1765 HANDLE WINAPI CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); 1766 _Ret_maybenull_ HANDLE WINAPI CreateFileMappingA(_In_ HANDLE, _In_opt_ LPSECURITY_ATTRIBUTES, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPCSTR); 1767 HANDLE WINAPI CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR); 1768 #if (_WIN32_WINNT >= 0x0500) 1769 BOOL WINAPI CreateHardLinkA(_In_ LPCSTR, _In_ LPCSTR, _Reserved_ LPSECURITY_ATTRIBUTES); 1770 BOOL WINAPI CreateHardLinkW(_In_ LPCWSTR, _In_ LPCWSTR, _Reserved_ LPSECURITY_ATTRIBUTES); 1771 #endif 1772 HANDLE WINAPI CreateIoCompletionPort(HANDLE,HANDLE,ULONG_PTR,DWORD); 1773 #if (_WIN32_WINNT >= 0x0500) 1774 _Ret_maybenull_ HANDLE WINAPI CreateJobObjectA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCSTR); 1775 _Ret_maybenull_ HANDLE WINAPI CreateJobObjectW(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCWSTR); 1776 BOOL WINAPI TerminateJobObject(_In_ HANDLE, _In_ UINT); 1777 BOOL WINAPI AssignProcessToJobObject(_In_ HANDLE, _In_ HANDLE); 1778 #endif 1779 HANDLE WINAPI CreateMailslotA(_In_ LPCSTR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES); 1780 HANDLE WINAPI CreateMailslotW(_In_ LPCWSTR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES); 1781 #if (_WIN32_WINNT >= 0x0501) 1782 HANDLE WINAPI CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE); 1783 #endif 1784 HANDLE WINAPI CreateMutexA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR); 1785 HANDLE WINAPI CreateMutexW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR); 1786 #if (_WIN32_WINNT >= 0x0600) 1787 HANDLE WINAPI CreateMutexExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD); 1788 HANDLE WINAPI CreateMutexExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD); 1789 #endif 1790 HANDLE WINAPI CreateNamedPipeA(_In_ LPCSTR, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES); 1791 HANDLE WINAPI CreateNamedPipeW(_In_ LPCWSTR, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES); 1792 BOOL WINAPI CreatePipe(PHANDLE,PHANDLE,LPSECURITY_ATTRIBUTES,DWORD); 1793 BOOL WINAPI CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,BOOL,HANDLE,PGENERIC_MAPPING); 1794 BOOL WINAPI CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION); 1795 BOOL WINAPI CreateProcessW(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); 1796 1797 BOOL 1798 WINAPI 1799 CreateProcessAsUserA( 1800 _In_opt_ HANDLE, 1801 _In_opt_ LPCSTR, 1802 _Inout_opt_ LPSTR, 1803 _In_opt_ LPSECURITY_ATTRIBUTES, 1804 _In_opt_ LPSECURITY_ATTRIBUTES, 1805 _In_ BOOL, 1806 _In_ DWORD, 1807 _In_opt_ PVOID, 1808 _In_opt_ LPCSTR, 1809 _In_ LPSTARTUPINFOA, 1810 _Out_ LPPROCESS_INFORMATION); 1811 1812 BOOL WINAPI CreateProcessAsUserW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); 1813 BOOL WINAPI CreateProcessWithLogonW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPCWSTR,LPWSTR,DWORD,LPVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); 1814 BOOL WINAPI CreateProcessWithTokenW(HANDLE,DWORD,LPCWSTR,LPWSTR,DWORD,LPVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); 1815 HANDLE WINAPI CreateRemoteThread(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD); 1816 1817 BOOL 1818 WINAPI 1819 CreateRestrictedToken( 1820 _In_ HANDLE ExistingTokenHandle, 1821 _In_ DWORD Flags, 1822 _In_ DWORD DisableSidCount, 1823 _In_reads_opt_(DisableSidCount) PSID_AND_ATTRIBUTES SidsToDisable, 1824 _In_ DWORD DeletePrivilegeCount, 1825 _In_reads_opt_(DeletePrivilegeCount) PLUID_AND_ATTRIBUTES PrivilegesToDelete, 1826 _In_ DWORD RestrictedSidCount, 1827 _In_reads_opt_(RestrictedSidCount) PSID_AND_ATTRIBUTES SidsToRestrict, 1828 _Outptr_ PHANDLE NewTokenHandle); 1829 1830 _Ret_maybenull_ HANDLE WINAPI CreateSemaphoreA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ LONG, _In_ LONG, _In_opt_ LPCSTR); 1831 _Ret_maybenull_ HANDLE WINAPI CreateSemaphoreW(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ LONG, _In_ LONG, _In_opt_ LPCWSTR); 1832 #if (_WIN32_WINNT >= 0x0600) 1833 _Ret_maybenull_ HANDLE WINAPI CreateSemaphoreExA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ LONG, _In_ LONG, _In_opt_ LPCSTR, _Reserved_ DWORD, _In_ DWORD); 1834 HANDLE WINAPI CreateSemaphoreExW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR,DWORD,DWORD); 1835 #endif 1836 DWORD WINAPI CreateTapePartition(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ DWORD); 1837 1838 #if (_WIN32_WINNT >= 0x0500) 1839 1840 HANDLE WINAPI CreateTimerQueue(void); 1841 1842 BOOL 1843 WINAPI 1844 CreateTimerQueueTimer( 1845 _Outptr_ PHANDLE, 1846 _In_opt_ HANDLE, 1847 _In_ WAITORTIMERCALLBACK, 1848 _In_opt_ PVOID, 1849 _In_ DWORD, 1850 _In_ DWORD, 1851 _In_ ULONG); 1852 1853 _Must_inspect_result_ 1854 BOOL 1855 WINAPI 1856 ChangeTimerQueueTimer( 1857 _In_opt_ HANDLE TimerQueue, 1858 _Inout_ HANDLE Timer, 1859 _In_ ULONG DueTime, 1860 _In_ ULONG Period); 1861 1862 #endif /* (_WIN32_WINNT >= 0x0500) */ 1863 1864 HANDLE WINAPI CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,PVOID,DWORD,PDWORD); 1865 _Ret_maybenull_ HANDLE WINAPI CreateWaitableTimerA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ BOOL, _In_opt_ LPCSTR); 1866 _Ret_maybenull_ HANDLE WINAPI CreateWaitableTimerW(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ BOOL, _In_opt_ LPCWSTR); 1867 #if (_WIN32_WINNT >= 0x0600) 1868 _Ret_maybenull_ HANDLE WINAPI CreateWaitableTimerExA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCSTR, _In_ DWORD, _In_ DWORD); 1869 HANDLE WINAPI CreateWaitableTimerExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD); 1870 #endif 1871 #if (_WIN32_WINNT >= 0x0501) 1872 BOOL WINAPI CreateWellKnownSid(WELL_KNOWN_SID_TYPE,PSID,PSID,DWORD*); 1873 BOOL WINAPI DeactivateActCtx(_In_ DWORD, _In_ ULONG_PTR); 1874 #endif 1875 BOOL WINAPI DebugActiveProcess(DWORD); 1876 #if (_WIN32_WINNT >= 0x0501) 1877 BOOL WINAPI DebugActiveProcessStop(DWORD); 1878 #endif 1879 void WINAPI DebugBreak(void); 1880 #if (_WIN32_WINNT >= 0x0501) 1881 BOOL WINAPI DebugBreakProcess(_In_ HANDLE); 1882 BOOL WINAPI DebugSetProcessKillOnExit(_In_ BOOL); 1883 #endif 1884 PVOID WINAPI DecodePointer(PVOID); 1885 PVOID WINAPI DecodeSystemPointer(PVOID); 1886 BOOL WINAPI DecryptFileA(_In_ LPCSTR, _Reserved_ DWORD); 1887 BOOL WINAPI DecryptFileW(_In_ LPCWSTR, _Reserved_ DWORD); 1888 BOOL WINAPI DefineDosDeviceA(_In_ DWORD, _In_ LPCSTR, _In_opt_ LPCSTR); 1889 BOOL WINAPI DefineDosDeviceW(DWORD,LPCWSTR,LPCWSTR); 1890 #define DefineHandleTable(w) ((w),TRUE) 1891 BOOL WINAPI DeleteAce(PACL,DWORD); 1892 ATOM WINAPI DeleteAtom(_In_ ATOM); 1893 void WINAPI DeleteCriticalSection(PCRITICAL_SECTION); 1894 void WINAPI DeleteFiber(_In_ PVOID); 1895 BOOL WINAPI DeleteFileA(LPCSTR); 1896 BOOL WINAPI DeleteFileW(LPCWSTR); 1897 #if (_WIN32_WINNT >= 0x0500) 1898 _Must_inspect_result_ BOOL WINAPI DeleteTimerQueue(_In_ HANDLE); 1899 BOOL WINAPI DeleteTimerQueueEx(HANDLE,HANDLE); 1900 BOOL WINAPI DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE); 1901 BOOL WINAPI DeleteVolumeMountPointA(_In_ LPCSTR); 1902 BOOL WINAPI DeleteVolumeMountPointW(LPCWSTR); 1903 #endif 1904 BOOL WINAPI DeregisterEventSource(_In_ HANDLE); 1905 BOOL WINAPI DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*); 1906 BOOL WINAPI DeviceIoControl(HANDLE,DWORD,PVOID,DWORD,PVOID,DWORD,PDWORD,POVERLAPPED); 1907 BOOL WINAPI DisableThreadLibraryCalls(HMODULE); 1908 1909 #if (_WIN32_WINNT >= 0x0500) 1910 1911 _Success_(return != FALSE) 1912 BOOL 1913 WINAPI 1914 DnsHostnameToComputerNameA( 1915 _In_ LPCSTR Hostname, 1916 _Out_writes_to_opt_(*nSize, *nSize + 1) LPSTR ComputerName, 1917 _Inout_ LPDWORD nSize); 1918 1919 _Success_(return != FALSE) 1920 BOOL 1921 WINAPI 1922 DnsHostnameToComputerNameW( 1923 _In_ LPCWSTR Hostname, 1924 _Out_writes_to_opt_(*nSize, *nSize + 1) LPWSTR ComputerName, 1925 _Inout_ LPDWORD nSize); 1926 1927 #endif 1928 1929 BOOL WINAPI DisconnectNamedPipe(HANDLE); 1930 BOOL WINAPI DosDateTimeToFileTime(_In_ WORD, _In_ WORD, _Out_ LPFILETIME); 1931 BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,PHANDLE,DWORD,BOOL,DWORD); 1932 BOOL WINAPI DuplicateToken(HANDLE,SECURITY_IMPERSONATION_LEVEL,PHANDLE); 1933 BOOL WINAPI DuplicateTokenEx(HANDLE,DWORD,LPSECURITY_ATTRIBUTES,SECURITY_IMPERSONATION_LEVEL,TOKEN_TYPE,PHANDLE); 1934 PVOID WINAPI EncodePointer(PVOID); 1935 PVOID WINAPI EncodeSystemPointer(PVOID); 1936 BOOL WINAPI EncryptFileA(_In_ LPCSTR); 1937 BOOL WINAPI EncryptFileW(_In_ LPCWSTR); 1938 BOOL WINAPI EndUpdateResourceA(_In_ HANDLE, _In_ BOOL); 1939 BOOL WINAPI EndUpdateResourceW(_In_ HANDLE, _In_ BOOL); 1940 void WINAPI EnterCriticalSection(LPCRITICAL_SECTION); 1941 BOOL WINAPI EnumResourceLanguagesA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ LPCSTR, _In_ ENUMRESLANGPROCA, _In_ LONG_PTR); 1942 BOOL WINAPI EnumResourceLanguagesW(_In_opt_ HMODULE, _In_ LPCWSTR, _In_ LPCWSTR, _In_ ENUMRESLANGPROCW, _In_ LONG_PTR); 1943 BOOL WINAPI EnumResourceNamesA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ ENUMRESNAMEPROCA, _In_ LONG_PTR); 1944 BOOL WINAPI EnumResourceNamesW(_In_opt_ HMODULE, _In_ LPCWSTR, _In_ ENUMRESNAMEPROCW, _In_ LONG_PTR); 1945 BOOL WINAPI EnumResourceTypesA(_In_opt_ HMODULE, _In_ ENUMRESTYPEPROCA, _In_ LONG_PTR); 1946 BOOL WINAPI EnumResourceTypesW(_In_opt_ HMODULE, _In_ ENUMRESTYPEPROCW, _In_ LONG_PTR); 1947 BOOL WINAPI EqualPrefixSid(PSID,PSID); 1948 BOOL WINAPI EqualSid(PSID,PSID); 1949 DWORD WINAPI EraseTape(_In_ HANDLE, _In_ DWORD, _In_ BOOL); 1950 BOOL WINAPI EscapeCommFunction(_In_ HANDLE, _In_ DWORD); 1951 DECLSPEC_NORETURN void WINAPI ExitProcess(UINT); 1952 DECLSPEC_NORETURN void WINAPI ExitThread(_In_ DWORD dwExitCode); 1953 DWORD WINAPI ExpandEnvironmentStringsA(LPCSTR,LPSTR,DWORD); 1954 DWORD WINAPI ExpandEnvironmentStringsW(LPCWSTR,LPWSTR,DWORD); 1955 void WINAPI FatalAppExitA(UINT,LPCSTR); 1956 void WINAPI FatalAppExitW(UINT,LPCWSTR); 1957 __analysis_noreturn void WINAPI FatalExit(_In_ int); 1958 BOOL WINAPI FileEncryptionStatusA(_In_ LPCSTR, _Out_ LPDWORD); 1959 BOOL WINAPI FileEncryptionStatusW(_In_ LPCWSTR, _Out_ LPDWORD); 1960 BOOL WINAPI FileTimeToDosDateTime(_In_ CONST FILETIME *, _Out_ LPWORD, _Out_ LPWORD); 1961 BOOL WINAPI FileTimeToLocalFileTime(CONST FILETIME *,LPFILETIME); 1962 BOOL WINAPI FileTimeToSystemTime(CONST FILETIME *,LPSYSTEMTIME); 1963 #if (_WIN32_WINNT >= 0x0501) 1964 BOOL WINAPI FindActCtxSectionGuid(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_opt_ const GUID*, _Out_ PACTCTX_SECTION_KEYED_DATA); 1965 BOOL WINAPI FindActCtxSectionStringA(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_ LPCSTR, _Out_ PACTCTX_SECTION_KEYED_DATA); 1966 BOOL WINAPI FindActCtxSectionStringW(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_ LPCWSTR, _Out_ PACTCTX_SECTION_KEYED_DATA); 1967 #endif 1968 ATOM WINAPI FindAtomA(_In_opt_ LPCSTR); 1969 ATOM WINAPI FindAtomW(_In_opt_ LPCWSTR); 1970 BOOL WINAPI FindClose(HANDLE); 1971 BOOL WINAPI FindCloseChangeNotification(HANDLE); 1972 HANDLE WINAPI FindFirstChangeNotificationA(LPCSTR,BOOL,DWORD); 1973 HANDLE WINAPI FindFirstChangeNotificationW(LPCWSTR,BOOL,DWORD); 1974 HANDLE WINAPI FindFirstFileA(LPCSTR,LPWIN32_FIND_DATAA); 1975 HANDLE WINAPI FindFirstFileW(LPCWSTR,LPWIN32_FIND_DATAW); 1976 HANDLE WINAPI FindFirstFileExA(LPCSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD); 1977 HANDLE WINAPI FindFirstFileExW(LPCWSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD); 1978 #if (_WIN32_WINNT >= 0x0501) 1979 HANDLE WINAPI FindFirstStreamW(_In_ LPCWSTR, _In_ STREAM_INFO_LEVELS, _Out_ LPVOID, _Reserved_ DWORD); 1980 #endif 1981 BOOL WINAPI FindFirstFreeAce(PACL,PVOID*); 1982 1983 #if (_WIN32_WINNT >= 0x0500) 1984 1985 HANDLE 1986 WINAPI 1987 FindFirstVolumeA( 1988 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName, 1989 _In_ DWORD cchBufferLength); 1990 1991 HANDLE WINAPI FindFirstVolumeW(LPWSTR,DWORD); 1992 1993 HANDLE 1994 WINAPI 1995 FindFirstVolumeMountPointA( 1996 _In_ LPCSTR lpszRootPathName, 1997 _Out_writes_(cchBufferLength) LPSTR lpszVolumeMountPoint, 1998 _In_ DWORD cchBufferLength); 1999 2000 HANDLE 2001 WINAPI 2002 FindFirstVolumeMountPointW( 2003 _In_ LPCWSTR lpszRootPathName, 2004 _Out_writes_(cchBufferLength) LPWSTR lpszVolumeMountPoint, 2005 _In_ DWORD cchBufferLength); 2006 2007 #endif 2008 2009 BOOL WINAPI FindNextChangeNotification(HANDLE); 2010 BOOL WINAPI FindNextFileA(HANDLE,LPWIN32_FIND_DATAA); 2011 BOOL WINAPI FindNextFileW(HANDLE,LPWIN32_FIND_DATAW); 2012 #if (_WIN32_WINNT >= 0x0501) 2013 BOOL WINAPI FindNextStreamW(_In_ HANDLE, _Out_ LPVOID); 2014 #endif 2015 2016 #if (_WIN32_WINNT >= 0x0500) 2017 2018 BOOL 2019 WINAPI 2020 FindNextVolumeA( 2021 _Inout_ HANDLE hFindVolume, 2022 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName, 2023 _In_ DWORD cchBufferLength); 2024 2025 BOOL WINAPI FindNextVolumeW(HANDLE,LPWSTR,DWORD); 2026 2027 BOOL 2028 WINAPI 2029 FindNextVolumeMountPointA( 2030 _In_ HANDLE hFindVolumeMountPoint, 2031 _Out_writes_(cchBufferLength) LPSTR lpszVolumeMountPoint, 2032 _In_ DWORD cchBufferLength); 2033 2034 BOOL 2035 WINAPI 2036 FindNextVolumeMountPointW( 2037 _In_ HANDLE hFindVolumeMountPoint, 2038 _Out_writes_(cchBufferLength) LPWSTR lpszVolumeMountPoint, 2039 _In_ DWORD cchBufferLength); 2040 2041 BOOL WINAPI FindVolumeClose(HANDLE); 2042 BOOL WINAPI FindVolumeMountPointClose(_In_ HANDLE); 2043 2044 #endif 2045 2046 _Ret_maybenull_ HRSRC WINAPI FindResourceA(_In_opt_ HMODULE,_In_ LPCSTR, _In_ LPCSTR); 2047 _Ret_maybenull_ HRSRC WINAPI FindResourceW(_In_opt_ HMODULE,_In_ LPCWSTR, _In_ LPCWSTR); 2048 _Ret_maybenull_ HRSRC WINAPI FindResourceExA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ LPCSTR, _In_ WORD); 2049 HRSRC WINAPI FindResourceExW(HINSTANCE,LPCWSTR,LPCWSTR,WORD); 2050 2051 BOOL WINAPI FlushFileBuffers(HANDLE); 2052 BOOL WINAPI FlushInstructionCache(HANDLE,LPCVOID,SIZE_T); 2053 BOOL WINAPI FlushViewOfFile(LPCVOID,SIZE_T); 2054 DWORD WINAPI FlsAlloc(PFLS_CALLBACK_FUNCTION); 2055 PVOID WINAPI FlsGetValue(DWORD); 2056 BOOL WINAPI FlsSetValue(DWORD,PVOID); 2057 BOOL WINAPI FlsFree(DWORD); 2058 DWORD WINAPI FormatMessageA(DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPSTR lpBuffer, DWORD nSize, va_list* Arguments); 2059 DWORD WINAPI FormatMessageW(DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPWSTR lpBuffer, DWORD nSize, va_list* Arguments); 2060 BOOL WINAPI FreeEnvironmentStringsA(LPSTR); 2061 BOOL WINAPI FreeEnvironmentStringsW(LPWSTR); 2062 BOOL WINAPI FreeLibrary(HMODULE); 2063 DECLSPEC_NORETURN void WINAPI FreeLibraryAndExitThread(HMODULE,DWORD); 2064 #define FreeModule(m) FreeLibrary(m) 2065 #define FreeProcInstance(p) (void)(p) 2066 BOOL WINAPI FreeResource(HGLOBAL); 2067 PVOID WINAPI FreeSid(PSID); 2068 BOOL WINAPI GetAce(PACL,DWORD,LPVOID*); 2069 BOOL WINAPI GetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS); 2070 #if (_WIN32_WINNT >= 0x0600) 2071 HRESULT WINAPI GetApplicationRecoveryCallback(_In_ HANDLE, _Out_ APPLICATION_RECOVERY_CALLBACK*, _Outptr_opt_result_maybenull_ PVOID*, _Out_opt_ DWORD*, _Out_opt_ DWORD*); 2072 HRESULT WINAPI GetApplicationRestart(HANDLE,PWSTR,PDWORD,PDWORD); 2073 #endif 2074 2075 UINT 2076 WINAPI 2077 GetAtomNameA( 2078 _In_ ATOM nAtom, 2079 _Out_writes_to_(nSize, return + 1) LPSTR lpBuffer, 2080 _In_ int nSize); 2081 2082 UINT 2083 WINAPI 2084 GetAtomNameW( 2085 _In_ ATOM nAtom, 2086 _Out_writes_to_(nSize, return + 1) LPWSTR lpBuffer, 2087 _In_ int nSize); 2088 2089 BOOL WINAPI GetBinaryTypeA(_In_ LPCSTR, _Out_ PDWORD); 2090 BOOL WINAPI GetBinaryTypeW(_In_ LPCWSTR, _Out_ PDWORD); 2091 LPSTR WINAPI GetCommandLineA(VOID); 2092 LPWSTR WINAPI GetCommandLineW(VOID); 2093 2094 _Success_(return != FALSE) 2095 BOOL 2096 WINAPI 2097 GetCommConfig( 2098 _In_ HANDLE hCommDev, 2099 _Out_writes_bytes_opt_(*lpdwSize) LPCOMMCONFIG lpCC, 2100 _Inout_ LPDWORD lpdwSize); 2101 2102 BOOL WINAPI GetCommMask(_In_ HANDLE, _Out_ PDWORD); 2103 BOOL WINAPI GetCommModemStatus(_In_ HANDLE, _Out_ PDWORD); 2104 BOOL WINAPI GetCommProperties(_In_ HANDLE, _Inout_ LPCOMMPROP); 2105 BOOL WINAPI GetCommState(_In_ HANDLE, _Out_ LPDCB); 2106 BOOL WINAPI GetCommTimeouts(_In_ HANDLE, _Out_ LPCOMMTIMEOUTS); 2107 DWORD WINAPI GetCompressedFileSizeA(_In_ LPCSTR, _Out_opt_ PDWORD); 2108 DWORD WINAPI GetCompressedFileSizeW(_In_ LPCWSTR, _Out_opt_ PDWORD); 2109 2110 _Success_(return != 0) 2111 BOOL 2112 WINAPI 2113 GetComputerNameA( 2114 _Out_writes_to_opt_(*nSize, *nSize + 1) LPSTR lpBuffer, 2115 _Inout_ LPDWORD nSize); 2116 2117 _Success_(return != 0) 2118 BOOL 2119 WINAPI 2120 GetComputerNameW( 2121 _Out_writes_to_opt_(*nSize, *nSize + 1) LPWSTR lpBuffer, 2122 _Inout_ LPDWORD nSize); 2123 2124 #if (_WIN32_WINNT >= 0x0500) 2125 BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD); 2126 BOOL WINAPI GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD); 2127 #endif 2128 #if (_WIN32_WINNT >= 0x0501) 2129 BOOL WINAPI GetCurrentActCtx( _Outptr_ HANDLE*); 2130 #endif 2131 DWORD WINAPI GetCurrentDirectoryA(DWORD,LPSTR); 2132 DWORD WINAPI GetCurrentDirectoryW(DWORD,LPWSTR); 2133 BOOL WINAPI GetCurrentHwProfileA(_Out_ LPHW_PROFILE_INFOA); 2134 BOOL WINAPI GetCurrentHwProfileW(_Out_ LPHW_PROFILE_INFOW); 2135 HANDLE WINAPI GetCurrentProcess(void); 2136 DWORD WINAPI GetCurrentProcessId(void); 2137 HANDLE WINAPI GetCurrentThread(void); 2138 DWORD WINAPI GetCurrentThreadId(void); 2139 #define GetCurrentTime GetTickCount 2140 2141 BOOL 2142 WINAPI 2143 GetDefaultCommConfigA( 2144 _In_ LPCSTR lpszName, 2145 _Out_writes_bytes_to_(*lpdwSize, *lpdwSize) LPCOMMCONFIG lpCC, 2146 _Inout_ LPDWORD lpdwSize); 2147 2148 BOOL 2149 WINAPI 2150 GetDefaultCommConfigW( 2151 _In_ LPCWSTR lpszName, 2152 _Out_writes_bytes_to_(*lpdwSize, *lpdwSize) LPCOMMCONFIG lpCC, 2153 _Inout_ LPDWORD lpdwSize); 2154 2155 BOOL WINAPI GetDiskFreeSpaceA(LPCSTR,PDWORD,PDWORD,PDWORD,PDWORD); 2156 BOOL WINAPI GetDiskFreeSpaceW(LPCWSTR,PDWORD,PDWORD,PDWORD,PDWORD); 2157 BOOL WINAPI GetDiskFreeSpaceExA(LPCSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER); 2158 BOOL WINAPI GetDiskFreeSpaceExW(LPCWSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER); 2159 2160 #if (_WIN32_WINNT >= 0x0502) 2161 2162 _Success_(return != 0 && return < nBufferLength) 2163 DWORD 2164 WINAPI 2165 GetDllDirectoryA( 2166 _In_ DWORD nBufferLength, 2167 _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer); 2168 2169 _Success_(return != 0 && return < nBufferLength) 2170 DWORD 2171 WINAPI 2172 GetDllDirectoryW( 2173 _In_ DWORD nBufferLength, 2174 _Out_writes_to_opt_(nBufferLength, return + 1) LPWSTR lpBuffer); 2175 2176 #endif 2177 2178 UINT WINAPI GetDriveTypeA(LPCSTR); 2179 UINT WINAPI GetDriveTypeW(LPCWSTR); 2180 LPSTR WINAPI GetEnvironmentStrings(void); 2181 LPWSTR WINAPI GetEnvironmentStringsW(void); 2182 DWORD WINAPI GetEnvironmentVariableA(LPCSTR,LPSTR,DWORD); 2183 DWORD WINAPI GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD); 2184 BOOL WINAPI GetExitCodeProcess(HANDLE,PDWORD); 2185 BOOL WINAPI GetExitCodeThread(HANDLE,PDWORD); 2186 DWORD WINAPI GetFileAttributesA(LPCSTR lpFileName); 2187 #if (_WIN32_WINNT >= 0x0600) 2188 BOOL WINAPI GetFileAttributesByHandle(HANDLE,LPDWORD,DWORD); 2189 DWORD WINAPI GetFinalPathNameByHandleA(HANDLE,LPSTR,DWORD,DWORD); 2190 DWORD WINAPI GetFinalPathNameByHandleW(HANDLE,LPWSTR,DWORD,DWORD); 2191 #endif 2192 DWORD WINAPI GetFileAttributesW(LPCWSTR lpFileName); 2193 BOOL WINAPI GetFileAttributesExA(LPCSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, PVOID lpFileInformation); 2194 BOOL WINAPI GetFileAttributesExW(LPCWSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, PVOID lpFileInformation); 2195 #if (_WIN32_WINNT >= 0x0600) 2196 BOOL WINAPI GetFileBandwidthReservation(_In_ HANDLE, _Out_ LPDWORD, _Out_ LPDWORD, _Out_ LPBOOL, _Out_ LPDWORD, _Out_ LPDWORD); 2197 #endif 2198 BOOL WINAPI GetFileInformationByHandle(HANDLE,LPBY_HANDLE_FILE_INFORMATION); 2199 2200 #if (_WIN32_WINNT >= 0x0600) 2201 BOOL 2202 WINAPI 2203 GetFileInformationByHandleEx( 2204 _In_ HANDLE hFile, 2205 _In_ FILE_INFO_BY_HANDLE_CLASS FileInformationClass, 2206 _Out_writes_bytes_(dwBufferSize) LPVOID lpFileInformation, 2207 _In_ DWORD dwBufferSize); 2208 #endif 2209 2210 BOOL 2211 WINAPI 2212 GetFileSecurityA( 2213 _In_ LPCSTR lpFileName, 2214 _In_ SECURITY_INFORMATION RequestedInformation, 2215 _Out_writes_bytes_to_opt_(nLength, *lpnLengthNeeded) PSECURITY_DESCRIPTOR pSecurityDescriptor, 2216 _In_ DWORD nLength, 2217 _Out_ LPDWORD lpnLengthNeeded); 2218 2219 BOOL WINAPI GetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 2220 DWORD WINAPI GetFileSize(HANDLE,PDWORD); 2221 BOOL WINAPI GetFileSizeEx(HANDLE,PLARGE_INTEGER); 2222 BOOL WINAPI GetFileTime(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME); 2223 DWORD WINAPI GetFileType(HANDLE); 2224 #define GetFreeSpace(w) (0x100000L) 2225 DWORD WINAPI GetFullPathNameA(LPCSTR,DWORD,LPSTR,LPSTR*); 2226 DWORD WINAPI GetFullPathNameW(LPCWSTR,DWORD,LPWSTR,LPWSTR*); 2227 BOOL WINAPI GetHandleInformation(HANDLE,PDWORD); 2228 BOOL WINAPI GetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 2229 DWORD WINAPI GetLastError(void); 2230 DWORD WINAPI GetLengthSid(PSID); 2231 void WINAPI GetLocalTime(LPSYSTEMTIME); 2232 DWORD WINAPI GetLogicalDrives(void); 2233 2234 _Success_(return != 0 && return <= nBufferLength) 2235 DWORD 2236 WINAPI 2237 GetLogicalDriveStringsA( 2238 _In_ DWORD nBufferLength, 2239 _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer); 2240 2241 DWORD WINAPI GetLogicalDriveStringsW(DWORD,LPWSTR); 2242 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) 2243 DWORD WINAPI GetLongPathNameA(LPCSTR,LPSTR,DWORD); 2244 DWORD WINAPI GetLongPathNameW(LPCWSTR,LPWSTR,DWORD); 2245 #endif 2246 BOOL WINAPI GetMailslotInfo(_In_ HANDLE, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD); 2247 DWORD WINAPI GetModuleFileNameA(HINSTANCE hModule,LPSTR lpFilename,DWORD nSize); 2248 DWORD WINAPI GetModuleFileNameW(HINSTANCE hModule,LPWSTR lpFilename,DWORD nSize); 2249 HMODULE WINAPI GetModuleHandleA(LPCSTR); 2250 HMODULE WINAPI GetModuleHandleW(LPCWSTR); 2251 #if (_WIN32_WINNT >= 0x0500) 2252 BOOL WINAPI GetModuleHandleExA(DWORD,LPCSTR,HMODULE*); 2253 BOOL WINAPI GetModuleHandleExW(DWORD,LPCWSTR,HMODULE*); 2254 #endif 2255 2256 #if _WIN32_WINNT >= 0x0502 2257 WINBASEAPI WINBOOL WINAPI NeedCurrentDirectoryForExePathA(LPCSTR ExeName); 2258 WINBASEAPI WINBOOL WINAPI NeedCurrentDirectoryForExePathW(LPCWSTR ExeName); 2259 #endif 2260 2261 BOOL 2262 WINAPI 2263 GetNamedPipeHandleStateA( 2264 _In_ HANDLE hNamedPipe, 2265 _Out_opt_ LPDWORD lpState, 2266 _Out_opt_ LPDWORD lpCurInstances, 2267 _Out_opt_ LPDWORD lpMaxCollectionCount, 2268 _Out_opt_ LPDWORD lpCollectDataTimeout, 2269 _Out_writes_opt_(nMaxUserNameSize) LPSTR lpUserName, 2270 _In_ DWORD nMaxUserNameSize); 2271 2272 BOOL 2273 WINAPI 2274 GetNamedPipeHandleStateW( 2275 _In_ HANDLE hNamedPipe, 2276 _Out_opt_ LPDWORD lpState, 2277 _Out_opt_ LPDWORD lpCurInstances, 2278 _Out_opt_ LPDWORD lpMaxCollectionCount, 2279 _Out_opt_ LPDWORD lpCollectDataTimeout, 2280 _Out_writes_opt_(nMaxUserNameSize) LPWSTR lpUserName, 2281 _In_ DWORD nMaxUserNameSize); 2282 2283 BOOL WINAPI GetNamedPipeInfo(_In_ HANDLE, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD); 2284 #if (_WIN32_WINNT >= 0x0501) 2285 VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO); 2286 #endif 2287 2288 BOOL 2289 WINAPI 2290 GetEventLogInformation( 2291 _In_ HANDLE hEventLog, 2292 _In_ DWORD dwInfoLevel, 2293 _Out_writes_bytes_to_(cbBufSize, *pcbBytesNeeded) LPVOID lpBuffer, 2294 _In_ DWORD cbBufSize, 2295 _Out_ LPDWORD pcbBytesNeeded); 2296 2297 BOOL WINAPI GetNumberOfEventLogRecords(_In_ HANDLE, _Out_ PDWORD); 2298 BOOL WINAPI GetOldestEventLogRecord(_In_ HANDLE, _Out_ PDWORD); 2299 BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL); 2300 DWORD WINAPI GetPriorityClass(HANDLE); 2301 BOOL WINAPI GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 2302 UINT WINAPI GetPrivateProfileIntA(_In_ LPCSTR, _In_ LPCSTR, _In_ INT, _In_opt_ LPCSTR); 2303 UINT WINAPI GetPrivateProfileIntW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ INT, _In_opt_ LPCWSTR); 2304 2305 DWORD 2306 WINAPI 2307 GetPrivateProfileSectionA( 2308 _In_ LPCSTR lpAppName, 2309 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString, 2310 _In_ DWORD nSize, 2311 _In_opt_ LPCSTR lpFileName); 2312 2313 DWORD 2314 WINAPI 2315 GetPrivateProfileSectionW( 2316 _In_ LPCWSTR lpAppName, 2317 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, 2318 _In_ DWORD nSize, 2319 _In_opt_ LPCWSTR lpFileName); 2320 2321 DWORD 2322 WINAPI 2323 GetPrivateProfileSectionNamesA( 2324 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpszReturnBuffer, 2325 _In_ DWORD nSize, 2326 _In_opt_ LPCSTR lpFileName); 2327 2328 DWORD 2329 WINAPI 2330 GetPrivateProfileSectionNamesW( 2331 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpszReturnBuffer, 2332 _In_ DWORD nSize, 2333 _In_opt_ LPCWSTR lpFileName); 2334 2335 DWORD 2336 WINAPI 2337 GetPrivateProfileStringA( 2338 _In_opt_ LPCSTR lpAppName, 2339 _In_opt_ LPCSTR lpKeyName, 2340 _In_opt_ LPCSTR lpDefault, 2341 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString, 2342 _In_ DWORD nSize, 2343 _In_opt_ LPCSTR lpFileName); 2344 2345 DWORD 2346 WINAPI 2347 GetPrivateProfileStringW( 2348 _In_opt_ LPCWSTR lpAppName, 2349 _In_opt_ LPCWSTR lpKeyName, 2350 _In_opt_ LPCWSTR lpDefault, 2351 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, 2352 _In_ DWORD nSize, 2353 _In_opt_ LPCWSTR lpFileName); 2354 2355 BOOL 2356 WINAPI 2357 GetPrivateProfileStructA( 2358 _In_ LPCSTR lpszSection, 2359 _In_ LPCSTR lpszKey, 2360 _Out_writes_bytes_opt_(uSizeStruct) LPVOID lpStruct, 2361 _In_ UINT uSizeStruct, 2362 _In_opt_ LPCSTR szFile); 2363 2364 BOOL 2365 WINAPI 2366 GetPrivateProfileStructW( 2367 _In_ LPCWSTR lpszSection, 2368 _In_ LPCWSTR lpszKey, 2369 _Out_writes_bytes_opt_(uSizeStruct) LPVOID lpStruct, 2370 _In_ UINT uSizeStruct, 2371 _In_opt_ LPCWSTR szFile); 2372 2373 FARPROC WINAPI GetProcAddress(HINSTANCE,LPCSTR); 2374 BOOL WINAPI GetProcessAffinityMask(_In_ HANDLE, _Out_ PDWORD_PTR, _Out_ PDWORD_PTR); 2375 #if (_WIN32_WINNT >= 0x0502) 2376 BOOL WINAPI GetProcessHandleCount(_In_ HANDLE, _Out_ PDWORD); 2377 #endif 2378 HANDLE WINAPI GetProcessHeap(VOID); 2379 DWORD WINAPI GetProcessHeaps(DWORD,PHANDLE); 2380 #if (_WIN32_WINNT >= 0x0502) 2381 DWORD WINAPI GetProcessId(HANDLE); 2382 DWORD WINAPI GetProcessIdOfThread(HANDLE); 2383 #endif 2384 #if (_WIN32_WINNT >= 0x0500) 2385 BOOL WINAPI GetProcessIoCounters(_In_ HANDLE, _Out_ PIO_COUNTERS); 2386 #endif 2387 BOOL WINAPI GetProcessPriorityBoost(_In_ HANDLE, _Out_ PBOOL); 2388 BOOL WINAPI GetProcessShutdownParameters(_Out_ PDWORD, _Out_ PDWORD); 2389 BOOL WINAPI GetProcessTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME); 2390 DWORD WINAPI GetProcessVersion(DWORD); 2391 HWINSTA WINAPI GetProcessWindowStation(void); 2392 BOOL WINAPI GetProcessWorkingSetSize(_In_ HANDLE, _Out_ PSIZE_T, _Out_ PSIZE_T); 2393 UINT WINAPI GetProfileIntA(_In_ LPCSTR, _In_ LPCSTR, _In_ INT); 2394 UINT WINAPI GetProfileIntW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ INT); 2395 2396 DWORD 2397 WINAPI 2398 GetProfileSectionA( 2399 _In_ LPCSTR lpAppName, 2400 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString, 2401 _In_ DWORD nSize); 2402 2403 DWORD 2404 WINAPI 2405 GetProfileSectionW( 2406 _In_ LPCWSTR lpAppName, 2407 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, 2408 _In_ DWORD nSize); 2409 2410 DWORD 2411 WINAPI 2412 GetProfileStringA( 2413 _In_opt_ LPCSTR lpAppName, 2414 _In_opt_ LPCSTR lpKeyName, 2415 _In_opt_ LPCSTR lpDefault, 2416 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString, 2417 _In_ DWORD nSize); 2418 2419 DWORD 2420 WINAPI 2421 GetProfileStringW( 2422 _In_opt_ LPCWSTR lpAppName, 2423 _In_opt_ LPCWSTR lpKeyName, 2424 _In_opt_ LPCWSTR lpDefault, 2425 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, 2426 _In_ DWORD nSize); 2427 2428 BOOL WINAPI GetQueuedCompletionStatus(HANDLE,PDWORD,PULONG_PTR,LPOVERLAPPED*,DWORD); 2429 BOOL WINAPI GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR_CONTROL,PDWORD); 2430 BOOL WINAPI GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); 2431 BOOL WINAPI GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); 2432 DWORD WINAPI GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR); 2433 BOOL WINAPI GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); 2434 DWORD WINAPI GetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR,PUCHAR); 2435 BOOL WINAPI GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); 2436 2437 _Success_(return != 0 && return < cchBuffer) 2438 DWORD 2439 WINAPI 2440 GetShortPathNameA( 2441 _In_ LPCSTR lpszLongPath, 2442 _Out_writes_to_opt_(cchBuffer, return + 1) LPSTR lpszShortPath, 2443 _In_ DWORD cchBuffer); 2444 2445 DWORD WINAPI GetShortPathNameW(LPCWSTR,LPWSTR,DWORD); 2446 PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(PSID); 2447 DWORD WINAPI GetSidLengthRequired(UCHAR); 2448 PDWORD WINAPI GetSidSubAuthority(PSID,DWORD); 2449 PUCHAR WINAPI GetSidSubAuthorityCount(PSID); 2450 VOID WINAPI GetStartupInfoA(_Out_ LPSTARTUPINFOA); 2451 VOID WINAPI GetStartupInfoW(LPSTARTUPINFOW); 2452 HANDLE WINAPI GetStdHandle(_In_ DWORD); 2453 UINT WINAPI GetSystemDirectoryA(LPSTR,UINT); 2454 UINT WINAPI GetSystemDirectoryW(LPWSTR,UINT); 2455 2456 VOID WINAPI GetSystemInfo(LPSYSTEM_INFO); 2457 BOOL WINAPI GetSystemPowerStatus(_Out_ LPSYSTEM_POWER_STATUS); 2458 #if (_WIN32_WINNT >= 0x0502) 2459 BOOL WINAPI GetSystemRegistryQuota(_Out_opt_ PDWORD, _Out_opt_ PDWORD); 2460 #endif 2461 VOID WINAPI GetSystemTime(LPSYSTEMTIME lpSystemTime); 2462 #if (_WIN32_WINNT >= 0x0501) 2463 BOOL WINAPI GetSystemTimes(_Out_opt_ LPFILETIME, _Out_opt_ LPFILETIME, _Out_opt_ LPFILETIME); 2464 #endif 2465 BOOL WINAPI GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL); 2466 void WINAPI GetSystemTimeAsFileTime(LPFILETIME); 2467 #if (_WIN32_WINNT >= 0x0500) 2468 UINT WINAPI GetSystemWindowsDirectoryA(LPSTR,UINT); 2469 UINT WINAPI GetSystemWindowsDirectoryW(LPWSTR,UINT); 2470 #endif 2471 2472 #if (_WIN32_WINNT >= 0x0501) 2473 2474 _Success_(return != 0 && return < uSize) 2475 UINT 2476 WINAPI 2477 GetSystemWow64DirectoryA( 2478 _Out_writes_to_opt_(uSize, return + 1) LPSTR lpBuffer, 2479 _In_ UINT uSize); 2480 2481 _Success_(return != 0 && return < uSize) 2482 UINT 2483 WINAPI 2484 GetSystemWow64DirectoryW( 2485 _Out_writes_to_opt_(uSize, return + 1) LPWSTR lpBuffer, 2486 _In_ UINT uSize); 2487 2488 #endif 2489 2490 DWORD 2491 WINAPI 2492 GetTapeParameters( 2493 _In_ HANDLE hDevice, 2494 _In_ DWORD dwOperation, 2495 _Inout_ LPDWORD lpdwSize, 2496 _Out_writes_bytes_(*lpdwSize) LPVOID lpTapeInformation); 2497 2498 DWORD WINAPI GetTapePosition(_In_ HANDLE, _In_ DWORD, _Out_ PDWORD, _Out_ PDWORD, _Out_ PDWORD); 2499 DWORD WINAPI GetTapeStatus(_In_ HANDLE); 2500 2501 UINT 2502 WINAPI 2503 GetTempFileNameA( 2504 _In_ LPCSTR lpPathName, 2505 _In_ LPCSTR lpPrefixString, 2506 _In_ UINT uUnique, 2507 _Out_writes_(MAX_PATH) LPSTR lpTempFileName); 2508 2509 UINT WINAPI GetTempFileNameW(LPCWSTR,LPCWSTR,UINT,LPWSTR); 2510 2511 DWORD 2512 WINAPI 2513 GetTempPathA( 2514 _In_ DWORD nBufferLength, 2515 _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer); 2516 2517 DWORD WINAPI GetTempPathW(DWORD,LPWSTR); 2518 BOOL WINAPI GetThreadContext(HANDLE,LPCONTEXT); 2519 #if (_WIN32_WINNT >= 0x0502) 2520 BOOL WINAPI GetThreadIOPendingFlag(_In_ HANDLE, _Out_ PBOOL); 2521 #endif 2522 int WINAPI GetThreadPriority(HANDLE); 2523 BOOL WINAPI GetThreadPriorityBoost(HANDLE,PBOOL); 2524 BOOL WINAPI GetThreadSelectorEntry(_In_ HANDLE, _In_ DWORD, _Out_ LPLDT_ENTRY); 2525 BOOL WINAPI GetThreadTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME); 2526 DWORD WINAPI GetTickCount(VOID); 2527 #if (_WIN32_WINNT >= 0x0600) 2528 ULONGLONG WINAPI GetTickCount64(VOID); 2529 #endif 2530 DWORD WINAPI GetThreadId(HANDLE); 2531 DWORD WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION); 2532 BOOL WINAPI GetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD,PDWORD); 2533 2534 BOOL 2535 WINAPI 2536 GetUserNameA( 2537 _Out_writes_to_opt_(*pcbBuffer, *pcbBuffer) LPSTR lpBuffer, 2538 _Inout_ LPDWORD pcbBuffer); 2539 2540 BOOL 2541 WINAPI 2542 GetUserNameW( 2543 _Out_writes_to_opt_(*pcbBuffer, *pcbBuffer) LPWSTR lpBuffer, 2544 _Inout_ LPDWORD pcbBuffer); 2545 2546 DWORD WINAPI GetVersion(void); 2547 BOOL WINAPI GetVersionExA(LPOSVERSIONINFOA); 2548 BOOL WINAPI GetVersionExW(LPOSVERSIONINFOW); 2549 2550 BOOL 2551 WINAPI 2552 GetVolumeInformationA( 2553 _In_opt_ LPCSTR lpRootPathName, 2554 _Out_writes_opt_(nVolumeNameSize) LPSTR lpVolumeNameBuffer, 2555 _In_ DWORD nVolumeNameSize, 2556 _Out_opt_ LPDWORD lpVolumeSerialNumber, 2557 _Out_opt_ LPDWORD lpMaximumComponentLength, 2558 _Out_opt_ LPDWORD lpFileSystemFlags, 2559 _Out_writes_opt_(nFileSystemNameSize) LPSTR lpFileSystemNameBuffer, 2560 _In_ DWORD nFileSystemNameSize); 2561 2562 BOOL WINAPI GetVolumeInformationW(LPCWSTR,LPWSTR,DWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD); 2563 2564 #if (_WIN32_WINNT >= 0x0500) 2565 2566 BOOL 2567 WINAPI 2568 GetVolumeNameForVolumeMountPointA( 2569 _In_ LPCSTR lpszVolumeMountPoint, 2570 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName, 2571 _In_ DWORD cchBufferLength); 2572 2573 BOOL WINAPI GetVolumeNameForVolumeMountPointW(LPCWSTR,LPWSTR,DWORD); 2574 2575 BOOL 2576 WINAPI 2577 GetVolumePathNameA( 2578 _In_ LPCSTR lpszFileName, 2579 _Out_writes_(cchBufferLength) LPSTR lpszVolumePathName, 2580 _In_ DWORD cchBufferLength); 2581 2582 BOOL WINAPI GetVolumePathNameW(LPCWSTR,LPWSTR,DWORD); 2583 2584 #endif 2585 2586 #if (_WIN32_WINNT >= 0x0501) 2587 2588 BOOL 2589 WINAPI 2590 GetVolumePathNamesForVolumeNameA( 2591 _In_ LPCSTR lpszVolumeName, 2592 _Out_writes_to_opt_(cchBufferLength, *lpcchReturnLength) _Post_ _NullNull_terminated_ LPCH lpszVolumePathNames, 2593 _In_ DWORD cchBufferLength, 2594 _Out_ PDWORD lpcchReturnLength); 2595 2596 BOOL WINAPI GetVolumePathNamesForVolumeNameW(LPCWSTR,LPWSTR,DWORD,PDWORD); 2597 2598 #endif 2599 2600 UINT WINAPI GetWindowsDirectoryA(LPSTR,UINT); 2601 UINT WINAPI GetWindowsDirectoryW(LPWSTR,UINT); 2602 DWORD WINAPI GetWindowThreadProcessId(HWND hWnd,PDWORD lpdwProcessId); 2603 UINT WINAPI GetWriteWatch(DWORD,PVOID,SIZE_T,PVOID*,PULONG_PTR,PULONG); 2604 ATOM WINAPI GlobalAddAtomA(_In_opt_ LPCSTR); 2605 ATOM WINAPI GlobalAddAtomW(_In_opt_ LPCWSTR); 2606 HGLOBAL WINAPI GlobalAlloc(UINT,SIZE_T); 2607 SIZE_T WINAPI GlobalCompact(_In_ DWORD); /* Obsolete: Has no effect. */ 2608 ATOM WINAPI GlobalDeleteAtom(_In_ ATOM); 2609 #define GlobalDiscard(m) GlobalReAlloc((m),0,GMEM_MOVEABLE) 2610 ATOM WINAPI GlobalFindAtomA(_In_opt_ LPCSTR); 2611 ATOM WINAPI GlobalFindAtomW(_In_opt_ LPCWSTR); 2612 VOID WINAPI GlobalFix(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2613 UINT WINAPI GlobalFlags(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2614 HGLOBAL WINAPI GlobalFree(HGLOBAL); 2615 2616 UINT 2617 WINAPI 2618 GlobalGetAtomNameA( 2619 _In_ ATOM nAtom, 2620 _Out_writes_to_(nSize, return + 1) LPSTR lpBuffer, 2621 _In_ int nSize); 2622 2623 UINT 2624 WINAPI 2625 GlobalGetAtomNameW( 2626 _In_ ATOM nAtom, 2627 _Out_writes_to_(nSize, return + 1) LPWSTR lpBuffer, 2628 _In_ int nSize); 2629 2630 _Ret_maybenull_ HGLOBAL WINAPI GlobalHandle(_In_ LPCVOID); 2631 _Ret_maybenull_ LPVOID WINAPI GlobalLock(_In_ HGLOBAL); 2632 VOID WINAPI GlobalMemoryStatus(_Out_ LPMEMORYSTATUS); 2633 #if (_WIN32_WINNT >= 0x0500) 2634 BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX); 2635 #endif 2636 HGLOBAL WINAPI GlobalReAlloc(HGLOBAL,SIZE_T,UINT); 2637 SIZE_T WINAPI GlobalSize(_In_ HGLOBAL); 2638 VOID WINAPI GlobalUnfix(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2639 BOOL WINAPI GlobalUnlock(_In_ HGLOBAL); 2640 BOOL WINAPI GlobalUnWire(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2641 PVOID WINAPI GlobalWire(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2642 #define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING) 2643 PVOID WINAPI HeapAlloc(HANDLE,DWORD,SIZE_T); 2644 SIZE_T WINAPI HeapCompact(HANDLE,DWORD); 2645 HANDLE WINAPI HeapCreate(DWORD,SIZE_T,SIZE_T); 2646 BOOL WINAPI HeapDestroy(HANDLE); 2647 BOOL WINAPI HeapFree(HANDLE,DWORD,PVOID); 2648 BOOL WINAPI HeapLock(HANDLE); 2649 #if (_WIN32_WINNT >= 0x0501) 2650 BOOL WINAPI HeapQueryInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T,PSIZE_T); 2651 #endif 2652 PVOID WINAPI HeapReAlloc(HANDLE,DWORD,PVOID,SIZE_T); 2653 #if (_WIN32_WINNT >= 0x0501) 2654 BOOL WINAPI HeapSetInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T); 2655 #endif 2656 SIZE_T WINAPI HeapSize(HANDLE,DWORD,LPCVOID); 2657 BOOL WINAPI HeapUnlock(HANDLE); 2658 BOOL WINAPI HeapValidate(HANDLE,DWORD,LPCVOID); 2659 BOOL WINAPI HeapWalk(HANDLE,LPPROCESS_HEAP_ENTRY); 2660 BOOL WINAPI ImpersonateAnonymousToken(HANDLE); 2661 BOOL WINAPI ImpersonateLoggedOnUser(HANDLE); 2662 BOOL WINAPI ImpersonateNamedPipeClient(HANDLE); 2663 BOOL WINAPI ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL); 2664 BOOL WINAPI InitAtomTable(_In_ DWORD); 2665 BOOL WINAPI InitializeAcl(PACL,DWORD,DWORD); 2666 #if (_WIN32_WINNT >= 0x0600) 2667 VOID WINAPI InitializeConditionVariable(PCONDITION_VARIABLE); 2668 #endif 2669 VOID WINAPI InitializeCriticalSection(LPCRITICAL_SECTION); 2670 BOOL WINAPI InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION,DWORD); 2671 DWORD WINAPI SetCriticalSectionSpinCount(LPCRITICAL_SECTION,DWORD); 2672 BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR,DWORD); 2673 BOOL WINAPI InitializeSid (PSID,PSID_IDENTIFIER_AUTHORITY,BYTE); 2674 2675 #if (_WIN32_WINNT >= 0x0600) 2676 VOID WINAPI InitializeSRWLock(PSRWLOCK); 2677 #endif 2678 2679 BOOL WINAPI IsBadCodePtr(_In_opt_ FARPROC); 2680 BOOL WINAPI IsBadHugeReadPtr(_In_opt_ CONST VOID*, _In_ UINT_PTR); 2681 BOOL WINAPI IsBadHugeWritePtr(_In_opt_ PVOID, _In_ UINT_PTR); 2682 BOOL WINAPI IsBadReadPtr(_In_opt_ CONST VOID*, _In_ UINT_PTR); 2683 BOOL WINAPI IsBadStringPtrA(_In_opt_ LPCSTR, _In_ UINT_PTR); 2684 BOOL WINAPI IsBadStringPtrW(_In_opt_ LPCWSTR, _In_ UINT_PTR); 2685 BOOL WINAPI IsBadWritePtr(_In_opt_ PVOID, _In_ UINT_PTR); 2686 BOOL WINAPI IsDebuggerPresent(void); 2687 #if (_WIN32_WINNT >= 0x0501) 2688 BOOL WINAPI IsProcessInJob(HANDLE,HANDLE,PBOOL); 2689 #endif 2690 BOOL WINAPI IsProcessorFeaturePresent(DWORD); 2691 BOOL WINAPI IsSystemResumeAutomatic(void); 2692 2693 BOOL 2694 WINAPI 2695 IsTextUnicode( 2696 _In_reads_bytes_(iSize) CONST VOID *lpv, 2697 _In_ int iSize, 2698 _Inout_opt_ LPINT lpiResult); 2699 2700 #if (_WIN32_WINNT >= 0x0600) 2701 BOOL WINAPI IsThreadAFiber(VOID); 2702 #endif 2703 BOOL WINAPI IsValidAcl(PACL); 2704 BOOL WINAPI IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR); 2705 BOOL WINAPI IsValidSid(PSID); 2706 #if (_WIN32_WINNT >= 0x0501) 2707 BOOL WINAPI IsWellKnownSid(PSID,WELL_KNOWN_SID_TYPE); 2708 BOOL WINAPI IsWow64Process(HANDLE,PBOOL); 2709 #endif 2710 void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION); 2711 #define LimitEmsPages(n) 2712 _Ret_maybenull_ HINSTANCE WINAPI LoadLibraryA(_In_ LPCSTR); 2713 _Ret_maybenull_ HINSTANCE WINAPI LoadLibraryW(_In_ LPCWSTR); 2714 HINSTANCE WINAPI LoadLibraryExA(LPCSTR,HANDLE,DWORD); 2715 HINSTANCE WINAPI LoadLibraryExW(LPCWSTR,HANDLE,DWORD); 2716 DWORD WINAPI LoadModule(_In_ LPCSTR, _In_ PVOID); 2717 HGLOBAL WINAPI LoadResource(HINSTANCE,HRSRC); 2718 HLOCAL WINAPI LocalAlloc(UINT,SIZE_T); 2719 SIZE_T WINAPI LocalCompact(_In_ UINT); /* Obsolete: Has no effect. */ 2720 #define LocalDiscard(m) (LocalReAlloc((m),0,LMEM_MOVEABLE)) 2721 BOOL WINAPI LocalFileTimeToFileTime(CONST FILETIME *,LPFILETIME); 2722 UINT WINAPI LocalFlags(_In_ HLOCAL); /* Obsolete: Has no effect. */ 2723 HLOCAL WINAPI LocalFree(HLOCAL); 2724 _Ret_maybenull_ HLOCAL WINAPI LocalHandle(_In_ LPCVOID); 2725 PVOID WINAPI LocalLock(HLOCAL); 2726 HLOCAL WINAPI LocalReAlloc(HLOCAL,SIZE_T,UINT); 2727 SIZE_T WINAPI LocalShrink(_In_ HLOCAL, _In_ UINT); /* Obsolete: Has no effect. */ 2728 SIZE_T WINAPI LocalSize(_In_ HLOCAL); 2729 BOOL WINAPI LocalUnlock(HLOCAL); 2730 BOOL WINAPI LockFile(HANDLE,DWORD,DWORD,DWORD,DWORD); 2731 BOOL WINAPI LockFileEx(HANDLE,DWORD,DWORD,DWORD,DWORD,LPOVERLAPPED); 2732 PVOID WINAPI LockResource(HGLOBAL); 2733 #define LockSegment(w) GlobalFix((HANDLE)(w)) /* Obsolete: Has no effect. */ 2734 BOOL WINAPI LogonUserA(_In_ LPSTR, _In_opt_ LPSTR, _In_opt_ LPSTR, _In_ DWORD, _In_ DWORD, _Outptr_ PHANDLE); 2735 BOOL WINAPI LogonUserW(_In_ LPWSTR, _In_opt_ LPWSTR, _In_opt_ LPWSTR, _In_ DWORD, _In_ DWORD, _Outptr_ PHANDLE); 2736 2737 _Success_(return != FALSE) 2738 BOOL 2739 WINAPI 2740 LogonUserExA( 2741 _In_ LPSTR lpszUsername, 2742 _In_opt_ LPSTR lpszDomain, 2743 _In_opt_ LPSTR lpszPassword, 2744 _In_ DWORD dwLogonType, 2745 _In_ DWORD dwLogonProvider, 2746 _Out_opt_ PHANDLE phToken, 2747 _Out_opt_ PSID *ppLogonSid, 2748 _Out_opt_ PVOID *ppProfileBuffer, 2749 _Out_opt_ LPDWORD pdwProfileLength, 2750 _Out_opt_ PQUOTA_LIMITS pQuotaLimits); 2751 2752 _Success_(return != FALSE) 2753 BOOL 2754 WINAPI 2755 LogonUserExW( 2756 _In_ LPWSTR lpszUsername, 2757 _In_opt_ LPWSTR lpszDomain, 2758 _In_opt_ LPWSTR lpszPassword, 2759 _In_ DWORD dwLogonType, 2760 _In_ DWORD dwLogonProvider, 2761 _Out_opt_ PHANDLE phToken, 2762 _Out_opt_ PSID *ppLogonSid, 2763 _Out_opt_ PVOID *ppProfileBuffer, 2764 _Out_opt_ LPDWORD pdwProfileLength, 2765 _Out_opt_ PQUOTA_LIMITS pQuotaLimits); 2766 2767 _Success_(return != FALSE) 2768 BOOL 2769 WINAPI 2770 LookupAccountNameA( 2771 _In_opt_ LPCSTR lpSystemName, 2772 _In_ LPCSTR lpAccountName, 2773 _Out_writes_bytes_to_opt_(*cbSid, *cbSid) PSID Sid, 2774 _Inout_ LPDWORD cbSid, 2775 _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPSTR ReferencedDomainName, 2776 _Inout_ LPDWORD cchReferencedDomainName, 2777 _Out_ PSID_NAME_USE peUse); 2778 2779 _Success_(return != FALSE) 2780 BOOL 2781 WINAPI 2782 LookupAccountNameW( 2783 _In_opt_ LPCWSTR lpSystemName, 2784 _In_ LPCWSTR lpAccountName, 2785 _Out_writes_bytes_to_opt_(*cbSid, *cbSid) PSID Sid, 2786 _Inout_ LPDWORD cbSid, 2787 _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPWSTR ReferencedDomainName, 2788 _Inout_ LPDWORD cchReferencedDomainName, 2789 _Out_ PSID_NAME_USE peUse); 2790 2791 _Success_(return != FALSE) 2792 BOOL 2793 WINAPI 2794 LookupAccountSidA( 2795 _In_opt_ LPCSTR lpSystemName, 2796 _In_ PSID Sid, 2797 _Out_writes_to_opt_(*cchName, *cchName + 1) LPSTR Name, 2798 _Inout_ LPDWORD cchName, 2799 _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPSTR ReferencedDomainName, 2800 _Inout_ LPDWORD cchReferencedDomainName, 2801 _Out_ PSID_NAME_USE peUse); 2802 2803 _Success_(return != FALSE) 2804 BOOL 2805 WINAPI 2806 LookupAccountSidW( 2807 _In_opt_ LPCWSTR lpSystemName, 2808 _In_ PSID Sid, 2809 _Out_writes_to_opt_(*cchName, *cchName + 1) LPWSTR Name, 2810 _Inout_ LPDWORD cchName, 2811 _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPWSTR ReferencedDomainName, 2812 _Inout_ LPDWORD cchReferencedDomainName, 2813 _Out_ PSID_NAME_USE peUse); 2814 2815 _Success_(return != FALSE) 2816 BOOL 2817 WINAPI 2818 LookupPrivilegeDisplayNameA( 2819 _In_opt_ LPCSTR lpSystemName, 2820 _In_ LPCSTR lpName, 2821 _Out_writes_to_opt_(*cchDisplayName, *cchDisplayName + 1) LPSTR lpDisplayName, 2822 _Inout_ LPDWORD cchDisplayName, 2823 _Out_ LPDWORD lpLanguageId); 2824 2825 _Success_(return != FALSE) 2826 BOOL 2827 WINAPI 2828 LookupPrivilegeDisplayNameW( 2829 _In_opt_ LPCWSTR lpSystemName, 2830 _In_ LPCWSTR lpName, 2831 _Out_writes_to_opt_(*cchDisplayName, *cchDisplayName + 1) LPWSTR lpDisplayName, 2832 _Inout_ LPDWORD cchDisplayName, 2833 _Out_ LPDWORD lpLanguageId); 2834 2835 _Success_(return != FALSE) 2836 BOOL 2837 WINAPI 2838 LookupPrivilegeNameA( 2839 _In_opt_ LPCSTR lpSystemName, 2840 _In_ PLUID lpLuid, 2841 _Out_writes_to_opt_(*cchName, *cchName + 1) LPSTR lpName, 2842 _Inout_ LPDWORD cchName); 2843 2844 _Success_(return != FALSE) 2845 BOOL 2846 WINAPI 2847 LookupPrivilegeNameW( 2848 _In_opt_ LPCWSTR lpSystemName, 2849 _In_ PLUID lpLuid, 2850 _Out_writes_to_opt_(*cchName, *cchName + 1) LPWSTR lpName, 2851 _Inout_ LPDWORD cchName); 2852 2853 BOOL WINAPI LookupPrivilegeValueA(_In_opt_ LPCSTR, _In_ LPCSTR, _Out_ PLUID); 2854 BOOL WINAPI LookupPrivilegeValueW(_In_opt_ LPCWSTR, _In_ LPCWSTR, _Out_ PLUID); 2855 2856 LPSTR 2857 WINAPI 2858 lstrcatA( 2859 _Inout_updates_z_(_String_length_(lpString1) + _String_length_(lpString2) + 1) LPSTR lpString1, 2860 _In_ LPCSTR lpString2); 2861 2862 LPWSTR 2863 WINAPI 2864 lstrcatW( 2865 _Inout_updates_z_(_String_length_(lpString1) + _String_length_(lpString2) + 1) LPWSTR lpString1, 2866 _In_ LPCWSTR lpString2); 2867 2868 int WINAPI lstrcmpA(LPCSTR,LPCSTR); 2869 int WINAPI lstrcmpiA(LPCSTR,LPCSTR); 2870 int WINAPI lstrcmpiW( LPCWSTR,LPCWSTR); 2871 int WINAPI lstrcmpW(LPCWSTR,LPCWSTR); 2872 2873 LPSTR 2874 WINAPI 2875 lstrcpyA( 2876 _Out_writes_(_String_length_(lpString2) + 1) LPSTR lpString1, 2877 _In_ LPCSTR lpString2); 2878 2879 LPWSTR 2880 WINAPI 2881 lstrcpyW( 2882 _Out_writes_(_String_length_(lpString2) + 1) LPWSTR lpString1, 2883 _In_ LPCWSTR lpString2); 2884 2885 LPSTR WINAPI lstrcpynA(LPSTR,LPCSTR,int); 2886 LPWSTR WINAPI lstrcpynW(LPWSTR,LPCWSTR,int); 2887 int WINAPI lstrlenA(LPCSTR); 2888 int WINAPI lstrlenW(LPCWSTR); 2889 BOOL WINAPI MakeAbsoluteSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD,PACL,PDWORD,PACL,PDWORD,PSID,PDWORD,PSID,PDWORD); 2890 #define MakeProcInstance(p,i) (p) 2891 BOOL WINAPI MakeSelfRelativeSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD); 2892 VOID WINAPI MapGenericMask(PDWORD,PGENERIC_MAPPING); 2893 PVOID WINAPI MapViewOfFile(HANDLE,DWORD,DWORD,DWORD,SIZE_T); 2894 PVOID WINAPI MapViewOfFileEx(HANDLE,DWORD,DWORD,DWORD,SIZE_T,PVOID); 2895 BOOL WINAPI MoveFileA(_In_ LPCSTR, _In_ LPCSTR); 2896 BOOL WINAPI MoveFileW(_In_ LPCWSTR, _In_ LPCWSTR); 2897 BOOL WINAPI MoveFileExA(_In_ LPCSTR, _In_opt_ LPCSTR, _In_ DWORD); 2898 BOOL WINAPI MoveFileExW(_In_ LPCWSTR, _In_opt_ LPCWSTR, _In_ DWORD); 2899 BOOL WINAPI MoveFileWithProgressA(_In_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPPROGRESS_ROUTINE, _In_opt_ LPVOID, _In_ DWORD); 2900 BOOL WINAPI MoveFileWithProgressW(_In_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPPROGRESS_ROUTINE, _In_opt_ LPVOID, _In_ DWORD); 2901 int WINAPI MulDiv(_In_ int, _In_ int, _In_ int); 2902 BOOL WINAPI NotifyChangeEventLog(_In_ HANDLE, _In_ HANDLE); 2903 BOOL WINAPI ObjectCloseAuditAlarmA(_In_ LPCSTR, _In_ PVOID, _In_ BOOL); 2904 BOOL WINAPI ObjectCloseAuditAlarmW(LPCWSTR,PVOID,BOOL); 2905 BOOL WINAPI ObjectDeleteAuditAlarmA(_In_ LPCSTR, _In_ PVOID, _In_ BOOL); 2906 BOOL WINAPI ObjectDeleteAuditAlarmW(LPCWSTR,PVOID,BOOL); 2907 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); 2908 BOOL WINAPI ObjectOpenAuditAlarmW(LPCWSTR,PVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL); 2909 BOOL WINAPI ObjectPrivilegeAuditAlarmA(_In_ LPCSTR, _In_ PVOID, _In_ HANDLE, _In_ DWORD, _In_ PPRIVILEGE_SET, _In_ BOOL); 2910 BOOL WINAPI ObjectPrivilegeAuditAlarmW(LPCWSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL); 2911 HANDLE WINAPI OpenBackupEventLogA(_In_opt_ LPCSTR, _In_ LPCSTR); 2912 HANDLE WINAPI OpenBackupEventLogW(_In_opt_ LPCWSTR, _In_ LPCWSTR); 2913 HANDLE WINAPI OpenEventA(DWORD,BOOL,LPCSTR); 2914 HANDLE WINAPI OpenEventLogA(_In_opt_ LPCSTR, _In_ LPCSTR); 2915 HANDLE WINAPI OpenEventLogW(_In_opt_ LPCWSTR, _In_ LPCWSTR); 2916 HANDLE WINAPI OpenEventW(DWORD,BOOL,LPCWSTR); 2917 HFILE WINAPI OpenFile(_In_ LPCSTR, _Inout_ LPOFSTRUCT, _In_ UINT); 2918 #if (_WIN32_WINNT >= 0x0600) 2919 HANDLE WINAPI OpenFileById(_In_ HANDLE, _In_ LPFILE_ID_DESCRIPTOR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES, _In_ DWORD); 2920 #endif 2921 HANDLE WINAPI OpenFileMappingA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR); 2922 HANDLE WINAPI OpenFileMappingW(DWORD,BOOL,LPCWSTR); 2923 _Ret_maybenull_ HANDLE WINAPI OpenMutexA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR); 2924 HANDLE WINAPI OpenMutexW(DWORD,BOOL,LPCWSTR); 2925 HANDLE WINAPI OpenProcess(DWORD,BOOL,DWORD); 2926 BOOL WINAPI OpenProcessToken(HANDLE,DWORD,PHANDLE); 2927 _Ret_maybenull_ HANDLE WINAPI OpenSemaphoreA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR); 2928 HANDLE WINAPI OpenSemaphoreW(DWORD,BOOL,LPCWSTR); 2929 #if (_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490) 2930 HANDLE WINAPI OpenThread(DWORD,BOOL,DWORD); 2931 #endif 2932 BOOL WINAPI OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE); 2933 _Ret_maybenull_ HANDLE WINAPI OpenWaitableTimerA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR); 2934 HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR); 2935 WINBASEAPI void WINAPI OutputDebugStringA(LPCSTR); 2936 WINBASEAPI void WINAPI OutputDebugStringW(LPCWSTR); 2937 BOOL WINAPI PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD); 2938 BOOL WINAPI PostQueuedCompletionStatus(HANDLE,DWORD,ULONG_PTR,LPOVERLAPPED); 2939 DWORD WINAPI PrepareTape(_In_ HANDLE, _In_ DWORD, _In_ BOOL); 2940 BOOL WINAPI PrivilegeCheck (HANDLE,PPRIVILEGE_SET,PBOOL); 2941 BOOL WINAPI PrivilegedServiceAuditAlarmA(_In_ LPCSTR, _In_ LPCSTR, _In_ HANDLE, _In_ PPRIVILEGE_SET, _In_ BOOL); 2942 BOOL WINAPI PrivilegedServiceAuditAlarmW(LPCWSTR,LPCWSTR,HANDLE,PPRIVILEGE_SET,BOOL); 2943 #if (_WIN32_WINNT >= 0x0500) 2944 BOOL WINAPI ProcessIdToSessionId(DWORD,DWORD*); 2945 #endif 2946 BOOL WINAPI PulseEvent(HANDLE); 2947 BOOL WINAPI PurgeComm(_In_ HANDLE, _In_ DWORD); 2948 2949 #if (_WIN32_WINNT >= 0x0501) 2950 BOOL 2951 WINAPI 2952 QueryActCtxW( 2953 _In_ DWORD dwFlags, 2954 _In_ HANDLE hActCtx, 2955 _In_opt_ PVOID pvSubInstance, 2956 _In_ ULONG ulInfoClass, 2957 _Out_writes_bytes_to_opt_(cbBuffer, *pcbWrittenOrRequired) PVOID pvBuffer, 2958 _In_ SIZE_T cbBuffer, 2959 _Out_opt_ SIZE_T *pcbWrittenOrRequired); 2960 #endif 2961 2962 DWORD 2963 WINAPI 2964 QueryDosDeviceA( 2965 _In_opt_ LPCSTR lpDeviceName, 2966 _Out_writes_to_opt_(ucchMax, return) LPSTR lpTargetPath, 2967 _In_ DWORD ucchMax); 2968 2969 DWORD WINAPI QueryDosDeviceW(LPCWSTR,LPWSTR,DWORD); 2970 #if (_WIN32_WINNT >= 0x0501) 2971 BOOL WINAPI QueryMemoryResourceNotification(HANDLE,PBOOL); 2972 #endif 2973 BOOL WINAPI QueryPerformanceCounter(PLARGE_INTEGER); 2974 BOOL WINAPI QueryPerformanceFrequency(PLARGE_INTEGER); 2975 #if (_WIN32_WINNT >= 0x0600) 2976 VOID WINAPI QuerySecurityAccessMask(SECURITY_INFORMATION,LPDWORD); 2977 #endif 2978 DWORD WINAPI QueueUserAPC(PAPCFUNC,HANDLE,ULONG_PTR); 2979 #if (_WIN32_WINNT >= 0x0500) 2980 BOOL WINAPI QueueUserWorkItem(LPTHREAD_START_ROUTINE,PVOID,ULONG); 2981 #endif 2982 void WINAPI RaiseException(DWORD,DWORD,DWORD,const ULONG_PTR*); 2983 2984 BOOL 2985 WINAPI 2986 QueryInformationJobObject( 2987 _In_opt_ HANDLE hJob, 2988 _In_ JOBOBJECTINFOCLASS JobObjectInformationClass, 2989 _Out_writes_bytes_to_(cbJobObjectInformationLength, *lpReturnLength) LPVOID lpJobObjectInformation, 2990 _In_ DWORD cbJobObjectInformationLength, 2991 _Out_opt_ LPDWORD lpReturnLength); 2992 2993 BOOL 2994 WINAPI 2995 ReadDirectoryChangesW( 2996 _In_ HANDLE hDirectory, 2997 _Out_writes_bytes_to_(nBufferLength, *lpBytesReturned) LPVOID lpBuffer, 2998 _In_ DWORD nBufferLength, 2999 _In_ BOOL bWatchSubtree, 3000 _In_ DWORD dwNotifyFilter, 3001 _Out_opt_ LPDWORD lpBytesReturned, 3002 _Inout_opt_ LPOVERLAPPED lpOverlapped, 3003 _In_opt_ LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine); 3004 3005 BOOL 3006 WINAPI 3007 ReadEventLogA( 3008 _In_ HANDLE hEventLog, 3009 _In_ DWORD dwReadFlags, 3010 _In_ DWORD dwRecordOffset, 3011 _Out_writes_bytes_to_(nNumberOfBytesToRead, *pnBytesRead) LPVOID lpBuffer, 3012 _In_ DWORD nNumberOfBytesToRead, 3013 _Out_ DWORD *pnBytesRead, 3014 _Out_ DWORD *pnMinNumberOfBytesNeeded); 3015 3016 BOOL 3017 WINAPI 3018 ReadEventLogW( 3019 _In_ HANDLE hEventLog, 3020 _In_ DWORD dwReadFlags, 3021 _In_ DWORD dwRecordOffset, 3022 _Out_writes_bytes_to_(nNumberOfBytesToRead, *pnBytesRead) LPVOID lpBuffer, 3023 _In_ DWORD nNumberOfBytesToRead, 3024 _Out_ DWORD *pnBytesRead, 3025 _Out_ DWORD *pnMinNumberOfBytesNeeded); 3026 3027 BOOL WINAPI ReadFile(HANDLE,PVOID,DWORD,PDWORD,LPOVERLAPPED); 3028 BOOL WINAPI ReadFileEx(HANDLE,PVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); 3029 BOOL WINAPI ReadFileScatter(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED); 3030 BOOL WINAPI ReadProcessMemory(HANDLE,LPCVOID,LPVOID,SIZE_T,PSIZE_T); 3031 #if (_WIN32_WINNT >= 0x0600) 3032 VOID WINAPI RecoveryFinished(BOOL); 3033 HRESULT WINAPI RecoveryInProgress(OUT PBOOL); 3034 HRESULT WINAPI RegisterApplicationRecoveryCallback(_In_ APPLICATION_RECOVERY_CALLBACK, _In_opt_ PVOID, _In_ DWORD, _In_ DWORD); 3035 HRESULT WINAPI RegisterApplicationRestart(_In_opt_ PCWSTR, _In_ DWORD); 3036 #endif 3037 HANDLE WINAPI RegisterEventSourceA(_In_opt_ LPCSTR, _In_ LPCSTR); 3038 HANDLE WINAPI RegisterEventSourceW(_In_opt_ LPCWSTR, _In_ LPCWSTR); 3039 #if (_WIN32_WINNT >= 0x0500) 3040 BOOL WINAPI RegisterWaitForSingleObject(_Outptr_ PHANDLE, _In_ HANDLE, _In_ WAITORTIMERCALLBACK, _In_opt_ PVOID, _In_ ULONG, _In_ ULONG); 3041 HANDLE WINAPI RegisterWaitForSingleObjectEx(HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG); 3042 #endif 3043 #if (_WIN32_WINNT >= 0x0501) 3044 void WINAPI ReleaseActCtx(_Inout_ HANDLE); 3045 #endif 3046 BOOL WINAPI ReleaseMutex(HANDLE); 3047 BOOL WINAPI ReleaseSemaphore(HANDLE,LONG,LPLONG); 3048 #if (_WIN32_WINNT >= 0x0600) 3049 VOID WINAPI ReleaseSRWLockExclusive(PSRWLOCK); 3050 VOID WINAPI ReleaseSRWLockShared(PSRWLOCK); 3051 #endif 3052 BOOL WINAPI RemoveDirectoryA(LPCSTR); 3053 BOOL WINAPI RemoveDirectoryW(LPCWSTR); 3054 #if (_WIN32_WINNT >= 0x0500) 3055 ULONG WINAPI RemoveVectoredExceptionHandler(_In_ PVOID); 3056 ULONG WINAPI RemoveVectoredContinueHandler(_In_ PVOID); 3057 #endif 3058 #if (_WIN32_WINNT >= 0x0500) 3059 BOOL WINAPI ReplaceFileA(_In_ LPCSTR, _In_ LPCSTR, _In_opt_ LPCSTR, _In_ DWORD, _Reserved_ LPVOID, _Reserved_ LPVOID); 3060 BOOL WINAPI ReplaceFileW(_In_ LPCWSTR, _In_ LPCWSTR, _In_opt_ LPCWSTR, _In_ DWORD, _Reserved_ LPVOID, _Reserved_ LPVOID); 3061 #endif 3062 3063 BOOL 3064 WINAPI 3065 ReportEventA( 3066 _In_ HANDLE hEventLog, 3067 _In_ WORD wType, 3068 _In_ WORD wCategory, 3069 _In_ DWORD dwEventID, 3070 _In_opt_ PSID lpUserSid, 3071 _In_ WORD wNumStrings, 3072 _In_ DWORD dwDataSize, 3073 _In_reads_opt_(wNumStrings) LPCSTR *lpStrings, 3074 _In_reads_bytes_opt_(dwDataSize) LPVOID lpRawData); 3075 3076 BOOL 3077 WINAPI 3078 ReportEventW( 3079 _In_ HANDLE hEventLog, 3080 _In_ WORD wType, 3081 _In_ WORD wCategory, 3082 _In_ DWORD dwEventID, 3083 _In_opt_ PSID lpUserSid, 3084 _In_ WORD wNumStrings, 3085 _In_ DWORD dwDataSize, 3086 _In_reads_opt_(wNumStrings) LPCWSTR *lpStrings, 3087 _In_reads_bytes_opt_(dwDataSize) LPVOID lpRawData); 3088 3089 BOOL WINAPI ResetEvent(HANDLE); 3090 UINT WINAPI ResetWriteWatch(LPVOID,SIZE_T); 3091 #if (_WIN32_WINNT >= 0x0510) 3092 VOID WINAPI RestoreLastError(_In_ DWORD); 3093 #endif 3094 DWORD WINAPI ResumeThread(HANDLE); 3095 BOOL WINAPI RevertToSelf(void); 3096 3097 _Success_(return != 0 && return < nBufferLength) 3098 DWORD 3099 WINAPI 3100 SearchPathA( 3101 _In_opt_ LPCSTR lpPath, 3102 _In_ LPCSTR lpFileName, 3103 _In_opt_ LPCSTR lpExtension, 3104 _In_ DWORD nBufferLength, 3105 _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer, 3106 _Out_opt_ LPSTR *lpFilePart); 3107 3108 DWORD WINAPI 3109 SearchPathW( 3110 _In_opt_ LPCWSTR lpPath, 3111 _In_ LPCWSTR lpFileName, 3112 _In_opt_ LPCWSTR lpExtension, 3113 _In_ DWORD nBufferLength, 3114 _Out_writes_to_opt_(nBufferLength, return +1) LPWSTR lpBuffer, 3115 _Out_opt_ LPWSTR *lpFilePart); 3116 BOOL WINAPI SetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS); 3117 BOOL WINAPI SetCommBreak(_In_ HANDLE); 3118 3119 BOOL 3120 WINAPI 3121 SetCommConfig( 3122 _In_ HANDLE hCommDev, 3123 _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC, 3124 _In_ DWORD dwSize); 3125 3126 BOOL WINAPI SetCommMask(_In_ HANDLE, _In_ DWORD); 3127 BOOL WINAPI SetCommState(_In_ HANDLE, _In_ LPDCB); 3128 BOOL WINAPI SetCommTimeouts(_In_ HANDLE, _In_ LPCOMMTIMEOUTS); 3129 BOOL WINAPI SetComputerNameA(_In_ LPCSTR); 3130 BOOL WINAPI SetComputerNameW(_In_ LPCWSTR); 3131 #if (_WIN32_WINNT >= 0x0500) 3132 BOOL WINAPI SetComputerNameExA(_In_ COMPUTER_NAME_FORMAT, _In_ LPCSTR); 3133 BOOL WINAPI SetComputerNameExW(COMPUTER_NAME_FORMAT,LPCWSTR); 3134 #endif 3135 BOOL WINAPI SetCurrentDirectoryA(LPCSTR); 3136 BOOL WINAPI SetCurrentDirectoryW(LPCWSTR); 3137 3138 BOOL 3139 WINAPI 3140 SetDefaultCommConfigA( 3141 _In_ LPCSTR lpszName, 3142 _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC, 3143 _In_ DWORD dwSize); 3144 3145 BOOL 3146 WINAPI 3147 SetDefaultCommConfigW( 3148 _In_ LPCWSTR lpszName, 3149 _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC, 3150 _In_ DWORD dwSize); 3151 3152 #if (_WIN32_WINNT >= 0x0502) 3153 BOOL WINAPI SetDllDirectoryA(_In_opt_ LPCSTR); 3154 BOOL WINAPI SetDllDirectoryW(_In_opt_ LPCWSTR); 3155 #endif 3156 BOOL WINAPI SetEndOfFile(HANDLE); 3157 BOOL WINAPI SetEnvironmentVariableA(LPCSTR,LPCSTR); 3158 BOOL WINAPI SetEnvironmentVariableW(LPCWSTR,LPCWSTR); 3159 UINT WINAPI SetErrorMode(UINT); 3160 BOOL WINAPI SetEvent(HANDLE); 3161 VOID WINAPI SetFileApisToANSI(void); 3162 VOID WINAPI SetFileApisToOEM(void); 3163 BOOL WINAPI SetFileAttributesA(LPCSTR lpFileName, DWORD dwFileAttributes); 3164 #if (_WIN32_WINNT >= 0x0600) 3165 BOOL WINAPI SetFileAttributesByHandle(HANDLE,DWORD,DWORD); 3166 #endif 3167 BOOL WINAPI SetFileAttributesW(LPCWSTR lpFileName, DWORD dwFileAttributes); 3168 #if (_WIN32_WINNT >= 0x0600) 3169 BOOL WINAPI SetFileBandwidthReservation(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ BOOL, _Out_ LPDWORD, _Out_ LPDWORD); 3170 BOOL WINAPI SetFileCompletionNotificationModes(_In_ HANDLE, _In_ UCHAR); 3171 #endif 3172 DWORD WINAPI SetFilePointer(HANDLE,LONG,PLONG,DWORD); 3173 BOOL WINAPI SetFilePointerEx(HANDLE,LARGE_INTEGER,PLARGE_INTEGER,DWORD); 3174 BOOL WINAPI SetFileSecurityA(_In_ LPCSTR, _In_ SECURITY_INFORMATION, _In_ PSECURITY_DESCRIPTOR); 3175 BOOL WINAPI SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); 3176 #if (_WIN32_WINNT >= 0x0501) 3177 BOOL WINAPI SetFileShortNameA(_In_ HANDLE, _In_ LPCSTR); 3178 BOOL WINAPI SetFileShortNameW(_In_ HANDLE, _In_ LPCWSTR); 3179 #endif 3180 BOOL WINAPI SetFileTime(HANDLE,const FILETIME*,const FILETIME*,const FILETIME*); 3181 #if (_WIN32_WINNT >= 0x0501) 3182 BOOL WINAPI SetFileValidData(HANDLE,LONGLONG); 3183 #endif 3184 3185 #if (_WIN32_WINNT >= 0x0502) 3186 3187 WINBASEAPI 3188 UINT 3189 WINAPI 3190 EnumSystemFirmwareTables( 3191 _In_ DWORD FirmwareTableProviderSignature, 3192 _Out_writes_bytes_to_opt_(BufferSize, return) PVOID pFirmwareTableEnumBuffer, 3193 _In_ DWORD BufferSize); 3194 3195 WINBASEAPI 3196 UINT 3197 WINAPI 3198 GetSystemFirmwareTable( 3199 _In_ DWORD FirmwareTableProviderSignature, 3200 _In_ DWORD FirmwareTableID, 3201 _Out_writes_bytes_to_opt_(BufferSize, return) PVOID pFirmwareTableBuffer, 3202 _In_ DWORD BufferSize); 3203 3204 _Success_(return > 0) 3205 WINBASEAPI 3206 DWORD 3207 WINAPI 3208 GetFirmwareEnvironmentVariableA( 3209 _In_ LPCSTR lpName, 3210 _In_ LPCSTR lpGuid, 3211 _Out_writes_bytes_to_opt_(nSize, return) PVOID pBuffer, 3212 _In_ DWORD nSize); 3213 3214 _Success_(return > 0) 3215 WINBASEAPI 3216 DWORD 3217 WINAPI 3218 GetFirmwareEnvironmentVariableW( 3219 _In_ LPCWSTR lpName, 3220 _In_ LPCWSTR lpGuid, 3221 _Out_writes_bytes_to_opt_(nSize, return) PVOID pBuffer, 3222 _In_ DWORD nSize); 3223 3224 #ifdef UNICODE 3225 #define GetFirmwareEnvironmentVariable GetFirmwareEnvironmentVariableW 3226 #else 3227 #define GetFirmwareEnvironmentVariable GetFirmwareEnvironmentVariableA 3228 #endif 3229 3230 WINBASEAPI 3231 BOOL 3232 WINAPI 3233 SetFirmwareEnvironmentVariableA( 3234 _In_ LPCSTR lpName, 3235 _In_ LPCSTR lpGuid, 3236 _In_reads_bytes_opt_(nSize) PVOID pValue, 3237 _In_ DWORD nSize); 3238 3239 WINBASEAPI 3240 BOOL 3241 WINAPI 3242 SetFirmwareEnvironmentVariableW( 3243 _In_ LPCWSTR lpName, 3244 _In_ LPCWSTR lpGuid, 3245 _In_reads_bytes_opt_(nSize) PVOID pValue, 3246 _In_ DWORD nSize); 3247 3248 #ifdef UNICODE 3249 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableW 3250 #else 3251 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableA 3252 #endif 3253 3254 #endif /* _WIN32_WINNT >= 0x0502 */ 3255 3256 #if (_WIN32_WINNT >= 0x0602) 3257 3258 _Success_(return > 0) 3259 WINBASEAPI 3260 DWORD 3261 WINAPI 3262 GetFirmwareEnvironmentVariableExW( 3263 _In_ LPCWSTR lpName, 3264 _In_ LPCWSTR lpGuid, 3265 _Out_writes_bytes_to_opt_(nSize, return) PVOID pBuffer, 3266 _In_ DWORD nSize, 3267 _Out_opt_ PDWORD pdwAttribubutes); 3268 3269 _Success_(return > 0) 3270 WINBASEAPI 3271 DWORD 3272 WINAPI 3273 GetFirmwareEnvironmentVariableExA( 3274 _In_ LPCSTR lpName, 3275 _In_ LPCSTR lpGuid, 3276 _Out_writes_bytes_to_opt_(nSize, return) PVOID pBuffer, 3277 _In_ DWORD nSize, 3278 _Out_opt_ PDWORD pdwAttribubutes); 3279 3280 #ifdef UNICODE 3281 #define GetFirmwareEnvironmentVariableEx GetFirmwareEnvironmentVariableExW 3282 #else 3283 #define GetFirmwareEnvironmentVariableEx GetFirmwareEnvironmentVariableExA 3284 #endif 3285 3286 WINBASEAPI 3287 BOOL 3288 WINAPI 3289 SetFirmwareEnvironmentVariableExW( 3290 _In_ LPCWSTR lpName, 3291 _In_ LPCWSTR lpGuid, 3292 _In_reads_bytes_opt_(nSize) PVOID pValue, 3293 _In_ DWORD nSize, 3294 _In_ DWORD dwAttributes); 3295 3296 WINBASEAPI 3297 BOOL 3298 WINAPI 3299 SetFirmwareEnvironmentVariableExA( 3300 _In_ LPCSTR lpName, 3301 _In_ LPCSTR lpGuid, 3302 _In_reads_bytes_opt_(nSize) PVOID pValue, 3303 _In_ DWORD nSize, 3304 _In_ DWORD dwAttributes); 3305 3306 #ifdef UNICODE 3307 #define SetFirmwareEnvironmentVariableEx SetFirmwareEnvironmentVariableExW 3308 #else 3309 #define SetFirmwareEnvironmentVariableEx SetFirmwareEnvironmentVariableExA 3310 #endif 3311 3312 _Success_(return) 3313 WINBASEAPI 3314 BOOL 3315 WINAPI 3316 GetFirmwareType( 3317 _Out_ PFIRMWARE_TYPE FirmwareType); 3318 3319 #endif /* _WIN32_WINNT >= 0x0602 */ 3320 3321 UINT WINAPI SetHandleCount(UINT); 3322 BOOL WINAPI SetHandleInformation(HANDLE,DWORD,DWORD); 3323 3324 BOOL 3325 WINAPI 3326 SetInformationJobObject( 3327 _In_ HANDLE hJob, 3328 _In_ JOBOBJECTINFOCLASS JobObjectInformationClass, 3329 _In_reads_bytes_(cbJobObjectInformationLength) LPVOID lpJobObjectInformation, 3330 _In_ DWORD cbJobObjectInformationLength); 3331 3332 BOOL WINAPI SetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); 3333 void WINAPI SetLastError(DWORD); 3334 void WINAPI SetLastErrorEx(DWORD,DWORD); 3335 BOOL WINAPI SetLocalTime(const SYSTEMTIME*); 3336 BOOL WINAPI SetMailslotInfo(_In_ HANDLE, _In_ DWORD); 3337 BOOL WINAPI SetNamedPipeHandleState(HANDLE,PDWORD,PDWORD,PDWORD); 3338 BOOL WINAPI SetPriorityClass(HANDLE,DWORD); 3339 BOOL WINAPI SetPrivateObjectSecurity(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR *,PGENERIC_MAPPING,HANDLE); 3340 BOOL WINAPI SetProcessAffinityMask(_In_ HANDLE, _In_ DWORD_PTR); 3341 BOOL WINAPI SetProcessPriorityBoost(_In_ HANDLE, _In_ BOOL); 3342 BOOL WINAPI SetProcessShutdownParameters(DWORD,DWORD); 3343 BOOL WINAPI SetProcessWorkingSetSize(_In_ HANDLE, _In_ SIZE_T, _In_ SIZE_T); 3344 #if (_WIN32_WINNT >= 0x0600) 3345 VOID WINAPI SetSecurityAccessMask(SECURITY_INFORMATION,LPDWORD); 3346 #endif 3347 BOOL WINAPI SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,SECURITY_DESCRIPTOR_CONTROL,SECURITY_DESCRIPTOR_CONTROL); 3348 BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL); 3349 BOOL WINAPI SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID,BOOL); 3350 BOOL WINAPI SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID,BOOL); 3351 DWORD WINAPI SetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR,PUCHAR); 3352 BOOL WINAPI SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL); 3353 BOOL WINAPI SetStdHandle(_In_ DWORD, _In_ HANDLE); 3354 #define SetSwapAreaSize(w) (w) 3355 BOOL WINAPI SetSystemPowerState(_In_ BOOL, _In_ BOOL); 3356 BOOL WINAPI SetSystemTime(const SYSTEMTIME*); 3357 BOOL WINAPI SetSystemTimeAdjustment(_In_ DWORD, _In_ BOOL); 3358 DWORD WINAPI SetTapeParameters(_In_ HANDLE, _In_ DWORD, _In_ PVOID); 3359 DWORD WINAPI SetTapePosition(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ BOOL); 3360 DWORD_PTR WINAPI SetThreadAffinityMask(_In_ HANDLE, _In_ DWORD_PTR); 3361 BOOL WINAPI SetThreadContext(HANDLE,const CONTEXT*); 3362 DWORD WINAPI SetThreadIdealProcessor(_In_ HANDLE, _In_ DWORD); 3363 BOOL WINAPI SetThreadPriority(HANDLE,int); 3364 BOOL WINAPI SetThreadPriorityBoost(HANDLE,BOOL); 3365 BOOL WINAPI SetThreadToken (PHANDLE,HANDLE); 3366 BOOL WINAPI SetTimeZoneInformation(const TIME_ZONE_INFORMATION *); 3367 BOOL WINAPI SetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD); 3368 LPTOP_LEVEL_EXCEPTION_FILTER WINAPI SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER); 3369 BOOL WINAPI SetupComm(_In_ HANDLE, _In_ DWORD, _In_ DWORD); 3370 BOOL WINAPI SetVolumeLabelA(_In_opt_ LPCSTR, _In_opt_ LPCSTR); 3371 BOOL WINAPI SetVolumeLabelW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR); 3372 #if (_WIN32_WINNT >= 0x0500) 3373 BOOL WINAPI SetVolumeMountPointA(_In_ LPCSTR, _In_ LPCSTR); 3374 BOOL WINAPI SetVolumeMountPointW(_In_ LPCWSTR, _In_ LPCWSTR); 3375 #endif 3376 BOOL WINAPI SetWaitableTimer(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,PVOID,BOOL); 3377 DWORD WINAPI SignalObjectAndWait(_In_ HANDLE, _In_ HANDLE, _In_ DWORD, _In_ BOOL); 3378 DWORD WINAPI SizeofResource(HINSTANCE,HRSRC); 3379 WINBASEAPI void WINAPI Sleep(DWORD); 3380 #if (_WIN32_WINNT >= 0x0600) 3381 BOOL WINAPI SleepConditionVariableCS(PCONDITION_VARIABLE,PCRITICAL_SECTION,DWORD); 3382 BOOL WINAPI SleepConditionVariableSRW(PCONDITION_VARIABLE,PSRWLOCK,DWORD,ULONG); 3383 #endif 3384 DWORD WINAPI SleepEx(DWORD,BOOL); 3385 DWORD WINAPI SuspendThread(HANDLE); 3386 void WINAPI SwitchToFiber(_In_ PVOID); 3387 BOOL WINAPI SwitchToThread(void); 3388 BOOL WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME); 3389 BOOL WINAPI SystemTimeToTzSpecificLocalTime(CONST TIME_ZONE_INFORMATION*,CONST SYSTEMTIME*,LPSYSTEMTIME); 3390 BOOL WINAPI TerminateProcess(HANDLE hProcess, UINT uExitCode); 3391 BOOL WINAPI TerminateThread(HANDLE hThread,DWORD dwExitCode); 3392 DWORD WINAPI TlsAlloc(VOID); 3393 BOOL WINAPI TlsFree(DWORD); 3394 PVOID WINAPI TlsGetValue(DWORD); 3395 BOOL WINAPI TlsSetValue(DWORD,PVOID); 3396 BOOL WINAPI TransactNamedPipe(HANDLE,PVOID,DWORD,PVOID,DWORD,PDWORD,LPOVERLAPPED); 3397 BOOL WINAPI TransmitCommChar(_In_ HANDLE, _In_ char); 3398 BOOL WINAPI TryEnterCriticalSection(LPCRITICAL_SECTION); 3399 BOOL WINAPI TzSpecificLocalTimeToSystemTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME); 3400 LONG WINAPI UnhandledExceptionFilter(LPEXCEPTION_POINTERS); 3401 BOOL WINAPI UnlockFile(HANDLE,DWORD,DWORD,DWORD,DWORD); 3402 BOOL WINAPI UnlockFileEx(HANDLE,DWORD,DWORD,DWORD,LPOVERLAPPED); 3403 #define UnlockResource(handle) ((handle), 0) 3404 #define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) /* Obsolete: Has no effect. */ 3405 BOOL WINAPI UnmapViewOfFile(LPCVOID); 3406 #if (_WIN32_WINNT >= 0x0500) 3407 _Must_inspect_result_ BOOL WINAPI UnregisterWait(_In_ HANDLE); 3408 BOOL WINAPI UnregisterWaitEx(HANDLE,HANDLE); 3409 #endif 3410 3411 BOOL 3412 WINAPI 3413 UpdateResourceA( 3414 _In_ HANDLE hUpdate, 3415 _In_ LPCSTR lpType, 3416 _In_ LPCSTR lpName, 3417 _In_ WORD wLanguage, 3418 _In_reads_bytes_opt_(cb) LPVOID lpData, 3419 _In_ DWORD cb); 3420 3421 BOOL 3422 WINAPI 3423 UpdateResourceW( 3424 _In_ HANDLE hUpdate, 3425 _In_ LPCWSTR lpType, 3426 _In_ LPCWSTR lpName, 3427 _In_ WORD wLanguage, 3428 _In_reads_bytes_opt_(cb) LPVOID lpData, 3429 _In_ DWORD cb); 3430 3431 BOOL WINAPI VerifyVersionInfoA(_Inout_ LPOSVERSIONINFOEXA, _In_ DWORD, _In_ DWORDLONG); 3432 BOOL WINAPI VerifyVersionInfoW(_Inout_ LPOSVERSIONINFOEXW, _In_ DWORD, _In_ DWORDLONG); 3433 PVOID WINAPI VirtualAlloc(PVOID,SIZE_T,DWORD,DWORD); 3434 PVOID WINAPI VirtualAllocEx(HANDLE,PVOID,SIZE_T,DWORD,DWORD); 3435 BOOL WINAPI VirtualFree(PVOID,SIZE_T,DWORD); 3436 BOOL WINAPI VirtualFreeEx(HANDLE,PVOID,SIZE_T,DWORD); 3437 BOOL WINAPI VirtualLock(PVOID,SIZE_T); 3438 BOOL WINAPI VirtualProtect(PVOID,SIZE_T,DWORD,PDWORD); 3439 BOOL WINAPI VirtualProtectEx(HANDLE,PVOID,SIZE_T,DWORD,PDWORD); 3440 SIZE_T WINAPI VirtualQuery(LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T); 3441 SIZE_T WINAPI VirtualQueryEx(HANDLE,LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T); 3442 BOOL WINAPI VirtualUnlock(PVOID,SIZE_T); 3443 BOOL WINAPI WaitCommEvent(_In_ HANDLE, _Inout_ PDWORD, _Inout_opt_ LPOVERLAPPED); 3444 BOOL WINAPI WaitForDebugEvent(LPDEBUG_EVENT,DWORD); 3445 3446 DWORD 3447 WINAPI 3448 WaitForMultipleObjects( 3449 _In_ DWORD nCount, 3450 _In_reads_(nCount) CONST HANDLE *lpHandles, 3451 _In_ BOOL bWaitAll, 3452 _In_ DWORD dwMilliseconds); 3453 3454 DWORD WINAPI WaitForMultipleObjectsEx(DWORD,const HANDLE*,BOOL,DWORD,BOOL); 3455 DWORD WINAPI WaitForSingleObject(_In_ HANDLE hHandle, _In_ DWORD dwMilliseconds); 3456 DWORD WINAPI WaitForSingleObjectEx(HANDLE,DWORD,BOOL); 3457 BOOL WINAPI WaitNamedPipeA(_In_ LPCSTR, _In_ DWORD); 3458 BOOL WINAPI WaitNamedPipeW(_In_ LPCWSTR, _In_ DWORD); 3459 #if (_WIN32_WINNT >= 0x0600) 3460 VOID WINAPI WakeConditionVariable(PCONDITION_VARIABLE); 3461 VOID WINAPI WakeAllConditionVariable(PCONDITION_VARIABLE); 3462 #endif 3463 BOOL WINAPI WinLoadTrustProvider(GUID*); 3464 BOOL WINAPI Wow64DisableWow64FsRedirection(PVOID*); 3465 BOOLEAN WINAPI Wow64EnableWow64FsRedirection(_In_ BOOLEAN); 3466 BOOL WINAPI Wow64RevertWow64FsRedirection(PVOID); 3467 DWORD WINAPI WriteEncryptedFileRaw(_In_ PFE_IMPORT_FUNC, _In_opt_ PVOID, _In_ PVOID); 3468 BOOL WINAPI WriteFile(HANDLE,LPCVOID,DWORD,LPDWORD,LPOVERLAPPED); 3469 BOOL WINAPI WriteFileEx(HANDLE,LPCVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); 3470 BOOL WINAPI WriteFileGather(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED); 3471 BOOL WINAPI WritePrivateProfileSectionA(_In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR); 3472 BOOL WINAPI WritePrivateProfileSectionW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR); 3473 BOOL WINAPI WritePrivateProfileStringA(_In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR); 3474 BOOL WINAPI WritePrivateProfileStringW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR); 3475 3476 BOOL 3477 WINAPI 3478 WritePrivateProfileStructA( 3479 _In_ LPCSTR lpszSection, 3480 _In_ LPCSTR lpszKey, 3481 _In_reads_bytes_opt_(uSizeStruct) LPVOID lpStruct, 3482 _In_ UINT uSizeStruct, 3483 _In_opt_ LPCSTR szFile); 3484 3485 BOOL 3486 WINAPI 3487 WritePrivateProfileStructW( 3488 _In_ LPCWSTR lpszSection, 3489 _In_ LPCWSTR lpszKey, 3490 _In_reads_bytes_opt_(uSizeStruct) LPVOID lpStruct, 3491 _In_ UINT uSizeStruct, 3492 _In_opt_ LPCWSTR szFile); 3493 3494 BOOL WINAPI WriteProcessMemory(HANDLE,LPVOID,LPCVOID,SIZE_T,SIZE_T*); 3495 BOOL WINAPI WriteProfileSectionA(_In_ LPCSTR, _In_ LPCSTR); 3496 BOOL WINAPI WriteProfileSectionW(_In_ LPCWSTR, _In_ LPCWSTR); 3497 BOOL WINAPI WriteProfileStringA(_In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR); 3498 BOOL WINAPI WriteProfileStringW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR); 3499 DWORD WINAPI WriteTapemark(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ BOOL); 3500 3501 #define Yield() 3502 3503 #if (_WIN32_WINNT >= 0x0501) 3504 DWORD WINAPI WTSGetActiveConsoleSessionId(VOID); 3505 BOOL WINAPI ZombifyActCtx(_Inout_ HANDLE); 3506 #endif 3507 3508 #if (_WIN32_WINNT >= 0x0500) 3509 3510 BOOL 3511 WINAPI 3512 AllocateUserPhysicalPages( 3513 _In_ HANDLE hProcess, 3514 _Inout_ PULONG_PTR NumberOfPages, 3515 _Out_writes_to_(*NumberOfPages, *NumberOfPages) PULONG_PTR PageArray); 3516 3517 BOOL 3518 WINAPI 3519 FreeUserPhysicalPages( 3520 _In_ HANDLE hProcess, 3521 _Inout_ PULONG_PTR NumberOfPages, 3522 _In_reads_(*NumberOfPages) PULONG_PTR PageArray); 3523 3524 BOOL 3525 WINAPI 3526 MapUserPhysicalPages( 3527 _In_ PVOID VirtualAddress, 3528 _In_ ULONG_PTR NumberOfPages, 3529 _In_reads_opt_(NumberOfPages) PULONG_PTR PageArray); 3530 3531 BOOL 3532 WINAPI 3533 MapUserPhysicalPagesScatter( 3534 _In_reads_(NumberOfPages) PVOID *VirtualAddresses, 3535 _In_ ULONG_PTR NumberOfPages, 3536 _In_reads_opt_(NumberOfPages) PULONG_PTR PageArray); 3537 3538 #endif 3539 3540 #ifdef UNICODE 3541 typedef STARTUPINFOW STARTUPINFO,*LPSTARTUPINFO; 3542 typedef WIN32_FIND_DATAW WIN32_FIND_DATA, *PWIN32_FIND_DATA, *LPWIN32_FIND_DATA; 3543 typedef HW_PROFILE_INFOW HW_PROFILE_INFO,*LPHW_PROFILE_INFO; 3544 typedef ENUMRESLANGPROCW ENUMRESLANGPROC; 3545 typedef ENUMRESNAMEPROCW ENUMRESNAMEPROC; 3546 typedef ENUMRESTYPEPROCW ENUMRESTYPEPROC; 3547 #if (_WIN32_WINNT >= 0x0501) 3548 typedef ACTCTXW ACTCTX,*PACTCTX; 3549 typedef PCACTCTXW PCACTCTX; 3550 #endif 3551 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmW 3552 #define AddAtom AddAtomW 3553 #define BackupEventLog BackupEventLogW 3554 #define BeginUpdateResource BeginUpdateResourceW 3555 #define BuildCommDCB BuildCommDCBW 3556 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsW 3557 #define CallNamedPipe CallNamedPipeW 3558 #if (_WIN32_WINNT >= 0x0501) 3559 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3W 3560 #endif 3561 #define ClearEventLog ClearEventLogW 3562 #define CommConfigDialog CommConfigDialogW 3563 #define CopyFile CopyFileW 3564 #define CopyFileEx CopyFileExW 3565 #if (_WIN32_WINNT >= 0x0501) 3566 #define CreateActCtx CreateActCtxW 3567 #endif 3568 #define CreateDirectory CreateDirectoryW 3569 #define CreateDirectoryEx CreateDirectoryExW 3570 #define CreateEvent CreateEventW 3571 #define CreateFile CreateFileW 3572 #define CreateFileMapping CreateFileMappingW 3573 #if (_WIN32_WINNT >= 0x0500) 3574 #define CreateHardLink CreateHardLinkW 3575 #define CreateJobObject CreateJobObjectW 3576 #endif 3577 #define CreateMailslot CreateMailslotW 3578 #define CreateMutex CreateMutexW 3579 #define CreateNamedPipe CreateNamedPipeW 3580 #define CreateProcess CreateProcessW 3581 #define CreateProcessAsUser CreateProcessAsUserW 3582 #define CreateSemaphore CreateSemaphoreW 3583 #define CreateWaitableTimer CreateWaitableTimerW 3584 #define DecryptFile DecryptFileW 3585 #define DefineDosDevice DefineDosDeviceW 3586 #define DeleteFile DeleteFileW 3587 #if (_WIN32_WINNT >= 0x0500) 3588 #define DeleteVolumeMountPoint DeleteVolumeMountPointW 3589 #define DnsHostnameToComputerName DnsHostnameToComputerNameW 3590 #endif 3591 #define EncryptFile EncryptFileW 3592 #define EndUpdateResource EndUpdateResourceW 3593 #define EnumResourceLanguages EnumResourceLanguagesW 3594 #define EnumResourceNames EnumResourceNamesW 3595 #define EnumResourceTypes EnumResourceTypesW 3596 #define ExpandEnvironmentStrings ExpandEnvironmentStringsW 3597 #define FatalAppExit FatalAppExitW 3598 #define FileEncryptionStatus FileEncryptionStatusW 3599 #if (_WIN32_WINNT >= 0x0501) 3600 #define FindActCtxSectionString FindActCtxSectionStringW 3601 #endif 3602 #define FindAtom FindAtomW 3603 #define FindFirstChangeNotification FindFirstChangeNotificationW 3604 #define FindFirstFile FindFirstFileW 3605 #define FindFirstFileEx FindFirstFileExW 3606 #if (_WIN32_WINNT >= 0x0500) 3607 #define FindFirstVolume FindFirstVolumeW 3608 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointW 3609 #endif 3610 #define FindNextFile FindNextFileW 3611 #if (_WIN32_WINNT >= 0x0500) 3612 #define FindNextVolume FindNextVolumeW 3613 #define FindNextVolumeMountPoint FindNextVolumeMountPointW 3614 #endif 3615 #define FindResource FindResourceW 3616 #define FindResourceEx FindResourceExW 3617 #define FormatMessage FormatMessageW 3618 #define FreeEnvironmentStrings FreeEnvironmentStringsW 3619 #define GetAtomName GetAtomNameW 3620 #define GetBinaryType GetBinaryTypeW 3621 #define GetCommandLine GetCommandLineW 3622 #define GetCompressedFileSize GetCompressedFileSizeW 3623 #define GetComputerName GetComputerNameW 3624 #if (_WIN32_WINNT >= 0x0500) 3625 #define GetComputerNameEx GetComputerNameExW 3626 #endif 3627 #define GetCurrentDirectory GetCurrentDirectoryW 3628 #define GetDefaultCommConfig GetDefaultCommConfigW 3629 #define GetDiskFreeSpace GetDiskFreeSpaceW 3630 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExW 3631 #if (_WIN32_WINNT >= 0x0502) 3632 #define GetDllDirectory GetDllDirectoryW 3633 #endif 3634 #define GetDriveType GetDriveTypeW 3635 #define GetEnvironmentStrings GetEnvironmentStringsW 3636 #define GetEnvironmentVariable GetEnvironmentVariableW 3637 #define GetFileAttributes GetFileAttributesW 3638 #define GetFileAttributesEx GetFileAttributesExW 3639 #define GetFileSecurity GetFileSecurityW 3640 #if (_WIN32_WINNT >= 0x0600) 3641 #define GetFinalPathNameByHandle GetFinalPathNameByHandleW 3642 #endif 3643 #define GetFullPathName GetFullPathNameW 3644 #define GetLogicalDriveStrings GetLogicalDriveStringsW 3645 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) 3646 #define GetLongPathName GetLongPathNameW 3647 #endif 3648 #define GetModuleFileName GetModuleFileNameW 3649 #define GetModuleHandle GetModuleHandleW 3650 #if (_WIN32_WINNT >= 0x0500) 3651 #define GetModuleHandleEx GetModuleHandleExW 3652 #endif 3653 #define GetNamedPipeHandleState GetNamedPipeHandleStateW 3654 #define GetPrivateProfileInt GetPrivateProfileIntW 3655 #define GetPrivateProfileSection GetPrivateProfileSectionW 3656 #define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesW 3657 #define GetPrivateProfileString GetPrivateProfileStringW 3658 #define GetPrivateProfileStruct GetPrivateProfileStructW 3659 #define GetProfileInt GetProfileIntW 3660 #define GetProfileSection GetProfileSectionW 3661 #define GetProfileString GetProfileStringW 3662 #define GetShortPathName GetShortPathNameW 3663 #define GetStartupInfo GetStartupInfoW 3664 #define GetSystemDirectory GetSystemDirectoryW 3665 #if (_WIN32_WINNT >= 0x0500) 3666 #define GetSystemWindowsDirectory GetSystemWindowsDirectoryW 3667 #endif 3668 #if (_WIN32_WINNT >= 0x0501) 3669 #define GetSystemWow64Directory GetSystemWow64DirectoryW 3670 #endif 3671 #define GetTempFileName GetTempFileNameW 3672 #define GetTempPath GetTempPathW 3673 #define GetUserName GetUserNameW 3674 #define GetVersionEx GetVersionExW 3675 #define GetVolumeInformation GetVolumeInformationW 3676 #define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointW 3677 #define GetVolumePathName GetVolumePathNameW 3678 #define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameW 3679 #define GetWindowsDirectory GetWindowsDirectoryW 3680 #define GlobalAddAtom GlobalAddAtomW 3681 #define GlobalFindAtom GlobalFindAtomW 3682 #define GlobalGetAtomName GlobalGetAtomNameW 3683 #define IsBadStringPtr IsBadStringPtrW 3684 #define LoadLibrary LoadLibraryW 3685 #define LoadLibraryEx LoadLibraryExW 3686 #define LogonUser LogonUserW 3687 #define LogonUserEx LogonUserExW 3688 #define LookupAccountName LookupAccountNameW 3689 #define LookupAccountSid LookupAccountSidW 3690 #define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameW 3691 #define LookupPrivilegeName LookupPrivilegeNameW 3692 #define LookupPrivilegeValue LookupPrivilegeValueW 3693 #define lstrcat lstrcatW 3694 #define lstrcmp lstrcmpW 3695 #define lstrcmpi lstrcmpiW 3696 #define lstrcpy lstrcpyW 3697 #define lstrcpyn lstrcpynW 3698 #define lstrlen lstrlenW 3699 #define MoveFile MoveFileW 3700 #define MoveFileEx MoveFileExW 3701 #define MoveFileWithProgress MoveFileWithProgressW 3702 #define ObjectCloseAuditAlarm ObjectCloseAuditAlarmW 3703 #define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmW 3704 #define ObjectOpenAuditAlarm ObjectOpenAuditAlarmW 3705 #define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmW 3706 #define OpenBackupEventLog OpenBackupEventLogW 3707 #define OpenEvent OpenEventW 3708 #define OpenEventLog OpenEventLogW 3709 #define OpenFileMapping OpenFileMappingW 3710 #define OpenMutex OpenMutexW 3711 #define OpenSemaphore OpenSemaphoreW 3712 #define OutputDebugString OutputDebugStringW 3713 #define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmW 3714 #define QueryDosDevice QueryDosDeviceW 3715 #define ReadEventLog ReadEventLogW 3716 #define RegisterEventSource RegisterEventSourceW 3717 #define RemoveDirectory RemoveDirectoryW 3718 #if (_WIN32_WINNT >= 0x0500) 3719 #define ReplaceFile ReplaceFileW 3720 #endif 3721 #define ReportEvent ReportEventW 3722 #define SearchPath SearchPathW 3723 #define SetComputerName SetComputerNameW 3724 #define SetComputerNameEx SetComputerNameExW 3725 #define SetCurrentDirectory SetCurrentDirectoryW 3726 #define SetDefaultCommConfig SetDefaultCommConfigW 3727 #if (_WIN32_WINNT >= 0x0502) 3728 #define SetDllDirectory SetDllDirectoryW 3729 #endif 3730 #define SetEnvironmentVariable SetEnvironmentVariableW 3731 #define SetFileAttributes SetFileAttributesW 3732 #define SetFileSecurity SetFileSecurityW 3733 #if (_WIN32_WINNT >= 0x0501) 3734 #define SetFileShortName SetFileShortNameW 3735 #endif 3736 #if (_WIN32_WINNT >= 0x0502) 3737 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableW 3738 #endif 3739 #define SetVolumeLabel SetVolumeLabelW 3740 #define SetVolumeMountPoint SetVolumeMountPointW 3741 #define UpdateResource UpdateResourceW 3742 #define VerifyVersionInfo VerifyVersionInfoW 3743 #define WaitNamedPipe WaitNamedPipeW 3744 #define WritePrivateProfileSection WritePrivateProfileSectionW 3745 #define WritePrivateProfileString WritePrivateProfileStringW 3746 #define WritePrivateProfileStruct WritePrivateProfileStructW 3747 #define WriteProfileSection WriteProfileSectionW 3748 #define WriteProfileString WriteProfileStringW 3749 #else 3750 typedef STARTUPINFOA STARTUPINFO,*LPSTARTUPINFO; 3751 typedef WIN32_FIND_DATAA WIN32_FIND_DATA, *PWIN32_FIND_DATA, *LPWIN32_FIND_DATA; 3752 typedef HW_PROFILE_INFOA HW_PROFILE_INFO,*LPHW_PROFILE_INFO; 3753 #if (_WIN32_WINNT >= 0x0501) 3754 typedef ACTCTXA ACTCTX,*PACTCTX; 3755 typedef PCACTCTXA PCACTCTX; 3756 #endif 3757 typedef ENUMRESLANGPROCA ENUMRESLANGPROC; 3758 typedef ENUMRESNAMEPROCA ENUMRESNAMEPROC; 3759 typedef ENUMRESTYPEPROCA ENUMRESTYPEPROC; 3760 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmA 3761 #define AddAtom AddAtomA 3762 #define BackupEventLog BackupEventLogA 3763 #define BeginUpdateResource BeginUpdateResourceA 3764 #define BuildCommDCB BuildCommDCBA 3765 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsA 3766 #define CallNamedPipe CallNamedPipeA 3767 #if (_WIN32_WINNT >= 0x0501) 3768 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3A 3769 #endif 3770 #define ClearEventLog ClearEventLogA 3771 #define CommConfigDialog CommConfigDialogA 3772 #define CopyFile CopyFileA 3773 #define CopyFileEx CopyFileExA 3774 #if (_WIN32_WINNT >= 0x0501) 3775 #define CreateActCtx CreateActCtxA 3776 #endif 3777 #define CreateDirectory CreateDirectoryA 3778 #define CreateDirectoryEx CreateDirectoryExA 3779 #define CreateEvent CreateEventA 3780 #define CreateFile CreateFileA 3781 #define CreateFileMapping CreateFileMappingA 3782 #if (_WIN32_WINNT >= 0x0500) 3783 #define CreateHardLink CreateHardLinkA 3784 #define CreateJobObject CreateJobObjectA 3785 #endif 3786 #define CreateMailslot CreateMailslotA 3787 #define CreateMutex CreateMutexA 3788 #define CreateNamedPipe CreateNamedPipeA 3789 #define CreateProcess CreateProcessA 3790 #define CreateProcessAsUser CreateProcessAsUserA 3791 #define CreateSemaphore CreateSemaphoreA 3792 #define CreateWaitableTimer CreateWaitableTimerA 3793 #define DecryptFile DecryptFileA 3794 #define DefineDosDevice DefineDosDeviceA 3795 #define DeleteFile DeleteFileA 3796 #if (_WIN32_WINNT >= 0x0500) 3797 #define DeleteVolumeMountPoint DeleteVolumeMountPointA 3798 #define DnsHostnameToComputerName DnsHostnameToComputerNameA 3799 #endif 3800 #define EncryptFile EncryptFileA 3801 #define EndUpdateResource EndUpdateResourceA 3802 #define EnumResourceLanguages EnumResourceLanguagesA 3803 #define EnumResourceNames EnumResourceNamesA 3804 #define EnumResourceTypes EnumResourceTypesA 3805 #define ExpandEnvironmentStrings ExpandEnvironmentStringsA 3806 #define FatalAppExit FatalAppExitA 3807 #define FileEncryptionStatus FileEncryptionStatusA 3808 #if (_WIN32_WINNT >= 0x0501) 3809 #define FindActCtxSectionString FindActCtxSectionStringA 3810 #endif 3811 #define FindAtom FindAtomA 3812 #define FindFirstChangeNotification FindFirstChangeNotificationA 3813 #define FindFirstFile FindFirstFileA 3814 #define FindFirstFileEx FindFirstFileExA 3815 #if (_WIN32_WINNT >= 0x0500) 3816 #define FindFirstVolume FindFirstVolumeA 3817 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointA 3818 #endif 3819 #define FindNextFile FindNextFileA 3820 #if (_WIN32_WINNT >= 0x0500) 3821 #define FindNextVolume FindNextVolumeA 3822 #define FindNextVolumeMountPoint FindNextVolumeMountPointA 3823 #endif 3824 #define FindResource FindResourceA 3825 #define FindResourceEx FindResourceExA 3826 #define FormatMessage FormatMessageA 3827 #define FreeEnvironmentStrings FreeEnvironmentStringsA 3828 #define GetAtomName GetAtomNameA 3829 #define GetBinaryType GetBinaryTypeA 3830 #define GetCommandLine GetCommandLineA 3831 #define GetComputerName GetComputerNameA 3832 #if (_WIN32_WINNT >= 0x0500) 3833 #define GetComputerNameEx GetComputerNameExA 3834 #endif 3835 #define GetCompressedFileSize GetCompressedFileSizeA 3836 #define GetCurrentDirectory GetCurrentDirectoryA 3837 #define GetDefaultCommConfig GetDefaultCommConfigA 3838 #define GetDiskFreeSpace GetDiskFreeSpaceA 3839 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExA 3840 #if (_WIN32_WINNT >= 0x0502) 3841 #define GetDllDirectory GetDllDirectoryA 3842 #endif 3843 #define GetDriveType GetDriveTypeA 3844 #define GetEnvironmentStringsA GetEnvironmentStrings 3845 #define GetEnvironmentVariable GetEnvironmentVariableA 3846 #define GetFileAttributes GetFileAttributesA 3847 #define GetFileAttributesEx GetFileAttributesExA 3848 #define GetFileSecurity GetFileSecurityA 3849 #if (_WIN32_WINNT >= 0x0600) 3850 #define GetFinalPathNameByHandle GetFinalPathNameByHandleA 3851 #endif 3852 #define GetFullPathName GetFullPathNameA 3853 #define GetLogicalDriveStrings GetLogicalDriveStringsA 3854 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) 3855 #define GetLongPathName GetLongPathNameA 3856 #endif 3857 #define GetNamedPipeHandleState GetNamedPipeHandleStateA 3858 #define GetModuleHandle GetModuleHandleA 3859 #if (_WIN32_WINNT >= 0x0500) 3860 #define GetModuleHandleEx GetModuleHandleExA 3861 #endif 3862 #define GetModuleFileName GetModuleFileNameA 3863 #define GetPrivateProfileInt GetPrivateProfileIntA 3864 #define GetPrivateProfileSection GetPrivateProfileSectionA 3865 #define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesA 3866 #define GetPrivateProfileString GetPrivateProfileStringA 3867 #define GetPrivateProfileStruct GetPrivateProfileStructA 3868 #define GetProfileInt GetProfileIntA 3869 #define GetProfileSection GetProfileSectionA 3870 #define GetProfileString GetProfileStringA 3871 #define GetShortPathName GetShortPathNameA 3872 #define GetStartupInfo GetStartupInfoA 3873 #define GetSystemDirectory GetSystemDirectoryA 3874 #if (_WIN32_WINNT >= 0x0500) 3875 #define GetSystemWindowsDirectory GetSystemWindowsDirectoryA 3876 #endif 3877 #if (_WIN32_WINNT >= 0x0501) 3878 #define GetSystemWow64Directory GetSystemWow64DirectoryA 3879 #endif 3880 #define GetTempFileName GetTempFileNameA 3881 #define GetTempPath GetTempPathA 3882 #define GetUserName GetUserNameA 3883 #define GetVersionEx GetVersionExA 3884 #define GetVolumeInformation GetVolumeInformationA 3885 #define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointA 3886 #define GetVolumePathName GetVolumePathNameA 3887 #define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameA 3888 #define GetWindowsDirectory GetWindowsDirectoryA 3889 #define GlobalAddAtom GlobalAddAtomA 3890 #define GlobalFindAtom GlobalFindAtomA 3891 #define GlobalGetAtomName GlobalGetAtomNameA 3892 #define IsBadStringPtr IsBadStringPtrA 3893 #define LoadLibrary LoadLibraryA 3894 #define LoadLibraryEx LoadLibraryExA 3895 #define LogonUser LogonUserA 3896 #define LogonUserEx LogonUserExA 3897 #define LookupAccountName LookupAccountNameA 3898 #define LookupAccountSid LookupAccountSidA 3899 #define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameA 3900 #define LookupPrivilegeName LookupPrivilegeNameA 3901 #define LookupPrivilegeValue LookupPrivilegeValueA 3902 #define lstrcat lstrcatA 3903 #define lstrcmp lstrcmpA 3904 #define lstrcmpi lstrcmpiA 3905 #define lstrcpy lstrcpyA 3906 #define lstrcpyn lstrcpynA 3907 #define lstrlen lstrlenA 3908 #define MoveFile MoveFileA 3909 #define MoveFileEx MoveFileExA 3910 #define MoveFileWithProgress MoveFileWithProgressA 3911 #define ObjectCloseAuditAlarm ObjectCloseAuditAlarmA 3912 #define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmA 3913 #define ObjectOpenAuditAlarm ObjectOpenAuditAlarmA 3914 #define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmA 3915 #define OpenBackupEventLog OpenBackupEventLogA 3916 #define OpenEvent OpenEventA 3917 #define OpenEventLog OpenEventLogA 3918 #define OpenFileMapping OpenFileMappingA 3919 #define OpenMutex OpenMutexA 3920 #define OpenSemaphore OpenSemaphoreA 3921 #define OutputDebugString OutputDebugStringA 3922 #define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmA 3923 #define QueryDosDevice QueryDosDeviceA 3924 #define ReadEventLog ReadEventLogA 3925 #define RegisterEventSource RegisterEventSourceA 3926 #define RemoveDirectory RemoveDirectoryA 3927 #if (_WIN32_WINNT >= 0x0500) 3928 #define ReplaceFile ReplaceFileA 3929 #endif 3930 #define ReportEvent ReportEventA 3931 #define SearchPath SearchPathA 3932 #define SetComputerName SetComputerNameA 3933 #define SetComputerNameEx SetComputerNameExA 3934 #define SetCurrentDirectory SetCurrentDirectoryA 3935 #define SetDefaultCommConfig SetDefaultCommConfigA 3936 #if (_WIN32_WINNT >= 0x0502) 3937 #define SetDllDirectory SetDllDirectoryA 3938 #endif 3939 #define SetEnvironmentVariable SetEnvironmentVariableA 3940 #define SetFileAttributes SetFileAttributesA 3941 #define SetFileSecurity SetFileSecurityA 3942 #if (_WIN32_WINNT >= 0x0501) 3943 #define SetFileShortName SetFileShortNameA 3944 #endif 3945 #if (_WIN32_WINNT >= 0x0502) 3946 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableA 3947 #endif 3948 #define SetVolumeLabel SetVolumeLabelA 3949 #define SetVolumeMountPoint SetVolumeMountPointA 3950 #define UpdateResource UpdateResourceA 3951 #define VerifyVersionInfo VerifyVersionInfoA 3952 #define WaitNamedPipe WaitNamedPipeA 3953 #define WritePrivateProfileSection WritePrivateProfileSectionA 3954 #define WritePrivateProfileString WritePrivateProfileStringA 3955 #define WritePrivateProfileStruct WritePrivateProfileStructA 3956 #define WriteProfileSection WriteProfileSectionA 3957 #define WriteProfileString WriteProfileStringA 3958 #endif 3959 #endif 3960 3961 /* one-time initialisation API */ 3962 typedef RTL_RUN_ONCE INIT_ONCE; 3963 typedef PRTL_RUN_ONCE PINIT_ONCE; 3964 typedef PRTL_RUN_ONCE LPINIT_ONCE; 3965 3966 #define INIT_ONCE_CHECK_ONLY RTL_RUN_ONCE_CHECK_ONLY 3967 #define INIT_ONCE_ASYNC RTL_RUN_ONCE_ASYNC 3968 #define INIT_ONCE_INIT_FAILED RTL_RUN_ONCE_INIT_FAILED 3969 3970 #define INIT_ONCE_CTX_RESERVED_BITS RTL_RUN_ONCE_CTX_RESERVED_BITS 3971 3972 typedef BOOL 3973 (WINAPI *PINIT_ONCE_FN)( 3974 _Inout_ PINIT_ONCE InitOnce, 3975 _Inout_opt_ PVOID Parameter, 3976 _Outptr_opt_result_maybenull_ PVOID *Context); 3977 3978 #if _WIN32_WINNT >= 0x0601 3979 3980 #define COPYFILE2_MESSAGE_COPY_OFFLOAD 0x00000001L 3981 3982 typedef enum _COPYFILE2_MESSAGE_TYPE { 3983 COPYFILE2_CALLBACK_NONE = 0, 3984 COPYFILE2_CALLBACK_CHUNK_STARTED, 3985 COPYFILE2_CALLBACK_CHUNK_FINISHED, 3986 COPYFILE2_CALLBACK_STREAM_STARTED, 3987 COPYFILE2_CALLBACK_STREAM_FINISHED, 3988 COPYFILE2_CALLBACK_POLL_CONTINUE, 3989 COPYFILE2_CALLBACK_ERROR, 3990 COPYFILE2_CALLBACK_MAX, 3991 } COPYFILE2_MESSAGE_TYPE; 3992 3993 typedef enum _COPYFILE2_MESSAGE_ACTION { 3994 COPYFILE2_PROGRESS_CONTINUE = 0, 3995 COPYFILE2_PROGRESS_CANCEL, 3996 COPYFILE2_PROGRESS_STOP, 3997 COPYFILE2_PROGRESS_QUIET, 3998 COPYFILE2_PROGRESS_PAUSE, 3999 } COPYFILE2_MESSAGE_ACTION; 4000 4001 typedef enum _COPYFILE2_COPY_PHASE { 4002 COPYFILE2_PHASE_NONE = 0, 4003 COPYFILE2_PHASE_PREPARE_SOURCE, 4004 COPYFILE2_PHASE_PREPARE_DEST, 4005 COPYFILE2_PHASE_READ_SOURCE, 4006 COPYFILE2_PHASE_WRITE_DESTINATION, 4007 COPYFILE2_PHASE_SERVER_COPY, 4008 COPYFILE2_PHASE_NAMEGRAFT_COPY, 4009 COPYFILE2_PHASE_MAX, 4010 } COPYFILE2_COPY_PHASE; 4011 4012 typedef struct COPYFILE2_MESSAGE { 4013 COPYFILE2_MESSAGE_TYPE Type; 4014 DWORD dwPadding; 4015 union { 4016 struct { 4017 DWORD dwStreamNumber; 4018 DWORD dwReserved; 4019 HANDLE hSourceFile; 4020 HANDLE hDestinationFile; 4021 ULARGE_INTEGER uliChunkNumber; 4022 ULARGE_INTEGER uliChunkSize; 4023 ULARGE_INTEGER uliStreamSize; 4024 ULARGE_INTEGER uliTotalFileSize; 4025 } ChunkStarted; 4026 struct { 4027 DWORD dwStreamNumber; 4028 DWORD dwFlags; 4029 HANDLE hSourceFile; 4030 HANDLE hDestinationFile; 4031 ULARGE_INTEGER uliChunkNumber; 4032 ULARGE_INTEGER uliChunkSize; 4033 ULARGE_INTEGER uliStreamSize; 4034 ULARGE_INTEGER uliStreamBytesTransferred; 4035 ULARGE_INTEGER uliTotalFileSize; 4036 ULARGE_INTEGER uliTotalBytesTransferred; 4037 } ChunkFinished; 4038 struct { 4039 DWORD dwStreamNumber; 4040 DWORD dwReserved; 4041 HANDLE hSourceFile; 4042 HANDLE hDestinationFile; 4043 ULARGE_INTEGER uliStreamSize; 4044 ULARGE_INTEGER uliTotalFileSize; 4045 } StreamStarted; 4046 struct { 4047 DWORD dwStreamNumber; 4048 DWORD dwReserved; 4049 HANDLE hSourceFile; 4050 HANDLE hDestinationFile; 4051 ULARGE_INTEGER uliStreamSize; 4052 ULARGE_INTEGER uliStreamBytesTransferred; 4053 ULARGE_INTEGER uliTotalFileSize; 4054 ULARGE_INTEGER uliTotalBytesTransferred; 4055 } StreamFinished; 4056 struct { 4057 DWORD dwReserved; 4058 } PollContinue; 4059 struct { 4060 COPYFILE2_COPY_PHASE CopyPhase; 4061 DWORD dwStreamNumber; 4062 HRESULT hrFailure; 4063 DWORD dwReserved; 4064 ULARGE_INTEGER uliChunkNumber; 4065 ULARGE_INTEGER uliStreamSize; 4066 ULARGE_INTEGER uliStreamBytesTransferred; 4067 ULARGE_INTEGER uliTotalFileSize; 4068 ULARGE_INTEGER uliTotalBytesTransferred; 4069 } Error; 4070 } Info; 4071 } COPYFILE2_MESSAGE; 4072 4073 typedef COPYFILE2_MESSAGE_ACTION 4074 (CALLBACK *PCOPYFILE2_PROGRESS_ROUTINE)( 4075 _In_ const COPYFILE2_MESSAGE *pMessage, 4076 _In_opt_ PVOID pvCallbackContext); 4077 4078 typedef struct COPYFILE2_EXTENDED_PARAMETERS { 4079 DWORD dwSize; 4080 DWORD dwCopyFlags; 4081 BOOL *pfCancel; 4082 PCOPYFILE2_PROGRESS_ROUTINE pProgressRoutine; 4083 PVOID pvCallbackContext; 4084 } COPYFILE2_EXTENDED_PARAMETERS; 4085 4086 WINBASEAPI 4087 HRESULT 4088 WINAPI 4089 CopyFile2( 4090 _In_ PCWSTR pwszExistingFileName, 4091 _In_ PCWSTR pwszNewFileName, 4092 _In_opt_ COPYFILE2_EXTENDED_PARAMETERS *pExtendedParameters); 4093 4094 #endif /* _WIN32_WINNT >= 0x0601 */ 4095 4096 #if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (DLL_EXPORT_VERSION >= _WIN32_WINNT_VISTA) 4097 4098 WINBASEAPI 4099 VOID 4100 WINAPI 4101 InitOnceInitialize( 4102 _Out_ PINIT_ONCE InitOnce); 4103 4104 WINBASEAPI 4105 BOOL 4106 WINAPI 4107 InitOnceBeginInitialize( 4108 _Inout_ LPINIT_ONCE lpInitOnce, 4109 _In_ DWORD dwFlags, 4110 _Out_ PBOOL fPending, 4111 _Outptr_opt_result_maybenull_ LPVOID *lpContext); 4112 4113 WINBASEAPI 4114 BOOL 4115 WINAPI 4116 InitOnceComplete( 4117 _Inout_ LPINIT_ONCE lpInitOnce, 4118 _In_ DWORD dwFlags, 4119 _In_opt_ LPVOID lpContext); 4120 4121 #endif /* (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (DLL_EXPORT_VERSION >= _WIN32_WINNT_VISTA) */ 4122 4123 WINBASEAPI 4124 BOOL 4125 WINAPI 4126 InitOnceExecuteOnce( 4127 _Inout_ PINIT_ONCE InitOnce, 4128 _In_ __callback PINIT_ONCE_FN InitFn, 4129 _Inout_opt_ PVOID Parameter, 4130 _Outptr_opt_result_maybenull_ LPVOID *Context); 4131 4132 typedef VOID (NTAPI *PTP_WIN32_IO_CALLBACK)(PTP_CALLBACK_INSTANCE,PVOID,PVOID,ULONG,ULONG_PTR,PTP_IO); 4133 4134 #if defined(_SLIST_HEADER_) && !defined(_NTOS_) && !defined(_NTOSP_) 4135 4136 WINBASEAPI 4137 VOID 4138 WINAPI 4139 InitializeSListHead( 4140 _Out_ PSLIST_HEADER ListHead); 4141 4142 WINBASEAPI 4143 PSLIST_ENTRY 4144 WINAPI 4145 InterlockedPopEntrySList( 4146 _Inout_ PSLIST_HEADER ListHead); 4147 4148 WINBASEAPI 4149 PSLIST_ENTRY 4150 WINAPI 4151 InterlockedPushEntrySList( 4152 _Inout_ PSLIST_HEADER ListHead, 4153 _Inout_ PSLIST_ENTRY ListEntry); 4154 4155 WINBASEAPI 4156 PSLIST_ENTRY 4157 WINAPI 4158 InterlockedFlushSList( 4159 _Inout_ PSLIST_HEADER ListHead); 4160 4161 WINBASEAPI 4162 USHORT 4163 WINAPI 4164 QueryDepthSList( 4165 _In_ PSLIST_HEADER ListHead); 4166 4167 #endif /* _SLIST_HEADER_ */ 4168 4169 #ifdef __WINESRC__ 4170 /* Wine specific. Basically MultiByteToWideChar for us. */ 4171 WCHAR * CDECL wine_get_dos_file_name(LPCSTR str); 4172 #endif 4173 4174 #ifdef _MSC_VER 4175 #pragma warning(pop) 4176 #endif 4177 4178 #ifdef __cplusplus 4179 } 4180 #endif 4181 4182 #include <synchapi.h> 4183 #include <processthreadsapi.h> 4184 4185 #endif /* _WINBASE_H */ 4186