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 _OVERLAPPED_ENTRY { 796 ULONG_PTR lpCompletionKey; 797 LPOVERLAPPED lpOverlapped; 798 ULONG_PTR Internal; 799 DWORD dwNumberOfBytesTransferred; 800 } OVERLAPPED_ENTRY, *LPOVERLAPPED_ENTRY; 801 802 typedef struct _STARTUPINFOA { 803 DWORD cb; 804 LPSTR lpReserved; 805 LPSTR lpDesktop; 806 LPSTR lpTitle; 807 DWORD dwX; 808 DWORD dwY; 809 DWORD dwXSize; 810 DWORD dwYSize; 811 DWORD dwXCountChars; 812 DWORD dwYCountChars; 813 DWORD dwFillAttribute; 814 DWORD dwFlags; 815 WORD wShowWindow; 816 WORD cbReserved2; 817 PBYTE lpReserved2; 818 HANDLE hStdInput; 819 HANDLE hStdOutput; 820 HANDLE hStdError; 821 } STARTUPINFOA,*LPSTARTUPINFOA; 822 823 typedef struct _STARTUPINFOW { 824 DWORD cb; 825 LPWSTR lpReserved; 826 LPWSTR lpDesktop; 827 LPWSTR lpTitle; 828 DWORD dwX; 829 DWORD dwY; 830 DWORD dwXSize; 831 DWORD dwYSize; 832 DWORD dwXCountChars; 833 DWORD dwYCountChars; 834 DWORD dwFillAttribute; 835 DWORD dwFlags; 836 WORD wShowWindow; 837 WORD cbReserved2; 838 PBYTE lpReserved2; 839 HANDLE hStdInput; 840 HANDLE hStdOutput; 841 HANDLE hStdError; 842 } STARTUPINFOW,*LPSTARTUPINFOW; 843 844 typedef struct _PROCESS_INFORMATION { 845 HANDLE hProcess; 846 HANDLE hThread; 847 DWORD dwProcessId; 848 DWORD dwThreadId; 849 } PROCESS_INFORMATION,*PPROCESS_INFORMATION,*LPPROCESS_INFORMATION; 850 851 typedef struct _CRITICAL_SECTION_DEBUG { 852 WORD Type; 853 WORD CreatorBackTraceIndex; 854 struct _CRITICAL_SECTION *CriticalSection; 855 LIST_ENTRY ProcessLocksList; 856 DWORD EntryCount; 857 DWORD ContentionCount; 858 //#ifdef __WINESRC__ //not all wine code is marked so 859 DWORD_PTR Spare[8/sizeof(DWORD_PTR)];/* in Wine they store a string here */ 860 //#else 861 //WORD SpareWORD; 862 //#endif 863 } CRITICAL_SECTION_DEBUG,*PCRITICAL_SECTION_DEBUG,*LPCRITICAL_SECTION_DEBUG; 864 865 typedef struct _CRITICAL_SECTION { 866 PCRITICAL_SECTION_DEBUG DebugInfo; 867 LONG LockCount; 868 LONG RecursionCount; 869 HANDLE OwningThread; 870 HANDLE LockSemaphore; 871 ULONG_PTR SpinCount; 872 } CRITICAL_SECTION,*PCRITICAL_SECTION,*LPCRITICAL_SECTION; 873 874 #ifndef _SYSTEMTIME_ 875 #define _SYSTEMTIME_ 876 typedef struct _SYSTEMTIME { 877 WORD wYear; 878 WORD wMonth; 879 WORD wDayOfWeek; 880 WORD wDay; 881 WORD wHour; 882 WORD wMinute; 883 WORD wSecond; 884 WORD wMilliseconds; 885 } SYSTEMTIME,*LPSYSTEMTIME,*PSYSTEMTIME; 886 #endif /* _SYSTEMTIME_ */ 887 #if (_WIN32_WINNT >= 0x0500) 888 typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK ; 889 #endif 890 typedef struct _WIN32_FILE_ATTRIBUTE_DATA { 891 DWORD dwFileAttributes; 892 FILETIME ftCreationTime; 893 FILETIME ftLastAccessTime; 894 FILETIME ftLastWriteTime; 895 DWORD nFileSizeHigh; 896 DWORD nFileSizeLow; 897 } WIN32_FILE_ATTRIBUTE_DATA,*LPWIN32_FILE_ATTRIBUTE_DATA; 898 typedef struct _WIN32_FIND_DATAA { 899 DWORD dwFileAttributes; 900 FILETIME ftCreationTime; 901 FILETIME ftLastAccessTime; 902 FILETIME ftLastWriteTime; 903 DWORD nFileSizeHigh; 904 DWORD nFileSizeLow; 905 DWORD dwReserved0; 906 DWORD dwReserved1; 907 CHAR cFileName[MAX_PATH]; 908 CHAR cAlternateFileName[14]; 909 } WIN32_FIND_DATAA,*PWIN32_FIND_DATAA,*LPWIN32_FIND_DATAA; 910 typedef struct _WIN32_FIND_DATAW { 911 DWORD dwFileAttributes; 912 FILETIME ftCreationTime; 913 FILETIME ftLastAccessTime; 914 FILETIME ftLastWriteTime; 915 DWORD nFileSizeHigh; 916 DWORD nFileSizeLow; 917 DWORD dwReserved0; 918 DWORD dwReserved1; 919 WCHAR cFileName[MAX_PATH]; 920 WCHAR cAlternateFileName[14]; 921 } WIN32_FIND_DATAW,*PWIN32_FIND_DATAW,*LPWIN32_FIND_DATAW; 922 923 #if (_WIN32_WINNT >= 0x0501) 924 typedef enum _STREAM_INFO_LEVELS { 925 FindStreamInfoStandard 926 } STREAM_INFO_LEVELS; 927 928 typedef struct _WIN32_FIND_STREAM_DATA { 929 LARGE_INTEGER StreamSize; 930 WCHAR cStreamName[MAX_PATH + 36]; 931 } WIN32_FIND_STREAM_DATA, *PWIN32_FIND_STREAM_DATA; 932 #endif 933 934 typedef struct _WIN32_STREAM_ID { 935 DWORD dwStreamId; 936 DWORD dwStreamAttributes; 937 LARGE_INTEGER Size; 938 DWORD dwStreamNameSize; 939 WCHAR cStreamName[ANYSIZE_ARRAY]; 940 } WIN32_STREAM_ID, *LPWIN32_STREAM_ID; 941 942 #if (_WIN32_WINNT >= 0x0600) 943 944 typedef enum _FILE_ID_TYPE { 945 FileIdType, 946 ObjectIdType, 947 ExtendedFileIdType, 948 MaximumFileIdType 949 } FILE_ID_TYPE, *PFILE_ID_TYPE; 950 951 typedef struct _FILE_ID_DESCRIPTOR { 952 DWORD dwSize; 953 FILE_ID_TYPE Type; 954 union { 955 LARGE_INTEGER FileId; 956 GUID ObjectId; 957 } DUMMYUNIONNAME; 958 } FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR; 959 960 typedef enum _FILE_INFO_BY_HANDLE_CLASS { 961 FileBasicInfo, 962 FileStandardInfo, 963 FileNameInfo, 964 FileRenameInfo, 965 FileDispositionInfo, 966 FileAllocationInfo, 967 FileEndOfFileInfo, 968 FileStreamInfo, 969 FileCompressionInfo, 970 FileAttributeTagInfo, 971 FileIdBothDirectoryInfo, 972 FileIdBothDirectoryRestartInfo, 973 FileIoPriorityHintInfo, 974 FileRemoteProtocolInfo, 975 FileFullDirectoryInfo, 976 FileFullDirectoryRestartInfo, 977 FileStorageInfo, 978 FileAlignmentInfo, 979 FileIdInfo, 980 FileIdExtdDirectoryInfo, 981 FileIdExtdDirectoryRestartInfo, 982 MaximumFileInfoByHandlesClass 983 } FILE_INFO_BY_HANDLE_CLASS, *PFILE_INFO_BY_HANDLE_CLASS; 984 985 typedef struct _FILE_ID_BOTH_DIR_INFO { 986 DWORD NextEntryOffset; 987 DWORD FileIndex; 988 LARGE_INTEGER CreationTime; 989 LARGE_INTEGER LastAccessTime; 990 LARGE_INTEGER LastWriteTime; 991 LARGE_INTEGER ChangeTime; 992 LARGE_INTEGER EndOfFile; 993 LARGE_INTEGER AllocationSize; 994 DWORD FileAttributes; 995 DWORD FileNameLength; 996 DWORD EaSize; 997 CCHAR ShortNameLength; 998 WCHAR ShortName[12]; 999 LARGE_INTEGER FileId; 1000 WCHAR FileName[1]; 1001 } FILE_ID_BOTH_DIR_INFO, *PFILE_ID_BOTH_DIR_INFO; 1002 1003 typedef struct _FILE_BASIC_INFO { 1004 LARGE_INTEGER CreationTime; 1005 LARGE_INTEGER LastAccessTime; 1006 LARGE_INTEGER LastWriteTime; 1007 LARGE_INTEGER ChangeTime; 1008 DWORD FileAttributes; 1009 } FILE_BASIC_INFO, *PFILE_BASIC_INFO; 1010 1011 typedef struct _FILE_STANDARD_INFO { 1012 LARGE_INTEGER AllocationSize; 1013 LARGE_INTEGER EndOfFile; 1014 DWORD NumberOfLinks; 1015 BOOLEAN DeletePending; 1016 BOOLEAN Directory; 1017 } FILE_STANDARD_INFO, *PFILE_STANDARD_INFO; 1018 1019 typedef struct _FILE_NAME_INFO { 1020 DWORD FileNameLength; 1021 WCHAR FileName[1]; 1022 } FILE_NAME_INFO, *PFILE_NAME_INFO; 1023 1024 typedef enum _PRIORITY_HINT { 1025 IoPriorityHintVeryLow, 1026 IoPriorityHintLow, 1027 IoPriorityHintNormal, 1028 MaximumIoPriorityHintType 1029 } PRIORITY_HINT; 1030 1031 typedef struct _FILE_IO_PRIORITY_HINT_INFO { 1032 PRIORITY_HINT PriorityHint; 1033 } FILE_IO_PRIORITY_HINT_INFO; 1034 1035 typedef struct _FILE_ALLOCATION_INFO { 1036 LARGE_INTEGER AllocationSize; 1037 } FILE_ALLOCATION_INFO, *PFILE_ALLOCATION_INFO; 1038 1039 typedef struct _FILE_DISPOSITION_INFO { 1040 BOOLEAN DeleteFile; 1041 } FILE_DISPOSITION_INFO, *PFILE_DISPOSITION_INFO; 1042 1043 typedef struct _FILE_END_OF_FILE_INFO { 1044 LARGE_INTEGER EndOfFile; 1045 } FILE_END_OF_FILE_INFO, *PFILE_END_OF_FILE_INFO; 1046 1047 typedef struct _FILE_RENAME_INFO { 1048 BOOLEAN ReplaceIfExists; 1049 HANDLE RootDirectory; 1050 DWORD FileNameLength; 1051 WCHAR FileName[1]; 1052 } FILE_RENAME_INFO, *PFILE_RENAME_INFO; 1053 1054 typedef struct _FILE_ATTRIBUTE_TAG_INFO { 1055 DWORD FileAttributes; 1056 DWORD ReparseTag; 1057 } FILE_ATTRIBUTE_TAG_INFO, *PFILE_ATTRIBUTE_TAG_INFO; 1058 1059 typedef struct _FILE_COMPRESSION_INFO { 1060 LARGE_INTEGER CompressedFileSize; 1061 WORD CompressionFormat; 1062 UCHAR CompressionUnitShift; 1063 UCHAR ChunkShift; 1064 UCHAR ClusterShift; 1065 UCHAR Reserved[3]; 1066 } FILE_COMPRESSION_INFO, *PFILE_COMPRESSION_INFO; 1067 1068 typedef struct _FILE_REMOTE_PROTOCOL_INFO { 1069 USHORT StructureVersion; 1070 USHORT StructureSize; 1071 ULONG Protocol; 1072 USHORT ProtocolMajorVersion; 1073 USHORT ProtocolMinorVersion; 1074 USHORT ProtocolRevision; 1075 USHORT Reserved; 1076 ULONG Flags; 1077 struct { 1078 ULONG Reserved[8]; 1079 } GenericReserved; 1080 struct { 1081 ULONG Reserved[16]; 1082 } ProtocolSpecificReserved; 1083 } FILE_REMOTE_PROTOCOL_INFO, *PFILE_REMOTE_PROTOCOL_INFO; 1084 1085 #endif 1086 1087 typedef enum _FINDEX_INFO_LEVELS { 1088 FindExInfoStandard, 1089 FindExInfoBasic, 1090 FindExInfoMaxInfoLevel 1091 } FINDEX_INFO_LEVELS; 1092 1093 typedef enum _FINDEX_SEARCH_OPS { 1094 FindExSearchNameMatch, 1095 FindExSearchLimitToDirectories, 1096 FindExSearchLimitToDevices, 1097 FindExSearchMaxSearchOp 1098 } FINDEX_SEARCH_OPS; 1099 1100 typedef struct tagHW_PROFILE_INFOA { 1101 DWORD dwDockInfo; 1102 CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; 1103 CHAR szHwProfileName[MAX_PROFILE_LEN]; 1104 } HW_PROFILE_INFOA,*LPHW_PROFILE_INFOA; 1105 1106 typedef struct tagHW_PROFILE_INFOW { 1107 DWORD dwDockInfo; 1108 WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; 1109 WCHAR szHwProfileName[MAX_PROFILE_LEN]; 1110 } HW_PROFILE_INFOW,*LPHW_PROFILE_INFOW; 1111 1112 /* Event Logging */ 1113 1114 #define EVENTLOG_FULL_INFO 0 1115 1116 typedef struct _EVENTLOG_FULL_INFORMATION { 1117 DWORD dwFull; 1118 } EVENTLOG_FULL_INFORMATION, *LPEVENTLOG_FULL_INFORMATION; 1119 1120 typedef enum _GET_FILEEX_INFO_LEVELS { 1121 GetFileExInfoStandard, 1122 GetFileExMaxInfoLevel 1123 } GET_FILEEX_INFO_LEVELS; 1124 1125 typedef struct _SYSTEM_INFO { 1126 _ANONYMOUS_UNION union { 1127 DWORD dwOemId; 1128 _ANONYMOUS_STRUCT struct { 1129 WORD wProcessorArchitecture; 1130 WORD wReserved; 1131 } DUMMYSTRUCTNAME; 1132 } DUMMYUNIONNAME; 1133 DWORD dwPageSize; 1134 PVOID lpMinimumApplicationAddress; 1135 PVOID lpMaximumApplicationAddress; 1136 DWORD_PTR dwActiveProcessorMask; 1137 DWORD dwNumberOfProcessors; 1138 DWORD dwProcessorType; 1139 DWORD dwAllocationGranularity; 1140 WORD wProcessorLevel; 1141 WORD wProcessorRevision; 1142 } SYSTEM_INFO,*LPSYSTEM_INFO; 1143 1144 typedef struct _SYSTEM_POWER_STATUS { 1145 BYTE ACLineStatus; 1146 BYTE BatteryFlag; 1147 BYTE BatteryLifePercent; 1148 BYTE Reserved1; 1149 DWORD BatteryLifeTime; 1150 DWORD BatteryFullLifeTime; 1151 } SYSTEM_POWER_STATUS,*LPSYSTEM_POWER_STATUS; 1152 1153 typedef struct _TIME_DYNAMIC_ZONE_INFORMATION { 1154 LONG Bias; 1155 WCHAR StandardName[32]; 1156 SYSTEMTIME StandardDate; 1157 LONG StandardBias; 1158 WCHAR DaylightName[32]; 1159 SYSTEMTIME DaylightDate; 1160 LONG DaylightBias; 1161 WCHAR TimeZoneKeyName[128]; 1162 BOOLEAN DynamicDaylightTimeDisabled; 1163 } DYNAMIC_TIME_ZONE_INFORMATION, *PDYNAMIC_TIME_ZONE_INFORMATION; 1164 1165 typedef struct _TIME_ZONE_INFORMATION { 1166 LONG Bias; 1167 WCHAR StandardName[32]; 1168 SYSTEMTIME StandardDate; 1169 LONG StandardBias; 1170 WCHAR DaylightName[32]; 1171 SYSTEMTIME DaylightDate; 1172 LONG DaylightBias; 1173 } TIME_ZONE_INFORMATION,*PTIME_ZONE_INFORMATION,*LPTIME_ZONE_INFORMATION; 1174 1175 typedef struct _MEMORYSTATUS { 1176 DWORD dwLength; 1177 DWORD dwMemoryLoad; 1178 SIZE_T dwTotalPhys; 1179 SIZE_T dwAvailPhys; 1180 SIZE_T dwTotalPageFile; 1181 SIZE_T dwAvailPageFile; 1182 SIZE_T dwTotalVirtual; 1183 SIZE_T dwAvailVirtual; 1184 } MEMORYSTATUS,*LPMEMORYSTATUS; 1185 1186 #if (_WIN32_WINNT >= 0x0500) 1187 typedef struct _MEMORYSTATUSEX { 1188 DWORD dwLength; 1189 DWORD dwMemoryLoad; 1190 DWORDLONG ullTotalPhys; 1191 DWORDLONG ullAvailPhys; 1192 DWORDLONG ullTotalPageFile; 1193 DWORDLONG ullAvailPageFile; 1194 DWORDLONG ullTotalVirtual; 1195 DWORDLONG ullAvailVirtual; 1196 DWORDLONG ullAvailExtendedVirtual; 1197 } MEMORYSTATUSEX, *LPMEMORYSTATUSEX; 1198 #endif 1199 1200 #ifndef _LDT_ENTRY_DEFINED 1201 #define _LDT_ENTRY_DEFINED 1202 typedef struct _LDT_ENTRY { 1203 WORD LimitLow; 1204 WORD BaseLow; 1205 union { 1206 struct { 1207 BYTE BaseMid; 1208 BYTE Flags1; 1209 BYTE Flags2; 1210 BYTE BaseHi; 1211 } Bytes; 1212 struct { 1213 DWORD BaseMid:8; 1214 DWORD Type:5; 1215 DWORD Dpl:2; 1216 DWORD Pres:1; 1217 DWORD LimitHi:4; 1218 DWORD Sys:1; 1219 DWORD Reserved_0:1; 1220 DWORD Default_Big:1; 1221 DWORD Granularity:1; 1222 DWORD BaseHi:8; 1223 } Bits; 1224 } HighWord; 1225 } LDT_ENTRY,*PLDT_ENTRY,*LPLDT_ENTRY; 1226 #endif 1227 1228 typedef struct _PROCESS_HEAP_ENTRY { 1229 PVOID lpData; 1230 DWORD cbData; 1231 BYTE cbOverhead; 1232 BYTE iRegionIndex; 1233 WORD wFlags; 1234 _ANONYMOUS_UNION union { 1235 struct { 1236 HANDLE hMem; 1237 DWORD dwReserved[3]; 1238 } Block; 1239 struct { 1240 DWORD dwCommittedSize; 1241 DWORD dwUnCommittedSize; 1242 LPVOID lpFirstBlock; 1243 LPVOID lpLastBlock; 1244 } Region; 1245 } DUMMYUNIONNAME; 1246 } PROCESS_HEAP_ENTRY,*PPROCESS_HEAP_ENTRY,*LPPROCESS_HEAP_ENTRY; 1247 1248 typedef struct _OFSTRUCT { 1249 BYTE cBytes; 1250 BYTE fFixedDisk; 1251 WORD nErrCode; 1252 WORD Reserved1; 1253 WORD Reserved2; 1254 CHAR szPathName[OFS_MAXPATHNAME]; 1255 } OFSTRUCT,*LPOFSTRUCT,*POFSTRUCT; 1256 1257 #if (_WIN32_WINNT >= 0x0501) 1258 typedef struct tagACTCTXA { 1259 ULONG cbSize; 1260 DWORD dwFlags; 1261 LPCSTR lpSource; 1262 USHORT wProcessorArchitecture; 1263 LANGID wLangId; 1264 LPCSTR lpAssemblyDirectory; 1265 LPCSTR lpResourceName; 1266 LPCSTR lpApplicationName; 1267 HMODULE hModule; 1268 } ACTCTXA,*PACTCTXA; 1269 typedef const ACTCTXA *PCACTCTXA; 1270 1271 typedef struct tagACTCTXW { 1272 ULONG cbSize; 1273 DWORD dwFlags; 1274 LPCWSTR lpSource; 1275 USHORT wProcessorArchitecture; 1276 LANGID wLangId; 1277 LPCWSTR lpAssemblyDirectory; 1278 LPCWSTR lpResourceName; 1279 LPCWSTR lpApplicationName; 1280 HMODULE hModule; 1281 } ACTCTXW,*PACTCTXW; 1282 typedef const ACTCTXW *PCACTCTXW; 1283 1284 typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 { 1285 ULONG cbSize; 1286 ULONG ulDataFormatVersion; 1287 PVOID lpData; 1288 ULONG ulLength; 1289 PVOID lpSectionGlobalData; 1290 ULONG ulSectionGlobalDataLength; 1291 PVOID lpSectionBase; 1292 ULONG ulSectionTotalLength; 1293 HANDLE hActCtx; 1294 ULONG ulAssemblyRosterIndex; 1295 } ACTCTX_SECTION_KEYED_DATA_2600, *PACTCTX_SECTION_KEYED_DATA_2600; 1296 typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600; 1297 1298 typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA { 1299 PVOID lpInformation; 1300 PVOID lpSectionBase; 1301 ULONG ulSectionLength; 1302 PVOID lpSectionGlobalDataBase; 1303 ULONG ulSectionGlobalDataLength; 1304 } ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA; 1305 typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA; 1306 1307 typedef struct tagACTCTX_SECTION_KEYED_DATA { 1308 ULONG cbSize; 1309 ULONG ulDataFormatVersion; 1310 PVOID lpData; 1311 ULONG ulLength; 1312 PVOID lpSectionGlobalData; 1313 ULONG ulSectionGlobalDataLength; 1314 PVOID lpSectionBase; 1315 ULONG ulSectionTotalLength; 1316 HANDLE hActCtx; 1317 ULONG ulAssemblyRosterIndex; 1318 /* Non 2600 extra fields */ 1319 ULONG ulFlags; 1320 ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata; 1321 } ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA; 1322 1323 typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA; 1324 1325 typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION { 1326 HANDLE hActCtx; 1327 DWORD dwFlags; 1328 } ACTIVATION_CONTEXT_BASIC_INFORMATION, *PACTIVATION_CONTEXT_BASIC_INFORMATION; 1329 typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION; 1330 1331 typedef BOOL 1332 (WINAPI *PQUERYACTCTXW_FUNC)( 1333 _In_ DWORD dwFlags, 1334 _In_ HANDLE hActCtx, 1335 _In_opt_ PVOID pvSubInstance, 1336 _In_ ULONG ulInfoClass, 1337 _Out_writes_bytes_to_opt_(cbBuffer, *pcbWrittenOrRequired) PVOID pvBuffer, 1338 _In_ SIZE_T cbBuffer, 1339 _Out_opt_ SIZE_T *pcbWrittenOrRequired); 1340 1341 typedef enum { 1342 LowMemoryResourceNotification , 1343 HighMemoryResourceNotification 1344 } MEMORY_RESOURCE_NOTIFICATION_TYPE; 1345 #endif /* (_WIN32_WINNT >= 0x0501) */ 1346 1347 #if (_WIN32_WINNT >= 0x0500) 1348 typedef enum _COMPUTER_NAME_FORMAT { 1349 ComputerNameNetBIOS, 1350 ComputerNameDnsHostname, 1351 ComputerNameDnsDomain, 1352 ComputerNameDnsFullyQualified, 1353 ComputerNamePhysicalNetBIOS, 1354 ComputerNamePhysicalDnsHostname, 1355 ComputerNamePhysicalDnsDomain, 1356 ComputerNamePhysicalDnsFullyQualified, 1357 ComputerNameMax 1358 } COMPUTER_NAME_FORMAT; 1359 #endif /* (_WIN32_WINNT >= 0x0500) */ 1360 1361 #if (_WIN32_WINNT >= 0x0600) 1362 typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK; 1363 typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE; 1364 #endif 1365 1366 typedef struct _PROC_THREAD_ATTRIBUTE_LIST *PPROC_THREAD_ATTRIBUTE_LIST, *LPPROC_THREAD_ATTRIBUTE_LIST; 1367 1368 #define PROC_THREAD_ATTRIBUTE_NUMBER 0x0000ffff 1369 #define PROC_THREAD_ATTRIBUTE_THREAD 0x00010000 1370 #define PROC_THREAD_ATTRIBUTE_INPUT 0x00020000 1371 #define PROC_THREAD_ATTRIBUTE_ADDITIVE 0x00040000 1372 1373 typedef enum _PROC_THREAD_ATTRIBUTE_NUM { 1374 ProcThreadAttributeParentProcess = 0, 1375 ProcThreadAttributeHandleList = 2, 1376 ProcThreadAttributeGroupAffinity = 3, 1377 ProcThreadAttributeIdealProcessor = 5, 1378 ProcThreadAttributeUmsThread = 6, 1379 ProcThreadAttributeMitigationPolicy = 7, 1380 ProcThreadAttributeSecurityCapabilities = 9, 1381 ProcThreadAttributeProtectionLevel = 11, 1382 ProcThreadAttributeJobList = 13, 1383 ProcThreadAttributeChildProcessPolicy = 14, 1384 ProcThreadAttributeAllApplicationPackagesPolicy = 15, 1385 ProcThreadAttributeWin32kFilter = 16, 1386 ProcThreadAttributeSafeOpenPromptOriginClaim = 17, 1387 } PROC_THREAD_ATTRIBUTE_NUM; 1388 1389 #define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT) 1390 #define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT) 1391 #define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS (ProcThreadAttributeParentProcess | PROC_THREAD_ATTRIBUTE_INPUT) 1392 1393 typedef DWORD 1394 (WINAPI *PFE_EXPORT_FUNC)( 1395 _In_reads_bytes_(ulLength) PBYTE pbData, 1396 _In_opt_ PVOID pvCallbackContext, 1397 _In_ ULONG ulLength); 1398 1399 typedef DWORD(WINAPI *LPPROGRESS_ROUTINE)(_In_ LARGE_INTEGER, _In_ LARGE_INTEGER, _In_ LARGE_INTEGER, _In_ LARGE_INTEGER, _In_ DWORD, _In_ DWORD, _In_ HANDLE, _In_ HANDLE, _In_opt_ LPVOID); 1400 1401 typedef VOID (WINAPI *PFIBER_START_ROUTINE)( LPVOID lpFiberParameter ); 1402 typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE; 1403 1404 typedef VOID (WINAPI *PFLS_CALLBACK_FUNCTION)(PVOID); 1405 typedef BOOL(CALLBACK *ENUMRESLANGPROCA)(HMODULE,LPCSTR,LPCSTR,WORD,LONG_PTR); 1406 typedef BOOL(CALLBACK *ENUMRESLANGPROCW)(HMODULE,LPCWSTR,LPCWSTR,WORD,LONG_PTR); 1407 typedef BOOL(CALLBACK *ENUMRESNAMEPROCA)(HMODULE,LPCSTR,LPSTR,LONG_PTR); 1408 typedef BOOL(CALLBACK *ENUMRESNAMEPROCW)(HMODULE,LPCWSTR,LPWSTR,LONG_PTR); 1409 typedef BOOL(CALLBACK *ENUMRESTYPEPROCA)(HMODULE,LPSTR,LONG_PTR); 1410 typedef BOOL(CALLBACK *ENUMRESTYPEPROCW)(HMODULE,LPWSTR,LONG_PTR); 1411 typedef void(CALLBACK *LPOVERLAPPED_COMPLETION_ROUTINE)(DWORD,DWORD,LPOVERLAPPED); 1412 typedef LONG(CALLBACK *PTOP_LEVEL_EXCEPTION_FILTER)(LPEXCEPTION_POINTERS); 1413 typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER; 1414 typedef void(APIENTRY *PAPCFUNC)(ULONG_PTR); 1415 typedef void(CALLBACK *PTIMERAPCROUTINE)(PVOID,DWORD,DWORD); 1416 #if (_WIN32_WINNT >= 0x0600) 1417 typedef DWORD (WINAPI *APPLICATION_RECOVERY_CALLBACK)(PVOID); 1418 #endif 1419 1420 #ifdef WINE_NO_UNICODE_MACROS /* force using a cast */ 1421 #define MAKEINTATOM(atom) ((ULONG_PTR)((WORD)(atom))) 1422 #else 1423 #define MAKEINTATOM(i) (LPTSTR)((ULONG_PTR)((WORD)(i))) 1424 #endif 1425 1426 typedef DWORD 1427 (WINAPI *PFE_IMPORT_FUNC)( 1428 _Out_writes_bytes_to_(*ulLength, *ulLength) PBYTE pbData, 1429 _In_opt_ PVOID pvCallbackContext, 1430 _Inout_ PULONG ulLength); 1431 1432 /* Functions */ 1433 #ifndef UNDER_CE 1434 int APIENTRY WinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPSTR, _In_ int); 1435 #else 1436 int APIENTRY WinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPWSTR, _In_ int); 1437 #endif 1438 int APIENTRY wWinMain(_In_ HINSTANCE, _In_opt_ HINSTANCE, _In_ LPWSTR, _In_ int); 1439 1440 long 1441 WINAPI 1442 _hread( 1443 _In_ HFILE hFile, 1444 _Out_writes_bytes_to_(lBytes, return) LPVOID lpBuffer, 1445 _In_ long lBytes); 1446 1447 long 1448 WINAPI 1449 _hwrite( 1450 _In_ HFILE hFile, 1451 _In_reads_bytes_(lBytes) LPCCH lpBuffer, 1452 _In_ long lBytes); 1453 1454 HFILE WINAPI _lclose(_In_ HFILE); 1455 HFILE WINAPI _lcreat(_In_ LPCSTR, _In_ int); 1456 LONG WINAPI _llseek(_In_ HFILE, _In_ LONG, _In_ int); 1457 HFILE WINAPI _lopen(_In_ LPCSTR, _In_ int); 1458 1459 UINT 1460 WINAPI 1461 _lread( 1462 _In_ HFILE hFile, 1463 _Out_writes_bytes_to_(uBytes, return) LPVOID lpBuffer, 1464 _In_ UINT uBytes); 1465 1466 UINT 1467 WINAPI 1468 _lwrite( 1469 _In_ HFILE hFile, 1470 _In_reads_bytes_(uBytes) LPCCH lpBuffer, 1471 _In_ UINT uBytes); 1472 1473 BOOL WINAPI AccessCheck(PSECURITY_DESCRIPTOR,HANDLE,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,PDWORD,PDWORD,PBOOL); 1474 1475 BOOL 1476 WINAPI 1477 AccessCheckAndAuditAlarmA( 1478 _In_ LPCSTR SubsystemName, 1479 _In_opt_ LPVOID HandleId, 1480 _In_ LPSTR ObjectTypeName, 1481 _In_opt_ LPSTR ObjectName, 1482 _In_ PSECURITY_DESCRIPTOR SecurityDescriptor, 1483 _In_ DWORD DesiredAccess, 1484 _In_ PGENERIC_MAPPING GenericMapping, 1485 _In_ BOOL ObjectCreation, 1486 _Out_ LPDWORD GrantedAccess, 1487 _Out_ LPBOOL AccessStatus, 1488 _Out_ LPBOOL pfGenerateOnClose); 1489 1490 BOOL WINAPI AccessCheckAndAuditAlarmW(LPCWSTR,LPVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL); 1491 #if (_WIN32_WINNT >= 0x0600) 1492 VOID WINAPI AcquireSRWLockExclusive(PSRWLOCK); 1493 VOID WINAPI AcquireSRWLockShared(PSRWLOCK); 1494 #endif 1495 #if (_WIN32_WINNT >= 0x0501) 1496 BOOL WINAPI ActivateActCtx(_Inout_opt_ HANDLE, _Out_ ULONG_PTR*); 1497 #endif 1498 BOOL WINAPI AddAccessAllowedAce(PACL,DWORD,DWORD,PSID); 1499 BOOL WINAPI AddAccessDeniedAce(PACL,DWORD,DWORD,PSID); 1500 #if (_WIN32_WINNT >= 0x0500) 1501 BOOL WINAPI AddAccessAllowedAceEx(PACL,DWORD,DWORD,DWORD,PSID); 1502 BOOL WINAPI AddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID); 1503 BOOL WINAPI AddAccessAllowedObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID); 1504 BOOL WINAPI AddAccessDeniedObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID); 1505 #endif 1506 BOOL WINAPI AddAce(PACL,DWORD,DWORD,PVOID,DWORD); 1507 ATOM WINAPI AddAtomA(_In_opt_ LPCSTR); 1508 ATOM WINAPI AddAtomW(_In_opt_ LPCWSTR); 1509 BOOL WINAPI AddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL); 1510 #if (_WIN32_WINNT >= 0x0500) 1511 BOOL WINAPI AddAuditAccessObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID,BOOL,BOOL); 1512 #endif 1513 #if (_WIN32_WINNT >= 0x0501) 1514 void WINAPI AddRefActCtx(_Inout_ HANDLE); 1515 #endif 1516 #if (_WIN32_WINNT >= 0x0500) 1517 _Ret_maybenull_ PVOID WINAPI AddVectoredExceptionHandler(_In_ ULONG, _In_ PVECTORED_EXCEPTION_HANDLER); 1518 _Ret_maybenull_ PVOID WINAPI AddVectoredContinueHandler(_In_ ULONG, _In_ PVECTORED_EXCEPTION_HANDLER); 1519 #endif 1520 BOOL WINAPI AccessCheckByType(PSECURITY_DESCRIPTOR,PSID,HANDLE,DWORD,POBJECT_TYPE_LIST,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,LPDWORD,LPDWORD,LPBOOL); 1521 BOOL WINAPI AdjustTokenGroups(HANDLE,BOOL,PTOKEN_GROUPS,DWORD,PTOKEN_GROUPS,PDWORD); 1522 BOOL WINAPI AdjustTokenPrivileges(HANDLE,BOOL,PTOKEN_PRIVILEGES,DWORD,PTOKEN_PRIVILEGES,PDWORD); 1523 BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID*); 1524 BOOL WINAPI CheckTokenMembership(HANDLE,PSID,PBOOL); 1525 BOOL WINAPI AllocateLocallyUniqueId(PLUID); 1526 BOOL WINAPI AreAllAccessesGranted(DWORD,DWORD); 1527 BOOL WINAPI AreAnyAccessesGranted(DWORD,DWORD); 1528 BOOL WINAPI AreFileApisANSI(void); 1529 BOOL WINAPI BackupEventLogA(_In_ HANDLE, _In_ LPCSTR); 1530 BOOL WINAPI BackupEventLogW(_In_ HANDLE, _In_ LPCWSTR); 1531 1532 BOOL 1533 WINAPI 1534 BackupRead( 1535 _In_ HANDLE hFile, 1536 _Out_writes_bytes_to_(nNumberOfBytesToRead, *lpNumberOfBytesRead) LPBYTE lpBuffer, 1537 _In_ DWORD nNumberOfBytesToRead, 1538 _Out_ LPDWORD lpNumberOfBytesRead, 1539 _In_ BOOL bAbort, 1540 _In_ BOOL bProcessSecurity, 1541 _Inout_ LPVOID *lpContext); 1542 1543 BOOL WINAPI BackupSeek(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _Out_ LPDWORD, _Out_ LPDWORD, _Inout_ LPVOID*); 1544 1545 BOOL 1546 WINAPI 1547 BackupWrite( 1548 _In_ HANDLE hFile, 1549 _In_reads_bytes_(nNumberOfBytesToWrite) LPBYTE lpBuffer, 1550 _In_ DWORD nNumberOfBytesToWrite, 1551 _Out_ LPDWORD lpNumberOfBytesWritten, 1552 _In_ BOOL bAbort, 1553 _In_ BOOL bProcessSecurity, 1554 _Inout_ LPVOID *lpContext); 1555 1556 BOOL WINAPI Beep(DWORD,DWORD); 1557 HANDLE WINAPI BeginUpdateResourceA(_In_ LPCSTR, _In_ BOOL); 1558 HANDLE WINAPI BeginUpdateResourceW(_In_ LPCWSTR, _In_ BOOL); 1559 #if (_WIN32_WINNT >= 0x0500) 1560 BOOL WINAPI BindIoCompletionCallback(_In_ HANDLE, _In_ LPOVERLAPPED_COMPLETION_ROUTINE, _In_ ULONG); 1561 #endif 1562 BOOL WINAPI BuildCommDCBA(_In_ LPCSTR, _Out_ LPDCB); 1563 BOOL WINAPI BuildCommDCBW(_In_ LPCWSTR, _Out_ LPDCB); 1564 BOOL WINAPI BuildCommDCBAndTimeoutsA(_In_ LPCSTR, _Out_ LPDCB, _Out_ LPCOMMTIMEOUTS); 1565 BOOL WINAPI BuildCommDCBAndTimeoutsW(_In_ LPCWSTR, _Out_ LPDCB, _Out_ LPCOMMTIMEOUTS); 1566 1567 BOOL 1568 WINAPI 1569 CallNamedPipeA( 1570 _In_ LPCSTR lpNamedPipeName, 1571 _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer, 1572 _In_ DWORD nInBufferSize, 1573 _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesRead) LPVOID lpOutBuffer, 1574 _In_ DWORD nOutBufferSize, 1575 _Out_ LPDWORD lpBytesRead, 1576 _In_ DWORD nTimeOut); 1577 1578 BOOL 1579 WINAPI 1580 CallNamedPipeW( 1581 _In_ LPCWSTR lpNamedPipeName, 1582 _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer, 1583 _In_ DWORD nInBufferSize, 1584 _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesRead) LPVOID lpOutBuffer, 1585 _In_ DWORD nOutBufferSize, 1586 _Out_ LPDWORD lpBytesRead, 1587 _In_ DWORD nTimeOut); 1588 1589 BOOL WINAPI CancelDeviceWakeupRequest(_In_ HANDLE); 1590 BOOL WINAPI CancelIo(HANDLE); 1591 #if (_WIN32_WINNT >= 0x0600) 1592 BOOL WINAPI CancelIoEx(HANDLE,LPOVERLAPPED); 1593 BOOL WINAPI CancelSynchronousIo(HANDLE); 1594 #endif 1595 BOOL WINAPI CancelWaitableTimer(HANDLE); 1596 1597 #if (_WIN32_WINNT >= 0x0501) 1598 1599 BOOL 1600 WINAPI 1601 CheckNameLegalDOS8Dot3A( 1602 _In_ LPCSTR lpName, 1603 _Out_writes_opt_(OemNameSize) LPSTR lpOemName, 1604 _In_ DWORD OemNameSize, 1605 _Out_opt_ PBOOL pbNameContainsSpaces, 1606 _Out_ PBOOL pbNameLegal); 1607 1608 BOOL 1609 WINAPI 1610 CheckNameLegalDOS8Dot3W( 1611 _In_ LPCWSTR lpName, 1612 _Out_writes_opt_(OemNameSize) LPSTR lpOemName, 1613 _In_ DWORD OemNameSize, 1614 _Out_opt_ PBOOL pbNameContainsSpaces, 1615 _Out_ PBOOL pbNameLegal); 1616 1617 BOOL WINAPI CheckRemoteDebuggerPresent(_In_ HANDLE, _Out_ PBOOL); 1618 #endif 1619 1620 BOOL WINAPI ClearCommBreak(_In_ HANDLE); 1621 BOOL WINAPI ClearCommError(_In_ HANDLE, _Out_opt_ PDWORD, _Out_opt_ LPCOMSTAT); 1622 BOOL WINAPI ClearEventLogA(_In_ HANDLE, _In_opt_ LPCSTR); 1623 BOOL WINAPI ClearEventLogW(_In_ HANDLE, _In_opt_ LPCWSTR); 1624 BOOL WINAPI CloseEventLog(_In_ HANDLE); 1625 BOOL WINAPI CloseHandle(HANDLE); 1626 BOOL WINAPI CommConfigDialogA(_In_ LPCSTR, _In_opt_ HWND, _Inout_ LPCOMMCONFIG); 1627 BOOL WINAPI CommConfigDialogW(_In_ LPCWSTR, _In_opt_ HWND, _Inout_ LPCOMMCONFIG); 1628 LONG WINAPI CompareFileTime(CONST FILETIME*,CONST FILETIME*); 1629 BOOL WINAPI ConnectNamedPipe(HANDLE,LPOVERLAPPED); 1630 BOOL WINAPI ContinueDebugEvent(DWORD,DWORD,DWORD); 1631 #if (_WIN32_WINNT >= 0x0400) 1632 BOOL WINAPI ConvertFiberToThread(void); 1633 #endif 1634 _Ret_maybenull_ PVOID WINAPI ConvertThreadToFiber(_In_opt_ PVOID); 1635 BOOL WINAPI CopyFileA(_In_ LPCSTR, _In_ LPCSTR, _In_ BOOL); 1636 BOOL WINAPI CopyFileW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ BOOL); 1637 BOOL WINAPI CopyFileExA(_In_ LPCSTR, _In_ LPCSTR, _In_opt_ LPPROGRESS_ROUTINE, _In_opt_ LPVOID, _In_opt_ LPBOOL, _In_ DWORD); 1638 BOOL WINAPI CopyFileExW(_In_ LPCWSTR, _In_ LPCWSTR, _In_opt_ LPPROGRESS_ROUTINE, _In_opt_ LPVOID, _In_opt_ LPBOOL, _In_ DWORD); 1639 #define MoveMemory RtlMoveMemory 1640 #define CopyMemory RtlCopyMemory 1641 #define FillMemory RtlFillMemory 1642 #define ZeroMemory RtlZeroMemory 1643 #define SecureZeroMemory RtlSecureZeroMemory 1644 BOOL WINAPI CopySid(DWORD,PSID,PSID); 1645 #if (_WIN32_WINNT >= 0x0501) 1646 HANDLE WINAPI CreateActCtxA(_In_ PCACTCTXA); 1647 HANDLE WINAPI CreateActCtxW(_In_ PCACTCTXW); 1648 #endif 1649 BOOL WINAPI CreateDirectoryA(LPCSTR,LPSECURITY_ATTRIBUTES); 1650 BOOL WINAPI CreateDirectoryW(LPCWSTR,LPSECURITY_ATTRIBUTES); 1651 BOOL WINAPI CreateDirectoryExA(_In_ LPCSTR, _In_ LPCSTR, _In_opt_ LPSECURITY_ATTRIBUTES); 1652 BOOL WINAPI CreateDirectoryExW(_In_ LPCWSTR, _In_ LPCWSTR, _In_opt_ LPSECURITY_ATTRIBUTES); 1653 HANDLE WINAPI CreateEventA(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCSTR); 1654 HANDLE WINAPI CreateEventW(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCWSTR); 1655 #if (_WIN32_WINNT >= 0x0600) 1656 HANDLE WINAPI CreateEventExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD); 1657 HANDLE WINAPI CreateEventExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD); 1658 #endif 1659 _Ret_maybenull_ LPVOID WINAPI CreateFiber(_In_ SIZE_T, _In_ LPFIBER_START_ROUTINE, _In_opt_ LPVOID); 1660 #if (_WIN32_WINNT >= 0x0400) 1661 _Ret_maybenull_ LPVOID WINAPI CreateFiberEx(_In_ SIZE_T, _In_ SIZE_T, _In_ DWORD, _In_ LPFIBER_START_ROUTINE, _In_opt_ LPVOID); 1662 #endif 1663 HANDLE WINAPI CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); 1664 HANDLE WINAPI CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); 1665 _Ret_maybenull_ HANDLE WINAPI CreateFileMappingA(_In_ HANDLE, _In_opt_ LPSECURITY_ATTRIBUTES, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPCSTR); 1666 HANDLE WINAPI CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR); 1667 #if (_WIN32_WINNT >= 0x0500) 1668 BOOL WINAPI CreateHardLinkA(_In_ LPCSTR, _In_ LPCSTR, _Reserved_ LPSECURITY_ATTRIBUTES); 1669 BOOL WINAPI CreateHardLinkW(_In_ LPCWSTR, _In_ LPCWSTR, _Reserved_ LPSECURITY_ATTRIBUTES); 1670 #endif 1671 HANDLE WINAPI CreateIoCompletionPort(HANDLE,HANDLE,ULONG_PTR,DWORD); 1672 #if (_WIN32_WINNT >= 0x0500) 1673 _Ret_maybenull_ HANDLE WINAPI CreateJobObjectA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCSTR); 1674 _Ret_maybenull_ HANDLE WINAPI CreateJobObjectW(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCWSTR); 1675 BOOL WINAPI TerminateJobObject(_In_ HANDLE, _In_ UINT); 1676 BOOL WINAPI AssignProcessToJobObject(_In_ HANDLE, _In_ HANDLE); 1677 #endif 1678 HANDLE WINAPI CreateMailslotA(_In_ LPCSTR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES); 1679 HANDLE WINAPI CreateMailslotW(_In_ LPCWSTR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES); 1680 #if (_WIN32_WINNT >= 0x0501) 1681 HANDLE WINAPI CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE); 1682 #endif 1683 HANDLE WINAPI CreateMutexA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR); 1684 HANDLE WINAPI CreateMutexW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR); 1685 #if (_WIN32_WINNT >= 0x0600) 1686 HANDLE WINAPI CreateMutexExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD); 1687 HANDLE WINAPI CreateMutexExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD); 1688 #endif 1689 HANDLE WINAPI CreateNamedPipeA(_In_ LPCSTR, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES); 1690 HANDLE WINAPI CreateNamedPipeW(_In_ LPCWSTR, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES); 1691 BOOL WINAPI CreatePipe(PHANDLE,PHANDLE,LPSECURITY_ATTRIBUTES,DWORD); 1692 BOOL WINAPI CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,BOOL,HANDLE,PGENERIC_MAPPING); 1693 BOOL WINAPI CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION); 1694 BOOL WINAPI CreateProcessW(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); 1695 1696 BOOL 1697 WINAPI 1698 CreateProcessAsUserA( 1699 _In_opt_ HANDLE, 1700 _In_opt_ LPCSTR, 1701 _Inout_opt_ LPSTR, 1702 _In_opt_ LPSECURITY_ATTRIBUTES, 1703 _In_opt_ LPSECURITY_ATTRIBUTES, 1704 _In_ BOOL, 1705 _In_ DWORD, 1706 _In_opt_ PVOID, 1707 _In_opt_ LPCSTR, 1708 _In_ LPSTARTUPINFOA, 1709 _Out_ LPPROCESS_INFORMATION); 1710 1711 BOOL WINAPI CreateProcessAsUserW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); 1712 HANDLE WINAPI CreateRemoteThread(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD); 1713 1714 BOOL 1715 WINAPI 1716 CreateRestrictedToken( 1717 _In_ HANDLE ExistingTokenHandle, 1718 _In_ DWORD Flags, 1719 _In_ DWORD DisableSidCount, 1720 _In_reads_opt_(DisableSidCount) PSID_AND_ATTRIBUTES SidsToDisable, 1721 _In_ DWORD DeletePrivilegeCount, 1722 _In_reads_opt_(DeletePrivilegeCount) PLUID_AND_ATTRIBUTES PrivilegesToDelete, 1723 _In_ DWORD RestrictedSidCount, 1724 _In_reads_opt_(RestrictedSidCount) PSID_AND_ATTRIBUTES SidsToRestrict, 1725 _Outptr_ PHANDLE NewTokenHandle); 1726 1727 _Ret_maybenull_ HANDLE WINAPI CreateSemaphoreA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ LONG, _In_ LONG, _In_opt_ LPCSTR); 1728 _Ret_maybenull_ HANDLE WINAPI CreateSemaphoreW(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ LONG, _In_ LONG, _In_opt_ LPCWSTR); 1729 #if (_WIN32_WINNT >= 0x0600) 1730 _Ret_maybenull_ HANDLE WINAPI CreateSemaphoreExA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ LONG, _In_ LONG, _In_opt_ LPCSTR, _Reserved_ DWORD, _In_ DWORD); 1731 HANDLE WINAPI CreateSemaphoreExW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR,DWORD,DWORD); 1732 #endif 1733 DWORD WINAPI CreateTapePartition(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ DWORD); 1734 1735 #if (_WIN32_WINNT >= 0x0500) 1736 1737 HANDLE WINAPI CreateTimerQueue(void); 1738 1739 BOOL 1740 WINAPI 1741 CreateTimerQueueTimer( 1742 _Outptr_ PHANDLE, 1743 _In_opt_ HANDLE, 1744 _In_ WAITORTIMERCALLBACK, 1745 _In_opt_ PVOID, 1746 _In_ DWORD, 1747 _In_ DWORD, 1748 _In_ ULONG); 1749 1750 _Must_inspect_result_ 1751 BOOL 1752 WINAPI 1753 ChangeTimerQueueTimer( 1754 _In_opt_ HANDLE TimerQueue, 1755 _Inout_ HANDLE Timer, 1756 _In_ ULONG DueTime, 1757 _In_ ULONG Period); 1758 1759 #endif /* (_WIN32_WINNT >= 0x0500) */ 1760 1761 HANDLE WINAPI CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,PVOID,DWORD,PDWORD); 1762 _Ret_maybenull_ HANDLE WINAPI CreateWaitableTimerA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ BOOL, _In_opt_ LPCSTR); 1763 _Ret_maybenull_ HANDLE WINAPI CreateWaitableTimerW(_In_opt_ LPSECURITY_ATTRIBUTES, _In_ BOOL, _In_opt_ LPCWSTR); 1764 #if (_WIN32_WINNT >= 0x0600) 1765 _Ret_maybenull_ HANDLE WINAPI CreateWaitableTimerExA(_In_opt_ LPSECURITY_ATTRIBUTES, _In_opt_ LPCSTR, _In_ DWORD, _In_ DWORD); 1766 HANDLE WINAPI CreateWaitableTimerExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD); 1767 #endif 1768 #if (_WIN32_WINNT >= 0x0501) 1769 BOOL WINAPI CreateWellKnownSid(WELL_KNOWN_SID_TYPE,PSID,PSID,DWORD*); 1770 BOOL WINAPI DeactivateActCtx(_In_ DWORD, _In_ ULONG_PTR); 1771 #endif 1772 BOOL WINAPI DebugActiveProcess(DWORD); 1773 #if (_WIN32_WINNT >= 0x0501) 1774 BOOL WINAPI DebugActiveProcessStop(DWORD); 1775 #endif 1776 void WINAPI DebugBreak(void); 1777 #if (_WIN32_WINNT >= 0x0501) 1778 BOOL WINAPI DebugBreakProcess(_In_ HANDLE); 1779 BOOL WINAPI DebugSetProcessKillOnExit(_In_ BOOL); 1780 #endif 1781 PVOID WINAPI DecodePointer(PVOID); 1782 PVOID WINAPI DecodeSystemPointer(PVOID); 1783 BOOL WINAPI DecryptFileA(_In_ LPCSTR, _Reserved_ DWORD); 1784 BOOL WINAPI DecryptFileW(_In_ LPCWSTR, _Reserved_ DWORD); 1785 BOOL WINAPI DefineDosDeviceA(_In_ DWORD, _In_ LPCSTR, _In_opt_ LPCSTR); 1786 BOOL WINAPI DefineDosDeviceW(DWORD,LPCWSTR,LPCWSTR); 1787 #define DefineHandleTable(w) ((w),TRUE) 1788 BOOL WINAPI DeleteAce(PACL,DWORD); 1789 ATOM WINAPI DeleteAtom(_In_ ATOM); 1790 void WINAPI DeleteCriticalSection(PCRITICAL_SECTION); 1791 void WINAPI DeleteFiber(_In_ PVOID); 1792 BOOL WINAPI DeleteFileA(LPCSTR); 1793 BOOL WINAPI DeleteFileW(LPCWSTR); 1794 #if (_WIN32_WINNT >= 0x0500) 1795 _Must_inspect_result_ BOOL WINAPI DeleteTimerQueue(_In_ HANDLE); 1796 BOOL WINAPI DeleteTimerQueueEx(HANDLE,HANDLE); 1797 BOOL WINAPI DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE); 1798 BOOL WINAPI DeleteVolumeMountPointA(_In_ LPCSTR); 1799 BOOL WINAPI DeleteVolumeMountPointW(LPCWSTR); 1800 #endif 1801 BOOL WINAPI DeregisterEventSource(_In_ HANDLE); 1802 BOOL WINAPI DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*); 1803 BOOL WINAPI DeviceIoControl(HANDLE,DWORD,PVOID,DWORD,PVOID,DWORD,PDWORD,POVERLAPPED); 1804 BOOL WINAPI DisableThreadLibraryCalls(HMODULE); 1805 1806 #if (_WIN32_WINNT >= 0x0500) 1807 1808 _Success_(return != FALSE) 1809 BOOL 1810 WINAPI 1811 DnsHostnameToComputerNameA( 1812 _In_ LPCSTR Hostname, 1813 _Out_writes_to_opt_(*nSize, *nSize + 1) LPSTR ComputerName, 1814 _Inout_ LPDWORD nSize); 1815 1816 _Success_(return != FALSE) 1817 BOOL 1818 WINAPI 1819 DnsHostnameToComputerNameW( 1820 _In_ LPCWSTR Hostname, 1821 _Out_writes_to_opt_(*nSize, *nSize + 1) LPWSTR ComputerName, 1822 _Inout_ LPDWORD nSize); 1823 1824 #endif 1825 1826 BOOL WINAPI DisconnectNamedPipe(HANDLE); 1827 BOOL WINAPI DosDateTimeToFileTime(_In_ WORD, _In_ WORD, _Out_ LPFILETIME); 1828 BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,PHANDLE,DWORD,BOOL,DWORD); 1829 BOOL WINAPI DuplicateToken(HANDLE,SECURITY_IMPERSONATION_LEVEL,PHANDLE); 1830 BOOL WINAPI DuplicateTokenEx(HANDLE,DWORD,LPSECURITY_ATTRIBUTES,SECURITY_IMPERSONATION_LEVEL,TOKEN_TYPE,PHANDLE); 1831 PVOID WINAPI EncodePointer(PVOID); 1832 PVOID WINAPI EncodeSystemPointer(PVOID); 1833 BOOL WINAPI EncryptFileA(_In_ LPCSTR); 1834 BOOL WINAPI EncryptFileW(_In_ LPCWSTR); 1835 BOOL WINAPI EndUpdateResourceA(_In_ HANDLE, _In_ BOOL); 1836 BOOL WINAPI EndUpdateResourceW(_In_ HANDLE, _In_ BOOL); 1837 void WINAPI EnterCriticalSection(LPCRITICAL_SECTION); 1838 BOOL WINAPI EnumResourceLanguagesA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ LPCSTR, _In_ ENUMRESLANGPROCA, _In_ LONG_PTR); 1839 BOOL WINAPI EnumResourceLanguagesW(_In_opt_ HMODULE, _In_ LPCWSTR, _In_ LPCWSTR, _In_ ENUMRESLANGPROCW, _In_ LONG_PTR); 1840 BOOL WINAPI EnumResourceNamesA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ ENUMRESNAMEPROCA, _In_ LONG_PTR); 1841 BOOL WINAPI EnumResourceNamesW(_In_opt_ HMODULE, _In_ LPCWSTR, _In_ ENUMRESNAMEPROCW, _In_ LONG_PTR); 1842 BOOL WINAPI EnumResourceTypesA(_In_opt_ HMODULE, _In_ ENUMRESTYPEPROCA, _In_ LONG_PTR); 1843 BOOL WINAPI EnumResourceTypesW(_In_opt_ HMODULE, _In_ ENUMRESTYPEPROCW, _In_ LONG_PTR); 1844 BOOL WINAPI EqualPrefixSid(PSID,PSID); 1845 BOOL WINAPI EqualSid(PSID,PSID); 1846 DWORD WINAPI EraseTape(_In_ HANDLE, _In_ DWORD, _In_ BOOL); 1847 BOOL WINAPI EscapeCommFunction(_In_ HANDLE, _In_ DWORD); 1848 DECLSPEC_NORETURN void WINAPI ExitProcess(UINT); 1849 DECLSPEC_NORETURN void WINAPI ExitThread(DWORD); 1850 DWORD WINAPI ExpandEnvironmentStringsA(LPCSTR,LPSTR,DWORD); 1851 DWORD WINAPI ExpandEnvironmentStringsW(LPCWSTR,LPWSTR,DWORD); 1852 void WINAPI FatalAppExitA(UINT,LPCSTR); 1853 void WINAPI FatalAppExitW(UINT,LPCWSTR); 1854 __analysis_noreturn void WINAPI FatalExit(_In_ int); 1855 BOOL WINAPI FileEncryptionStatusA(_In_ LPCSTR, _Out_ LPDWORD); 1856 BOOL WINAPI FileEncryptionStatusW(_In_ LPCWSTR, _Out_ LPDWORD); 1857 BOOL WINAPI FileTimeToDosDateTime(_In_ CONST FILETIME *, _Out_ LPWORD, _Out_ LPWORD); 1858 BOOL WINAPI FileTimeToLocalFileTime(CONST FILETIME *,LPFILETIME); 1859 BOOL WINAPI FileTimeToSystemTime(CONST FILETIME *,LPSYSTEMTIME); 1860 #if (_WIN32_WINNT >= 0x0501) 1861 BOOL WINAPI FindActCtxSectionGuid(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_opt_ const GUID*, _Out_ PACTCTX_SECTION_KEYED_DATA); 1862 BOOL WINAPI FindActCtxSectionStringA(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_ LPCSTR, _Out_ PACTCTX_SECTION_KEYED_DATA); 1863 BOOL WINAPI FindActCtxSectionStringW(_In_ DWORD, _Reserved_ const GUID*, _In_ ULONG, _In_ LPCWSTR, _Out_ PACTCTX_SECTION_KEYED_DATA); 1864 #endif 1865 ATOM WINAPI FindAtomA(_In_opt_ LPCSTR); 1866 ATOM WINAPI FindAtomW(_In_opt_ LPCWSTR); 1867 BOOL WINAPI FindClose(HANDLE); 1868 BOOL WINAPI FindCloseChangeNotification(HANDLE); 1869 HANDLE WINAPI FindFirstChangeNotificationA(LPCSTR,BOOL,DWORD); 1870 HANDLE WINAPI FindFirstChangeNotificationW(LPCWSTR,BOOL,DWORD); 1871 HANDLE WINAPI FindFirstFileA(LPCSTR,LPWIN32_FIND_DATAA); 1872 HANDLE WINAPI FindFirstFileW(LPCWSTR,LPWIN32_FIND_DATAW); 1873 HANDLE WINAPI FindFirstFileExA(LPCSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD); 1874 HANDLE WINAPI FindFirstFileExW(LPCWSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD); 1875 #if (_WIN32_WINNT >= 0x0501) 1876 HANDLE WINAPI FindFirstStreamW(_In_ LPCWSTR, _In_ STREAM_INFO_LEVELS, _Out_ LPVOID, _Reserved_ DWORD); 1877 #endif 1878 BOOL WINAPI FindFirstFreeAce(PACL,PVOID*); 1879 1880 #if (_WIN32_WINNT >= 0x0500) 1881 1882 HANDLE 1883 WINAPI 1884 FindFirstVolumeA( 1885 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName, 1886 _In_ DWORD cchBufferLength); 1887 1888 HANDLE WINAPI FindFirstVolumeW(LPWSTR,DWORD); 1889 1890 HANDLE 1891 WINAPI 1892 FindFirstVolumeMountPointA( 1893 _In_ LPCSTR lpszRootPathName, 1894 _Out_writes_(cchBufferLength) LPSTR lpszVolumeMountPoint, 1895 _In_ DWORD cchBufferLength); 1896 1897 HANDLE 1898 WINAPI 1899 FindFirstVolumeMountPointW( 1900 _In_ LPCWSTR lpszRootPathName, 1901 _Out_writes_(cchBufferLength) LPWSTR lpszVolumeMountPoint, 1902 _In_ DWORD cchBufferLength); 1903 1904 #endif 1905 1906 BOOL WINAPI FindNextChangeNotification(HANDLE); 1907 BOOL WINAPI FindNextFileA(HANDLE,LPWIN32_FIND_DATAA); 1908 BOOL WINAPI FindNextFileW(HANDLE,LPWIN32_FIND_DATAW); 1909 #if (_WIN32_WINNT >= 0x0501) 1910 BOOL WINAPI FindNextStreamW(_In_ HANDLE, _Out_ LPVOID); 1911 #endif 1912 1913 #if (_WIN32_WINNT >= 0x0500) 1914 1915 BOOL 1916 WINAPI 1917 FindNextVolumeA( 1918 _Inout_ HANDLE hFindVolume, 1919 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName, 1920 _In_ DWORD cchBufferLength); 1921 1922 BOOL WINAPI FindNextVolumeW(HANDLE,LPWSTR,DWORD); 1923 1924 BOOL 1925 WINAPI 1926 FindNextVolumeMountPointA( 1927 _In_ HANDLE hFindVolumeMountPoint, 1928 _Out_writes_(cchBufferLength) LPSTR lpszVolumeMountPoint, 1929 _In_ DWORD cchBufferLength); 1930 1931 BOOL 1932 WINAPI 1933 FindNextVolumeMountPointW( 1934 _In_ HANDLE hFindVolumeMountPoint, 1935 _Out_writes_(cchBufferLength) LPWSTR lpszVolumeMountPoint, 1936 _In_ DWORD cchBufferLength); 1937 1938 BOOL WINAPI FindVolumeClose(HANDLE); 1939 BOOL WINAPI FindVolumeMountPointClose(_In_ HANDLE); 1940 1941 #endif 1942 1943 _Ret_maybenull_ HRSRC WINAPI FindResourceA(_In_opt_ HMODULE,_In_ LPCSTR, _In_ LPCSTR); 1944 _Ret_maybenull_ HRSRC WINAPI FindResourceW(_In_opt_ HMODULE,_In_ LPCWSTR, _In_ LPCWSTR); 1945 _Ret_maybenull_ HRSRC WINAPI FindResourceExA(_In_opt_ HMODULE, _In_ LPCSTR, _In_ LPCSTR, _In_ WORD); 1946 HRSRC WINAPI FindResourceExW(HINSTANCE,LPCWSTR,LPCWSTR,WORD); 1947 #if (_WIN32_WINNT >= 0x0502) 1948 1949 DWORD 1950 WINAPI 1951 GetFirmwareEnvironmentVariableA( 1952 _In_ LPCSTR lpName, 1953 _In_ LPCSTR lpGuid, 1954 _Out_writes_bytes_to_opt_(nSize, return) PVOID pBuffer, 1955 _In_ DWORD nSize); 1956 1957 DWORD 1958 WINAPI 1959 GetFirmwareEnvironmentVariableW( 1960 _In_ LPCWSTR lpName, 1961 _In_ LPCWSTR lpGuid, 1962 _Out_writes_bytes_to_opt_(nSize, return) PVOID pBuffer, 1963 _In_ DWORD nSize); 1964 1965 #endif 1966 BOOL WINAPI FlushFileBuffers(HANDLE); 1967 BOOL WINAPI FlushInstructionCache(HANDLE,LPCVOID,SIZE_T); 1968 BOOL WINAPI FlushViewOfFile(LPCVOID,SIZE_T); 1969 DWORD WINAPI FlsAlloc(PFLS_CALLBACK_FUNCTION); 1970 PVOID WINAPI FlsGetValue(DWORD); 1971 BOOL WINAPI FlsSetValue(DWORD,PVOID); 1972 BOOL WINAPI FlsFree(DWORD); 1973 DWORD WINAPI FormatMessageA(DWORD,LPCVOID,DWORD,DWORD,LPSTR,DWORD,va_list*); 1974 DWORD WINAPI FormatMessageW(DWORD,LPCVOID,DWORD,DWORD,LPWSTR,DWORD,va_list*); 1975 BOOL WINAPI FreeEnvironmentStringsA(LPSTR); 1976 BOOL WINAPI FreeEnvironmentStringsW(LPWSTR); 1977 BOOL WINAPI FreeLibrary(HMODULE); 1978 DECLSPEC_NORETURN void WINAPI FreeLibraryAndExitThread(HMODULE,DWORD); 1979 #define FreeModule(m) FreeLibrary(m) 1980 #define FreeProcInstance(p) (void)(p) 1981 #ifndef XFree86Server 1982 BOOL WINAPI FreeResource(HGLOBAL); 1983 #endif /* ndef XFree86Server */ 1984 PVOID WINAPI FreeSid(PSID); 1985 BOOL WINAPI GetAce(PACL,DWORD,LPVOID*); 1986 BOOL WINAPI GetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS); 1987 #if (_WIN32_WINNT >= 0x0600) 1988 HRESULT WINAPI GetApplicationRecoveryCallback(_In_ HANDLE, _Out_ APPLICATION_RECOVERY_CALLBACK*, _Outptr_opt_result_maybenull_ PVOID*, _Out_opt_ DWORD*, _Out_opt_ DWORD*); 1989 HRESULT WINAPI GetApplicationRestart(HANDLE,PWSTR,PDWORD,PDWORD); 1990 #endif 1991 1992 UINT 1993 WINAPI 1994 GetAtomNameA( 1995 _In_ ATOM nAtom, 1996 _Out_writes_to_(nSize, return + 1) LPSTR lpBuffer, 1997 _In_ int nSize); 1998 1999 UINT 2000 WINAPI 2001 GetAtomNameW( 2002 _In_ ATOM nAtom, 2003 _Out_writes_to_(nSize, return + 1) LPWSTR lpBuffer, 2004 _In_ int nSize); 2005 2006 BOOL WINAPI GetBinaryTypeA(_In_ LPCSTR, _Out_ PDWORD); 2007 BOOL WINAPI GetBinaryTypeW(_In_ LPCWSTR, _Out_ PDWORD); 2008 LPSTR WINAPI GetCommandLineA(VOID); 2009 LPWSTR WINAPI GetCommandLineW(VOID); 2010 2011 _Success_(return != FALSE) 2012 BOOL 2013 WINAPI 2014 GetCommConfig( 2015 _In_ HANDLE hCommDev, 2016 _Out_writes_bytes_opt_(*lpdwSize) LPCOMMCONFIG lpCC, 2017 _Inout_ LPDWORD lpdwSize); 2018 2019 BOOL WINAPI GetCommMask(_In_ HANDLE, _Out_ PDWORD); 2020 BOOL WINAPI GetCommModemStatus(_In_ HANDLE, _Out_ PDWORD); 2021 BOOL WINAPI GetCommProperties(_In_ HANDLE, _Inout_ LPCOMMPROP); 2022 BOOL WINAPI GetCommState(_In_ HANDLE, _Out_ LPDCB); 2023 BOOL WINAPI GetCommTimeouts(_In_ HANDLE, _Out_ LPCOMMTIMEOUTS); 2024 DWORD WINAPI GetCompressedFileSizeA(_In_ LPCSTR, _Out_opt_ PDWORD); 2025 DWORD WINAPI GetCompressedFileSizeW(_In_ LPCWSTR, _Out_opt_ PDWORD); 2026 2027 _Success_(return != 0) 2028 BOOL 2029 WINAPI 2030 GetComputerNameA( 2031 _Out_writes_to_opt_(*nSize, *nSize + 1) LPSTR lpBuffer, 2032 _Inout_ LPDWORD nSize); 2033 2034 _Success_(return != 0) 2035 BOOL 2036 WINAPI 2037 GetComputerNameW( 2038 _Out_writes_to_opt_(*nSize, *nSize + 1) LPWSTR lpBuffer, 2039 _Inout_ LPDWORD nSize); 2040 2041 #if (_WIN32_WINNT >= 0x0500) 2042 BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD); 2043 BOOL WINAPI GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD); 2044 #endif 2045 #if (_WIN32_WINNT >= 0x0501) 2046 BOOL WINAPI GetCurrentActCtx( _Outptr_ HANDLE*); 2047 #endif 2048 DWORD WINAPI GetCurrentDirectoryA(DWORD,LPSTR); 2049 DWORD WINAPI GetCurrentDirectoryW(DWORD,LPWSTR); 2050 BOOL WINAPI GetCurrentHwProfileA(_Out_ LPHW_PROFILE_INFOA); 2051 BOOL WINAPI GetCurrentHwProfileW(_Out_ LPHW_PROFILE_INFOW); 2052 HANDLE WINAPI GetCurrentProcess(void); 2053 DWORD WINAPI GetCurrentProcessId(void); 2054 HANDLE WINAPI GetCurrentThread(void); 2055 DWORD WINAPI GetCurrentThreadId(void); 2056 #define GetCurrentTime GetTickCount 2057 2058 BOOL 2059 WINAPI 2060 GetDefaultCommConfigA( 2061 _In_ LPCSTR lpszName, 2062 _Out_writes_bytes_to_(*lpdwSize, *lpdwSize) LPCOMMCONFIG lpCC, 2063 _Inout_ LPDWORD lpdwSize); 2064 2065 BOOL 2066 WINAPI 2067 GetDefaultCommConfigW( 2068 _In_ LPCWSTR lpszName, 2069 _Out_writes_bytes_to_(*lpdwSize, *lpdwSize) LPCOMMCONFIG lpCC, 2070 _Inout_ LPDWORD lpdwSize); 2071 2072 BOOL WINAPI GetDiskFreeSpaceA(LPCSTR,PDWORD,PDWORD,PDWORD,PDWORD); 2073 BOOL WINAPI GetDiskFreeSpaceW(LPCWSTR,PDWORD,PDWORD,PDWORD,PDWORD); 2074 BOOL WINAPI GetDiskFreeSpaceExA(LPCSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER); 2075 BOOL WINAPI GetDiskFreeSpaceExW(LPCWSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER); 2076 2077 #if (_WIN32_WINNT >= 0x0502) 2078 2079 _Success_(return != 0 && return < nBufferLength) 2080 DWORD 2081 WINAPI 2082 GetDllDirectoryA( 2083 _In_ DWORD nBufferLength, 2084 _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer); 2085 2086 _Success_(return != 0 && return < nBufferLength) 2087 DWORD 2088 WINAPI 2089 GetDllDirectoryW( 2090 _In_ DWORD nBufferLength, 2091 _Out_writes_to_opt_(nBufferLength, return + 1) LPWSTR lpBuffer); 2092 2093 #endif 2094 2095 UINT WINAPI GetDriveTypeA(LPCSTR); 2096 UINT WINAPI GetDriveTypeW(LPCWSTR); 2097 LPSTR WINAPI GetEnvironmentStrings(void); 2098 LPWSTR WINAPI GetEnvironmentStringsW(void); 2099 DWORD WINAPI GetEnvironmentVariableA(LPCSTR,LPSTR,DWORD); 2100 DWORD WINAPI GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD); 2101 BOOL WINAPI GetExitCodeProcess(HANDLE,PDWORD); 2102 BOOL WINAPI GetExitCodeThread(HANDLE,PDWORD); 2103 DWORD WINAPI GetFileAttributesA(LPCSTR); 2104 #if (_WIN32_WINNT >= 0x0600) 2105 BOOL WINAPI GetFileAttributesByHandle(HANDLE,LPDWORD,DWORD); 2106 DWORD WINAPI GetFinalPathNameByHandleA(HANDLE,LPSTR,DWORD,DWORD); 2107 DWORD WINAPI GetFinalPathNameByHandleW(HANDLE,LPWSTR,DWORD,DWORD); 2108 #endif 2109 DWORD WINAPI GetFileAttributesW(LPCWSTR); 2110 BOOL WINAPI GetFileAttributesExA(LPCSTR,GET_FILEEX_INFO_LEVELS,PVOID); 2111 BOOL WINAPI GetFileAttributesExW(LPCWSTR,GET_FILEEX_INFO_LEVELS,PVOID); 2112 #if (_WIN32_WINNT >= 0x0600) 2113 BOOL WINAPI GetFileBandwidthReservation(_In_ HANDLE, _Out_ LPDWORD, _Out_ LPDWORD, _Out_ LPBOOL, _Out_ LPDWORD, _Out_ LPDWORD); 2114 #endif 2115 BOOL WINAPI GetFileInformationByHandle(HANDLE,LPBY_HANDLE_FILE_INFORMATION); 2116 2117 #if (_WIN32_WINNT >= 0x0600) 2118 BOOL 2119 WINAPI 2120 GetFileInformationByHandleEx( 2121 _In_ HANDLE hFile, 2122 _In_ FILE_INFO_BY_HANDLE_CLASS FileInformationClass, 2123 _Out_writes_bytes_(dwBufferSize) LPVOID lpFileInformation, 2124 _In_ DWORD dwBufferSize); 2125 #endif 2126 2127 BOOL 2128 WINAPI 2129 GetFileSecurityA( 2130 _In_ LPCSTR lpFileName, 2131 _In_ SECURITY_INFORMATION RequestedInformation, 2132 _Out_writes_bytes_to_opt_(nLength, *lpnLengthNeeded) PSECURITY_DESCRIPTOR pSecurityDescriptor, 2133 _In_ DWORD nLength, 2134 _Out_ LPDWORD lpnLengthNeeded); 2135 2136 BOOL WINAPI GetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 2137 DWORD WINAPI GetFileSize(HANDLE,PDWORD); 2138 BOOL WINAPI GetFileSizeEx(HANDLE,PLARGE_INTEGER); 2139 BOOL WINAPI GetFileTime(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME); 2140 DWORD WINAPI GetFileType(HANDLE); 2141 #define GetFreeSpace(w) (0x100000L) 2142 DWORD WINAPI GetFullPathNameA(LPCSTR,DWORD,LPSTR,LPSTR*); 2143 DWORD WINAPI GetFullPathNameW(LPCWSTR,DWORD,LPWSTR,LPWSTR*); 2144 BOOL WINAPI GetHandleInformation(HANDLE,PDWORD); 2145 BOOL WINAPI GetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 2146 DWORD WINAPI GetLastError(void); 2147 DWORD WINAPI GetLengthSid(PSID); 2148 void WINAPI GetLocalTime(LPSYSTEMTIME); 2149 DWORD WINAPI GetLogicalDrives(void); 2150 2151 _Success_(return != 0 && return <= nBufferLength) 2152 DWORD 2153 WINAPI 2154 GetLogicalDriveStringsA( 2155 _In_ DWORD nBufferLength, 2156 _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer); 2157 2158 DWORD WINAPI GetLogicalDriveStringsW(DWORD,LPWSTR); 2159 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) 2160 DWORD WINAPI GetLongPathNameA(LPCSTR,LPSTR,DWORD); 2161 DWORD WINAPI GetLongPathNameW(LPCWSTR,LPWSTR,DWORD); 2162 #endif 2163 BOOL WINAPI GetMailslotInfo(_In_ HANDLE, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD); 2164 DWORD WINAPI GetModuleFileNameA(HINSTANCE,LPSTR,DWORD); 2165 DWORD WINAPI GetModuleFileNameW(HINSTANCE,LPWSTR,DWORD); 2166 HMODULE WINAPI GetModuleHandleA(LPCSTR); 2167 HMODULE WINAPI GetModuleHandleW(LPCWSTR); 2168 #if (_WIN32_WINNT >= 0x0500) 2169 BOOL WINAPI GetModuleHandleExA(DWORD,LPCSTR,HMODULE*); 2170 BOOL WINAPI GetModuleHandleExW(DWORD,LPCWSTR,HMODULE*); 2171 #endif 2172 2173 #if _WIN32_WINNT >= 0x0502 2174 WINBASEAPI WINBOOL WINAPI NeedCurrentDirectoryForExePathA(LPCSTR ExeName); 2175 WINBASEAPI WINBOOL WINAPI NeedCurrentDirectoryForExePathW(LPCWSTR ExeName); 2176 #endif 2177 2178 BOOL 2179 WINAPI 2180 GetNamedPipeHandleStateA( 2181 _In_ HANDLE hNamedPipe, 2182 _Out_opt_ LPDWORD lpState, 2183 _Out_opt_ LPDWORD lpCurInstances, 2184 _Out_opt_ LPDWORD lpMaxCollectionCount, 2185 _Out_opt_ LPDWORD lpCollectDataTimeout, 2186 _Out_writes_opt_(nMaxUserNameSize) LPSTR lpUserName, 2187 _In_ DWORD nMaxUserNameSize); 2188 2189 BOOL 2190 WINAPI 2191 GetNamedPipeHandleStateW( 2192 _In_ HANDLE hNamedPipe, 2193 _Out_opt_ LPDWORD lpState, 2194 _Out_opt_ LPDWORD lpCurInstances, 2195 _Out_opt_ LPDWORD lpMaxCollectionCount, 2196 _Out_opt_ LPDWORD lpCollectDataTimeout, 2197 _Out_writes_opt_(nMaxUserNameSize) LPWSTR lpUserName, 2198 _In_ DWORD nMaxUserNameSize); 2199 2200 BOOL WINAPI GetNamedPipeInfo(_In_ HANDLE, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD, _Out_opt_ PDWORD); 2201 #if (_WIN32_WINNT >= 0x0501) 2202 VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO); 2203 #endif 2204 2205 BOOL 2206 WINAPI 2207 GetEventLogInformation( 2208 _In_ HANDLE hEventLog, 2209 _In_ DWORD dwInfoLevel, 2210 _Out_writes_bytes_to_(cbBufSize, *pcbBytesNeeded) LPVOID lpBuffer, 2211 _In_ DWORD cbBufSize, 2212 _Out_ LPDWORD pcbBytesNeeded); 2213 2214 BOOL WINAPI GetNumberOfEventLogRecords(_In_ HANDLE, _Out_ PDWORD); 2215 BOOL WINAPI GetOldestEventLogRecord(_In_ HANDLE, _Out_ PDWORD); 2216 BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL); 2217 DWORD WINAPI GetPriorityClass(HANDLE); 2218 BOOL WINAPI GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); 2219 UINT WINAPI GetPrivateProfileIntA(_In_ LPCSTR, _In_ LPCSTR, _In_ INT, _In_opt_ LPCSTR); 2220 UINT WINAPI GetPrivateProfileIntW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ INT, _In_opt_ LPCWSTR); 2221 2222 DWORD 2223 WINAPI 2224 GetPrivateProfileSectionA( 2225 _In_ LPCSTR lpAppName, 2226 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString, 2227 _In_ DWORD nSize, 2228 _In_opt_ LPCSTR lpFileName); 2229 2230 DWORD 2231 WINAPI 2232 GetPrivateProfileSectionW( 2233 _In_ LPCWSTR lpAppName, 2234 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, 2235 _In_ DWORD nSize, 2236 _In_opt_ LPCWSTR lpFileName); 2237 2238 DWORD 2239 WINAPI 2240 GetPrivateProfileSectionNamesA( 2241 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpszReturnBuffer, 2242 _In_ DWORD nSize, 2243 _In_opt_ LPCSTR lpFileName); 2244 2245 DWORD 2246 WINAPI 2247 GetPrivateProfileSectionNamesW( 2248 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpszReturnBuffer, 2249 _In_ DWORD nSize, 2250 _In_opt_ LPCWSTR lpFileName); 2251 2252 DWORD 2253 WINAPI 2254 GetPrivateProfileStringA( 2255 _In_opt_ LPCSTR lpAppName, 2256 _In_opt_ LPCSTR lpKeyName, 2257 _In_opt_ LPCSTR lpDefault, 2258 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString, 2259 _In_ DWORD nSize, 2260 _In_opt_ LPCSTR lpFileName); 2261 2262 DWORD 2263 WINAPI 2264 GetPrivateProfileStringW( 2265 _In_opt_ LPCWSTR lpAppName, 2266 _In_opt_ LPCWSTR lpKeyName, 2267 _In_opt_ LPCWSTR lpDefault, 2268 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, 2269 _In_ DWORD nSize, 2270 _In_opt_ LPCWSTR lpFileName); 2271 2272 BOOL 2273 WINAPI 2274 GetPrivateProfileStructA( 2275 _In_ LPCSTR lpszSection, 2276 _In_ LPCSTR lpszKey, 2277 _Out_writes_bytes_opt_(uSizeStruct) LPVOID lpStruct, 2278 _In_ UINT uSizeStruct, 2279 _In_opt_ LPCSTR szFile); 2280 2281 BOOL 2282 WINAPI 2283 GetPrivateProfileStructW( 2284 _In_ LPCWSTR lpszSection, 2285 _In_ LPCWSTR lpszKey, 2286 _Out_writes_bytes_opt_(uSizeStruct) LPVOID lpStruct, 2287 _In_ UINT uSizeStruct, 2288 _In_opt_ LPCWSTR szFile); 2289 2290 FARPROC WINAPI GetProcAddress(HINSTANCE,LPCSTR); 2291 BOOL WINAPI GetProcessAffinityMask(_In_ HANDLE, _Out_ PDWORD_PTR, _Out_ PDWORD_PTR); 2292 #if (_WIN32_WINNT >= 0x0502) 2293 BOOL WINAPI GetProcessHandleCount(_In_ HANDLE, _Out_ PDWORD); 2294 #endif 2295 HANDLE WINAPI GetProcessHeap(VOID); 2296 DWORD WINAPI GetProcessHeaps(DWORD,PHANDLE); 2297 #if (_WIN32_WINNT >= 0x0502) 2298 DWORD WINAPI GetProcessId(HANDLE); 2299 DWORD WINAPI GetProcessIdOfThread(HANDLE); 2300 #endif 2301 #if (_WIN32_WINNT >= 0x0500) 2302 BOOL WINAPI GetProcessIoCounters(_In_ HANDLE, _Out_ PIO_COUNTERS); 2303 #endif 2304 BOOL WINAPI GetProcessPriorityBoost(_In_ HANDLE, _Out_ PBOOL); 2305 BOOL WINAPI GetProcessShutdownParameters(_Out_ PDWORD, _Out_ PDWORD); 2306 BOOL WINAPI GetProcessTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME); 2307 DWORD WINAPI GetProcessVersion(DWORD); 2308 HWINSTA WINAPI GetProcessWindowStation(void); 2309 BOOL WINAPI GetProcessWorkingSetSize(_In_ HANDLE, _Out_ PSIZE_T, _Out_ PSIZE_T); 2310 UINT WINAPI GetProfileIntA(_In_ LPCSTR, _In_ LPCSTR, _In_ INT); 2311 UINT WINAPI GetProfileIntW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ INT); 2312 2313 DWORD 2314 WINAPI 2315 GetProfileSectionA( 2316 _In_ LPCSTR lpAppName, 2317 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString, 2318 _In_ DWORD nSize); 2319 2320 DWORD 2321 WINAPI 2322 GetProfileSectionW( 2323 _In_ LPCWSTR lpAppName, 2324 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, 2325 _In_ DWORD nSize); 2326 2327 DWORD 2328 WINAPI 2329 GetProfileStringA( 2330 _In_opt_ LPCSTR lpAppName, 2331 _In_opt_ LPCSTR lpKeyName, 2332 _In_opt_ LPCSTR lpDefault, 2333 _Out_writes_to_opt_(nSize, return + 1) LPSTR lpReturnedString, 2334 _In_ DWORD nSize); 2335 2336 DWORD 2337 WINAPI 2338 GetProfileStringW( 2339 _In_opt_ LPCWSTR lpAppName, 2340 _In_opt_ LPCWSTR lpKeyName, 2341 _In_opt_ LPCWSTR lpDefault, 2342 _Out_writes_to_opt_(nSize, return + 1) LPWSTR lpReturnedString, 2343 _In_ DWORD nSize); 2344 2345 BOOL WINAPI GetQueuedCompletionStatus(HANDLE,PDWORD,PULONG_PTR,LPOVERLAPPED*,DWORD); 2346 BOOL WINAPI GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR_CONTROL,PDWORD); 2347 BOOL WINAPI GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); 2348 BOOL WINAPI GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); 2349 DWORD WINAPI GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR); 2350 BOOL WINAPI GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); 2351 DWORD WINAPI GetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR,PUCHAR); 2352 BOOL WINAPI GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); 2353 2354 _Success_(return != 0 && return < cchBuffer) 2355 DWORD 2356 WINAPI 2357 GetShortPathNameA( 2358 _In_ LPCSTR lpszLongPath, 2359 _Out_writes_to_opt_(cchBuffer, return + 1) LPSTR lpszShortPath, 2360 _In_ DWORD cchBuffer); 2361 2362 DWORD WINAPI GetShortPathNameW(LPCWSTR,LPWSTR,DWORD); 2363 PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(PSID); 2364 DWORD WINAPI GetSidLengthRequired(UCHAR); 2365 PDWORD WINAPI GetSidSubAuthority(PSID,DWORD); 2366 PUCHAR WINAPI GetSidSubAuthorityCount(PSID); 2367 VOID WINAPI GetStartupInfoA(_Out_ LPSTARTUPINFOA); 2368 VOID WINAPI GetStartupInfoW(LPSTARTUPINFOW); 2369 HANDLE WINAPI GetStdHandle(_In_ DWORD); 2370 UINT WINAPI GetSystemDirectoryA(LPSTR,UINT); 2371 UINT WINAPI GetSystemDirectoryW(LPWSTR,UINT); 2372 2373 WINBASEAPI 2374 UINT 2375 WINAPI 2376 GetSystemFirmwareTable( 2377 _In_ DWORD FirmwareTableProviderSignature, 2378 _In_ DWORD FirmwareTableID, 2379 _Out_writes_bytes_to_opt_(BufferSize,return) PVOID pFirmwareTableBuffer, 2380 _In_ DWORD BufferSize); 2381 2382 VOID WINAPI GetSystemInfo(LPSYSTEM_INFO); 2383 BOOL WINAPI GetSystemPowerStatus(_Out_ LPSYSTEM_POWER_STATUS); 2384 #if (_WIN32_WINNT >= 0x0502) 2385 BOOL WINAPI GetSystemRegistryQuota(_Out_opt_ PDWORD, _Out_opt_ PDWORD); 2386 #endif 2387 VOID WINAPI GetSystemTime(LPSYSTEMTIME); 2388 #if (_WIN32_WINNT >= 0x0501) 2389 BOOL WINAPI GetSystemTimes(_Out_opt_ LPFILETIME, _Out_opt_ LPFILETIME, _Out_opt_ LPFILETIME); 2390 #endif 2391 BOOL WINAPI GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL); 2392 void WINAPI GetSystemTimeAsFileTime(LPFILETIME); 2393 #if (_WIN32_WINNT >= 0x0500) 2394 UINT WINAPI GetSystemWindowsDirectoryA(LPSTR,UINT); 2395 UINT WINAPI GetSystemWindowsDirectoryW(LPWSTR,UINT); 2396 #endif 2397 2398 #if (_WIN32_WINNT >= 0x0501) 2399 2400 _Success_(return != 0 && return < uSize) 2401 UINT 2402 WINAPI 2403 GetSystemWow64DirectoryA( 2404 _Out_writes_to_opt_(uSize, return + 1) LPSTR lpBuffer, 2405 _In_ UINT uSize); 2406 2407 _Success_(return != 0 && return < uSize) 2408 UINT 2409 WINAPI 2410 GetSystemWow64DirectoryW( 2411 _Out_writes_to_opt_(uSize, return + 1) LPWSTR lpBuffer, 2412 _In_ UINT uSize); 2413 2414 #endif 2415 2416 DWORD 2417 WINAPI 2418 GetTapeParameters( 2419 _In_ HANDLE hDevice, 2420 _In_ DWORD dwOperation, 2421 _Inout_ LPDWORD lpdwSize, 2422 _Out_writes_bytes_(*lpdwSize) LPVOID lpTapeInformation); 2423 2424 DWORD WINAPI GetTapePosition(_In_ HANDLE, _In_ DWORD, _Out_ PDWORD, _Out_ PDWORD, _Out_ PDWORD); 2425 DWORD WINAPI GetTapeStatus(_In_ HANDLE); 2426 2427 UINT 2428 WINAPI 2429 GetTempFileNameA( 2430 _In_ LPCSTR lpPathName, 2431 _In_ LPCSTR lpPrefixString, 2432 _In_ UINT uUnique, 2433 _Out_writes_(MAX_PATH) LPSTR lpTempFileName); 2434 2435 UINT WINAPI GetTempFileNameW(LPCWSTR,LPCWSTR,UINT,LPWSTR); 2436 2437 DWORD 2438 WINAPI 2439 GetTempPathA( 2440 _In_ DWORD nBufferLength, 2441 _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer); 2442 2443 DWORD WINAPI GetTempPathW(DWORD,LPWSTR); 2444 BOOL WINAPI GetThreadContext(HANDLE,LPCONTEXT); 2445 #if (_WIN32_WINNT >= 0x0502) 2446 BOOL WINAPI GetThreadIOPendingFlag(_In_ HANDLE, _Out_ PBOOL); 2447 #endif 2448 int WINAPI GetThreadPriority(HANDLE); 2449 BOOL WINAPI GetThreadPriorityBoost(HANDLE,PBOOL); 2450 BOOL WINAPI GetThreadSelectorEntry(_In_ HANDLE, _In_ DWORD, _Out_ LPLDT_ENTRY); 2451 BOOL WINAPI GetThreadTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME); 2452 DWORD WINAPI GetTickCount(VOID); 2453 #if (_WIN32_WINNT >= 0x0600) 2454 ULONGLONG WINAPI GetTickCount64(VOID); 2455 #endif 2456 DWORD WINAPI GetThreadId(HANDLE); 2457 DWORD WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION); 2458 BOOL WINAPI GetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD,PDWORD); 2459 2460 BOOL 2461 WINAPI 2462 GetUserNameA( 2463 _Out_writes_to_opt_(*pcbBuffer, *pcbBuffer) LPSTR lpBuffer, 2464 _Inout_ LPDWORD pcbBuffer); 2465 2466 BOOL 2467 WINAPI 2468 GetUserNameW( 2469 _Out_writes_to_opt_(*pcbBuffer, *pcbBuffer) LPWSTR lpBuffer, 2470 _Inout_ LPDWORD pcbBuffer); 2471 2472 DWORD WINAPI GetVersion(void); 2473 BOOL WINAPI GetVersionExA(LPOSVERSIONINFOA); 2474 BOOL WINAPI GetVersionExW(LPOSVERSIONINFOW); 2475 2476 BOOL 2477 WINAPI 2478 GetVolumeInformationA( 2479 _In_opt_ LPCSTR lpRootPathName, 2480 _Out_writes_opt_(nVolumeNameSize) LPSTR lpVolumeNameBuffer, 2481 _In_ DWORD nVolumeNameSize, 2482 _Out_opt_ LPDWORD lpVolumeSerialNumber, 2483 _Out_opt_ LPDWORD lpMaximumComponentLength, 2484 _Out_opt_ LPDWORD lpFileSystemFlags, 2485 _Out_writes_opt_(nFileSystemNameSize) LPSTR lpFileSystemNameBuffer, 2486 _In_ DWORD nFileSystemNameSize); 2487 2488 BOOL WINAPI GetVolumeInformationW(LPCWSTR,LPWSTR,DWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD); 2489 2490 #if (_WIN32_WINNT >= 0x0500) 2491 2492 BOOL 2493 WINAPI 2494 GetVolumeNameForVolumeMountPointA( 2495 _In_ LPCSTR lpszVolumeMountPoint, 2496 _Out_writes_(cchBufferLength) LPSTR lpszVolumeName, 2497 _In_ DWORD cchBufferLength); 2498 2499 BOOL WINAPI GetVolumeNameForVolumeMountPointW(LPCWSTR,LPWSTR,DWORD); 2500 2501 BOOL 2502 WINAPI 2503 GetVolumePathNameA( 2504 _In_ LPCSTR lpszFileName, 2505 _Out_writes_(cchBufferLength) LPSTR lpszVolumePathName, 2506 _In_ DWORD cchBufferLength); 2507 2508 BOOL WINAPI GetVolumePathNameW(LPCWSTR,LPWSTR,DWORD); 2509 2510 #endif 2511 2512 #if (_WIN32_WINNT >= 0x0501) 2513 2514 BOOL 2515 WINAPI 2516 GetVolumePathNamesForVolumeNameA( 2517 _In_ LPCSTR lpszVolumeName, 2518 _Out_writes_to_opt_(cchBufferLength, *lpcchReturnLength) _Post_ _NullNull_terminated_ LPCH lpszVolumePathNames, 2519 _In_ DWORD cchBufferLength, 2520 _Out_ PDWORD lpcchReturnLength); 2521 2522 BOOL WINAPI GetVolumePathNamesForVolumeNameW(LPCWSTR,LPWSTR,DWORD,PDWORD); 2523 2524 #endif 2525 2526 UINT WINAPI GetWindowsDirectoryA(LPSTR,UINT); 2527 UINT WINAPI GetWindowsDirectoryW(LPWSTR,UINT); 2528 DWORD WINAPI GetWindowThreadProcessId(HWND,PDWORD); 2529 UINT WINAPI GetWriteWatch(DWORD,PVOID,SIZE_T,PVOID*,PULONG_PTR,PULONG); 2530 ATOM WINAPI GlobalAddAtomA(_In_opt_ LPCSTR); 2531 ATOM WINAPI GlobalAddAtomW(_In_opt_ LPCWSTR); 2532 HGLOBAL WINAPI GlobalAlloc(UINT,SIZE_T); 2533 SIZE_T WINAPI GlobalCompact(_In_ DWORD); /* Obsolete: Has no effect. */ 2534 ATOM WINAPI GlobalDeleteAtom(_In_ ATOM); 2535 #define GlobalDiscard(m) GlobalReAlloc((m),0,GMEM_MOVEABLE) 2536 ATOM WINAPI GlobalFindAtomA(_In_opt_ LPCSTR); 2537 ATOM WINAPI GlobalFindAtomW(_In_opt_ LPCWSTR); 2538 VOID WINAPI GlobalFix(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2539 UINT WINAPI GlobalFlags(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2540 HGLOBAL WINAPI GlobalFree(HGLOBAL); 2541 2542 UINT 2543 WINAPI 2544 GlobalGetAtomNameA( 2545 _In_ ATOM nAtom, 2546 _Out_writes_to_(nSize, return + 1) LPSTR lpBuffer, 2547 _In_ int nSize); 2548 2549 UINT 2550 WINAPI 2551 GlobalGetAtomNameW( 2552 _In_ ATOM nAtom, 2553 _Out_writes_to_(nSize, return + 1) LPWSTR lpBuffer, 2554 _In_ int nSize); 2555 2556 _Ret_maybenull_ HGLOBAL WINAPI GlobalHandle(_In_ LPCVOID); 2557 _Ret_maybenull_ LPVOID WINAPI GlobalLock(_In_ HGLOBAL); 2558 VOID WINAPI GlobalMemoryStatus(_Out_ LPMEMORYSTATUS); 2559 #if (_WIN32_WINNT >= 0x0500) 2560 BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX); 2561 #endif 2562 HGLOBAL WINAPI GlobalReAlloc(HGLOBAL,SIZE_T,UINT); 2563 SIZE_T WINAPI GlobalSize(_In_ HGLOBAL); 2564 VOID WINAPI GlobalUnfix(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2565 BOOL WINAPI GlobalUnlock(_In_ HGLOBAL); 2566 BOOL WINAPI GlobalUnWire(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2567 PVOID WINAPI GlobalWire(_In_ HGLOBAL); /* Obsolete: Has no effect. */ 2568 #define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING) 2569 PVOID WINAPI HeapAlloc(HANDLE,DWORD,SIZE_T); 2570 SIZE_T WINAPI HeapCompact(HANDLE,DWORD); 2571 HANDLE WINAPI HeapCreate(DWORD,SIZE_T,SIZE_T); 2572 BOOL WINAPI HeapDestroy(HANDLE); 2573 BOOL WINAPI HeapFree(HANDLE,DWORD,PVOID); 2574 BOOL WINAPI HeapLock(HANDLE); 2575 #if (_WIN32_WINNT >= 0x0501) 2576 BOOL WINAPI HeapQueryInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T,PSIZE_T); 2577 #endif 2578 PVOID WINAPI HeapReAlloc(HANDLE,DWORD,PVOID,SIZE_T); 2579 #if (_WIN32_WINNT >= 0x0501) 2580 BOOL WINAPI HeapSetInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T); 2581 #endif 2582 SIZE_T WINAPI HeapSize(HANDLE,DWORD,LPCVOID); 2583 BOOL WINAPI HeapUnlock(HANDLE); 2584 BOOL WINAPI HeapValidate(HANDLE,DWORD,LPCVOID); 2585 BOOL WINAPI HeapWalk(HANDLE,LPPROCESS_HEAP_ENTRY); 2586 BOOL WINAPI ImpersonateAnonymousToken(HANDLE); 2587 BOOL WINAPI ImpersonateLoggedOnUser(HANDLE); 2588 BOOL WINAPI ImpersonateNamedPipeClient(HANDLE); 2589 BOOL WINAPI ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL); 2590 BOOL WINAPI InitAtomTable(_In_ DWORD); 2591 BOOL WINAPI InitializeAcl(PACL,DWORD,DWORD); 2592 #if (_WIN32_WINNT >= 0x0600) 2593 VOID WINAPI InitializeConditionVariable(PCONDITION_VARIABLE); 2594 #endif 2595 VOID WINAPI InitializeCriticalSection(LPCRITICAL_SECTION); 2596 BOOL WINAPI InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION,DWORD); 2597 DWORD WINAPI SetCriticalSectionSpinCount(LPCRITICAL_SECTION,DWORD); 2598 BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR,DWORD); 2599 BOOL WINAPI InitializeSid (PSID,PSID_IDENTIFIER_AUTHORITY,BYTE); 2600 2601 #if (_WIN32_WINNT >= 0x0600) 2602 VOID WINAPI InitializeSRWLock(PSRWLOCK); 2603 #endif 2604 2605 BOOL WINAPI IsBadCodePtr(_In_opt_ FARPROC); 2606 BOOL WINAPI IsBadHugeReadPtr(_In_opt_ CONST VOID*, _In_ UINT_PTR); 2607 BOOL WINAPI IsBadHugeWritePtr(_In_opt_ PVOID, _In_ UINT_PTR); 2608 BOOL WINAPI IsBadReadPtr(_In_opt_ CONST VOID*, _In_ UINT_PTR); 2609 BOOL WINAPI IsBadStringPtrA(_In_opt_ LPCSTR, _In_ UINT_PTR); 2610 BOOL WINAPI IsBadStringPtrW(_In_opt_ LPCWSTR, _In_ UINT_PTR); 2611 BOOL WINAPI IsBadWritePtr(_In_opt_ PVOID, _In_ UINT_PTR); 2612 BOOL WINAPI IsDebuggerPresent(void); 2613 #if (_WIN32_WINNT >= 0x0501) 2614 BOOL WINAPI IsProcessInJob(HANDLE,HANDLE,PBOOL); 2615 #endif 2616 BOOL WINAPI IsProcessorFeaturePresent(DWORD); 2617 BOOL WINAPI IsSystemResumeAutomatic(void); 2618 2619 BOOL 2620 WINAPI 2621 IsTextUnicode( 2622 _In_reads_bytes_(iSize) CONST VOID *lpv, 2623 _In_ int iSize, 2624 _Inout_opt_ LPINT lpiResult); 2625 2626 #if (_WIN32_WINNT >= 0x0600) 2627 BOOL WINAPI IsThreadAFiber(VOID); 2628 #endif 2629 BOOL WINAPI IsValidAcl(PACL); 2630 BOOL WINAPI IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR); 2631 BOOL WINAPI IsValidSid(PSID); 2632 #if (_WIN32_WINNT >= 0x0501) 2633 BOOL WINAPI IsWellKnownSid(PSID,WELL_KNOWN_SID_TYPE); 2634 BOOL WINAPI IsWow64Process(HANDLE,PBOOL); 2635 #endif 2636 void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION); 2637 #define LimitEmsPages(n) 2638 _Ret_maybenull_ HINSTANCE WINAPI LoadLibraryA(_In_ LPCSTR); 2639 _Ret_maybenull_ HINSTANCE WINAPI LoadLibraryW(_In_ LPCWSTR); 2640 HINSTANCE WINAPI LoadLibraryExA(LPCSTR,HANDLE,DWORD); 2641 HINSTANCE WINAPI LoadLibraryExW(LPCWSTR,HANDLE,DWORD); 2642 DWORD WINAPI LoadModule(_In_ LPCSTR, _In_ PVOID); 2643 HGLOBAL WINAPI LoadResource(HINSTANCE,HRSRC); 2644 HLOCAL WINAPI LocalAlloc(UINT,SIZE_T); 2645 SIZE_T WINAPI LocalCompact(_In_ UINT); /* Obsolete: Has no effect. */ 2646 #define LocalDiscard(m) (LocalReAlloc((m),0,LMEM_MOVEABLE)) 2647 BOOL WINAPI LocalFileTimeToFileTime(CONST FILETIME *,LPFILETIME); 2648 UINT WINAPI LocalFlags(_In_ HLOCAL); /* Obsolete: Has no effect. */ 2649 HLOCAL WINAPI LocalFree(HLOCAL); 2650 _Ret_maybenull_ HLOCAL WINAPI LocalHandle(_In_ LPCVOID); 2651 PVOID WINAPI LocalLock(HLOCAL); 2652 HLOCAL WINAPI LocalReAlloc(HLOCAL,SIZE_T,UINT); 2653 SIZE_T WINAPI LocalShrink(_In_ HLOCAL, _In_ UINT); /* Obsolete: Has no effect. */ 2654 SIZE_T WINAPI LocalSize(_In_ HLOCAL); 2655 BOOL WINAPI LocalUnlock(HLOCAL); 2656 BOOL WINAPI LockFile(HANDLE,DWORD,DWORD,DWORD,DWORD); 2657 BOOL WINAPI LockFileEx(HANDLE,DWORD,DWORD,DWORD,DWORD,LPOVERLAPPED); 2658 PVOID WINAPI LockResource(HGLOBAL); 2659 #define LockSegment(w) GlobalFix((HANDLE)(w)) /* Obsolete: Has no effect. */ 2660 BOOL WINAPI LogonUserA(_In_ LPSTR, _In_opt_ LPSTR, _In_opt_ LPSTR, _In_ DWORD, _In_ DWORD, _Outptr_ PHANDLE); 2661 BOOL WINAPI LogonUserW(_In_ LPWSTR, _In_opt_ LPWSTR, _In_opt_ LPWSTR, _In_ DWORD, _In_ DWORD, _Outptr_ PHANDLE); 2662 2663 _Success_(return != FALSE) 2664 BOOL 2665 WINAPI 2666 LogonUserExA( 2667 _In_ LPSTR lpszUsername, 2668 _In_opt_ LPSTR lpszDomain, 2669 _In_opt_ LPSTR lpszPassword, 2670 _In_ DWORD dwLogonType, 2671 _In_ DWORD dwLogonProvider, 2672 _Out_opt_ PHANDLE phToken, 2673 _Out_opt_ PSID *ppLogonSid, 2674 _Out_opt_ PVOID *ppProfileBuffer, 2675 _Out_opt_ LPDWORD pdwProfileLength, 2676 _Out_opt_ PQUOTA_LIMITS pQuotaLimits); 2677 2678 _Success_(return != FALSE) 2679 BOOL 2680 WINAPI 2681 LogonUserExW( 2682 _In_ LPWSTR lpszUsername, 2683 _In_opt_ LPWSTR lpszDomain, 2684 _In_opt_ LPWSTR lpszPassword, 2685 _In_ DWORD dwLogonType, 2686 _In_ DWORD dwLogonProvider, 2687 _Out_opt_ PHANDLE phToken, 2688 _Out_opt_ PSID *ppLogonSid, 2689 _Out_opt_ PVOID *ppProfileBuffer, 2690 _Out_opt_ LPDWORD pdwProfileLength, 2691 _Out_opt_ PQUOTA_LIMITS pQuotaLimits); 2692 2693 _Success_(return != FALSE) 2694 BOOL 2695 WINAPI 2696 LookupAccountNameA( 2697 _In_opt_ LPCSTR lpSystemName, 2698 _In_ LPCSTR lpAccountName, 2699 _Out_writes_bytes_to_opt_(*cbSid, *cbSid) PSID Sid, 2700 _Inout_ LPDWORD cbSid, 2701 _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPSTR ReferencedDomainName, 2702 _Inout_ LPDWORD cchReferencedDomainName, 2703 _Out_ PSID_NAME_USE peUse); 2704 2705 _Success_(return != FALSE) 2706 BOOL 2707 WINAPI 2708 LookupAccountNameW( 2709 _In_opt_ LPCWSTR lpSystemName, 2710 _In_ LPCWSTR lpAccountName, 2711 _Out_writes_bytes_to_opt_(*cbSid, *cbSid) PSID Sid, 2712 _Inout_ LPDWORD cbSid, 2713 _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPWSTR ReferencedDomainName, 2714 _Inout_ LPDWORD cchReferencedDomainName, 2715 _Out_ PSID_NAME_USE peUse); 2716 2717 _Success_(return != FALSE) 2718 BOOL 2719 WINAPI 2720 LookupAccountSidA( 2721 _In_opt_ LPCSTR lpSystemName, 2722 _In_ PSID Sid, 2723 _Out_writes_to_opt_(*cchName, *cchName + 1) LPSTR Name, 2724 _Inout_ LPDWORD cchName, 2725 _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPSTR ReferencedDomainName, 2726 _Inout_ LPDWORD cchReferencedDomainName, 2727 _Out_ PSID_NAME_USE peUse); 2728 2729 _Success_(return != FALSE) 2730 BOOL 2731 WINAPI 2732 LookupAccountSidW( 2733 _In_opt_ LPCWSTR lpSystemName, 2734 _In_ PSID Sid, 2735 _Out_writes_to_opt_(*cchName, *cchName + 1) LPWSTR Name, 2736 _Inout_ LPDWORD cchName, 2737 _Out_writes_to_opt_(*cchReferencedDomainName, *cchReferencedDomainName + 1) LPWSTR ReferencedDomainName, 2738 _Inout_ LPDWORD cchReferencedDomainName, 2739 _Out_ PSID_NAME_USE peUse); 2740 2741 _Success_(return != FALSE) 2742 BOOL 2743 WINAPI 2744 LookupPrivilegeDisplayNameA( 2745 _In_opt_ LPCSTR lpSystemName, 2746 _In_ LPCSTR lpName, 2747 _Out_writes_to_opt_(*cchDisplayName, *cchDisplayName + 1) LPSTR lpDisplayName, 2748 _Inout_ LPDWORD cchDisplayName, 2749 _Out_ LPDWORD lpLanguageId); 2750 2751 _Success_(return != FALSE) 2752 BOOL 2753 WINAPI 2754 LookupPrivilegeDisplayNameW( 2755 _In_opt_ LPCWSTR lpSystemName, 2756 _In_ LPCWSTR lpName, 2757 _Out_writes_to_opt_(*cchDisplayName, *cchDisplayName + 1) LPWSTR lpDisplayName, 2758 _Inout_ LPDWORD cchDisplayName, 2759 _Out_ LPDWORD lpLanguageId); 2760 2761 _Success_(return != FALSE) 2762 BOOL 2763 WINAPI 2764 LookupPrivilegeNameA( 2765 _In_opt_ LPCSTR lpSystemName, 2766 _In_ PLUID lpLuid, 2767 _Out_writes_to_opt_(*cchName, *cchName + 1) LPSTR lpName, 2768 _Inout_ LPDWORD cchName); 2769 2770 _Success_(return != FALSE) 2771 BOOL 2772 WINAPI 2773 LookupPrivilegeNameW( 2774 _In_opt_ LPCWSTR lpSystemName, 2775 _In_ PLUID lpLuid, 2776 _Out_writes_to_opt_(*cchName, *cchName + 1) LPWSTR lpName, 2777 _Inout_ LPDWORD cchName); 2778 2779 BOOL WINAPI LookupPrivilegeValueA(_In_opt_ LPCSTR, _In_ LPCSTR, _Out_ PLUID); 2780 BOOL WINAPI LookupPrivilegeValueW(_In_opt_ LPCWSTR, _In_ LPCWSTR, _Out_ PLUID); 2781 2782 LPSTR 2783 WINAPI 2784 lstrcatA( 2785 _Inout_updates_z_(_String_length_(lpString1) + _String_length_(lpString2) + 1) LPSTR lpString1, 2786 _In_ LPCSTR lpString2); 2787 2788 LPWSTR 2789 WINAPI 2790 lstrcatW( 2791 _Inout_updates_z_(_String_length_(lpString1) + _String_length_(lpString2) + 1) LPWSTR lpString1, 2792 _In_ LPCWSTR lpString2); 2793 2794 int WINAPI lstrcmpA(LPCSTR,LPCSTR); 2795 int WINAPI lstrcmpiA(LPCSTR,LPCSTR); 2796 int WINAPI lstrcmpiW( LPCWSTR,LPCWSTR); 2797 int WINAPI lstrcmpW(LPCWSTR,LPCWSTR); 2798 2799 LPSTR 2800 WINAPI 2801 lstrcpyA( 2802 _Out_writes_(_String_length_(lpString2) + 1) LPSTR lpString1, 2803 _In_ LPCSTR lpString2); 2804 2805 LPWSTR 2806 WINAPI 2807 lstrcpyW( 2808 _Out_writes_(_String_length_(lpString2) + 1) LPWSTR lpString1, 2809 _In_ LPCWSTR lpString2); 2810 2811 LPSTR WINAPI lstrcpynA(LPSTR,LPCSTR,int); 2812 LPWSTR WINAPI lstrcpynW(LPWSTR,LPCWSTR,int); 2813 int WINAPI lstrlenA(LPCSTR); 2814 int WINAPI lstrlenW(LPCWSTR); 2815 BOOL WINAPI MakeAbsoluteSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD,PACL,PDWORD,PACL,PDWORD,PSID,PDWORD,PSID,PDWORD); 2816 #define MakeProcInstance(p,i) (p) 2817 BOOL WINAPI MakeSelfRelativeSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD); 2818 VOID WINAPI MapGenericMask(PDWORD,PGENERIC_MAPPING); 2819 PVOID WINAPI MapViewOfFile(HANDLE,DWORD,DWORD,DWORD,SIZE_T); 2820 PVOID WINAPI MapViewOfFileEx(HANDLE,DWORD,DWORD,DWORD,SIZE_T,PVOID); 2821 BOOL WINAPI MoveFileA(_In_ LPCSTR, _In_ LPCSTR); 2822 BOOL WINAPI MoveFileW(_In_ LPCWSTR, _In_ LPCWSTR); 2823 BOOL WINAPI MoveFileExA(_In_ LPCSTR, _In_opt_ LPCSTR, _In_ DWORD); 2824 BOOL WINAPI MoveFileExW(_In_ LPCWSTR, _In_opt_ LPCWSTR, _In_ DWORD); 2825 BOOL WINAPI MoveFileWithProgressA(_In_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPPROGRESS_ROUTINE, _In_opt_ LPVOID, _In_ DWORD); 2826 BOOL WINAPI MoveFileWithProgressW(_In_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPPROGRESS_ROUTINE, _In_opt_ LPVOID, _In_ DWORD); 2827 int WINAPI MulDiv(_In_ int, _In_ int, _In_ int); 2828 BOOL WINAPI NotifyChangeEventLog(_In_ HANDLE, _In_ HANDLE); 2829 BOOL WINAPI ObjectCloseAuditAlarmA(_In_ LPCSTR, _In_ PVOID, _In_ BOOL); 2830 BOOL WINAPI ObjectCloseAuditAlarmW(LPCWSTR,PVOID,BOOL); 2831 BOOL WINAPI ObjectDeleteAuditAlarmA(_In_ LPCSTR, _In_ PVOID, _In_ BOOL); 2832 BOOL WINAPI ObjectDeleteAuditAlarmW(LPCWSTR,PVOID,BOOL); 2833 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); 2834 BOOL WINAPI ObjectOpenAuditAlarmW(LPCWSTR,PVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL); 2835 BOOL WINAPI ObjectPrivilegeAuditAlarmA(_In_ LPCSTR, _In_ PVOID, _In_ HANDLE, _In_ DWORD, _In_ PPRIVILEGE_SET, _In_ BOOL); 2836 BOOL WINAPI ObjectPrivilegeAuditAlarmW(LPCWSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL); 2837 HANDLE WINAPI OpenBackupEventLogA(_In_opt_ LPCSTR, _In_ LPCSTR); 2838 HANDLE WINAPI OpenBackupEventLogW(_In_opt_ LPCWSTR, _In_ LPCWSTR); 2839 HANDLE WINAPI OpenEventA(DWORD,BOOL,LPCSTR); 2840 HANDLE WINAPI OpenEventLogA(_In_opt_ LPCSTR, _In_ LPCSTR); 2841 HANDLE WINAPI OpenEventLogW(_In_opt_ LPCWSTR, _In_ LPCWSTR); 2842 HANDLE WINAPI OpenEventW(DWORD,BOOL,LPCWSTR); 2843 HFILE WINAPI OpenFile(_In_ LPCSTR, _Inout_ LPOFSTRUCT, _In_ UINT); 2844 #if (_WIN32_WINNT >= 0x0600) 2845 HANDLE WINAPI OpenFileById(_In_ HANDLE, _In_ LPFILE_ID_DESCRIPTOR, _In_ DWORD, _In_ DWORD, _In_opt_ LPSECURITY_ATTRIBUTES, _In_ DWORD); 2846 #endif 2847 HANDLE WINAPI OpenFileMappingA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR); 2848 HANDLE WINAPI OpenFileMappingW(DWORD,BOOL,LPCWSTR); 2849 _Ret_maybenull_ HANDLE WINAPI OpenMutexA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR); 2850 HANDLE WINAPI OpenMutexW(DWORD,BOOL,LPCWSTR); 2851 HANDLE WINAPI OpenProcess(DWORD,BOOL,DWORD); 2852 BOOL WINAPI OpenProcessToken(HANDLE,DWORD,PHANDLE); 2853 _Ret_maybenull_ HANDLE WINAPI OpenSemaphoreA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR); 2854 HANDLE WINAPI OpenSemaphoreW(DWORD,BOOL,LPCWSTR); 2855 #if (_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490) 2856 HANDLE WINAPI OpenThread(DWORD,BOOL,DWORD); 2857 #endif 2858 BOOL WINAPI OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE); 2859 _Ret_maybenull_ HANDLE WINAPI OpenWaitableTimerA(_In_ DWORD, _In_ BOOL, _In_ LPCSTR); 2860 HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR); 2861 WINBASEAPI void WINAPI OutputDebugStringA(LPCSTR); 2862 WINBASEAPI void WINAPI OutputDebugStringW(LPCWSTR); 2863 BOOL WINAPI PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD); 2864 BOOL WINAPI PostQueuedCompletionStatus(HANDLE,DWORD,ULONG_PTR,LPOVERLAPPED); 2865 DWORD WINAPI PrepareTape(_In_ HANDLE, _In_ DWORD, _In_ BOOL); 2866 BOOL WINAPI PrivilegeCheck (HANDLE,PPRIVILEGE_SET,PBOOL); 2867 BOOL WINAPI PrivilegedServiceAuditAlarmA(_In_ LPCSTR, _In_ LPCSTR, _In_ HANDLE, _In_ PPRIVILEGE_SET, _In_ BOOL); 2868 BOOL WINAPI PrivilegedServiceAuditAlarmW(LPCWSTR,LPCWSTR,HANDLE,PPRIVILEGE_SET,BOOL); 2869 #if (_WIN32_WINNT >= 0x0500) 2870 BOOL WINAPI ProcessIdToSessionId(DWORD,DWORD*); 2871 #endif 2872 BOOL WINAPI PulseEvent(HANDLE); 2873 BOOL WINAPI PurgeComm(_In_ HANDLE, _In_ DWORD); 2874 2875 #if (_WIN32_WINNT >= 0x0501) 2876 BOOL 2877 WINAPI 2878 QueryActCtxW( 2879 _In_ DWORD dwFlags, 2880 _In_ HANDLE hActCtx, 2881 _In_opt_ PVOID pvSubInstance, 2882 _In_ ULONG ulInfoClass, 2883 _Out_writes_bytes_to_opt_(cbBuffer, *pcbWrittenOrRequired) PVOID pvBuffer, 2884 _In_ SIZE_T cbBuffer, 2885 _Out_opt_ SIZE_T *pcbWrittenOrRequired); 2886 #endif 2887 2888 DWORD 2889 WINAPI 2890 QueryDosDeviceA( 2891 _In_opt_ LPCSTR lpDeviceName, 2892 _Out_writes_to_opt_(ucchMax, return) LPSTR lpTargetPath, 2893 _In_ DWORD ucchMax); 2894 2895 DWORD WINAPI QueryDosDeviceW(LPCWSTR,LPWSTR,DWORD); 2896 #if (_WIN32_WINNT >= 0x0501) 2897 BOOL WINAPI QueryMemoryResourceNotification(HANDLE,PBOOL); 2898 #endif 2899 BOOL WINAPI QueryPerformanceCounter(PLARGE_INTEGER); 2900 BOOL WINAPI QueryPerformanceFrequency(PLARGE_INTEGER); 2901 #if (_WIN32_WINNT >= 0x0600) 2902 VOID WINAPI QuerySecurityAccessMask(SECURITY_INFORMATION,LPDWORD); 2903 #endif 2904 DWORD WINAPI QueueUserAPC(PAPCFUNC,HANDLE,ULONG_PTR); 2905 #if (_WIN32_WINNT >= 0x0500) 2906 BOOL WINAPI QueueUserWorkItem(LPTHREAD_START_ROUTINE,PVOID,ULONG); 2907 #endif 2908 void WINAPI RaiseException(DWORD,DWORD,DWORD,const ULONG_PTR*); 2909 2910 BOOL 2911 WINAPI 2912 QueryInformationJobObject( 2913 _In_opt_ HANDLE hJob, 2914 _In_ JOBOBJECTINFOCLASS JobObjectInformationClass, 2915 _Out_writes_bytes_to_(cbJobObjectInformationLength, *lpReturnLength) LPVOID lpJobObjectInformation, 2916 _In_ DWORD cbJobObjectInformationLength, 2917 _Out_opt_ LPDWORD lpReturnLength); 2918 2919 BOOL 2920 WINAPI 2921 ReadDirectoryChangesW( 2922 _In_ HANDLE hDirectory, 2923 _Out_writes_bytes_to_(nBufferLength, *lpBytesReturned) LPVOID lpBuffer, 2924 _In_ DWORD nBufferLength, 2925 _In_ BOOL bWatchSubtree, 2926 _In_ DWORD dwNotifyFilter, 2927 _Out_opt_ LPDWORD lpBytesReturned, 2928 _Inout_opt_ LPOVERLAPPED lpOverlapped, 2929 _In_opt_ LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine); 2930 2931 BOOL 2932 WINAPI 2933 ReadEventLogA( 2934 _In_ HANDLE hEventLog, 2935 _In_ DWORD dwReadFlags, 2936 _In_ DWORD dwRecordOffset, 2937 _Out_writes_bytes_to_(nNumberOfBytesToRead, *pnBytesRead) LPVOID lpBuffer, 2938 _In_ DWORD nNumberOfBytesToRead, 2939 _Out_ DWORD *pnBytesRead, 2940 _Out_ DWORD *pnMinNumberOfBytesNeeded); 2941 2942 BOOL 2943 WINAPI 2944 ReadEventLogW( 2945 _In_ HANDLE hEventLog, 2946 _In_ DWORD dwReadFlags, 2947 _In_ DWORD dwRecordOffset, 2948 _Out_writes_bytes_to_(nNumberOfBytesToRead, *pnBytesRead) LPVOID lpBuffer, 2949 _In_ DWORD nNumberOfBytesToRead, 2950 _Out_ DWORD *pnBytesRead, 2951 _Out_ DWORD *pnMinNumberOfBytesNeeded); 2952 2953 BOOL WINAPI ReadFile(HANDLE,PVOID,DWORD,PDWORD,LPOVERLAPPED); 2954 BOOL WINAPI ReadFileEx(HANDLE,PVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); 2955 BOOL WINAPI ReadFileScatter(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED); 2956 BOOL WINAPI ReadProcessMemory(HANDLE,LPCVOID,LPVOID,SIZE_T,PSIZE_T); 2957 #if (_WIN32_WINNT >= 0x0600) 2958 VOID WINAPI RecoveryFinished(BOOL); 2959 HRESULT WINAPI RecoveryInProgress(OUT PBOOL); 2960 HRESULT WINAPI RegisterApplicationRecoveryCallback(_In_ APPLICATION_RECOVERY_CALLBACK, _In_opt_ PVOID, _In_ DWORD, _In_ DWORD); 2961 HRESULT WINAPI RegisterApplicationRestart(_In_opt_ PCWSTR, _In_ DWORD); 2962 #endif 2963 HANDLE WINAPI RegisterEventSourceA(_In_opt_ LPCSTR, _In_ LPCSTR); 2964 HANDLE WINAPI RegisterEventSourceW(_In_opt_ LPCWSTR, _In_ LPCWSTR); 2965 #if (_WIN32_WINNT >= 0x0500) 2966 BOOL WINAPI RegisterWaitForSingleObject(_Outptr_ PHANDLE, _In_ HANDLE, _In_ WAITORTIMERCALLBACK, _In_opt_ PVOID, _In_ ULONG, _In_ ULONG); 2967 HANDLE WINAPI RegisterWaitForSingleObjectEx(HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG); 2968 #endif 2969 #if (_WIN32_WINNT >= 0x0501) 2970 void WINAPI ReleaseActCtx(_Inout_ HANDLE); 2971 #endif 2972 BOOL WINAPI ReleaseMutex(HANDLE); 2973 BOOL WINAPI ReleaseSemaphore(HANDLE,LONG,LPLONG); 2974 #if (_WIN32_WINNT >= 0x0600) 2975 VOID WINAPI ReleaseSRWLockExclusive(PSRWLOCK); 2976 VOID WINAPI ReleaseSRWLockShared(PSRWLOCK); 2977 #endif 2978 BOOL WINAPI RemoveDirectoryA(LPCSTR); 2979 BOOL WINAPI RemoveDirectoryW(LPCWSTR); 2980 #if (_WIN32_WINNT >= 0x0500) 2981 ULONG WINAPI RemoveVectoredExceptionHandler(_In_ PVOID); 2982 ULONG WINAPI RemoveVectoredContinueHandler(_In_ PVOID); 2983 #endif 2984 #if (_WIN32_WINNT >= 0x0500) 2985 BOOL WINAPI ReplaceFileA(_In_ LPCSTR, _In_ LPCSTR, _In_opt_ LPCSTR, _In_ DWORD, _Reserved_ LPVOID, _Reserved_ LPVOID); 2986 BOOL WINAPI ReplaceFileW(_In_ LPCWSTR, _In_ LPCWSTR, _In_opt_ LPCWSTR, _In_ DWORD, _Reserved_ LPVOID, _Reserved_ LPVOID); 2987 #endif 2988 2989 BOOL 2990 WINAPI 2991 ReportEventA( 2992 _In_ HANDLE hEventLog, 2993 _In_ WORD wType, 2994 _In_ WORD wCategory, 2995 _In_ DWORD dwEventID, 2996 _In_opt_ PSID lpUserSid, 2997 _In_ WORD wNumStrings, 2998 _In_ DWORD dwDataSize, 2999 _In_reads_opt_(wNumStrings) LPCSTR *lpStrings, 3000 _In_reads_bytes_opt_(dwDataSize) LPVOID lpRawData); 3001 3002 BOOL 3003 WINAPI 3004 ReportEventW( 3005 _In_ HANDLE hEventLog, 3006 _In_ WORD wType, 3007 _In_ WORD wCategory, 3008 _In_ DWORD dwEventID, 3009 _In_opt_ PSID lpUserSid, 3010 _In_ WORD wNumStrings, 3011 _In_ DWORD dwDataSize, 3012 _In_reads_opt_(wNumStrings) LPCWSTR *lpStrings, 3013 _In_reads_bytes_opt_(dwDataSize) LPVOID lpRawData); 3014 3015 BOOL WINAPI ResetEvent(HANDLE); 3016 UINT WINAPI ResetWriteWatch(LPVOID,SIZE_T); 3017 #if (_WIN32_WINNT >= 0x0510) 3018 VOID WINAPI RestoreLastError(_In_ DWORD); 3019 #endif 3020 DWORD WINAPI ResumeThread(HANDLE); 3021 BOOL WINAPI RevertToSelf(void); 3022 3023 _Success_(return != 0 && return < nBufferLength) 3024 DWORD 3025 WINAPI 3026 SearchPathA( 3027 _In_opt_ LPCSTR lpPath, 3028 _In_ LPCSTR lpFileName, 3029 _In_opt_ LPCSTR lpExtension, 3030 _In_ DWORD nBufferLength, 3031 _Out_writes_to_opt_(nBufferLength, return + 1) LPSTR lpBuffer, 3032 _Out_opt_ LPSTR *lpFilePart); 3033 3034 DWORD WINAPI SearchPathW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*); 3035 BOOL WINAPI SetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS); 3036 BOOL WINAPI SetCommBreak(_In_ HANDLE); 3037 3038 BOOL 3039 WINAPI 3040 SetCommConfig( 3041 _In_ HANDLE hCommDev, 3042 _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC, 3043 _In_ DWORD dwSize); 3044 3045 BOOL WINAPI SetCommMask(_In_ HANDLE, _In_ DWORD); 3046 BOOL WINAPI SetCommState(_In_ HANDLE, _In_ LPDCB); 3047 BOOL WINAPI SetCommTimeouts(_In_ HANDLE, _In_ LPCOMMTIMEOUTS); 3048 BOOL WINAPI SetComputerNameA(_In_ LPCSTR); 3049 BOOL WINAPI SetComputerNameW(_In_ LPCWSTR); 3050 #if (_WIN32_WINNT >= 0x0500) 3051 BOOL WINAPI SetComputerNameExA(_In_ COMPUTER_NAME_FORMAT, _In_ LPCSTR); 3052 BOOL WINAPI SetComputerNameExW(COMPUTER_NAME_FORMAT,LPCWSTR); 3053 #endif 3054 BOOL WINAPI SetCurrentDirectoryA(LPCSTR); 3055 BOOL WINAPI SetCurrentDirectoryW(LPCWSTR); 3056 3057 BOOL 3058 WINAPI 3059 SetDefaultCommConfigA( 3060 _In_ LPCSTR lpszName, 3061 _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC, 3062 _In_ DWORD dwSize); 3063 3064 BOOL 3065 WINAPI 3066 SetDefaultCommConfigW( 3067 _In_ LPCWSTR lpszName, 3068 _In_reads_bytes_(dwSize) LPCOMMCONFIG lpCC, 3069 _In_ DWORD dwSize); 3070 3071 #if (_WIN32_WINNT >= 0x0502) 3072 BOOL WINAPI SetDllDirectoryA(_In_opt_ LPCSTR); 3073 BOOL WINAPI SetDllDirectoryW(_In_opt_ LPCWSTR); 3074 #endif 3075 BOOL WINAPI SetEndOfFile(HANDLE); 3076 BOOL WINAPI SetEnvironmentVariableA(LPCSTR,LPCSTR); 3077 BOOL WINAPI SetEnvironmentVariableW(LPCWSTR,LPCWSTR); 3078 UINT WINAPI SetErrorMode(UINT); 3079 BOOL WINAPI SetEvent(HANDLE); 3080 VOID WINAPI SetFileApisToANSI(void); 3081 VOID WINAPI SetFileApisToOEM(void); 3082 BOOL WINAPI SetFileAttributesA(LPCSTR,DWORD); 3083 #if (_WIN32_WINNT >= 0x0600) 3084 BOOL WINAPI SetFileAttributesByHandle(HANDLE,DWORD,DWORD); 3085 #endif 3086 BOOL WINAPI SetFileAttributesW(LPCWSTR,DWORD); 3087 #if (_WIN32_WINNT >= 0x0600) 3088 BOOL WINAPI SetFileBandwidthReservation(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ BOOL, _Out_ LPDWORD, _Out_ LPDWORD); 3089 BOOL WINAPI SetFileCompletionNotificationModes(_In_ HANDLE, _In_ UCHAR); 3090 #endif 3091 DWORD WINAPI SetFilePointer(HANDLE,LONG,PLONG,DWORD); 3092 BOOL WINAPI SetFilePointerEx(HANDLE,LARGE_INTEGER,PLARGE_INTEGER,DWORD); 3093 BOOL WINAPI SetFileSecurityA(_In_ LPCSTR, _In_ SECURITY_INFORMATION, _In_ PSECURITY_DESCRIPTOR); 3094 BOOL WINAPI SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); 3095 #if (_WIN32_WINNT >= 0x0501) 3096 BOOL WINAPI SetFileShortNameA(_In_ HANDLE, _In_ LPCSTR); 3097 BOOL WINAPI SetFileShortNameW(_In_ HANDLE, _In_ LPCWSTR); 3098 #endif 3099 BOOL WINAPI SetFileTime(HANDLE,const FILETIME*,const FILETIME*,const FILETIME*); 3100 #if (_WIN32_WINNT >= 0x0501) 3101 BOOL WINAPI SetFileValidData(HANDLE,LONGLONG); 3102 #endif 3103 3104 #if (_WIN32_WINNT >= 0x0502) 3105 3106 BOOL 3107 WINAPI 3108 SetFirmwareEnvironmentVariableA( 3109 _In_ LPCSTR lpName, 3110 _In_ LPCSTR lpGuid, 3111 _In_reads_bytes_opt_(nSize) PVOID pValue, 3112 _In_ DWORD nSize); 3113 3114 BOOL 3115 WINAPI 3116 SetFirmwareEnvironmentVariableW( 3117 _In_ LPCWSTR lpName, 3118 _In_ LPCWSTR lpGuid, 3119 _In_reads_bytes_opt_(nSize) PVOID pValue, 3120 _In_ DWORD nSize); 3121 3122 #endif 3123 3124 UINT WINAPI SetHandleCount(UINT); 3125 BOOL WINAPI SetHandleInformation(HANDLE,DWORD,DWORD); 3126 3127 BOOL 3128 WINAPI 3129 SetInformationJobObject( 3130 _In_ HANDLE hJob, 3131 _In_ JOBOBJECTINFOCLASS JobObjectInformationClass, 3132 _In_reads_bytes_(cbJobObjectInformationLength) LPVOID lpJobObjectInformation, 3133 _In_ DWORD cbJobObjectInformationLength); 3134 3135 BOOL WINAPI SetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); 3136 void WINAPI SetLastError(DWORD); 3137 void WINAPI SetLastErrorEx(DWORD,DWORD); 3138 BOOL WINAPI SetLocalTime(const SYSTEMTIME*); 3139 BOOL WINAPI SetMailslotInfo(_In_ HANDLE, _In_ DWORD); 3140 BOOL WINAPI SetNamedPipeHandleState(HANDLE,PDWORD,PDWORD,PDWORD); 3141 BOOL WINAPI SetPriorityClass(HANDLE,DWORD); 3142 BOOL WINAPI SetPrivateObjectSecurity(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR *,PGENERIC_MAPPING,HANDLE); 3143 BOOL WINAPI SetProcessAffinityMask(_In_ HANDLE, _In_ DWORD_PTR); 3144 BOOL WINAPI SetProcessPriorityBoost(_In_ HANDLE, _In_ BOOL); 3145 BOOL WINAPI SetProcessShutdownParameters(DWORD,DWORD); 3146 BOOL WINAPI SetProcessWorkingSetSize(_In_ HANDLE, _In_ SIZE_T, _In_ SIZE_T); 3147 #if (_WIN32_WINNT >= 0x0600) 3148 VOID WINAPI SetSecurityAccessMask(SECURITY_INFORMATION,LPDWORD); 3149 #endif 3150 BOOL WINAPI SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,SECURITY_DESCRIPTOR_CONTROL,SECURITY_DESCRIPTOR_CONTROL); 3151 BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL); 3152 BOOL WINAPI SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID,BOOL); 3153 BOOL WINAPI SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID,BOOL); 3154 DWORD WINAPI SetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR,PUCHAR); 3155 BOOL WINAPI SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL); 3156 BOOL WINAPI SetStdHandle(_In_ DWORD, _In_ HANDLE); 3157 #define SetSwapAreaSize(w) (w) 3158 BOOL WINAPI SetSystemPowerState(_In_ BOOL, _In_ BOOL); 3159 BOOL WINAPI SetSystemTime(const SYSTEMTIME*); 3160 BOOL WINAPI SetSystemTimeAdjustment(_In_ DWORD, _In_ BOOL); 3161 DWORD WINAPI SetTapeParameters(_In_ HANDLE, _In_ DWORD, _In_ PVOID); 3162 DWORD WINAPI SetTapePosition(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ BOOL); 3163 DWORD_PTR WINAPI SetThreadAffinityMask(_In_ HANDLE, _In_ DWORD_PTR); 3164 BOOL WINAPI SetThreadContext(HANDLE,const CONTEXT*); 3165 DWORD WINAPI SetThreadIdealProcessor(_In_ HANDLE, _In_ DWORD); 3166 BOOL WINAPI SetThreadPriority(HANDLE,int); 3167 BOOL WINAPI SetThreadPriorityBoost(HANDLE,BOOL); 3168 BOOL WINAPI SetThreadToken (PHANDLE,HANDLE); 3169 BOOL WINAPI SetTimeZoneInformation(const TIME_ZONE_INFORMATION *); 3170 BOOL WINAPI SetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD); 3171 LPTOP_LEVEL_EXCEPTION_FILTER WINAPI SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER); 3172 BOOL WINAPI SetupComm(_In_ HANDLE, _In_ DWORD, _In_ DWORD); 3173 BOOL WINAPI SetVolumeLabelA(_In_opt_ LPCSTR, _In_opt_ LPCSTR); 3174 BOOL WINAPI SetVolumeLabelW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR); 3175 #if (_WIN32_WINNT >= 0x0500) 3176 BOOL WINAPI SetVolumeMountPointA(_In_ LPCSTR, _In_ LPCSTR); 3177 BOOL WINAPI SetVolumeMountPointW(_In_ LPCWSTR, _In_ LPCWSTR); 3178 #endif 3179 BOOL WINAPI SetWaitableTimer(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,PVOID,BOOL); 3180 DWORD WINAPI SignalObjectAndWait(_In_ HANDLE, _In_ HANDLE, _In_ DWORD, _In_ BOOL); 3181 DWORD WINAPI SizeofResource(HINSTANCE,HRSRC); 3182 WINBASEAPI void WINAPI Sleep(DWORD); 3183 #if (_WIN32_WINNT >= 0x0600) 3184 BOOL WINAPI SleepConditionVariableCS(PCONDITION_VARIABLE,PCRITICAL_SECTION,DWORD); 3185 BOOL WINAPI SleepConditionVariableSRW(PCONDITION_VARIABLE,PSRWLOCK,DWORD,ULONG); 3186 #endif 3187 DWORD WINAPI SleepEx(DWORD,BOOL); 3188 DWORD WINAPI SuspendThread(HANDLE); 3189 void WINAPI SwitchToFiber(_In_ PVOID); 3190 BOOL WINAPI SwitchToThread(void); 3191 BOOL WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME); 3192 BOOL WINAPI SystemTimeToTzSpecificLocalTime(CONST TIME_ZONE_INFORMATION*,CONST SYSTEMTIME*,LPSYSTEMTIME); 3193 BOOL WINAPI TerminateProcess(HANDLE,UINT); 3194 BOOL WINAPI TerminateThread(HANDLE,DWORD); 3195 DWORD WINAPI TlsAlloc(VOID); 3196 BOOL WINAPI TlsFree(DWORD); 3197 PVOID WINAPI TlsGetValue(DWORD); 3198 BOOL WINAPI TlsSetValue(DWORD,PVOID); 3199 BOOL WINAPI TransactNamedPipe(HANDLE,PVOID,DWORD,PVOID,DWORD,PDWORD,LPOVERLAPPED); 3200 BOOL WINAPI TransmitCommChar(_In_ HANDLE, _In_ char); 3201 BOOL WINAPI TryEnterCriticalSection(LPCRITICAL_SECTION); 3202 BOOL WINAPI TzSpecificLocalTimeToSystemTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME); 3203 LONG WINAPI UnhandledExceptionFilter(LPEXCEPTION_POINTERS); 3204 BOOL WINAPI UnlockFile(HANDLE,DWORD,DWORD,DWORD,DWORD); 3205 BOOL WINAPI UnlockFileEx(HANDLE,DWORD,DWORD,DWORD,LPOVERLAPPED); 3206 #define UnlockResource(h) (h) 3207 #define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) /* Obsolete: Has no effect. */ 3208 BOOL WINAPI UnmapViewOfFile(LPCVOID); 3209 #if (_WIN32_WINNT >= 0x0500) 3210 _Must_inspect_result_ BOOL WINAPI UnregisterWait(_In_ HANDLE); 3211 BOOL WINAPI UnregisterWaitEx(HANDLE,HANDLE); 3212 #endif 3213 3214 BOOL 3215 WINAPI 3216 UpdateResourceA( 3217 _In_ HANDLE hUpdate, 3218 _In_ LPCSTR lpType, 3219 _In_ LPCSTR lpName, 3220 _In_ WORD wLanguage, 3221 _In_reads_bytes_opt_(cb) LPVOID lpData, 3222 _In_ DWORD cb); 3223 3224 BOOL 3225 WINAPI 3226 UpdateResourceW( 3227 _In_ HANDLE hUpdate, 3228 _In_ LPCWSTR lpType, 3229 _In_ LPCWSTR lpName, 3230 _In_ WORD wLanguage, 3231 _In_reads_bytes_opt_(cb) LPVOID lpData, 3232 _In_ DWORD cb); 3233 3234 BOOL WINAPI VerifyVersionInfoA(_Inout_ LPOSVERSIONINFOEXA, _In_ DWORD, _In_ DWORDLONG); 3235 BOOL WINAPI VerifyVersionInfoW(_Inout_ LPOSVERSIONINFOEXW, _In_ DWORD, _In_ DWORDLONG); 3236 PVOID WINAPI VirtualAlloc(PVOID,SIZE_T,DWORD,DWORD); 3237 PVOID WINAPI VirtualAllocEx(HANDLE,PVOID,SIZE_T,DWORD,DWORD); 3238 BOOL WINAPI VirtualFree(PVOID,SIZE_T,DWORD); 3239 BOOL WINAPI VirtualFreeEx(HANDLE,PVOID,SIZE_T,DWORD); 3240 BOOL WINAPI VirtualLock(PVOID,SIZE_T); 3241 BOOL WINAPI VirtualProtect(PVOID,SIZE_T,DWORD,PDWORD); 3242 BOOL WINAPI VirtualProtectEx(HANDLE,PVOID,SIZE_T,DWORD,PDWORD); 3243 SIZE_T WINAPI VirtualQuery(LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T); 3244 SIZE_T WINAPI VirtualQueryEx(HANDLE,LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T); 3245 BOOL WINAPI VirtualUnlock(PVOID,SIZE_T); 3246 BOOL WINAPI WaitCommEvent(_In_ HANDLE, _Inout_ PDWORD, _Inout_opt_ LPOVERLAPPED); 3247 BOOL WINAPI WaitForDebugEvent(LPDEBUG_EVENT,DWORD); 3248 3249 DWORD 3250 WINAPI 3251 WaitForMultipleObjects( 3252 _In_ DWORD nCount, 3253 _In_reads_(nCount) CONST HANDLE *lpHandles, 3254 _In_ BOOL bWaitAll, 3255 _In_ DWORD dwMilliseconds); 3256 3257 DWORD WINAPI WaitForMultipleObjectsEx(DWORD,const HANDLE*,BOOL,DWORD,BOOL); 3258 DWORD WINAPI WaitForSingleObject(HANDLE,DWORD); 3259 DWORD WINAPI WaitForSingleObjectEx(HANDLE,DWORD,BOOL); 3260 BOOL WINAPI WaitNamedPipeA(_In_ LPCSTR, _In_ DWORD); 3261 BOOL WINAPI WaitNamedPipeW(_In_ LPCWSTR, _In_ DWORD); 3262 #if (_WIN32_WINNT >= 0x0600) 3263 VOID WINAPI WakeConditionVariable(PCONDITION_VARIABLE); 3264 VOID WINAPI WakeAllConditionVariable(PCONDITION_VARIABLE); 3265 #endif 3266 BOOL WINAPI WinLoadTrustProvider(GUID*); 3267 BOOL WINAPI Wow64DisableWow64FsRedirection(PVOID*); 3268 BOOLEAN WINAPI Wow64EnableWow64FsRedirection(_In_ BOOLEAN); 3269 BOOL WINAPI Wow64RevertWow64FsRedirection(PVOID); 3270 DWORD WINAPI WriteEncryptedFileRaw(_In_ PFE_IMPORT_FUNC, _In_opt_ PVOID, _In_ PVOID); 3271 BOOL WINAPI WriteFile(HANDLE,LPCVOID,DWORD,LPDWORD,LPOVERLAPPED); 3272 BOOL WINAPI WriteFileEx(HANDLE,LPCVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); 3273 BOOL WINAPI WriteFileGather(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED); 3274 BOOL WINAPI WritePrivateProfileSectionA(_In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR); 3275 BOOL WINAPI WritePrivateProfileSectionW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR); 3276 BOOL WINAPI WritePrivateProfileStringA(_In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR); 3277 BOOL WINAPI WritePrivateProfileStringW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR); 3278 3279 BOOL 3280 WINAPI 3281 WritePrivateProfileStructA( 3282 _In_ LPCSTR lpszSection, 3283 _In_ LPCSTR lpszKey, 3284 _In_reads_bytes_opt_(uSizeStruct) LPVOID lpStruct, 3285 _In_ UINT uSizeStruct, 3286 _In_opt_ LPCSTR szFile); 3287 3288 BOOL 3289 WINAPI 3290 WritePrivateProfileStructW( 3291 _In_ LPCWSTR lpszSection, 3292 _In_ LPCWSTR lpszKey, 3293 _In_reads_bytes_opt_(uSizeStruct) LPVOID lpStruct, 3294 _In_ UINT uSizeStruct, 3295 _In_opt_ LPCWSTR szFile); 3296 3297 BOOL WINAPI WriteProcessMemory(HANDLE,LPVOID,LPCVOID,SIZE_T,SIZE_T*); 3298 BOOL WINAPI WriteProfileSectionA(_In_ LPCSTR, _In_ LPCSTR); 3299 BOOL WINAPI WriteProfileSectionW(_In_ LPCWSTR, _In_ LPCWSTR); 3300 BOOL WINAPI WriteProfileStringA(_In_opt_ LPCSTR, _In_opt_ LPCSTR, _In_opt_ LPCSTR); 3301 BOOL WINAPI WriteProfileStringW(_In_opt_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR); 3302 DWORD WINAPI WriteTapemark(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ BOOL); 3303 3304 #define Yield() 3305 3306 #if (_WIN32_WINNT >= 0x0501) 3307 DWORD WINAPI WTSGetActiveConsoleSessionId(VOID); 3308 BOOL WINAPI ZombifyActCtx(_Inout_ HANDLE); 3309 #endif 3310 3311 #if (_WIN32_WINNT >= 0x0500) 3312 3313 BOOL 3314 WINAPI 3315 AllocateUserPhysicalPages( 3316 _In_ HANDLE hProcess, 3317 _Inout_ PULONG_PTR NumberOfPages, 3318 _Out_writes_to_(*NumberOfPages, *NumberOfPages) PULONG_PTR PageArray); 3319 3320 BOOL 3321 WINAPI 3322 FreeUserPhysicalPages( 3323 _In_ HANDLE hProcess, 3324 _Inout_ PULONG_PTR NumberOfPages, 3325 _In_reads_(*NumberOfPages) PULONG_PTR PageArray); 3326 3327 BOOL 3328 WINAPI 3329 MapUserPhysicalPages( 3330 _In_ PVOID VirtualAddress, 3331 _In_ ULONG_PTR NumberOfPages, 3332 _In_reads_opt_(NumberOfPages) PULONG_PTR PageArray); 3333 3334 BOOL 3335 WINAPI 3336 MapUserPhysicalPagesScatter( 3337 _In_reads_(NumberOfPages) PVOID *VirtualAddresses, 3338 _In_ ULONG_PTR NumberOfPages, 3339 _In_reads_opt_(NumberOfPages) PULONG_PTR PageArray); 3340 3341 #endif 3342 3343 #ifdef UNICODE 3344 typedef STARTUPINFOW STARTUPINFO,*LPSTARTUPINFO; 3345 typedef WIN32_FIND_DATAW WIN32_FIND_DATA, *PWIN32_FIND_DATA, *LPWIN32_FIND_DATA; 3346 typedef HW_PROFILE_INFOW HW_PROFILE_INFO,*LPHW_PROFILE_INFO; 3347 typedef ENUMRESLANGPROCW ENUMRESLANGPROC; 3348 typedef ENUMRESNAMEPROCW ENUMRESNAMEPROC; 3349 typedef ENUMRESTYPEPROCW ENUMRESTYPEPROC; 3350 #if (_WIN32_WINNT >= 0x0501) 3351 typedef ACTCTXW ACTCTX,*PACTCTX; 3352 typedef PCACTCTXW PCACTCTX; 3353 #endif 3354 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmW 3355 #define AddAtom AddAtomW 3356 #define BackupEventLog BackupEventLogW 3357 #define BeginUpdateResource BeginUpdateResourceW 3358 #define BuildCommDCB BuildCommDCBW 3359 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsW 3360 #define CallNamedPipe CallNamedPipeW 3361 #if (_WIN32_WINNT >= 0x0501) 3362 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3W 3363 #endif 3364 #define ClearEventLog ClearEventLogW 3365 #define CommConfigDialog CommConfigDialogW 3366 #define CopyFile CopyFileW 3367 #define CopyFileEx CopyFileExW 3368 #if (_WIN32_WINNT >= 0x0501) 3369 #define CreateActCtx CreateActCtxW 3370 #endif 3371 #define CreateDirectory CreateDirectoryW 3372 #define CreateDirectoryEx CreateDirectoryExW 3373 #define CreateEvent CreateEventW 3374 #define CreateFile CreateFileW 3375 #define CreateFileMapping CreateFileMappingW 3376 #if (_WIN32_WINNT >= 0x0500) 3377 #define CreateHardLink CreateHardLinkW 3378 #define CreateJobObject CreateJobObjectW 3379 #endif 3380 #define CreateMailslot CreateMailslotW 3381 #define CreateMutex CreateMutexW 3382 #define CreateNamedPipe CreateNamedPipeW 3383 #define CreateProcess CreateProcessW 3384 #define CreateProcessAsUser CreateProcessAsUserW 3385 #define CreateSemaphore CreateSemaphoreW 3386 #define CreateWaitableTimer CreateWaitableTimerW 3387 #define DecryptFile DecryptFileW 3388 #define DefineDosDevice DefineDosDeviceW 3389 #define DeleteFile DeleteFileW 3390 #if (_WIN32_WINNT >= 0x0500) 3391 #define DeleteVolumeMountPoint DeleteVolumeMountPointW 3392 #define DnsHostnameToComputerName DnsHostnameToComputerNameW 3393 #endif 3394 #define EncryptFile EncryptFileW 3395 #define EndUpdateResource EndUpdateResourceW 3396 #define EnumResourceLanguages EnumResourceLanguagesW 3397 #define EnumResourceNames EnumResourceNamesW 3398 #define EnumResourceTypes EnumResourceTypesW 3399 #define ExpandEnvironmentStrings ExpandEnvironmentStringsW 3400 #define FatalAppExit FatalAppExitW 3401 #define FileEncryptionStatus FileEncryptionStatusW 3402 #if (_WIN32_WINNT >= 0x0501) 3403 #define FindActCtxSectionString FindActCtxSectionStringW 3404 #endif 3405 #define FindAtom FindAtomW 3406 #define FindFirstChangeNotification FindFirstChangeNotificationW 3407 #define FindFirstFile FindFirstFileW 3408 #define FindFirstFileEx FindFirstFileExW 3409 #if (_WIN32_WINNT >= 0x0500) 3410 #define FindFirstVolume FindFirstVolumeW 3411 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointW 3412 #endif 3413 #define FindNextFile FindNextFileW 3414 #if (_WIN32_WINNT >= 0x0500) 3415 #define FindNextVolume FindNextVolumeW 3416 #define FindNextVolumeMountPoint FindNextVolumeMountPointW 3417 #endif 3418 #define FindResource FindResourceW 3419 #define FindResourceEx FindResourceExW 3420 #define FormatMessage FormatMessageW 3421 #define FreeEnvironmentStrings FreeEnvironmentStringsW 3422 #define GetAtomName GetAtomNameW 3423 #define GetBinaryType GetBinaryTypeW 3424 #define GetCommandLine GetCommandLineW 3425 #define GetCompressedFileSize GetCompressedFileSizeW 3426 #define GetComputerName GetComputerNameW 3427 #if (_WIN32_WINNT >= 0x0500) 3428 #define GetComputerNameEx GetComputerNameExW 3429 #endif 3430 #define GetCurrentDirectory GetCurrentDirectoryW 3431 #define GetDefaultCommConfig GetDefaultCommConfigW 3432 #define GetDiskFreeSpace GetDiskFreeSpaceW 3433 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExW 3434 #if (_WIN32_WINNT >= 0x0502) 3435 #define GetDllDirectory GetDllDirectoryW 3436 #endif 3437 #define GetDriveType GetDriveTypeW 3438 #define GetEnvironmentStrings GetEnvironmentStringsW 3439 #define GetEnvironmentVariable GetEnvironmentVariableW 3440 #define GetFileAttributes GetFileAttributesW 3441 #define GetFileAttributesEx GetFileAttributesExW 3442 #define GetFileSecurity GetFileSecurityW 3443 #if (_WIN32_WINNT >= 0x0600) 3444 #define GetFinalPathNameByHandle GetFinalPathNameByHandleW 3445 #endif 3446 #define GetFullPathName GetFullPathNameW 3447 #define GetLogicalDriveStrings GetLogicalDriveStringsW 3448 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) 3449 #define GetLongPathName GetLongPathNameW 3450 #endif 3451 #define GetModuleFileName GetModuleFileNameW 3452 #define GetModuleHandle GetModuleHandleW 3453 #if (_WIN32_WINNT >= 0x0500) 3454 #define GetModuleHandleEx GetModuleHandleExW 3455 #endif 3456 #define GetNamedPipeHandleState GetNamedPipeHandleStateW 3457 #define GetPrivateProfileInt GetPrivateProfileIntW 3458 #define GetPrivateProfileSection GetPrivateProfileSectionW 3459 #define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesW 3460 #define GetPrivateProfileString GetPrivateProfileStringW 3461 #define GetPrivateProfileStruct GetPrivateProfileStructW 3462 #define GetProfileInt GetProfileIntW 3463 #define GetProfileSection GetProfileSectionW 3464 #define GetProfileString GetProfileStringW 3465 #define GetShortPathName GetShortPathNameW 3466 #define GetStartupInfo GetStartupInfoW 3467 #define GetSystemDirectory GetSystemDirectoryW 3468 #if (_WIN32_WINNT >= 0x0500) 3469 #define GetSystemWindowsDirectory GetSystemWindowsDirectoryW 3470 #endif 3471 #if (_WIN32_WINNT >= 0x0501) 3472 #define GetSystemWow64Directory GetSystemWow64DirectoryW 3473 #endif 3474 #define GetTempFileName GetTempFileNameW 3475 #define GetTempPath GetTempPathW 3476 #define GetUserName GetUserNameW 3477 #define GetVersionEx GetVersionExW 3478 #define GetVolumeInformation GetVolumeInformationW 3479 #define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointW 3480 #define GetVolumePathName GetVolumePathNameW 3481 #define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameW 3482 #define GetWindowsDirectory GetWindowsDirectoryW 3483 #define GlobalAddAtom GlobalAddAtomW 3484 #define GlobalFindAtom GlobalFindAtomW 3485 #define GlobalGetAtomName GlobalGetAtomNameW 3486 #define IsBadStringPtr IsBadStringPtrW 3487 #define LoadLibrary LoadLibraryW 3488 #define LoadLibraryEx LoadLibraryExW 3489 #define LogonUser LogonUserW 3490 #define LogonUserEx LogonUserExW 3491 #define LookupAccountName LookupAccountNameW 3492 #define LookupAccountSid LookupAccountSidW 3493 #define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameW 3494 #define LookupPrivilegeName LookupPrivilegeNameW 3495 #define LookupPrivilegeValue LookupPrivilegeValueW 3496 #define lstrcat lstrcatW 3497 #define lstrcmp lstrcmpW 3498 #define lstrcmpi lstrcmpiW 3499 #define lstrcpy lstrcpyW 3500 #define lstrcpyn lstrcpynW 3501 #define lstrlen lstrlenW 3502 #define MoveFile MoveFileW 3503 #define MoveFileEx MoveFileExW 3504 #define MoveFileWithProgress MoveFileWithProgressW 3505 #define ObjectCloseAuditAlarm ObjectCloseAuditAlarmW 3506 #define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmW 3507 #define ObjectOpenAuditAlarm ObjectOpenAuditAlarmW 3508 #define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmW 3509 #define OpenBackupEventLog OpenBackupEventLogW 3510 #define OpenEvent OpenEventW 3511 #define OpenEventLog OpenEventLogW 3512 #define OpenFileMapping OpenFileMappingW 3513 #define OpenMutex OpenMutexW 3514 #define OpenSemaphore OpenSemaphoreW 3515 #define OutputDebugString OutputDebugStringW 3516 #define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmW 3517 #define QueryDosDevice QueryDosDeviceW 3518 #define ReadEventLog ReadEventLogW 3519 #define RegisterEventSource RegisterEventSourceW 3520 #define RemoveDirectory RemoveDirectoryW 3521 #if (_WIN32_WINNT >= 0x0500) 3522 #define ReplaceFile ReplaceFileW 3523 #endif 3524 #define ReportEvent ReportEventW 3525 #define SearchPath SearchPathW 3526 #define SetComputerName SetComputerNameW 3527 #define SetComputerNameEx SetComputerNameExW 3528 #define SetCurrentDirectory SetCurrentDirectoryW 3529 #define SetDefaultCommConfig SetDefaultCommConfigW 3530 #if (_WIN32_WINNT >= 0x0502) 3531 #define SetDllDirectory SetDllDirectoryW 3532 #endif 3533 #define SetEnvironmentVariable SetEnvironmentVariableW 3534 #define SetFileAttributes SetFileAttributesW 3535 #define SetFileSecurity SetFileSecurityW 3536 #if (_WIN32_WINNT >= 0x0501) 3537 #define SetFileShortName SetFileShortNameW 3538 #endif 3539 #if (_WIN32_WINNT >= 0x0502) 3540 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableW 3541 #endif 3542 #define SetVolumeLabel SetVolumeLabelW 3543 #define SetVolumeMountPoint SetVolumeMountPointW 3544 #define UpdateResource UpdateResourceW 3545 #define VerifyVersionInfo VerifyVersionInfoW 3546 #define WaitNamedPipe WaitNamedPipeW 3547 #define WritePrivateProfileSection WritePrivateProfileSectionW 3548 #define WritePrivateProfileString WritePrivateProfileStringW 3549 #define WritePrivateProfileStruct WritePrivateProfileStructW 3550 #define WriteProfileSection WriteProfileSectionW 3551 #define WriteProfileString WriteProfileStringW 3552 #else 3553 typedef STARTUPINFOA STARTUPINFO,*LPSTARTUPINFO; 3554 typedef WIN32_FIND_DATAA WIN32_FIND_DATA, *PWIN32_FIND_DATA, *LPWIN32_FIND_DATA; 3555 typedef HW_PROFILE_INFOA HW_PROFILE_INFO,*LPHW_PROFILE_INFO; 3556 #if (_WIN32_WINNT >= 0x0501) 3557 typedef ACTCTXA ACTCTX,*PACTCTX; 3558 typedef PCACTCTXA PCACTCTX; 3559 #endif 3560 typedef ENUMRESLANGPROCA ENUMRESLANGPROC; 3561 typedef ENUMRESNAMEPROCA ENUMRESNAMEPROC; 3562 typedef ENUMRESTYPEPROCA ENUMRESTYPEPROC; 3563 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmA 3564 #define AddAtom AddAtomA 3565 #define BackupEventLog BackupEventLogA 3566 #define BeginUpdateResource BeginUpdateResourceA 3567 #define BuildCommDCB BuildCommDCBA 3568 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsA 3569 #define CallNamedPipe CallNamedPipeA 3570 #if (_WIN32_WINNT >= 0x0501) 3571 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3A 3572 #endif 3573 #define ClearEventLog ClearEventLogA 3574 #define CommConfigDialog CommConfigDialogA 3575 #define CopyFile CopyFileA 3576 #define CopyFileEx CopyFileExA 3577 #if (_WIN32_WINNT >= 0x0501) 3578 #define CreateActCtx CreateActCtxA 3579 #endif 3580 #define CreateDirectory CreateDirectoryA 3581 #define CreateDirectoryEx CreateDirectoryExA 3582 #define CreateEvent CreateEventA 3583 #define CreateFile CreateFileA 3584 #define CreateFileMapping CreateFileMappingA 3585 #if (_WIN32_WINNT >= 0x0500) 3586 #define CreateHardLink CreateHardLinkA 3587 #define CreateJobObject CreateJobObjectA 3588 #endif 3589 #define CreateMailslot CreateMailslotA 3590 #define CreateMutex CreateMutexA 3591 #define CreateNamedPipe CreateNamedPipeA 3592 #define CreateProcess CreateProcessA 3593 #define CreateProcessAsUser CreateProcessAsUserA 3594 #define CreateSemaphore CreateSemaphoreA 3595 #define CreateWaitableTimer CreateWaitableTimerA 3596 #define DecryptFile DecryptFileA 3597 #define DefineDosDevice DefineDosDeviceA 3598 #define DeleteFile DeleteFileA 3599 #if (_WIN32_WINNT >= 0x0500) 3600 #define DeleteVolumeMountPoint DeleteVolumeMountPointA 3601 #define DnsHostnameToComputerName DnsHostnameToComputerNameA 3602 #endif 3603 #define EncryptFile EncryptFileA 3604 #define EndUpdateResource EndUpdateResourceA 3605 #define EnumResourceLanguages EnumResourceLanguagesA 3606 #define EnumResourceNames EnumResourceNamesA 3607 #define EnumResourceTypes EnumResourceTypesA 3608 #define ExpandEnvironmentStrings ExpandEnvironmentStringsA 3609 #define FatalAppExit FatalAppExitA 3610 #define FileEncryptionStatus FileEncryptionStatusA 3611 #if (_WIN32_WINNT >= 0x0501) 3612 #define FindActCtxSectionString FindActCtxSectionStringA 3613 #endif 3614 #define FindAtom FindAtomA 3615 #define FindFirstChangeNotification FindFirstChangeNotificationA 3616 #define FindFirstFile FindFirstFileA 3617 #define FindFirstFileEx FindFirstFileExA 3618 #if (_WIN32_WINNT >= 0x0500) 3619 #define FindFirstVolume FindFirstVolumeA 3620 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointA 3621 #endif 3622 #define FindNextFile FindNextFileA 3623 #if (_WIN32_WINNT >= 0x0500) 3624 #define FindNextVolume FindNextVolumeA 3625 #define FindNextVolumeMountPoint FindNextVolumeMountPointA 3626 #endif 3627 #define FindResource FindResourceA 3628 #define FindResourceEx FindResourceExA 3629 #define FormatMessage FormatMessageA 3630 #define FreeEnvironmentStrings FreeEnvironmentStringsA 3631 #define GetAtomName GetAtomNameA 3632 #define GetBinaryType GetBinaryTypeA 3633 #define GetCommandLine GetCommandLineA 3634 #define GetComputerName GetComputerNameA 3635 #if (_WIN32_WINNT >= 0x0500) 3636 #define GetComputerNameEx GetComputerNameExA 3637 #endif 3638 #define GetCompressedFileSize GetCompressedFileSizeA 3639 #define GetCurrentDirectory GetCurrentDirectoryA 3640 #define GetDefaultCommConfig GetDefaultCommConfigA 3641 #define GetDiskFreeSpace GetDiskFreeSpaceA 3642 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExA 3643 #if (_WIN32_WINNT >= 0x0502) 3644 #define GetDllDirectory GetDllDirectoryA 3645 #endif 3646 #define GetDriveType GetDriveTypeA 3647 #define GetEnvironmentStringsA GetEnvironmentStrings 3648 #define GetEnvironmentVariable GetEnvironmentVariableA 3649 #define GetFileAttributes GetFileAttributesA 3650 #define GetFileAttributesEx GetFileAttributesExA 3651 #define GetFileSecurity GetFileSecurityA 3652 #if (_WIN32_WINNT >= 0x0600) 3653 #define GetFinalPathNameByHandle GetFinalPathNameByHandleA 3654 #endif 3655 #define GetFullPathName GetFullPathNameA 3656 #define GetLogicalDriveStrings GetLogicalDriveStringsA 3657 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) 3658 #define GetLongPathName GetLongPathNameA 3659 #endif 3660 #define GetNamedPipeHandleState GetNamedPipeHandleStateA 3661 #define GetModuleHandle GetModuleHandleA 3662 #if (_WIN32_WINNT >= 0x0500) 3663 #define GetModuleHandleEx GetModuleHandleExA 3664 #endif 3665 #define GetModuleFileName GetModuleFileNameA 3666 #define GetPrivateProfileInt GetPrivateProfileIntA 3667 #define GetPrivateProfileSection GetPrivateProfileSectionA 3668 #define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesA 3669 #define GetPrivateProfileString GetPrivateProfileStringA 3670 #define GetPrivateProfileStruct GetPrivateProfileStructA 3671 #define GetProfileInt GetProfileIntA 3672 #define GetProfileSection GetProfileSectionA 3673 #define GetProfileString GetProfileStringA 3674 #define GetShortPathName GetShortPathNameA 3675 #define GetStartupInfo GetStartupInfoA 3676 #define GetSystemDirectory GetSystemDirectoryA 3677 #if (_WIN32_WINNT >= 0x0500) 3678 #define GetSystemWindowsDirectory GetSystemWindowsDirectoryA 3679 #endif 3680 #if (_WIN32_WINNT >= 0x0501) 3681 #define GetSystemWow64Directory GetSystemWow64DirectoryA 3682 #endif 3683 #define GetTempFileName GetTempFileNameA 3684 #define GetTempPath GetTempPathA 3685 #define GetUserName GetUserNameA 3686 #define GetVersionEx GetVersionExA 3687 #define GetVolumeInformation GetVolumeInformationA 3688 #define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointA 3689 #define GetVolumePathName GetVolumePathNameA 3690 #define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameA 3691 #define GetWindowsDirectory GetWindowsDirectoryA 3692 #define GlobalAddAtom GlobalAddAtomA 3693 #define GlobalFindAtom GlobalFindAtomA 3694 #define GlobalGetAtomName GlobalGetAtomNameA 3695 #define IsBadStringPtr IsBadStringPtrA 3696 #define LoadLibrary LoadLibraryA 3697 #define LoadLibraryEx LoadLibraryExA 3698 #define LogonUser LogonUserA 3699 #define LogonUserEx LogonUserExA 3700 #define LookupAccountName LookupAccountNameA 3701 #define LookupAccountSid LookupAccountSidA 3702 #define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameA 3703 #define LookupPrivilegeName LookupPrivilegeNameA 3704 #define LookupPrivilegeValue LookupPrivilegeValueA 3705 #define lstrcat lstrcatA 3706 #define lstrcmp lstrcmpA 3707 #define lstrcmpi lstrcmpiA 3708 #define lstrcpy lstrcpyA 3709 #define lstrcpyn lstrcpynA 3710 #define lstrlen lstrlenA 3711 #define MoveFile MoveFileA 3712 #define MoveFileEx MoveFileExA 3713 #define MoveFileWithProgress MoveFileWithProgressA 3714 #define ObjectCloseAuditAlarm ObjectCloseAuditAlarmA 3715 #define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmA 3716 #define ObjectOpenAuditAlarm ObjectOpenAuditAlarmA 3717 #define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmA 3718 #define OpenBackupEventLog OpenBackupEventLogA 3719 #define OpenEvent OpenEventA 3720 #define OpenEventLog OpenEventLogA 3721 #define OpenFileMapping OpenFileMappingA 3722 #define OpenMutex OpenMutexA 3723 #define OpenSemaphore OpenSemaphoreA 3724 #define OutputDebugString OutputDebugStringA 3725 #define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmA 3726 #define QueryDosDevice QueryDosDeviceA 3727 #define ReadEventLog ReadEventLogA 3728 #define RegisterEventSource RegisterEventSourceA 3729 #define RemoveDirectory RemoveDirectoryA 3730 #if (_WIN32_WINNT >= 0x0500) 3731 #define ReplaceFile ReplaceFileA 3732 #endif 3733 #define ReportEvent ReportEventA 3734 #define SearchPath SearchPathA 3735 #define SetComputerName SetComputerNameA 3736 #define SetComputerNameEx SetComputerNameExA 3737 #define SetCurrentDirectory SetCurrentDirectoryA 3738 #define SetDefaultCommConfig SetDefaultCommConfigA 3739 #if (_WIN32_WINNT >= 0x0502) 3740 #define SetDllDirectory SetDllDirectoryA 3741 #endif 3742 #define SetEnvironmentVariable SetEnvironmentVariableA 3743 #define SetFileAttributes SetFileAttributesA 3744 #define SetFileSecurity SetFileSecurityA 3745 #if (_WIN32_WINNT >= 0x0501) 3746 #define SetFileShortName SetFileShortNameA 3747 #endif 3748 #if (_WIN32_WINNT >= 0x0502) 3749 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableA 3750 #endif 3751 #define SetVolumeLabel SetVolumeLabelA 3752 #define SetVolumeMountPoint SetVolumeMountPointA 3753 #define UpdateResource UpdateResourceA 3754 #define VerifyVersionInfo VerifyVersionInfoA 3755 #define WaitNamedPipe WaitNamedPipeA 3756 #define WritePrivateProfileSection WritePrivateProfileSectionA 3757 #define WritePrivateProfileString WritePrivateProfileStringA 3758 #define WritePrivateProfileStruct WritePrivateProfileStructA 3759 #define WriteProfileSection WriteProfileSectionA 3760 #define WriteProfileString WriteProfileStringA 3761 #endif 3762 #endif 3763 3764 /* one-time initialisation API */ 3765 typedef RTL_RUN_ONCE INIT_ONCE; 3766 typedef PRTL_RUN_ONCE PINIT_ONCE; 3767 typedef PRTL_RUN_ONCE LPINIT_ONCE; 3768 3769 #define INIT_ONCE_CHECK_ONLY RTL_RUN_ONCE_CHECK_ONLY 3770 #define INIT_ONCE_ASYNC RTL_RUN_ONCE_ASYNC 3771 #define INIT_ONCE_INIT_FAILED RTL_RUN_ONCE_INIT_FAILED 3772 3773 typedef BOOL 3774 (WINAPI *PINIT_ONCE_FN)( 3775 _Inout_ PINIT_ONCE InitOnce, 3776 _Inout_opt_ PVOID Parameter, 3777 _Outptr_opt_result_maybenull_ PVOID *Context); 3778 3779 #if _WIN32_WINNT >= 0x0601 3780 3781 #define COPYFILE2_MESSAGE_COPY_OFFLOAD 0x00000001L 3782 3783 typedef enum _COPYFILE2_MESSAGE_TYPE { 3784 COPYFILE2_CALLBACK_NONE = 0, 3785 COPYFILE2_CALLBACK_CHUNK_STARTED, 3786 COPYFILE2_CALLBACK_CHUNK_FINISHED, 3787 COPYFILE2_CALLBACK_STREAM_STARTED, 3788 COPYFILE2_CALLBACK_STREAM_FINISHED, 3789 COPYFILE2_CALLBACK_POLL_CONTINUE, 3790 COPYFILE2_CALLBACK_ERROR, 3791 COPYFILE2_CALLBACK_MAX, 3792 } COPYFILE2_MESSAGE_TYPE; 3793 3794 typedef enum _COPYFILE2_MESSAGE_ACTION { 3795 COPYFILE2_PROGRESS_CONTINUE = 0, 3796 COPYFILE2_PROGRESS_CANCEL, 3797 COPYFILE2_PROGRESS_STOP, 3798 COPYFILE2_PROGRESS_QUIET, 3799 COPYFILE2_PROGRESS_PAUSE, 3800 } COPYFILE2_MESSAGE_ACTION; 3801 3802 typedef enum _COPYFILE2_COPY_PHASE { 3803 COPYFILE2_PHASE_NONE = 0, 3804 COPYFILE2_PHASE_PREPARE_SOURCE, 3805 COPYFILE2_PHASE_PREPARE_DEST, 3806 COPYFILE2_PHASE_READ_SOURCE, 3807 COPYFILE2_PHASE_WRITE_DESTINATION, 3808 COPYFILE2_PHASE_SERVER_COPY, 3809 COPYFILE2_PHASE_NAMEGRAFT_COPY, 3810 COPYFILE2_PHASE_MAX, 3811 } COPYFILE2_COPY_PHASE; 3812 3813 typedef struct COPYFILE2_MESSAGE { 3814 COPYFILE2_MESSAGE_TYPE Type; 3815 DWORD dwPadding; 3816 union { 3817 struct { 3818 DWORD dwStreamNumber; 3819 DWORD dwReserved; 3820 HANDLE hSourceFile; 3821 HANDLE hDestinationFile; 3822 ULARGE_INTEGER uliChunkNumber; 3823 ULARGE_INTEGER uliChunkSize; 3824 ULARGE_INTEGER uliStreamSize; 3825 ULARGE_INTEGER uliTotalFileSize; 3826 } ChunkStarted; 3827 struct { 3828 DWORD dwStreamNumber; 3829 DWORD dwFlags; 3830 HANDLE hSourceFile; 3831 HANDLE hDestinationFile; 3832 ULARGE_INTEGER uliChunkNumber; 3833 ULARGE_INTEGER uliChunkSize; 3834 ULARGE_INTEGER uliStreamSize; 3835 ULARGE_INTEGER uliStreamBytesTransferred; 3836 ULARGE_INTEGER uliTotalFileSize; 3837 ULARGE_INTEGER uliTotalBytesTransferred; 3838 } ChunkFinished; 3839 struct { 3840 DWORD dwStreamNumber; 3841 DWORD dwReserved; 3842 HANDLE hSourceFile; 3843 HANDLE hDestinationFile; 3844 ULARGE_INTEGER uliStreamSize; 3845 ULARGE_INTEGER uliTotalFileSize; 3846 } StreamStarted; 3847 struct { 3848 DWORD dwStreamNumber; 3849 DWORD dwReserved; 3850 HANDLE hSourceFile; 3851 HANDLE hDestinationFile; 3852 ULARGE_INTEGER uliStreamSize; 3853 ULARGE_INTEGER uliStreamBytesTransferred; 3854 ULARGE_INTEGER uliTotalFileSize; 3855 ULARGE_INTEGER uliTotalBytesTransferred; 3856 } StreamFinished; 3857 struct { 3858 DWORD dwReserved; 3859 } PollContinue; 3860 struct { 3861 COPYFILE2_COPY_PHASE CopyPhase; 3862 DWORD dwStreamNumber; 3863 HRESULT hrFailure; 3864 DWORD dwReserved; 3865 ULARGE_INTEGER uliChunkNumber; 3866 ULARGE_INTEGER uliStreamSize; 3867 ULARGE_INTEGER uliStreamBytesTransferred; 3868 ULARGE_INTEGER uliTotalFileSize; 3869 ULARGE_INTEGER uliTotalBytesTransferred; 3870 } Error; 3871 } Info; 3872 } COPYFILE2_MESSAGE; 3873 3874 typedef COPYFILE2_MESSAGE_ACTION 3875 (CALLBACK *PCOPYFILE2_PROGRESS_ROUTINE)( 3876 _In_ const COPYFILE2_MESSAGE *pMessage, 3877 _In_opt_ PVOID pvCallbackContext); 3878 3879 typedef struct COPYFILE2_EXTENDED_PARAMETERS { 3880 DWORD dwSize; 3881 DWORD dwCopyFlags; 3882 BOOL *pfCancel; 3883 PCOPYFILE2_PROGRESS_ROUTINE pProgressRoutine; 3884 PVOID pvCallbackContext; 3885 } COPYFILE2_EXTENDED_PARAMETERS; 3886 3887 WINBASEAPI 3888 HRESULT 3889 WINAPI 3890 CopyFile2( 3891 _In_ PCWSTR pwszExistingFileName, 3892 _In_ PCWSTR pwszNewFileName, 3893 _In_opt_ COPYFILE2_EXTENDED_PARAMETERS *pExtendedParameters); 3894 3895 #endif /* _WIN32_WINNT >= 0x0601 */ 3896 3897 WINBASEAPI 3898 BOOL 3899 WINAPI 3900 InitOnceExecuteOnce( 3901 _Inout_ PINIT_ONCE InitOnce, 3902 _In_ __callback PINIT_ONCE_FN InitFn, 3903 _Inout_opt_ PVOID Parameter, 3904 _Outptr_opt_result_maybenull_ LPVOID *Context); 3905 3906 3907 #if defined(_SLIST_HEADER_) && !defined(_NTOS_) && !defined(_NTOSP_) 3908 3909 WINBASEAPI 3910 VOID 3911 WINAPI 3912 InitializeSListHead( 3913 _Out_ PSLIST_HEADER ListHead); 3914 3915 WINBASEAPI 3916 PSLIST_ENTRY 3917 WINAPI 3918 InterlockedPopEntrySList( 3919 _Inout_ PSLIST_HEADER ListHead); 3920 3921 WINBASEAPI 3922 PSLIST_ENTRY 3923 WINAPI 3924 InterlockedPushEntrySList( 3925 _Inout_ PSLIST_HEADER ListHead, 3926 _Inout_ PSLIST_ENTRY ListEntry); 3927 3928 WINBASEAPI 3929 PSLIST_ENTRY 3930 WINAPI 3931 InterlockedFlushSList( 3932 _Inout_ PSLIST_HEADER ListHead); 3933 3934 WINBASEAPI 3935 USHORT 3936 WINAPI 3937 QueryDepthSList( 3938 _In_ PSLIST_HEADER ListHead); 3939 3940 #endif /* _SLIST_HEADER_ */ 3941 3942 #ifdef _MSC_VER 3943 #pragma warning(pop) 3944 #endif 3945 3946 #ifdef __cplusplus 3947 } 3948 #endif 3949 #endif /* _WINBASE_H */ 3950