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