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