[Win32k]
[reactos.git] / reactos / include / psdk / winbase.h
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 #ifdef _MSC_VER
15 #pragma warning(push)
16 #pragma warning(disable:4201)
17 #pragma warning(disable:4214)
18 #pragma warning(disable:4820)
19 #endif
20
21 #define PROCESS_NAME_NATIVE 1
22
23 #define FILE_ENCRYPTABLE 0
24 #define FILE_IS_ENCRYPTED 1
25 #define FILE_SYSTEM_ATTR 2
26 #define FILE_ROOT_DIR 3
27 #define FILE_SYSTEM_DIR 4
28 #define FILE_UNKNOWN 5
29 #define FILE_SYSTEM_NOT_SUPPORT 6
30 #define FILE_USER_DISALLOWED 7
31 #define FILE_READ_ONLY 8
32 #define FILE_DIR_DISALOWED 9
33
34 #define COMMPROP_INITIALIZED 0xE73CF52E
35 #define SP_SERIALCOMM 1
36 #define PST_UNSPECIFIED 0
37 #define PST_RS232 1
38 #define PST_PARALLELPORT 2
39 #define PST_RS422 3
40 #define PST_RS423 4
41 #define PST_RS449 5
42 #define PST_MODEM 6
43 #define PST_FAX 0x21
44 #define PST_SCANNER 0x22
45 #define PST_NETWORK_BRIDGE 0x100
46 #define PST_LAT 0x101
47 #define PST_TCPIP_TELNET 0x102
48 #define PST_X25 0x103
49 #define BAUD_075 1
50 #define BAUD_110 2
51 #define BAUD_134_5 4
52 #define BAUD_150 8
53 #define BAUD_300 16
54 #define BAUD_600 32
55 #define BAUD_1200 64
56 #define BAUD_1800 128
57 #define BAUD_2400 256
58 #define BAUD_4800 512
59 #define BAUD_7200 1024
60 #define BAUD_9600 2048
61 #define BAUD_14400 4096
62 #define BAUD_19200 8192
63 #define BAUD_38400 16384
64 #define BAUD_56K 32768
65 #define BAUD_128K 65536
66 #define BAUD_115200 131072
67 #define BAUD_57600 262144
68 #define BAUD_USER 0x10000000
69 #define PCF_DTRDSR 1
70 #define PCF_RTSCTS 2
71 #define PCF_RLSD 4
72 #define PCF_PARITY_CHECK 8
73 #define PCF_XONXOFF 16
74 #define PCF_SETXCHAR 32
75 #define PCF_TOTALTIMEOUTS 64
76 #define PCF_INTTIMEOUTS 128
77 #define PCF_SPECIALCHARS 256
78 #define PCF_16BITMODE 512
79 #define SP_PARITY 1
80 #define SP_BAUD 2
81 #define SP_DATABITS 4
82 #define SP_STOPBITS 8
83 #define SP_HANDSHAKING 16
84 #define SP_PARITY_CHECK 32
85 #define SP_RLSD 64
86 #define DATABITS_5 1
87 #define DATABITS_6 2
88 #define DATABITS_7 4
89 #define DATABITS_8 8
90 #define DATABITS_16 16
91 #define DATABITS_16X 32
92 #define STOPBITS_10 1
93 #define STOPBITS_15 2
94 #define STOPBITS_20 4
95 #define PARITY_NONE 256
96 #define PARITY_ODD 512
97 #define PARITY_EVEN 1024
98 #define PARITY_MARK 2048
99 #define PARITY_SPACE 4096
100 #define EXCEPTION_DEBUG_EVENT 1
101 #define CREATE_THREAD_DEBUG_EVENT 2
102 #define CREATE_PROCESS_DEBUG_EVENT 3
103 #define EXIT_THREAD_DEBUG_EVENT 4
104 #define EXIT_PROCESS_DEBUG_EVENT 5
105 #define LOAD_DLL_DEBUG_EVENT 6
106 #define UNLOAD_DLL_DEBUG_EVENT 7
107 #define OUTPUT_DEBUG_STRING_EVENT 8
108 #define RIP_EVENT 9
109 #define HFILE_ERROR ((HFILE)-1)
110 #define FILE_BEGIN 0
111 #define FILE_CURRENT 1
112 #define FILE_END 2
113 #define INVALID_SET_FILE_POINTER ((DWORD)-1)
114 #define OF_READ 0
115 #define OF_READWRITE 2
116 #define OF_WRITE 1
117 #define OF_SHARE_COMPAT 0
118 #define OF_SHARE_DENY_NONE 64
119 #define OF_SHARE_DENY_READ 48
120 #define OF_SHARE_DENY_WRITE 32
121 #define OF_SHARE_EXCLUSIVE 16
122 #define OF_CANCEL 2048
123 #define OF_CREATE 4096
124 #define OF_DELETE 512
125 #define OF_EXIST 16384
126 #define OF_PARSE 256
127 #define OF_PROMPT 8192
128 #define OF_REOPEN 32768
129 #define OF_VERIFY 1024
130 #define NMPWAIT_NOWAIT 1
131 #define NMPWAIT_WAIT_FOREVER ((DWORD)-1)
132 #define NMPWAIT_USE_DEFAULT_WAIT 0
133 #define CE_BREAK 16
134 #define CE_DNS 2048
135 #define CE_FRAME 8
136 #define CE_IOE 1024
137 #define CE_MODE 32768
138 #define CE_OOP 4096
139 #define CE_OVERRUN 2
140 #define CE_PTO 512
141 #define CE_RXOVER 1
142 #define CE_RXPARITY 4
143 #define CE_TXFULL 256
144 #define PROGRESS_CONTINUE 0
145 #define PROGRESS_CANCEL 1
146 #define PROGRESS_STOP 2
147 #define PROGRESS_QUIET 3
148 #define CALLBACK_CHUNK_FINISHED 0
149 #define CALLBACK_STREAM_SWITCH 1
150 #define OFS_MAXPATHNAME 128
151 #define FILE_MAP_ALL_ACCESS 0xf001f
152 #define FILE_MAP_READ 4
153 #define FILE_MAP_WRITE 2
154 #define FILE_MAP_COPY 1
155 #define MUTEX_ALL_ACCESS 0x1f0001
156 #define MUTEX_MODIFY_STATE 1
157 #define SEMAPHORE_ALL_ACCESS 0x1f0003
158 #define SEMAPHORE_MODIFY_STATE 2
159 #define EVENT_ALL_ACCESS 0x1f0003
160 #define EVENT_MODIFY_STATE 2
161 #define PIPE_ACCESS_DUPLEX 3
162 #define PIPE_ACCESS_INBOUND 1
163 #define PIPE_ACCESS_OUTBOUND 2
164 #define PIPE_TYPE_BYTE 0
165 #define PIPE_TYPE_MESSAGE 4
166 #define PIPE_READMODE_BYTE 0
167 #define PIPE_READMODE_MESSAGE 2
168 #define PIPE_WAIT 0
169 #define PIPE_NOWAIT 1
170 #define PIPE_CLIENT_END 0
171 #define PIPE_SERVER_END 1
172 #define PIPE_UNLIMITED_INSTANCES 255
173 #define DEBUG_PROCESS 0x00000001
174 #define DEBUG_ONLY_THIS_PROCESS 0x00000002
175 #define CREATE_SUSPENDED 0x00000004
176 #define DETACHED_PROCESS 0x00000008
177 #define CREATE_NEW_CONSOLE 0x00000010
178 #define NORMAL_PRIORITY_CLASS 0x00000020
179 #define IDLE_PRIORITY_CLASS 0x00000040
180 #define HIGH_PRIORITY_CLASS 0x00000080
181 #define REALTIME_PRIORITY_CLASS 0x00000100
182 #define CREATE_NEW_PROCESS_GROUP 0x00000200
183 #define CREATE_UNICODE_ENVIRONMENT 0x00000400
184 #define CREATE_SEPARATE_WOW_VDM 0x00000800
185 #define CREATE_SHARED_WOW_VDM 0x00001000
186 #define CREATE_FORCEDOS 0x00002000
187 #define BELOW_NORMAL_PRIORITY_CLASS 0x00004000
188 #define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000
189 #define CREATE_BREAKAWAY_FROM_JOB 0x01000000
190 #define CREATE_PRESERVE_CODE_AUTHZ_LEVEL 0x02000000
191 #define CREATE_DEFAULT_ERROR_MODE 0x04000000
192 #define CREATE_NO_WINDOW 0x08000000
193 #define PROFILE_USER 0x10000000
194 #define PROFILE_KERNEL 0x20000000
195 #define PROFILE_SERVER 0x40000000
196 #define CONSOLE_TEXTMODE_BUFFER 1
197 #define CREATE_NEW 1
198 #define CREATE_ALWAYS 2
199 #define OPEN_EXISTING 3
200 #define OPEN_ALWAYS 4
201 #define TRUNCATE_EXISTING 5
202 #define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x00000008
203 #define COPY_FILE_FAIL_IF_EXISTS 0x00000001
204 #define COPY_FILE_RESTARTABLE 0x00000002
205 #define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004
206 #define FILE_FLAG_WRITE_THROUGH 0x80000000
207 #define FILE_FLAG_OVERLAPPED 1073741824
208 #define FILE_FLAG_NO_BUFFERING 536870912
209 #define FILE_FLAG_RANDOM_ACCESS 268435456
210 #define FILE_FLAG_SEQUENTIAL_SCAN 134217728
211 #define FILE_FLAG_DELETE_ON_CLOSE 67108864
212 #define FILE_FLAG_BACKUP_SEMANTICS 33554432
213 #define FILE_FLAG_POSIX_SEMANTICS 16777216
214 #define FILE_FLAG_OPEN_REPARSE_POINT 2097152
215 #define FILE_FLAG_OPEN_NO_RECALL 1048576
216 #if (_WIN32_WINNT >= 0x0500)
217 #define FILE_FLAG_FIRST_PIPE_INSTANCE 524288
218 #endif
219 #define CLRDTR 6
220 #define CLRRTS 4
221 #define SETDTR 5
222 #define SETRTS 3
223 #define SETXOFF 1
224 #define SETXON 2
225 #define RESETDEV 7
226 #define SETBREAK 8
227 #define CLRBREAK 9
228 #define STILL_ACTIVE 0x103
229 #define FIND_FIRST_EX_CASE_SENSITIVE 1
230 #define SCS_32BIT_BINARY 0
231 #define SCS_64BIT_BINARY 6
232 #define SCS_DOS_BINARY 1
233 #define SCS_OS216_BINARY 5
234 #define SCS_PIF_BINARY 3
235 #define SCS_POSIX_BINARY 4
236 #define SCS_WOW_BINARY 2
237 #define MAX_COMPUTERNAME_LENGTH 15
238 #define HW_PROFILE_GUIDLEN 39
239 #define MAX_PROFILE_LEN 80
240 #define DOCKINFO_UNDOCKED 1
241 #define DOCKINFO_DOCKED 2
242 #define DOCKINFO_USER_SUPPLIED 4
243 #define DOCKINFO_USER_UNDOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_UNDOCKED)
244 #define DOCKINFO_USER_DOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_DOCKED)
245 #define DRIVE_REMOVABLE 2
246 #define DRIVE_FIXED 3
247 #define DRIVE_REMOTE 4
248 #define DRIVE_CDROM 5
249 #define DRIVE_RAMDISK 6
250 #define DRIVE_UNKNOWN 0
251 #define DRIVE_NO_ROOT_DIR 1
252 #define FILE_TYPE_UNKNOWN 0
253 #define FILE_TYPE_DISK 1
254 #define FILE_TYPE_CHAR 2
255 #define FILE_TYPE_PIPE 3
256 #define FILE_TYPE_REMOTE 0x8000
257 /* also in ddk/ntapi.h */
258 #define HANDLE_FLAG_INHERIT 0x01
259 #define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x02
260 /* end ntapi.h */
261 #define STD_INPUT_HANDLE (DWORD)(0xfffffff6)
262 #define STD_OUTPUT_HANDLE (DWORD)(0xfffffff5)
263 #define STD_ERROR_HANDLE (DWORD)(0xfffffff4)
264 #define INVALID_HANDLE_VALUE (HANDLE)(-1)
265 #define GET_TAPE_MEDIA_INFORMATION 0
266 #define GET_TAPE_DRIVE_INFORMATION 1
267 #define SET_TAPE_MEDIA_INFORMATION 0
268 #define SET_TAPE_DRIVE_INFORMATION 1
269 #define THREAD_PRIORITY_ABOVE_NORMAL 1
270 #define THREAD_PRIORITY_BELOW_NORMAL (-1)
271 #define THREAD_PRIORITY_HIGHEST 2
272 #define THREAD_PRIORITY_IDLE (-15)
273 #define THREAD_PRIORITY_LOWEST (-2)
274 #define THREAD_PRIORITY_NORMAL 0
275 #define THREAD_PRIORITY_TIME_CRITICAL 15
276 #define THREAD_PRIORITY_ERROR_RETURN 2147483647
277 #define TIME_ZONE_ID_UNKNOWN 0
278 #define TIME_ZONE_ID_STANDARD 1
279 #define TIME_ZONE_ID_DAYLIGHT 2
280 #define TIME_ZONE_ID_INVALID 0xFFFFFFFF
281 #define FS_CASE_IS_PRESERVED 2
282 #define FS_CASE_SENSITIVE 1
283 #define FS_UNICODE_STORED_ON_DISK 4
284 #define FS_PERSISTENT_ACLS 8
285 #define FS_FILE_COMPRESSION 16
286 #define FS_VOL_IS_COMPRESSED 32768
287 #define GMEM_FIXED 0
288 #define GMEM_MOVEABLE 2
289 #define GMEM_MODIFY 128
290 #define GPTR 64
291 #define GHND 66
292 #define GMEM_DDESHARE 8192
293 #define GMEM_DISCARDABLE 256
294 #define GMEM_LOWER 4096
295 #define GMEM_NOCOMPACT 16
296 #define GMEM_NODISCARD 32
297 #define GMEM_NOT_BANKED 4096
298 #define GMEM_NOTIFY 16384
299 #define GMEM_SHARE 8192
300 #define GMEM_ZEROINIT 64
301 #define GMEM_DISCARDED 16384
302 #define GMEM_INVALID_HANDLE 32768
303 #define GMEM_LOCKCOUNT 255
304 #define GMEM_VALID_FLAGS 32626
305 #define EXCEPTION_ACCESS_VIOLATION ((DWORD)0xC0000005)
306 #define EXCEPTION_DATATYPE_MISALIGNMENT ((DWORD)0x80000002)
307 #define EXCEPTION_BREAKPOINT ((DWORD)0x80000003)
308 #define EXCEPTION_SINGLE_STEP ((DWORD)0x80000004)
309 #define EXCEPTION_ARRAY_BOUNDS_EXCEEDED ((DWORD)0xC000008C)
310 #define EXCEPTION_FLT_DENORMAL_OPERAND ((DWORD)0xC000008D)
311 #define EXCEPTION_FLT_DIVIDE_BY_ZERO ((DWORD)0xC000008E)
312 #define EXCEPTION_FLT_INEXACT_RESULT ((DWORD)0xC000008F)
313 #define EXCEPTION_FLT_INVALID_OPERATION ((DWORD)0xC0000090)
314 #define EXCEPTION_FLT_OVERFLOW ((DWORD)0xC0000091)
315 #define EXCEPTION_FLT_STACK_CHECK ((DWORD)0xC0000092)
316 #define EXCEPTION_FLT_UNDERFLOW ((DWORD)0xC0000093)
317 #define EXCEPTION_INT_DIVIDE_BY_ZERO ((DWORD)0xC0000094)
318 #define EXCEPTION_INT_OVERFLOW ((DWORD)0xC0000095)
319 #define EXCEPTION_PRIV_INSTRUCTION ((DWORD)0xC0000096)
320 #define EXCEPTION_IN_PAGE_ERROR ((DWORD)0xC0000006)
321 #define EXCEPTION_ILLEGAL_INSTRUCTION ((DWORD)0xC000001D)
322 #define EXCEPTION_NONCONTINUABLE_EXCEPTION ((DWORD)0xC0000025)
323 #define EXCEPTION_STACK_OVERFLOW ((DWORD)0xC00000FD)
324 #define EXCEPTION_INVALID_DISPOSITION ((DWORD)0xC0000026)
325 #define EXCEPTION_GUARD_PAGE ((DWORD)0x80000001)
326 #define EXCEPTION_INVALID_HANDLE ((DWORD)0xC0000008L)
327 #define CONTROL_C_EXIT ((DWORD)0xC000013A)
328 #define PROCESS_HEAP_REGION 1
329 #define PROCESS_HEAP_UNCOMMITTED_RANGE 2
330 #define PROCESS_HEAP_ENTRY_BUSY 4
331 #define PROCESS_HEAP_ENTRY_MOVEABLE 16
332 #define PROCESS_HEAP_ENTRY_DDESHARE 32
333 #define DONT_RESOLVE_DLL_REFERENCES 1
334 #define LOAD_LIBRARY_AS_DATAFILE 2
335 #define LOAD_WITH_ALTERED_SEARCH_PATH 8
336 #define LOAD_IGNORE_CODE_AUTHZ_LEVEL 16
337 #define LOAD_LIBRARY_AS_IMAGE_RESOURCE 32
338 #define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 64
339 #define LMEM_FIXED 0
340 #define LMEM_MOVEABLE 2
341 #define LMEM_NONZEROLHND 2
342 #define LMEM_NONZEROLPTR 0
343 #define LMEM_DISCARDABLE 3840
344 #define LMEM_NOCOMPACT 16
345 #define LMEM_NODISCARD 32
346 #define LMEM_ZEROINIT 64
347 #define LMEM_DISCARDED 16384
348 #define LMEM_MODIFY 128
349 #define LMEM_INVALID_HANDLE 32768
350 #define LMEM_LOCKCOUNT 255
351 #define LMEM_VALID_FLAGS 0x0F72
352 #define LPTR 64
353 #define LHND 66
354 #define NONZEROLHND 2
355 #define NONZEROLPTR 0
356 #define LOCKFILE_FAIL_IMMEDIATELY 1
357 #define LOCKFILE_EXCLUSIVE_LOCK 2
358 #define LOGON32_PROVIDER_DEFAULT 0
359 #define LOGON32_PROVIDER_WINNT35 1
360 #define LOGON32_PROVIDER_WINNT40 2
361 #define LOGON32_PROVIDER_WINNT50 3
362 #define LOGON32_LOGON_INTERACTIVE 2
363 #define LOGON32_LOGON_NETWORK 3
364 #define LOGON32_LOGON_BATCH 4
365 #define LOGON32_LOGON_SERVICE 5
366 #define LOGON32_LOGON_UNLOCK 7
367 #define LOGON32_LOGON_NETWORK_CLEARTEXT 8
368 #define LOGON32_LOGON_NEW_CREDENTIALS 9
369 #define MOVEFILE_REPLACE_EXISTING 1
370 #define MOVEFILE_COPY_ALLOWED 2
371 #define MOVEFILE_DELAY_UNTIL_REBOOT 4
372 #define MOVEFILE_WRITE_THROUGH 8
373 #define MAXIMUM_WAIT_OBJECTS 64
374 #define MAXIMUM_SUSPEND_COUNT 0x7F
375 #define WAIT_OBJECT_0 0
376 #define WAIT_ABANDONED_0 128
377 #ifndef WAIT_TIMEOUT /* also in winerror.h */
378 #define WAIT_TIMEOUT 258
379 #endif
380 #define WAIT_IO_COMPLETION 0xC0
381 #define WAIT_ABANDONED 128
382 #define WAIT_FAILED ((DWORD)0xFFFFFFFF)
383 #define PURGE_TXABORT 1
384 #define PURGE_RXABORT 2
385 #define PURGE_TXCLEAR 4
386 #define PURGE_RXCLEAR 8
387 #define EVENTLOG_SUCCESS 0
388 #define EVENTLOG_FORWARDS_READ 4
389 #define EVENTLOG_BACKWARDS_READ 8
390 #define EVENTLOG_SEEK_READ 2
391 #define EVENTLOG_SEQUENTIAL_READ 1
392 #define EVENTLOG_ERROR_TYPE 1
393 #define EVENTLOG_WARNING_TYPE 2
394 #define EVENTLOG_INFORMATION_TYPE 4
395 #define EVENTLOG_AUDIT_SUCCESS 8
396 #define EVENTLOG_AUDIT_FAILURE 16
397 #define FORMAT_MESSAGE_ALLOCATE_BUFFER 256
398 #define FORMAT_MESSAGE_IGNORE_INSERTS 512
399 #define FORMAT_MESSAGE_FROM_STRING 1024
400 #define FORMAT_MESSAGE_FROM_HMODULE 2048
401 #define FORMAT_MESSAGE_FROM_SYSTEM 4096
402 #define FORMAT_MESSAGE_ARGUMENT_ARRAY 8192
403 #define FORMAT_MESSAGE_MAX_WIDTH_MASK 255
404 #define EV_BREAK 64
405 #define EV_CTS 8
406 #define EV_DSR 16
407 #define EV_ERR 128
408 #define EV_EVENT1 2048
409 #define EV_EVENT2 4096
410 #define EV_PERR 512
411 #define EV_RING 256
412 #define EV_RLSD 32
413 #define EV_RX80FULL 1024
414 #define EV_RXCHAR 1
415 #define EV_RXFLAG 2
416 #define EV_TXEMPTY 4
417 /* also in ddk/ntapi.h */
418 #define SEM_FAILCRITICALERRORS 0x0001
419 #define SEM_NOGPFAULTERRORBOX 0x0002
420 #define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
421 #define SEM_NOOPENFILEERRORBOX 0x8000
422 /* end ntapi.h */
423 #define SLE_ERROR 1
424 #define SLE_MINORERROR 2
425 #define SLE_WARNING 3
426 #define SHUTDOWN_NORETRY 1
427 #define MAXINTATOM 0xC000
428 #define INVALID_ATOM ((ATOM)0)
429 #define IGNORE 0
430 #define INFINITE 0xFFFFFFFF
431 #define NOPARITY 0
432 #define ODDPARITY 1
433 #define EVENPARITY 2
434 #define MARKPARITY 3
435 #define SPACEPARITY 4
436 #define ONESTOPBIT 0
437 #define ONE5STOPBITS 1
438 #define TWOSTOPBITS 2
439 #define CBR_110 110
440 #define CBR_300 300
441 #define CBR_600 600
442 #define CBR_1200 1200
443 #define CBR_2400 2400
444 #define CBR_4800 4800
445 #define CBR_9600 9600
446 #define CBR_14400 14400
447 #define CBR_19200 19200
448 #define CBR_38400 38400
449 #define CBR_56000 56000
450 #define CBR_57600 57600
451 #define CBR_115200 115200
452 #define CBR_128000 128000
453 #define CBR_256000 256000
454 #define BACKUP_INVALID 0
455 #define BACKUP_DATA 1
456 #define BACKUP_EA_DATA 2
457 #define BACKUP_SECURITY_DATA 3
458 #define BACKUP_ALTERNATE_DATA 4
459 #define BACKUP_LINK 5
460 #define BACKUP_PROPERTY_DATA 6
461 #define BACKUP_OBJECT_ID 7
462 #define BACKUP_REPARSE_DATA 8
463 #define BACKUP_SPARSE_BLOCK 9
464 #define STREAM_NORMAL_ATTRIBUTE 0
465 #define STREAM_MODIFIED_WHEN_READ 1
466 #define STREAM_CONTAINS_SECURITY 2
467 #define STREAM_CONTAINS_PROPERTIES 4
468 #define STARTF_USESHOWWINDOW 1
469 #define STARTF_USESIZE 2
470 #define STARTF_USEPOSITION 4
471 #define STARTF_USECOUNTCHARS 8
472 #define STARTF_USEFILLATTRIBUTE 16
473 #define STARTF_RUNFULLSCREEN 32
474 #define STARTF_FORCEONFEEDBACK 64
475 #define STARTF_FORCEOFFFEEDBACK 128
476 #define STARTF_USESTDHANDLES 256
477 #define STARTF_USEHOTKEY 512
478 #define TC_NORMAL 0
479 #define TC_HARDERR 1
480 #define TC_GP_TRAP 2
481 #define TC_SIGNAL 3
482 #define AC_LINE_OFFLINE 0
483 #define AC_LINE_ONLINE 1
484 #define AC_LINE_BACKUP_POWER 2
485 #define AC_LINE_UNKNOWN 255
486 #define BATTERY_FLAG_HIGH 1
487 #define BATTERY_FLAG_LOW 2
488 #define BATTERY_FLAG_CRITICAL 4
489 #define BATTERY_FLAG_CHARGING 8
490 #define BATTERY_FLAG_NO_BATTERY 128
491 #define BATTERY_FLAG_UNKNOWN 255
492 #define BATTERY_PERCENTAGE_UNKNOWN 255
493 #define BATTERY_LIFE_UNKNOWN 0xFFFFFFFF
494 #define DDD_RAW_TARGET_PATH 1
495 #define DDD_REMOVE_DEFINITION 2
496 #define DDD_EXACT_MATCH_ON_REMOVE 4
497 #define DDD_NO_BROADCAST_SYSTEM 8
498 #define DDD_LUID_BROADCAST_DRIVE 16
499 #define HINSTANCE_ERROR 32
500 #define MS_CTS_ON 16
501 #define MS_DSR_ON 32
502 #define MS_RING_ON 64
503 #define MS_RLSD_ON 128
504 #define DTR_CONTROL_DISABLE 0
505 #define DTR_CONTROL_ENABLE 1
506 #define DTR_CONTROL_HANDSHAKE 2
507 #define RTS_CONTROL_DISABLE 0
508 #define RTS_CONTROL_ENABLE 1
509 #define RTS_CONTROL_HANDSHAKE 2
510 #define RTS_CONTROL_TOGGLE 3
511 #define SECURITY_ANONYMOUS (SecurityAnonymous<<16)
512 #define SECURITY_IDENTIFICATION (SecurityIdentification<<16)
513 #define SECURITY_IMPERSONATION (SecurityImpersonation<<16)
514 #define SECURITY_DELEGATION (SecurityDelegation<<16)
515 #define SECURITY_CONTEXT_TRACKING 0x40000
516 #define SECURITY_EFFECTIVE_ONLY 0x80000
517 #define SECURITY_SQOS_PRESENT 0x100000
518 #define SECURITY_VALID_SQOS_FLAGS 0x1F0000
519 #define INVALID_FILE_SIZE 0xFFFFFFFF
520 #define TLS_OUT_OF_INDEXES (DWORD)0xFFFFFFFF
521 #if (_WIN32_WINNT >= 0x0501)
522 #define ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID 0x00000001
523 #define ACTCTX_FLAG_LANGID_VALID 0x00000002
524 #define ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID 0x00000004
525 #define ACTCTX_FLAG_RESOURCE_NAME_VALID 0x00000008
526 #define ACTCTX_FLAG_SET_PROCESS_DEFAULT 0x00000010
527 #define ACTCTX_FLAG_APPLICATION_NAME_VALID 0x00000020
528 #define ACTCTX_FLAG_SOURCE_IS_ASSEMBLYREF 0x00000040
529 #define ACTCTX_FLAG_HMODULE_VALID 0x00000080
530 #define DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION 0x00000001
531 #define FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX 0x00000001
532 #define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX 0x00000004
533 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE 0x00000008
534 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS 0x00000010
535 #define QUERY_ACTCTX_FLAG_NO_ADDREF 0x80000000
536 #if (_WIN32_WINNT >= 0x0600)
537 #define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1
538 #endif
539 #endif /* (_WIN32_WINNT >= 0x0501) */
540 #if (_WIN32_WINNT >= 0x0500)
541 #define REPLACEFILE_WRITE_THROUGH 0x00000001
542 #define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002
543 #endif /* (_WIN32_WINNT >= 0x0500) */
544 #if (_WIN32_WINNT >= 0x0400)
545 #define FIBER_FLAG_FLOAT_SWITCH 0x1
546 #endif
547 #define FLS_OUT_OF_INDEXES 0xFFFFFFFF
548 #define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
549 #if (_WIN32_WINNT >= 0x0600)
550 #define MAX_RESTART_CMD_LINE 0x800
551 #define RESTART_CYCLICAL 0x1
552 #define RESTART_NOTIFY_SOLUTION 0x2
553 #define RESTART_NOTIFY_FAULT 0x4
554 #define VOLUME_NAME_DOS 0x0
555 #define VOLUME_NAME_GUID 0x1
556 #define VOLUME_NAME_NT 0x2
557 #define VOLUME_NAME_NONE 0x4
558 #define FILE_NAME_NORMALIZED 0x0
559 #define FILE_NAME_OPENED 0x8
560 #define FILE_SKIP_COMPLETION_PORT_ON_SUCCESS 0x1
561 #define FILE_SKIP_SET_EVENT_ON_HANDLE 0x2
562 #endif
563 #if (_WIN32_WINNT >= 0x0500)
564 #define GET_MODULE_HANDLE_EX_FLAG_PIN 0x1
565 #define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT 0x2
566 #define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 0x4
567 #endif
568 #if (_WIN32_WINNT >= 0x0600)
569 #define CREATE_EVENT_MANUAL_RESET 0x1
570 #define CREATE_EVENT_INITIAL_SET 0x2
571 #define CREATE_MUTEX_INITIAL_OWNER 0x1
572 #define CREATE_WAITABLE_TIMER_MANUAL_RESET 0x1
573 #define SRWLOCK_INIT RTL_SRWLOCK_INIT
574 #define CONDITION_VARIABLE_INIT RTL_CONDITION_VARIABLE_INIT
575 #define CONDITION_VARIABLE_LOCKMODE_SHARED RTL_CONDITION_VARIABLE_LOCKMODE_SHARED
576 #endif
577
578 #ifndef RC_INVOKED
579
580 #ifndef _FILETIME_
581 #define _FILETIME_
582 typedef struct _FILETIME {
583 DWORD dwLowDateTime;
584 DWORD dwHighDateTime;
585 } FILETIME,*PFILETIME,*LPFILETIME;
586 #endif
587
588 typedef struct _BY_HANDLE_FILE_INFORMATION {
589 DWORD dwFileAttributes;
590 FILETIME ftCreationTime;
591 FILETIME ftLastAccessTime;
592 FILETIME ftLastWriteTime;
593 DWORD dwVolumeSerialNumber;
594 DWORD nFileSizeHigh;
595 DWORD nFileSizeLow;
596 DWORD nNumberOfLinks;
597 DWORD nFileIndexHigh;
598 DWORD nFileIndexLow;
599 } BY_HANDLE_FILE_INFORMATION,*PBY_HANDLE_FILE_INFORMATION,*LPBY_HANDLE_FILE_INFORMATION;
600
601 typedef struct _DCB {
602 DWORD DCBlength;
603 DWORD BaudRate;
604 DWORD fBinary:1;
605 DWORD fParity:1;
606 DWORD fOutxCtsFlow:1;
607 DWORD fOutxDsrFlow:1;
608 DWORD fDtrControl:2;
609 DWORD fDsrSensitivity:1;
610 DWORD fTXContinueOnXoff:1;
611 DWORD fOutX:1;
612 DWORD fInX:1;
613 DWORD fErrorChar:1;
614 DWORD fNull:1;
615 DWORD fRtsControl:2;
616 DWORD fAbortOnError:1;
617 DWORD fDummy2:17;
618 WORD wReserved;
619 WORD XonLim;
620 WORD XoffLim;
621 BYTE ByteSize;
622 BYTE Parity;
623 BYTE StopBits;
624 char XonChar;
625 char XoffChar;
626 char ErrorChar;
627 char EofChar;
628 char EvtChar;
629 WORD wReserved1;
630 } DCB,*LPDCB;
631
632 typedef struct _COMM_CONFIG {
633 DWORD dwSize;
634 WORD wVersion;
635 WORD wReserved;
636 DCB dcb;
637 DWORD dwProviderSubType;
638 DWORD dwProviderOffset;
639 DWORD dwProviderSize;
640 WCHAR wcProviderData[1];
641 } COMMCONFIG,*LPCOMMCONFIG;
642
643 typedef struct _COMMPROP {
644 WORD wPacketLength;
645 WORD wPacketVersion;
646 DWORD dwServiceMask;
647 DWORD dwReserved1;
648 DWORD dwMaxTxQueue;
649 DWORD dwMaxRxQueue;
650 DWORD dwMaxBaud;
651 DWORD dwProvSubType;
652 DWORD dwProvCapabilities;
653 DWORD dwSettableParams;
654 DWORD dwSettableBaud;
655 WORD wSettableData;
656 WORD wSettableStopParity;
657 DWORD dwCurrentTxQueue;
658 DWORD dwCurrentRxQueue;
659 DWORD dwProvSpec1;
660 DWORD dwProvSpec2;
661 WCHAR wcProvChar[1];
662 } COMMPROP,*LPCOMMPROP;
663
664 typedef struct _COMMTIMEOUTS {
665 DWORD ReadIntervalTimeout;
666 DWORD ReadTotalTimeoutMultiplier;
667 DWORD ReadTotalTimeoutConstant;
668 DWORD WriteTotalTimeoutMultiplier;
669 DWORD WriteTotalTimeoutConstant;
670 } COMMTIMEOUTS,*LPCOMMTIMEOUTS;
671
672 typedef struct _COMSTAT {
673 DWORD fCtsHold:1;
674 DWORD fDsrHold:1;
675 DWORD fRlsdHold:1;
676 DWORD fXoffHold:1;
677 DWORD fXoffSent:1;
678 DWORD fEof:1;
679 DWORD fTxim:1;
680 DWORD fReserved:25;
681 DWORD cbInQue;
682 DWORD cbOutQue;
683 } COMSTAT,*LPCOMSTAT;
684
685 typedef DWORD (WINAPI *LPTHREAD_START_ROUTINE)(LPVOID);
686
687 typedef struct _CREATE_PROCESS_DEBUG_INFO {
688 HANDLE hFile;
689 HANDLE hProcess;
690 HANDLE hThread;
691 LPVOID lpBaseOfImage;
692 DWORD dwDebugInfoFileOffset;
693 DWORD nDebugInfoSize;
694 LPVOID lpThreadLocalBase;
695 LPTHREAD_START_ROUTINE lpStartAddress;
696 LPVOID lpImageName;
697 WORD fUnicode;
698 } CREATE_PROCESS_DEBUG_INFO,*LPCREATE_PROCESS_DEBUG_INFO;
699
700 typedef struct _CREATE_THREAD_DEBUG_INFO {
701 HANDLE hThread;
702 LPVOID lpThreadLocalBase;
703 LPTHREAD_START_ROUTINE lpStartAddress;
704 } CREATE_THREAD_DEBUG_INFO,*LPCREATE_THREAD_DEBUG_INFO;
705
706 typedef struct _EXCEPTION_DEBUG_INFO {
707 EXCEPTION_RECORD ExceptionRecord;
708 DWORD dwFirstChance;
709 } EXCEPTION_DEBUG_INFO,*LPEXCEPTION_DEBUG_INFO;
710
711 typedef struct _EXIT_THREAD_DEBUG_INFO {
712 DWORD dwExitCode;
713 } EXIT_THREAD_DEBUG_INFO,*LPEXIT_THREAD_DEBUG_INFO;
714
715 typedef struct _EXIT_PROCESS_DEBUG_INFO {
716 DWORD dwExitCode;
717 } EXIT_PROCESS_DEBUG_INFO,*LPEXIT_PROCESS_DEBUG_INFO;
718
719 typedef struct _LOAD_DLL_DEBUG_INFO {
720 HANDLE hFile;
721 LPVOID lpBaseOfDll;
722 DWORD dwDebugInfoFileOffset;
723 DWORD nDebugInfoSize;
724 LPVOID lpImageName;
725 WORD fUnicode;
726 } LOAD_DLL_DEBUG_INFO,*LPLOAD_DLL_DEBUG_INFO;
727
728 typedef struct _UNLOAD_DLL_DEBUG_INFO {
729 LPVOID lpBaseOfDll;
730 } UNLOAD_DLL_DEBUG_INFO,*LPUNLOAD_DLL_DEBUG_INFO;
731
732 typedef struct _OUTPUT_DEBUG_STRING_INFO {
733 LPSTR lpDebugStringData;
734 WORD fUnicode;
735 WORD nDebugStringLength;
736 } OUTPUT_DEBUG_STRING_INFO,*LPOUTPUT_DEBUG_STRING_INFO;
737
738 typedef struct _RIP_INFO {
739 DWORD dwError;
740 DWORD dwType;
741 } RIP_INFO,*LPRIP_INFO;
742
743 typedef struct _DEBUG_EVENT {
744 DWORD dwDebugEventCode;
745 DWORD dwProcessId;
746 DWORD dwThreadId;
747 union {
748 EXCEPTION_DEBUG_INFO Exception;
749 CREATE_THREAD_DEBUG_INFO CreateThread;
750 CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
751 EXIT_THREAD_DEBUG_INFO ExitThread;
752 EXIT_PROCESS_DEBUG_INFO ExitProcess;
753 LOAD_DLL_DEBUG_INFO LoadDll;
754 UNLOAD_DLL_DEBUG_INFO UnloadDll;
755 OUTPUT_DEBUG_STRING_INFO DebugString;
756 RIP_INFO RipInfo;
757 } u;
758 } DEBUG_EVENT,*LPDEBUG_EVENT;
759
760 typedef struct _OVERLAPPED {
761 ULONG_PTR Internal;
762 ULONG_PTR InternalHigh;
763 DWORD Offset;
764 DWORD OffsetHigh;
765 HANDLE hEvent;
766 } OVERLAPPED,*POVERLAPPED,*LPOVERLAPPED;
767
768 typedef struct _STARTUPINFOA {
769 DWORD cb;
770 LPSTR lpReserved;
771 LPSTR lpDesktop;
772 LPSTR lpTitle;
773 DWORD dwX;
774 DWORD dwY;
775 DWORD dwXSize;
776 DWORD dwYSize;
777 DWORD dwXCountChars;
778 DWORD dwYCountChars;
779 DWORD dwFillAttribute;
780 DWORD dwFlags;
781 WORD wShowWindow;
782 WORD cbReserved2;
783 PBYTE lpReserved2;
784 HANDLE hStdInput;
785 HANDLE hStdOutput;
786 HANDLE hStdError;
787 } STARTUPINFOA,*LPSTARTUPINFOA;
788
789 typedef struct _STARTUPINFOW {
790 DWORD cb;
791 LPWSTR lpReserved;
792 LPWSTR lpDesktop;
793 LPWSTR lpTitle;
794 DWORD dwX;
795 DWORD dwY;
796 DWORD dwXSize;
797 DWORD dwYSize;
798 DWORD dwXCountChars;
799 DWORD dwYCountChars;
800 DWORD dwFillAttribute;
801 DWORD dwFlags;
802 WORD wShowWindow;
803 WORD cbReserved2;
804 PBYTE lpReserved2;
805 HANDLE hStdInput;
806 HANDLE hStdOutput;
807 HANDLE hStdError;
808 } STARTUPINFOW,*LPSTARTUPINFOW;
809
810 typedef struct _PROCESS_INFORMATION {
811 HANDLE hProcess;
812 HANDLE hThread;
813 DWORD dwProcessId;
814 DWORD dwThreadId;
815 } PROCESS_INFORMATION,*PPROCESS_INFORMATION,*LPPROCESS_INFORMATION;
816
817 typedef struct _CRITICAL_SECTION_DEBUG {
818 WORD Type;
819 WORD CreatorBackTraceIndex;
820 struct _CRITICAL_SECTION *CriticalSection;
821 LIST_ENTRY ProcessLocksList;
822 DWORD EntryCount;
823 DWORD ContentionCount;
824 //#ifdef __WINESRC__ //not all wine code is marked so
825 DWORD_PTR Spare[8/sizeof(DWORD_PTR)];/* in Wine they store a string here */
826 //#else
827 //WORD SpareWORD;
828 //#endif
829 } CRITICAL_SECTION_DEBUG,*PCRITICAL_SECTION_DEBUG,*LPCRITICAL_SECTION_DEBUG;
830
831 typedef struct _CRITICAL_SECTION {
832 PCRITICAL_SECTION_DEBUG DebugInfo;
833 LONG LockCount;
834 LONG RecursionCount;
835 HANDLE OwningThread;
836 HANDLE LockSemaphore;
837 ULONG_PTR SpinCount;
838 } CRITICAL_SECTION,*PCRITICAL_SECTION,*LPCRITICAL_SECTION;
839
840 #ifndef _SYSTEMTIME_
841 #define _SYSTEMTIME_
842 typedef struct _SYSTEMTIME {
843 WORD wYear;
844 WORD wMonth;
845 WORD wDayOfWeek;
846 WORD wDay;
847 WORD wHour;
848 WORD wMinute;
849 WORD wSecond;
850 WORD wMilliseconds;
851 } SYSTEMTIME,*LPSYSTEMTIME,*PSYSTEMTIME;
852 #endif /* _SYSTEMTIME_ */
853 #if (_WIN32_WINNT >= 0x0500)
854 typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK ;
855 #endif
856 typedef struct _WIN32_FILE_ATTRIBUTE_DATA {
857 DWORD dwFileAttributes;
858 FILETIME ftCreationTime;
859 FILETIME ftLastAccessTime;
860 FILETIME ftLastWriteTime;
861 DWORD nFileSizeHigh;
862 DWORD nFileSizeLow;
863 } WIN32_FILE_ATTRIBUTE_DATA,*LPWIN32_FILE_ATTRIBUTE_DATA;
864 typedef struct _WIN32_FIND_DATAA {
865 DWORD dwFileAttributes;
866 FILETIME ftCreationTime;
867 FILETIME ftLastAccessTime;
868 FILETIME ftLastWriteTime;
869 DWORD nFileSizeHigh;
870 DWORD nFileSizeLow;
871 DWORD dwReserved0;
872 DWORD dwReserved1;
873 CHAR cFileName[MAX_PATH];
874 CHAR cAlternateFileName[14];
875 } WIN32_FIND_DATAA,*PWIN32_FIND_DATAA,*LPWIN32_FIND_DATAA;
876 typedef struct _WIN32_FIND_DATAW {
877 DWORD dwFileAttributes;
878 FILETIME ftCreationTime;
879 FILETIME ftLastAccessTime;
880 FILETIME ftLastWriteTime;
881 DWORD nFileSizeHigh;
882 DWORD nFileSizeLow;
883 DWORD dwReserved0;
884 DWORD dwReserved1;
885 WCHAR cFileName[MAX_PATH];
886 WCHAR cAlternateFileName[14];
887 } WIN32_FIND_DATAW,*PWIN32_FIND_DATAW,*LPWIN32_FIND_DATAW;
888
889 #if (_WIN32_WINNT >= 0x0501)
890 typedef enum _STREAM_INFO_LEVELS {
891 FindStreamInfoStandard
892 } STREAM_INFO_LEVELS;
893
894 typedef struct _WIN32_FIND_STREAM_DATA {
895 LARGE_INTEGER StreamSize;
896 WCHAR cStreamName[MAX_PATH + 36];
897 } WIN32_FIND_STREAM_DATA, *PWIN32_FIND_STREAM_DATA;
898 #endif
899
900 typedef struct _WIN32_STREAM_ID {
901 DWORD dwStreamId;
902 DWORD dwStreamAttributes;
903 LARGE_INTEGER Size;
904 DWORD dwStreamNameSize;
905 WCHAR cStreamName[ANYSIZE_ARRAY];
906 } WIN32_STREAM_ID, *LPWIN32_STREAM_ID;
907
908 #if (_WIN32_WINNT >= 0x0600)
909 typedef enum _FILE_ID_TYPE {
910 FileIdType,
911 MaximumFileIdType
912 } FILE_ID_TYPE, *PFILE_ID_TYPE;
913
914 typedef struct _FILE_ID_DESCRIPTOR {
915 DWORD dwSize;
916 FILE_ID_TYPE Type;
917 _ANONYMOUS_UNION union {
918 LARGE_INTEGER FileID;
919 } DUMMYUNIONNAME;
920 } FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR;
921 #endif
922
923 typedef enum _FINDEX_INFO_LEVELS {
924 FindExInfoStandard,
925 FindExInfoMaxInfoLevel
926 } FINDEX_INFO_LEVELS;
927
928 typedef enum _FINDEX_SEARCH_OPS {
929 FindExSearchNameMatch,
930 FindExSearchLimitToDirectories,
931 FindExSearchLimitToDevices,
932 FindExSearchMaxSearchOp
933 } FINDEX_SEARCH_OPS;
934
935 typedef struct tagHW_PROFILE_INFOA {
936 DWORD dwDockInfo;
937 CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN];
938 CHAR szHwProfileName[MAX_PROFILE_LEN];
939 } HW_PROFILE_INFOA,*LPHW_PROFILE_INFOA;
940
941 typedef struct tagHW_PROFILE_INFOW {
942 DWORD dwDockInfo;
943 WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN];
944 WCHAR szHwProfileName[MAX_PROFILE_LEN];
945 } HW_PROFILE_INFOW,*LPHW_PROFILE_INFOW;
946
947 /* Event Logging */
948
949 #define EVENTLOG_FULL_INFO 0
950
951 typedef struct _EVENTLOG_FULL_INFORMATION {
952 DWORD dwFull;
953 } EVENTLOG_FULL_INFORMATION, *LPEVENTLOG_FULL_INFORMATION;
954
955 typedef enum _GET_FILEEX_INFO_LEVELS {
956 GetFileExInfoStandard,
957 GetFileExMaxInfoLevel
958 } GET_FILEEX_INFO_LEVELS;
959
960 typedef struct _SYSTEM_INFO {
961 _ANONYMOUS_UNION union {
962 DWORD dwOemId;
963 _ANONYMOUS_STRUCT struct {
964 WORD wProcessorArchitecture;
965 WORD wReserved;
966 } DUMMYSTRUCTNAME;
967 } DUMMYUNIONNAME;
968 DWORD dwPageSize;
969 PVOID lpMinimumApplicationAddress;
970 PVOID lpMaximumApplicationAddress;
971 DWORD_PTR dwActiveProcessorMask;
972 DWORD dwNumberOfProcessors;
973 DWORD dwProcessorType;
974 DWORD dwAllocationGranularity;
975 WORD wProcessorLevel;
976 WORD wProcessorRevision;
977 } SYSTEM_INFO,*LPSYSTEM_INFO;
978
979 typedef struct _SYSTEM_POWER_STATUS {
980 BYTE ACLineStatus;
981 BYTE BatteryFlag;
982 BYTE BatteryLifePercent;
983 BYTE Reserved1;
984 DWORD BatteryLifeTime;
985 DWORD BatteryFullLifeTime;
986 } SYSTEM_POWER_STATUS,*LPSYSTEM_POWER_STATUS;
987
988 typedef struct _TIME_ZONE_INFORMATION {
989 LONG Bias;
990 WCHAR StandardName[32];
991 SYSTEMTIME StandardDate;
992 LONG StandardBias;
993 WCHAR DaylightName[32];
994 SYSTEMTIME DaylightDate;
995 LONG DaylightBias;
996 } TIME_ZONE_INFORMATION,*PTIME_ZONE_INFORMATION,*LPTIME_ZONE_INFORMATION;
997
998 typedef struct _MEMORYSTATUS {
999 DWORD dwLength;
1000 DWORD dwMemoryLoad;
1001 DWORD dwTotalPhys;
1002 DWORD dwAvailPhys;
1003 DWORD dwTotalPageFile;
1004 DWORD dwAvailPageFile;
1005 DWORD dwTotalVirtual;
1006 DWORD dwAvailVirtual;
1007 } MEMORYSTATUS,*LPMEMORYSTATUS;
1008
1009 #if (_WIN32_WINNT >= 0x0500)
1010 typedef struct _MEMORYSTATUSEX {
1011 DWORD dwLength;
1012 DWORD dwMemoryLoad;
1013 DWORDLONG ullTotalPhys;
1014 DWORDLONG ullAvailPhys;
1015 DWORDLONG ullTotalPageFile;
1016 DWORDLONG ullAvailPageFile;
1017 DWORDLONG ullTotalVirtual;
1018 DWORDLONG ullAvailVirtual;
1019 DWORDLONG ullAvailExtendedVirtual;
1020 } MEMORYSTATUSEX, *LPMEMORYSTATUSEX;
1021 #endif
1022
1023 #ifndef _LDT_ENTRY_DEFINED
1024 #define _LDT_ENTRY_DEFINED
1025 typedef struct _LDT_ENTRY {
1026 WORD LimitLow;
1027 WORD BaseLow;
1028 union {
1029 struct {
1030 BYTE BaseMid;
1031 BYTE Flags1;
1032 BYTE Flags2;
1033 BYTE BaseHi;
1034 } Bytes;
1035 struct {
1036 DWORD BaseMid:8;
1037 DWORD Type:5;
1038 DWORD Dpl:2;
1039 DWORD Pres:1;
1040 DWORD LimitHi:4;
1041 DWORD Sys:1;
1042 DWORD Reserved_0:1;
1043 DWORD Default_Big:1;
1044 DWORD Granularity:1;
1045 DWORD BaseHi:8;
1046 } Bits;
1047 } HighWord;
1048 } LDT_ENTRY,*PLDT_ENTRY,*LPLDT_ENTRY;
1049 #endif
1050
1051 typedef struct _PROCESS_HEAP_ENTRY {
1052 PVOID lpData;
1053 DWORD cbData;
1054 BYTE cbOverhead;
1055 BYTE iRegionIndex;
1056 WORD wFlags;
1057 _ANONYMOUS_UNION union {
1058 struct {
1059 HANDLE hMem;
1060 DWORD dwReserved[3];
1061 } Block;
1062 struct {
1063 DWORD dwCommittedSize;
1064 DWORD dwUnCommittedSize;
1065 LPVOID lpFirstBlock;
1066 LPVOID lpLastBlock;
1067 } Region;
1068 } DUMMYUNIONNAME;
1069 } PROCESS_HEAP_ENTRY,*PPROCESS_HEAP_ENTRY,*LPPROCESS_HEAP_ENTRY;
1070
1071 typedef struct _OFSTRUCT {
1072 BYTE cBytes;
1073 BYTE fFixedDisk;
1074 WORD nErrCode;
1075 WORD Reserved1;
1076 WORD Reserved2;
1077 CHAR szPathName[OFS_MAXPATHNAME];
1078 } OFSTRUCT,*LPOFSTRUCT,*POFSTRUCT;
1079
1080 #if (_WIN32_WINNT >= 0x0501)
1081 typedef struct tagACTCTXA {
1082 ULONG cbSize;
1083 DWORD dwFlags;
1084 LPCSTR lpSource;
1085 USHORT wProcessorArchitecture;
1086 LANGID wLangId;
1087 LPCSTR lpAssemblyDirectory;
1088 LPCSTR lpResourceName;
1089 LPCSTR lpApplicationName;
1090 HMODULE hModule;
1091 } ACTCTXA,*PACTCTXA;
1092 typedef const ACTCTXA *PCACTCTXA;
1093
1094 typedef struct tagACTCTXW {
1095 ULONG cbSize;
1096 DWORD dwFlags;
1097 LPCWSTR lpSource;
1098 USHORT wProcessorArchitecture;
1099 LANGID wLangId;
1100 LPCWSTR lpAssemblyDirectory;
1101 LPCWSTR lpResourceName;
1102 LPCWSTR lpApplicationName;
1103 HMODULE hModule;
1104 } ACTCTXW,*PACTCTXW;
1105 typedef const ACTCTXW *PCACTCTXW;
1106
1107 typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 {
1108 ULONG cbSize;
1109 ULONG ulDataFormatVersion;
1110 PVOID lpData;
1111 ULONG ulLength;
1112 PVOID lpSectionGlobalData;
1113 ULONG ulSectionGlobalDataLength;
1114 PVOID lpSectionBase;
1115 ULONG ulSectionTotalLength;
1116 HANDLE hActCtx;
1117 ULONG ulAssemblyRosterIndex;
1118 } ACTCTX_SECTION_KEYED_DATA_2600, *PACTCTX_SECTION_KEYED_DATA_2600;
1119 typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600;
1120
1121 typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA {
1122 PVOID lpInformation;
1123 PVOID lpSectionBase;
1124 ULONG ulSectionLength;
1125 PVOID lpSectionGlobalDataBase;
1126 ULONG ulSectionGlobalDataLength;
1127 } ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
1128 typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
1129
1130 typedef struct tagACTCTX_SECTION_KEYED_DATA {
1131 ULONG cbSize;
1132 ULONG ulDataFormatVersion;
1133 PVOID lpData;
1134 ULONG ulLength;
1135 PVOID lpSectionGlobalData;
1136 ULONG ulSectionGlobalDataLength;
1137 PVOID lpSectionBase;
1138 ULONG ulSectionTotalLength;
1139 HANDLE hActCtx;
1140 ULONG ulAssemblyRosterIndex;
1141 /* Non 2600 extra fields */
1142 ULONG ulFlags;
1143 ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
1144 } ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA;
1145
1146 typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA;
1147
1148 typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION {
1149 HANDLE hActCtx;
1150 DWORD dwFlags;
1151 } ACTIVATION_CONTEXT_BASIC_INFORMATION, *PACTIVATION_CONTEXT_BASIC_INFORMATION;
1152 typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION;
1153
1154 typedef BOOL (WINAPI *PQUERYACTCTXW_FUNC)(DWORD,HANDLE,PVOID,ULONG,PVOID,SIZE_T,SIZE_T *);
1155
1156 typedef enum {
1157 LowMemoryResourceNotification ,
1158 HighMemoryResourceNotification
1159 } MEMORY_RESOURCE_NOTIFICATION_TYPE;
1160 #endif /* (_WIN32_WINNT >= 0x0501) */
1161
1162 #if (_WIN32_WINNT >= 0x0500)
1163 typedef enum _COMPUTER_NAME_FORMAT {
1164 ComputerNameNetBIOS,
1165 ComputerNameDnsHostname,
1166 ComputerNameDnsDomain,
1167 ComputerNameDnsFullyQualified,
1168 ComputerNamePhysicalNetBIOS,
1169 ComputerNamePhysicalDnsHostname,
1170 ComputerNamePhysicalDnsDomain,
1171 ComputerNamePhysicalDnsFullyQualified,
1172 ComputerNameMax
1173 } COMPUTER_NAME_FORMAT;
1174 #endif /* (_WIN32_WINNT >= 0x0500) */
1175
1176 #if (_WIN32_WINNT >= 0x0600)
1177 typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK;
1178 typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE;
1179 #endif
1180
1181 typedef DWORD(WINAPI *LPPROGRESS_ROUTINE)(LARGE_INTEGER,LARGE_INTEGER,LARGE_INTEGER,LARGE_INTEGER,DWORD,DWORD,HANDLE,HANDLE,LPVOID);
1182
1183 typedef VOID (WINAPI *PFIBER_START_ROUTINE)( LPVOID lpFiberParameter );
1184 typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE;
1185
1186 typedef VOID (WINAPI *PFLS_CALLBACK_FUNCTION)(PVOID);
1187 typedef BOOL(CALLBACK *ENUMRESLANGPROCA)(HMODULE,LPCSTR,LPCSTR,WORD,LONG_PTR);
1188 typedef BOOL(CALLBACK *ENUMRESLANGPROCW)(HMODULE,LPCWSTR,LPCWSTR,WORD,LONG_PTR);
1189 typedef BOOL(CALLBACK *ENUMRESNAMEPROCA)(HMODULE,LPCSTR,LPSTR,LONG_PTR);
1190 typedef BOOL(CALLBACK *ENUMRESNAMEPROCW)(HMODULE,LPCWSTR,LPWSTR,LONG_PTR);
1191 typedef BOOL(CALLBACK *ENUMRESTYPEPROCA)(HMODULE,LPSTR,LONG_PTR);
1192 typedef BOOL(CALLBACK *ENUMRESTYPEPROCW)(HMODULE,LPWSTR,LONG_PTR);
1193 typedef void(CALLBACK *LPOVERLAPPED_COMPLETION_ROUTINE)(DWORD,DWORD,LPOVERLAPPED);
1194 typedef LONG(CALLBACK *PTOP_LEVEL_EXCEPTION_FILTER)(LPEXCEPTION_POINTERS);
1195 typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER;
1196 typedef void(APIENTRY *PAPCFUNC)(ULONG_PTR);
1197 typedef void(CALLBACK *PTIMERAPCROUTINE)(PVOID,DWORD,DWORD);
1198 #if (_WIN32_WINNT >= 0x0600)
1199 typedef DWORD (WINAPI *APPLICATION_RECOVERY_CALLBACK)(PVOID);
1200 #endif
1201
1202 #ifdef WINE_NO_UNICODE_MACROS /* force using a cast */
1203 #define MAKEINTATOM(atom) ((ULONG_PTR)((WORD)(atom)))
1204 #else
1205 #define MAKEINTATOM(i) (LPTSTR)((ULONG_PTR)((WORD)(i)))
1206 #endif
1207
1208 /* Functions */
1209 #ifndef UNDER_CE
1210 int APIENTRY WinMain(HINSTANCE,HINSTANCE,LPSTR,int);
1211 #else
1212 int APIENTRY WinMain(HINSTANCE,HINSTANCE,LPWSTR,int);
1213 #endif
1214 int APIENTRY wWinMain(HINSTANCE,HINSTANCE,LPWSTR,int);
1215 long WINAPI _hread(HFILE,LPVOID,long);
1216 long WINAPI _hwrite(HFILE,LPCSTR,long);
1217 HFILE WINAPI _lclose(HFILE);
1218 HFILE WINAPI _lcreat(LPCSTR,int);
1219 LONG WINAPI _llseek(HFILE,LONG,int);
1220 HFILE WINAPI _lopen(LPCSTR,int);
1221 UINT WINAPI _lread(HFILE,LPVOID,UINT);
1222 UINT WINAPI _lwrite(HFILE,LPCSTR,UINT);
1223 BOOL WINAPI AccessCheck(PSECURITY_DESCRIPTOR,HANDLE,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,PDWORD,PDWORD,PBOOL);
1224 BOOL WINAPI AccessCheckAndAuditAlarmA(LPCSTR,LPVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL);
1225 BOOL WINAPI AccessCheckAndAuditAlarmW(LPCWSTR,LPVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL);
1226 #if (_WIN32_WINNT >= 0x0600)
1227 VOID WINAPI AcquireSRWLockExclusive(PSRWLOCK);
1228 VOID WINAPI AcquireSRWLockShared(PSRWLOCK);
1229 #endif
1230 #if (_WIN32_WINNT >= 0x0501)
1231 BOOL WINAPI ActivateActCtx(HANDLE,ULONG_PTR*);
1232 #endif
1233 BOOL WINAPI AddAccessAllowedAce(PACL,DWORD,DWORD,PSID);
1234 BOOL WINAPI AddAccessDeniedAce(PACL,DWORD,DWORD,PSID);
1235 #if (_WIN32_WINNT >= 0x0500)
1236 BOOL WINAPI AddAccessAllowedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
1237 BOOL WINAPI AddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
1238 BOOL WINAPI AddAccessAllowedObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID);
1239 BOOL WINAPI AddAccessDeniedObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID);
1240 #endif
1241 BOOL WINAPI AddAce(PACL,DWORD,DWORD,PVOID,DWORD);
1242 ATOM WINAPI AddAtomA(LPCSTR);
1243 ATOM WINAPI AddAtomW(LPCWSTR);
1244 BOOL WINAPI AddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL);
1245 #if (_WIN32_WINNT >= 0x0500)
1246 BOOL WINAPI AddAuditAccessObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID,BOOL,BOOL);
1247 #endif
1248 #if (_WIN32_WINNT >= 0x0501)
1249 void WINAPI AddRefActCtx(HANDLE);
1250 #endif
1251 #if (_WIN32_WINNT >= 0x0500)
1252 PVOID WINAPI AddVectoredExceptionHandler(ULONG,PVECTORED_EXCEPTION_HANDLER);
1253 #endif
1254 BOOL WINAPI AccessCheckByType(PSECURITY_DESCRIPTOR,PSID,HANDLE,DWORD,POBJECT_TYPE_LIST,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,LPDWORD,LPDWORD,LPBOOL);
1255 BOOL WINAPI AdjustTokenGroups(HANDLE,BOOL,PTOKEN_GROUPS,DWORD,PTOKEN_GROUPS,PDWORD);
1256 BOOL WINAPI AdjustTokenPrivileges(HANDLE,BOOL,PTOKEN_PRIVILEGES,DWORD,PTOKEN_PRIVILEGES,PDWORD);
1257 BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID*);
1258 BOOL WINAPI CheckTokenMembership(HANDLE,PSID,PBOOL);
1259 BOOL WINAPI AllocateLocallyUniqueId(PLUID);
1260 BOOL WINAPI AreAllAccessesGranted(DWORD,DWORD);
1261 BOOL WINAPI AreAnyAccessesGranted(DWORD,DWORD);
1262 BOOL WINAPI AreFileApisANSI(void);
1263 BOOL WINAPI BackupEventLogA(HANDLE,LPCSTR);
1264 BOOL WINAPI BackupEventLogW(HANDLE,LPCWSTR);
1265 BOOL WINAPI BackupRead(HANDLE,LPBYTE,DWORD,LPDWORD,BOOL,BOOL,LPVOID*);
1266 BOOL WINAPI BackupSeek(HANDLE,DWORD,DWORD,LPDWORD,LPDWORD,LPVOID*);
1267 BOOL WINAPI BackupWrite(HANDLE,LPBYTE,DWORD,LPDWORD,BOOL,BOOL,LPVOID*);
1268 BOOL WINAPI Beep(DWORD,DWORD);
1269 HANDLE WINAPI BeginUpdateResourceA(LPCSTR,BOOL);
1270 HANDLE WINAPI BeginUpdateResourceW(LPCWSTR,BOOL);
1271 #if (_WIN32_WINNT >= 0x0500)
1272 BOOL WINAPI BindIoCompletionCallback(HANDLE,LPOVERLAPPED_COMPLETION_ROUTINE,ULONG);
1273 #endif
1274 BOOL WINAPI BuildCommDCBA(LPCSTR,LPDCB);
1275 BOOL WINAPI BuildCommDCBW(LPCWSTR,LPDCB);
1276 BOOL WINAPI BuildCommDCBAndTimeoutsA(LPCSTR,LPDCB,LPCOMMTIMEOUTS);
1277 BOOL WINAPI BuildCommDCBAndTimeoutsW(LPCWSTR,LPDCB,LPCOMMTIMEOUTS);
1278 BOOL WINAPI CallNamedPipeA(LPCSTR,PVOID,DWORD,PVOID,DWORD,PDWORD,DWORD);
1279 BOOL WINAPI CallNamedPipeW(LPCWSTR,PVOID,DWORD,PVOID,DWORD,PDWORD,DWORD);
1280 BOOL WINAPI CancelDeviceWakeupRequest(HANDLE);
1281 BOOL WINAPI CancelIo(HANDLE);
1282 #if (_WIN32_WINNT >= 0x0600)
1283 BOOL WINAPI CancelIoEx(HANDLE,LPOVERLAPPED);
1284 BOOL WINAPI CancelSynchronousIo(HANDLE);
1285 #endif
1286 BOOL WINAPI CancelWaitableTimer(HANDLE);
1287 #if (_WIN32_WINNT >= 0x0501)
1288 BOOL WINAPI CheckNameLegalDOS8Dot3A(LPCSTR,LPSTR,DWORD,PBOOL,PBOOL);
1289 BOOL WINAPI CheckNameLegalDOS8Dot3W(LPCWSTR,LPSTR,DWORD,PBOOL,PBOOL);
1290 BOOL WINAPI CheckRemoteDebuggerPresent(HANDLE,PBOOL);
1291 #endif
1292 BOOL WINAPI ClearCommBreak(HANDLE);
1293 BOOL WINAPI ClearCommError(HANDLE,PDWORD,LPCOMSTAT);
1294 BOOL WINAPI ClearEventLogA(HANDLE,LPCSTR);
1295 BOOL WINAPI ClearEventLogW(HANDLE,LPCWSTR);
1296 BOOL WINAPI CloseEventLog(HANDLE);
1297 BOOL WINAPI CloseHandle(HANDLE);
1298 BOOL WINAPI CommConfigDialogA(LPCSTR,HWND,LPCOMMCONFIG);
1299 BOOL WINAPI CommConfigDialogW(LPCWSTR,HWND,LPCOMMCONFIG);
1300 LONG WINAPI CompareFileTime(CONST FILETIME*,CONST FILETIME*);
1301 BOOL WINAPI ConnectNamedPipe(HANDLE,LPOVERLAPPED);
1302 BOOL WINAPI ContinueDebugEvent(DWORD,DWORD,DWORD);
1303 #if (_WIN32_WINNT >= 0x0400)
1304 BOOL WINAPI ConvertFiberToThread(void);
1305 #endif
1306 PVOID WINAPI ConvertThreadToFiber(PVOID);
1307 BOOL WINAPI CopyFileA(LPCSTR,LPCSTR,BOOL);
1308 BOOL WINAPI CopyFileW(LPCWSTR,LPCWSTR,BOOL);
1309 BOOL WINAPI CopyFileExA(LPCSTR,LPCSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD);
1310 BOOL WINAPI CopyFileExW(LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD);
1311 #define MoveMemory RtlMoveMemory
1312 #define CopyMemory RtlCopyMemory
1313 #define FillMemory RtlFillMemory
1314 #define ZeroMemory RtlZeroMemory
1315 #define SecureZeroMemory RtlSecureZeroMemory
1316 BOOL WINAPI CopySid(DWORD,PSID,PSID);
1317 #if (_WIN32_WINNT >= 0x0501)
1318 HANDLE WINAPI CreateActCtxA(PCACTCTXA);
1319 HANDLE WINAPI CreateActCtxW(PCACTCTXW);
1320 #endif
1321 BOOL WINAPI CreateDirectoryA(LPCSTR,LPSECURITY_ATTRIBUTES);
1322 BOOL WINAPI CreateDirectoryW(LPCWSTR,LPSECURITY_ATTRIBUTES);
1323 BOOL WINAPI CreateDirectoryExA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
1324 BOOL WINAPI CreateDirectoryExW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES);
1325 HANDLE WINAPI CreateEventA(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCSTR);
1326 HANDLE WINAPI CreateEventW(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCWSTR);
1327 #if (_WIN32_WINNT >= 0x0600)
1328 HANDLE WINAPI CreateEventExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD);
1329 HANDLE WINAPI CreateEventExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD);
1330 #endif
1331 LPVOID WINAPI CreateFiber(SIZE_T,LPFIBER_START_ROUTINE,LPVOID);
1332 #if (_WIN32_WINNT >= 0x0400)
1333 LPVOID WINAPI CreateFiberEx(SIZE_T,SIZE_T,DWORD,LPFIBER_START_ROUTINE,LPVOID);
1334 #endif
1335 HANDLE WINAPI CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE);
1336 HANDLE WINAPI CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE);
1337 HANDLE WINAPI CreateFileMappingA(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCSTR);
1338 HANDLE WINAPI CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR);
1339 #if (_WIN32_WINNT >= 0x0500)
1340 BOOL WINAPI CreateHardLinkA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
1341 BOOL WINAPI CreateHardLinkW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES);
1342 #endif
1343 HANDLE WINAPI CreateIoCompletionPort(HANDLE,HANDLE,ULONG_PTR,DWORD);
1344 #if (_WIN32_WINNT >= 0x0500)
1345 HANDLE WINAPI CreateJobObjectA(LPSECURITY_ATTRIBUTES,LPCSTR);
1346 HANDLE WINAPI CreateJobObjectW(LPSECURITY_ATTRIBUTES,LPCWSTR);
1347 BOOL WINAPI TerminateJobObject(HANDLE,UINT);
1348 BOOL WINAPI AssignProcessToJobObject(HANDLE,HANDLE);
1349 #endif
1350 HANDLE WINAPI CreateMailslotA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
1351 HANDLE WINAPI CreateMailslotW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
1352 #if (_WIN32_WINNT >= 0x0501)
1353 HANDLE WINAPI CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE);
1354 #endif
1355 HANDLE WINAPI CreateMutexA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR);
1356 HANDLE WINAPI CreateMutexW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR);
1357 #if (_WIN32_WINNT >= 0x0600)
1358 HANDLE WINAPI CreateMutexExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD);
1359 HANDLE WINAPI CreateMutexExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD);
1360 #endif
1361 HANDLE WINAPI CreateNamedPipeA(LPCSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
1362 HANDLE WINAPI CreateNamedPipeW(LPCWSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
1363 BOOL WINAPI CreatePipe(PHANDLE,PHANDLE,LPSECURITY_ATTRIBUTES,DWORD);
1364 BOOL WINAPI CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,BOOL,HANDLE,PGENERIC_MAPPING);
1365 BOOL WINAPI CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION);
1366 BOOL WINAPI CreateProcessW(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
1367 BOOL WINAPI CreateProcessAsUserA(HANDLE,LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION);
1368 BOOL WINAPI CreateProcessAsUserW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
1369 HANDLE WINAPI CreateRemoteThread(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD);
1370 HANDLE WINAPI CreateSemaphoreA(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCSTR);
1371 HANDLE WINAPI CreateSemaphoreW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR);
1372 #if (_WIN32_WINNT >= 0x0600)
1373 HANDLE WINAPI CreateSemaphoreExA(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCSTR,DWORD,DWORD);
1374 HANDLE WINAPI CreateSemaphoreExW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR,DWORD,DWORD);
1375 #endif
1376 DWORD WINAPI CreateTapePartition(HANDLE,DWORD,DWORD,DWORD);
1377 #if (_WIN32_WINNT >= 0x0500)
1378 HANDLE WINAPI CreateTimerQueue(void);
1379 BOOL WINAPI CreateTimerQueueTimer(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,DWORD,DWORD,ULONG);
1380 #endif
1381 HANDLE WINAPI CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,PVOID,DWORD,PDWORD);
1382 HANDLE WINAPI CreateWaitableTimerA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR);
1383 HANDLE WINAPI CreateWaitableTimerW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR);
1384 #if (_WIN32_WINNT >= 0x0600)
1385 HANDLE WINAPI CreateWaitableTimerExA(LPSECURITY_ATTRIBUTES,LPCSTR,DWORD,DWORD);
1386 HANDLE WINAPI CreateWaitableTimerExW(LPSECURITY_ATTRIBUTES,LPCWSTR,DWORD,DWORD);
1387 #endif
1388 #if (_WIN32_WINNT >= 0x0501)
1389 BOOL WINAPI CreateWellKnownSid(WELL_KNOWN_SID_TYPE,PSID,PSID,DWORD*);
1390 BOOL WINAPI DeactivateActCtx(DWORD,ULONG_PTR);
1391 #endif
1392 BOOL WINAPI DebugActiveProcess(DWORD);
1393 #if (_WIN32_WINNT >= 0x0501)
1394 BOOL WINAPI DebugActiveProcessStop(DWORD);
1395 #endif
1396 void WINAPI DebugBreak(void);
1397 #if (_WIN32_WINNT >= 0x0501)
1398 BOOL WINAPI DebugBreakProcess(HANDLE);
1399 BOOL WINAPI DebugSetProcessKillOnExit(BOOL);
1400 #endif
1401 PVOID WINAPI DecodePointer(PVOID);
1402 PVOID WINAPI DecodeSystemPointer(PVOID);
1403 BOOL WINAPI DecryptFileA(LPCSTR,DWORD);
1404 BOOL WINAPI DecryptFileW(LPCWSTR,DWORD);
1405 BOOL WINAPI DefineDosDeviceA(DWORD,LPCSTR,LPCSTR);
1406 BOOL WINAPI DefineDosDeviceW(DWORD,LPCWSTR,LPCWSTR);
1407 #define DefineHandleTable(w) ((w),TRUE)
1408 BOOL WINAPI DeleteAce(PACL,DWORD);
1409 ATOM WINAPI DeleteAtom(ATOM);
1410 void WINAPI DeleteCriticalSection(PCRITICAL_SECTION);
1411 void WINAPI DeleteFiber(PVOID);
1412 BOOL WINAPI DeleteFileA(LPCSTR);
1413 BOOL WINAPI DeleteFileW(LPCWSTR);
1414 #if (_WIN32_WINNT >= 0x0500)
1415 BOOL WINAPI DeleteTimerQueue(HANDLE);
1416 BOOL WINAPI DeleteTimerQueueEx(HANDLE,HANDLE);
1417 BOOL WINAPI DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE);
1418 BOOL WINAPI DeleteVolumeMountPointA(LPCSTR);
1419 BOOL WINAPI DeleteVolumeMountPointW(LPCWSTR);
1420 #endif
1421 BOOL WINAPI DeregisterEventSource(HANDLE);
1422 BOOL WINAPI DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*);
1423 BOOL WINAPI DeviceIoControl(HANDLE,DWORD,PVOID,DWORD,PVOID,DWORD,PDWORD,POVERLAPPED);
1424 BOOL WINAPI DisableThreadLibraryCalls(HMODULE);
1425 #if (_WIN32_WINNT >= 0x0500)
1426 BOOL WINAPI DnsHostnameToComputerNameA(LPCSTR,LPSTR,LPDWORD);
1427 BOOL WINAPI DnsHostnameToComputerNameW(LPCWSTR,LPWSTR,LPDWORD);
1428 #endif
1429 BOOL WINAPI DisconnectNamedPipe(HANDLE);
1430 BOOL WINAPI DosDateTimeToFileTime(WORD,WORD,LPFILETIME);
1431 BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,PHANDLE,DWORD,BOOL,DWORD);
1432 BOOL WINAPI DuplicateToken(HANDLE,SECURITY_IMPERSONATION_LEVEL,PHANDLE);
1433 BOOL WINAPI DuplicateTokenEx(HANDLE,DWORD,LPSECURITY_ATTRIBUTES,SECURITY_IMPERSONATION_LEVEL,TOKEN_TYPE,PHANDLE);
1434 PVOID WINAPI EncodePointer(PVOID);
1435 PVOID WINAPI EncodeSystemPointer(PVOID);
1436 BOOL WINAPI EncryptFileA(LPCSTR);
1437 BOOL WINAPI EncryptFileW(LPCWSTR);
1438 BOOL WINAPI EndUpdateResourceA(HANDLE,BOOL);
1439 BOOL WINAPI EndUpdateResourceW(HANDLE,BOOL);
1440 void WINAPI EnterCriticalSection(LPCRITICAL_SECTION);
1441 BOOL WINAPI EnumResourceLanguagesA(HMODULE,LPCSTR,LPCSTR,ENUMRESLANGPROCA,LONG_PTR);
1442 BOOL WINAPI EnumResourceLanguagesW(HMODULE,LPCWSTR,LPCWSTR,ENUMRESLANGPROCW,LONG_PTR);
1443 BOOL WINAPI EnumResourceNamesA(HMODULE,LPCSTR,ENUMRESNAMEPROCA,LONG_PTR);
1444 BOOL WINAPI EnumResourceNamesW(HMODULE,LPCWSTR,ENUMRESNAMEPROCW,LONG_PTR);
1445 BOOL WINAPI EnumResourceTypesA(HMODULE,ENUMRESTYPEPROCA,LONG_PTR);
1446 BOOL WINAPI EnumResourceTypesW(HMODULE,ENUMRESTYPEPROCW,LONG_PTR);
1447 BOOL WINAPI EqualPrefixSid(PSID,PSID);
1448 BOOL WINAPI EqualSid(PSID,PSID);
1449 DWORD WINAPI EraseTape(HANDLE,DWORD,BOOL);
1450 BOOL WINAPI EscapeCommFunction(HANDLE,DWORD);
1451 DECLSPEC_NORETURN void WINAPI ExitProcess(UINT);
1452 DECLSPEC_NORETURN void WINAPI ExitThread(DWORD);
1453 DWORD WINAPI ExpandEnvironmentStringsA(LPCSTR,LPSTR,DWORD);
1454 DWORD WINAPI ExpandEnvironmentStringsW(LPCWSTR,LPWSTR,DWORD);
1455 void WINAPI FatalAppExitA(UINT,LPCSTR);
1456 void WINAPI FatalAppExitW(UINT,LPCWSTR);
1457 void WINAPI FatalExit(int);
1458 BOOL WINAPI FileEncryptionStatusA(LPCSTR,LPDWORD);
1459 BOOL WINAPI FileEncryptionStatusW(LPCWSTR,LPDWORD);
1460 BOOL WINAPI FileTimeToDosDateTime(CONST FILETIME *,LPWORD,LPWORD);
1461 BOOL WINAPI FileTimeToLocalFileTime(CONST FILETIME *,LPFILETIME);
1462 BOOL WINAPI FileTimeToSystemTime(CONST FILETIME *,LPSYSTEMTIME);
1463 #if (_WIN32_WINNT >= 0x0501)
1464 BOOL WINAPI FindActCtxSectionGuid(DWORD,const GUID*,ULONG,const GUID*,PACTCTX_SECTION_KEYED_DATA);
1465 BOOL WINAPI FindActCtxSectionStringA(DWORD,const GUID*,ULONG,LPCSTR,PACTCTX_SECTION_KEYED_DATA);
1466 BOOL WINAPI FindActCtxSectionStringW(DWORD,const GUID*,ULONG,LPCWSTR,PACTCTX_SECTION_KEYED_DATA);
1467 #endif
1468 ATOM WINAPI FindAtomA(LPCSTR);
1469 ATOM WINAPI FindAtomW(LPCWSTR);
1470 BOOL WINAPI FindClose(HANDLE);
1471 BOOL WINAPI FindCloseChangeNotification(HANDLE);
1472 HANDLE WINAPI FindFirstChangeNotificationA(LPCSTR,BOOL,DWORD);
1473 HANDLE WINAPI FindFirstChangeNotificationW(LPCWSTR,BOOL,DWORD);
1474 HANDLE WINAPI FindFirstFileA(LPCSTR,LPWIN32_FIND_DATAA);
1475 HANDLE WINAPI FindFirstFileW(LPCWSTR,LPWIN32_FIND_DATAW);
1476 HANDLE WINAPI FindFirstFileExA(LPCSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD);
1477 HANDLE WINAPI FindFirstFileExW(LPCWSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD);
1478 #if (_WIN32_WINNT >= 0x0501)
1479 HANDLE WINAPI FindFirstStreamW(LPCWSTR,STREAM_INFO_LEVELS,LPVOID,DWORD);
1480 #endif
1481 BOOL WINAPI FindFirstFreeAce(PACL,PVOID*);
1482 #if (_WIN32_WINNT >= 0x0500)
1483 HANDLE WINAPI FindFirstVolumeA(LPSTR,DWORD);
1484 HANDLE WINAPI FindFirstVolumeW(LPWSTR,DWORD);
1485 HANDLE WINAPI FindFirstVolumeMountPointA(LPCSTR,LPSTR,DWORD);
1486 HANDLE WINAPI FindFirstVolumeMountPointW(LPCWSTR,LPWSTR,DWORD);
1487 #endif
1488 BOOL WINAPI FindNextChangeNotification(HANDLE);
1489 BOOL WINAPI FindNextFileA(HANDLE,LPWIN32_FIND_DATAA);
1490 BOOL WINAPI FindNextFileW(HANDLE,LPWIN32_FIND_DATAW);
1491 #if (_WIN32_WINNT >= 0x0501)
1492 BOOL WINAPI FindNextStreamW(HANDLE,LPVOID);
1493 #endif
1494 #if (_WIN32_WINNT >= 0x0500)
1495 BOOL WINAPI FindNextVolumeA(HANDLE,LPSTR,DWORD);
1496 BOOL WINAPI FindNextVolumeW(HANDLE,LPWSTR,DWORD);
1497 BOOL WINAPI FindNextVolumeMountPointA(HANDLE,LPSTR,DWORD);
1498 BOOL WINAPI FindNextVolumeMountPointW(HANDLE,LPWSTR,DWORD);
1499 BOOL WINAPI FindVolumeClose(HANDLE);
1500 BOOL WINAPI FindVolumeMountPointClose(HANDLE);
1501 #endif
1502 HRSRC WINAPI FindResourceA(HMODULE,LPCSTR,LPCSTR);
1503 HRSRC WINAPI FindResourceW(HINSTANCE,LPCWSTR,LPCWSTR);
1504 HRSRC WINAPI FindResourceExA(HINSTANCE,LPCSTR,LPCSTR,WORD);
1505 HRSRC WINAPI FindResourceExW(HINSTANCE,LPCWSTR,LPCWSTR,WORD);
1506 #if (_WIN32_WINNT >= 0x0502)
1507 DWORD WINAPI GetFirmwareEnvironmentVariableA(LPCSTR,LPCSTR,PVOID,DWORD);
1508 DWORD WINAPI GetFirmwareEnvironmentVariableW(LPCWSTR,LPCWSTR,PVOID,DWORD);
1509 #endif
1510 BOOL WINAPI FlushFileBuffers(HANDLE);
1511 BOOL WINAPI FlushInstructionCache(HANDLE,LPCVOID,SIZE_T);
1512 BOOL WINAPI FlushViewOfFile(LPCVOID,SIZE_T);
1513 DWORD WINAPI FlsAlloc(PFLS_CALLBACK_FUNCTION);
1514 PVOID WINAPI FlsGetValue(DWORD);
1515 BOOL WINAPI FlsSetValue(DWORD,PVOID);
1516 BOOL WINAPI FlsFree(DWORD);
1517 DWORD WINAPI FormatMessageA(DWORD,LPCVOID,DWORD,DWORD,LPSTR,DWORD,va_list*);
1518 DWORD WINAPI FormatMessageW(DWORD,LPCVOID,DWORD,DWORD,LPWSTR,DWORD,va_list*);
1519 BOOL WINAPI FreeEnvironmentStringsA(LPSTR);
1520 BOOL WINAPI FreeEnvironmentStringsW(LPWSTR);
1521 BOOL WINAPI FreeLibrary(HMODULE);
1522 DECLSPEC_NORETURN void WINAPI FreeLibraryAndExitThread(HMODULE,DWORD);
1523 #define FreeModule(m) FreeLibrary(m)
1524 #define FreeProcInstance(p) (void)(p)
1525 #ifndef XFree86Server
1526 BOOL WINAPI FreeResource(HGLOBAL);
1527 #endif /* ndef XFree86Server */
1528 PVOID WINAPI FreeSid(PSID);
1529 BOOL WINAPI GetAce(PACL,DWORD,LPVOID*);
1530 BOOL WINAPI GetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS);
1531 #if (_WIN32_WINNT >= 0x0600)
1532 HRESULT WINAPI GetApplicationRecoveryCallback(HANDLE,APPLICATION_RECOVERY_CALLBACK*,PVOID*, DWORD*, DWORD*);
1533 HRESULT WINAPI GetApplicationRestart(HANDLE,PWSTR,PDWORD,PDWORD);
1534 #endif
1535 UINT WINAPI GetAtomNameA(ATOM,LPSTR,int);
1536 UINT WINAPI GetAtomNameW(ATOM,LPWSTR,int);
1537 BOOL WINAPI GetBinaryTypeA(LPCSTR,PDWORD);
1538 BOOL WINAPI GetBinaryTypeW(LPCWSTR,PDWORD);
1539 LPSTR WINAPI GetCommandLineA(VOID);
1540 LPWSTR WINAPI GetCommandLineW(VOID);
1541 BOOL WINAPI GetCommConfig(HANDLE,LPCOMMCONFIG,PDWORD);
1542 BOOL WINAPI GetCommMask(HANDLE,PDWORD);
1543 BOOL WINAPI GetCommModemStatus(HANDLE,PDWORD);
1544 BOOL WINAPI GetCommProperties(HANDLE,LPCOMMPROP);
1545 BOOL WINAPI GetCommState(HANDLE,LPDCB);
1546 BOOL WINAPI GetCommTimeouts(HANDLE,LPCOMMTIMEOUTS);
1547 DWORD WINAPI GetCompressedFileSizeA(LPCSTR,PDWORD);
1548 DWORD WINAPI GetCompressedFileSizeW(LPCWSTR,PDWORD);
1549 BOOL WINAPI GetComputerNameA(LPSTR,PDWORD);
1550 BOOL WINAPI GetComputerNameW(LPWSTR,PDWORD);
1551 #if (_WIN32_WINNT >= 0x0500)
1552 BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD);
1553 BOOL WINAPI GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD);
1554 #endif
1555 #if (_WIN32_WINNT >= 0x0501)
1556 BOOL WINAPI GetCurrentActCtx(HANDLE*);
1557 #endif
1558 DWORD WINAPI GetCurrentDirectoryA(DWORD,LPSTR);
1559 DWORD WINAPI GetCurrentDirectoryW(DWORD,LPWSTR);
1560 BOOL WINAPI GetCurrentHwProfileA(LPHW_PROFILE_INFOA);
1561 BOOL WINAPI GetCurrentHwProfileW(LPHW_PROFILE_INFOW);
1562 HANDLE WINAPI GetCurrentProcess(void);
1563 DWORD WINAPI GetCurrentProcessId(void);
1564 HANDLE WINAPI GetCurrentThread(void);
1565 DWORD WINAPI GetCurrentThreadId(void);
1566 #define GetCurrentTime GetTickCount
1567 BOOL WINAPI GetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,PDWORD);
1568 BOOL WINAPI GetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,PDWORD);
1569 BOOL WINAPI GetDiskFreeSpaceA(LPCSTR,PDWORD,PDWORD,PDWORD,PDWORD);
1570 BOOL WINAPI GetDiskFreeSpaceW(LPCWSTR,PDWORD,PDWORD,PDWORD,PDWORD);
1571 BOOL WINAPI GetDiskFreeSpaceExA(LPCSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER);
1572 BOOL WINAPI GetDiskFreeSpaceExW(LPCWSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER);
1573 #if (_WIN32_WINNT >= 0x0502)
1574 DWORD WINAPI GetDllDirectoryA(DWORD,LPSTR);
1575 DWORD WINAPI GetDllDirectoryW(DWORD,LPWSTR);
1576 #endif
1577 UINT WINAPI GetDriveTypeA(LPCSTR);
1578 UINT WINAPI GetDriveTypeW(LPCWSTR);
1579 LPSTR WINAPI GetEnvironmentStrings(void);
1580 LPWSTR WINAPI GetEnvironmentStringsW(void);
1581 DWORD WINAPI GetEnvironmentVariableA(LPCSTR,LPSTR,DWORD);
1582 DWORD WINAPI GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD);
1583 BOOL WINAPI GetExitCodeProcess(HANDLE,PDWORD);
1584 BOOL WINAPI GetExitCodeThread(HANDLE,PDWORD);
1585 DWORD WINAPI GetFileAttributesA(LPCSTR);
1586 #if (_WIN32_WINNT >= 0x0600)
1587 BOOL WINAPI GetFileAttributesByHandle(HANDLE,LPDWORD,DWORD);
1588 DWORD WINAPI GetFinalPathNameByHandleA(HANDLE,LPSTR,DWORD,DWORD);
1589 DWORD WINAPI GetFinalPathNameByHandleW(HANDLE,LPWSTR,DWORD,DWORD);
1590 #endif
1591 DWORD WINAPI GetFileAttributesW(LPCWSTR);
1592 BOOL WINAPI GetFileAttributesExA(LPCSTR,GET_FILEEX_INFO_LEVELS,PVOID);
1593 BOOL WINAPI GetFileAttributesExW(LPCWSTR,GET_FILEEX_INFO_LEVELS,PVOID);
1594 #if (_WIN32_WINNT >= 0x0600)
1595 BOOL WINAPI GetFileBandwidthReservation(HANDLE,LPDWORD,LPDWORD,LPBOOL,LPDWORD,LPDWORD);
1596 #endif
1597 BOOL WINAPI GetFileInformationByHandle(HANDLE,LPBY_HANDLE_FILE_INFORMATION);
1598 BOOL WINAPI GetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD);
1599 BOOL WINAPI GetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD);
1600 DWORD WINAPI GetFileSize(HANDLE,PDWORD);
1601 BOOL WINAPI GetFileSizeEx(HANDLE,PLARGE_INTEGER);
1602 BOOL WINAPI GetFileTime(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME);
1603 DWORD WINAPI GetFileType(HANDLE);
1604 #define GetFreeSpace(w) (0x100000L)
1605 DWORD WINAPI GetFullPathNameA(LPCSTR,DWORD,LPSTR,LPSTR*);
1606 DWORD WINAPI GetFullPathNameW(LPCWSTR,DWORD,LPWSTR,LPWSTR*);
1607 BOOL WINAPI GetHandleInformation(HANDLE,PDWORD);
1608 BOOL WINAPI GetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD);
1609 DWORD WINAPI GetLastError(void);
1610 DWORD WINAPI GetLengthSid(PSID);
1611 void WINAPI GetLocalTime(LPSYSTEMTIME);
1612 DWORD WINAPI GetLogicalDrives(void);
1613 DWORD WINAPI GetLogicalDriveStringsA(DWORD,LPSTR);
1614 DWORD WINAPI GetLogicalDriveStringsW(DWORD,LPWSTR);
1615 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
1616 DWORD WINAPI GetLongPathNameA(LPCSTR,LPSTR,DWORD);
1617 DWORD WINAPI GetLongPathNameW(LPCWSTR,LPWSTR,DWORD);
1618 #endif
1619 BOOL WINAPI GetMailslotInfo(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD);
1620 DWORD WINAPI GetModuleFileNameA(HINSTANCE,LPSTR,DWORD);
1621 DWORD WINAPI GetModuleFileNameW(HINSTANCE,LPWSTR,DWORD);
1622 HMODULE WINAPI GetModuleHandleA(LPCSTR);
1623 HMODULE WINAPI GetModuleHandleW(LPCWSTR);
1624 #if (_WIN32_WINNT >= 0x0500)
1625 BOOL WINAPI GetModuleHandleExA(DWORD,LPCSTR,HMODULE*);
1626 BOOL WINAPI GetModuleHandleExW(DWORD,LPCWSTR,HMODULE*);
1627 #endif
1628 BOOL WINAPI GetNamedPipeHandleStateA(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPSTR,DWORD);
1629 BOOL WINAPI GetNamedPipeHandleStateW(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD);
1630 BOOL WINAPI GetNamedPipeInfo(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD);
1631 #if (_WIN32_WINNT >= 0x0501)
1632 VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO);
1633 #endif
1634 BOOL WINAPI GetEventLogInformation(HANDLE,DWORD,LPVOID,DWORD,LPDWORD);
1635 BOOL WINAPI GetNumberOfEventLogRecords(HANDLE,PDWORD);
1636 BOOL WINAPI GetOldestEventLogRecord(HANDLE,PDWORD);
1637 BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL);
1638 DWORD WINAPI GetPriorityClass(HANDLE);
1639 BOOL WINAPI GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD);
1640 UINT WINAPI GetPrivateProfileIntA(LPCSTR,LPCSTR,INT,LPCSTR);
1641 UINT WINAPI GetPrivateProfileIntW(LPCWSTR,LPCWSTR,INT,LPCWSTR);
1642 DWORD WINAPI GetPrivateProfileSectionA(LPCSTR,LPSTR,DWORD,LPCSTR);
1643 DWORD WINAPI GetPrivateProfileSectionW(LPCWSTR,LPWSTR,DWORD,LPCWSTR);
1644 DWORD WINAPI GetPrivateProfileSectionNamesA(LPSTR,DWORD,LPCSTR);
1645 DWORD WINAPI GetPrivateProfileSectionNamesW(LPWSTR,DWORD,LPCWSTR);
1646 DWORD WINAPI GetPrivateProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPSTR,DWORD,LPCSTR);
1647 DWORD WINAPI GetPrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD,LPCWSTR);
1648 BOOL WINAPI GetPrivateProfileStructA(LPCSTR,LPCSTR,LPVOID,UINT,LPCSTR);
1649 BOOL WINAPI GetPrivateProfileStructW(LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR);
1650 FARPROC WINAPI GetProcAddress(HINSTANCE,LPCSTR);
1651 BOOL WINAPI GetProcessAffinityMask(HANDLE,PDWORD_PTR,PDWORD_PTR);
1652 #if (_WIN32_WINNT >= 0x0502)
1653 BOOL WINAPI GetProcessHandleCount(HANDLE,PDWORD);
1654 #endif
1655 HANDLE WINAPI GetProcessHeap(VOID);
1656 DWORD WINAPI GetProcessHeaps(DWORD,PHANDLE);
1657 #if (_WIN32_WINNT >= 0x0502)
1658 DWORD WINAPI GetProcessId(HANDLE);
1659 #endif
1660 #if (_WIN32_WINNT >= 0x0500)
1661 BOOL WINAPI GetProcessIoCounters(HANDLE,PIO_COUNTERS);
1662 #endif
1663 BOOL WINAPI GetProcessPriorityBoost(HANDLE,PBOOL);
1664 BOOL WINAPI GetProcessShutdownParameters(PDWORD,PDWORD);
1665 BOOL WINAPI GetProcessTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME);
1666 DWORD WINAPI GetProcessVersion(DWORD);
1667 HWINSTA WINAPI GetProcessWindowStation(void);
1668 BOOL WINAPI GetProcessWorkingSetSize(HANDLE,PSIZE_T,PSIZE_T);
1669 UINT WINAPI GetProfileIntA(LPCSTR,LPCSTR,INT);
1670 UINT WINAPI GetProfileIntW(LPCWSTR,LPCWSTR,INT);
1671 DWORD WINAPI GetProfileSectionA(LPCSTR,LPSTR,DWORD);
1672 DWORD WINAPI GetProfileSectionW(LPCWSTR,LPWSTR,DWORD);
1673 DWORD WINAPI GetProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPSTR,DWORD);
1674 DWORD WINAPI GetProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD);
1675 BOOL WINAPI GetQueuedCompletionStatus(HANDLE,PDWORD,PULONG_PTR,LPOVERLAPPED*,DWORD);
1676 BOOL WINAPI GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR_CONTROL,PDWORD);
1677 BOOL WINAPI GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL);
1678 BOOL WINAPI GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID*,LPBOOL);
1679 DWORD WINAPI GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR);
1680 BOOL WINAPI GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID*,LPBOOL);
1681 DWORD WINAPI GetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR,PUCHAR);
1682 BOOL WINAPI GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL);
1683 DWORD WINAPI GetShortPathNameA(LPCSTR,LPSTR,DWORD);
1684 DWORD WINAPI GetShortPathNameW(LPCWSTR,LPWSTR,DWORD);
1685 PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(PSID);
1686 DWORD WINAPI GetSidLengthRequired(UCHAR);
1687 PDWORD WINAPI GetSidSubAuthority(PSID,DWORD);
1688 PUCHAR WINAPI GetSidSubAuthorityCount(PSID);
1689 VOID WINAPI GetStartupInfoA(LPSTARTUPINFOA);
1690 VOID WINAPI GetStartupInfoW(LPSTARTUPINFOW);
1691 HANDLE WINAPI GetStdHandle(DWORD);
1692 UINT WINAPI GetSystemDirectoryA(LPSTR,UINT);
1693 UINT WINAPI GetSystemDirectoryW(LPWSTR,UINT);
1694 VOID WINAPI GetSystemInfo(LPSYSTEM_INFO);
1695 BOOL WINAPI GetSystemPowerStatus(LPSYSTEM_POWER_STATUS);
1696 #if (_WIN32_WINNT >= 0x0502)
1697 BOOL WINAPI GetSystemRegistryQuota(PDWORD,PDWORD);
1698 #endif
1699 VOID WINAPI GetSystemTime(LPSYSTEMTIME);
1700 #if (_WIN32_WINNT >= 0x0501)
1701 BOOL WINAPI GetSystemTimes(LPFILETIME,LPFILETIME,LPFILETIME);
1702 #endif
1703 BOOL WINAPI GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL);
1704 void WINAPI GetSystemTimeAsFileTime(LPFILETIME);
1705 #if (_WIN32_WINNT >= 0x0500)
1706 UINT WINAPI GetSystemWindowsDirectoryA(LPSTR,UINT);
1707 UINT WINAPI GetSystemWindowsDirectoryW(LPWSTR,UINT);
1708 #endif
1709 #if (_WIN32_WINNT >= 0x0501)
1710 UINT WINAPI GetSystemWow64DirectoryA(LPSTR,UINT);
1711 UINT WINAPI GetSystemWow64DirectoryW(LPWSTR,UINT);
1712 #endif
1713 DWORD WINAPI GetTapeParameters(HANDLE,DWORD,PDWORD,PVOID);
1714 DWORD WINAPI GetTapePosition(HANDLE,DWORD,PDWORD,PDWORD,PDWORD);
1715 DWORD WINAPI GetTapeStatus(HANDLE);
1716 UINT WINAPI GetTempFileNameA(LPCSTR,LPCSTR,UINT,LPSTR);
1717 UINT WINAPI GetTempFileNameW(LPCWSTR,LPCWSTR,UINT,LPWSTR);
1718 DWORD WINAPI GetTempPathA(DWORD,LPSTR);
1719 DWORD WINAPI GetTempPathW(DWORD,LPWSTR);
1720 BOOL WINAPI GetThreadContext(HANDLE,LPCONTEXT);
1721 #if (_WIN32_WINNT >= 0x0502)
1722 BOOL WINAPI GetThreadIOPendingFlag(HANDLE,PBOOL);
1723 #endif
1724 int WINAPI GetThreadPriority(HANDLE);
1725 BOOL WINAPI GetThreadPriorityBoost(HANDLE,PBOOL);
1726 BOOL WINAPI GetThreadSelectorEntry(HANDLE,DWORD,LPLDT_ENTRY);
1727 BOOL WINAPI GetThreadTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME);
1728 DWORD WINAPI GetTickCount(VOID);
1729 #if (_WIN32_WINNT >= 0x0600)
1730 ULONGLONG WINAPI GetTickCount64(VOID);
1731 #endif
1732 DWORD WINAPI GetThreadId(HANDLE);
1733 DWORD WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION);
1734 BOOL WINAPI GetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD,PDWORD);
1735 BOOL WINAPI GetUserNameA (LPSTR,PDWORD);
1736 BOOL WINAPI GetUserNameW(LPWSTR,PDWORD);
1737 DWORD WINAPI GetVersion(void);
1738 BOOL WINAPI GetVersionExA(LPOSVERSIONINFOA);
1739 BOOL WINAPI GetVersionExW(LPOSVERSIONINFOW);
1740 BOOL WINAPI GetVolumeInformationA(LPCSTR,LPSTR,DWORD,PDWORD,PDWORD,PDWORD,LPSTR,DWORD);
1741 BOOL WINAPI GetVolumeInformationW(LPCWSTR,LPWSTR,DWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD);
1742 #if (_WIN32_WINNT >= 0x0500)
1743 BOOL WINAPI GetVolumeNameForVolumeMountPointA(LPCSTR,LPSTR,DWORD);
1744 BOOL WINAPI GetVolumeNameForVolumeMountPointW(LPCWSTR,LPWSTR,DWORD);
1745 BOOL WINAPI GetVolumePathNameA(LPCSTR,LPSTR,DWORD);
1746 BOOL WINAPI GetVolumePathNameW(LPCWSTR,LPWSTR,DWORD);
1747 #endif
1748 #if (_WIN32_WINNT >= 0x0501)
1749 BOOL WINAPI GetVolumePathNamesForVolumeNameA(LPCSTR,LPSTR,DWORD,PDWORD);
1750 BOOL WINAPI GetVolumePathNamesForVolumeNameW(LPCWSTR,LPWSTR,DWORD,PDWORD);
1751 #endif
1752 UINT WINAPI GetWindowsDirectoryA(LPSTR,UINT);
1753 UINT WINAPI GetWindowsDirectoryW(LPWSTR,UINT);
1754 DWORD WINAPI GetWindowThreadProcessId(HWND,PDWORD);
1755 UINT WINAPI GetWriteWatch(DWORD,PVOID,SIZE_T,PVOID*,PULONG_PTR,PULONG);
1756 ATOM WINAPI GlobalAddAtomA(LPCSTR);
1757 ATOM WINAPI GlobalAddAtomW( LPCWSTR);
1758 HGLOBAL WINAPI GlobalAlloc(UINT,DWORD);
1759 SIZE_T WINAPI GlobalCompact(DWORD); /* Obsolete: Has no effect. */
1760 ATOM WINAPI GlobalDeleteAtom(ATOM);
1761 #define GlobalDiscard(m) GlobalReAlloc((m),0,GMEM_MOVEABLE)
1762 ATOM WINAPI GlobalFindAtomA(LPCSTR);
1763 ATOM WINAPI GlobalFindAtomW(LPCWSTR);
1764 VOID WINAPI GlobalFix(HGLOBAL); /* Obsolete: Has no effect. */
1765 UINT WINAPI GlobalFlags(HGLOBAL); /* Obsolete: Has no effect. */
1766 HGLOBAL WINAPI GlobalFree(HGLOBAL);
1767 UINT WINAPI GlobalGetAtomNameA(ATOM,LPSTR,int);
1768 UINT WINAPI GlobalGetAtomNameW(ATOM,LPWSTR,int);
1769 HGLOBAL WINAPI GlobalHandle(LPCVOID);
1770 LPVOID WINAPI GlobalLock(HGLOBAL);
1771 VOID WINAPI GlobalMemoryStatus(LPMEMORYSTATUS);
1772 #if (_WIN32_WINNT >= 0x0500)
1773 BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX);
1774 #endif
1775 HGLOBAL WINAPI GlobalReAlloc(HGLOBAL,DWORD,UINT);
1776 DWORD WINAPI GlobalSize(HGLOBAL);
1777 VOID WINAPI GlobalUnfix(HGLOBAL); /* Obsolete: Has no effect. */
1778 BOOL WINAPI GlobalUnlock(HGLOBAL);
1779 BOOL WINAPI GlobalUnWire(HGLOBAL); /* Obsolete: Has no effect. */
1780 PVOID WINAPI GlobalWire(HGLOBAL); /* Obsolete: Has no effect. */
1781 #define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING)
1782 PVOID WINAPI HeapAlloc(HANDLE,DWORD,SIZE_T);
1783 SIZE_T WINAPI HeapCompact(HANDLE,DWORD);
1784 HANDLE WINAPI HeapCreate(DWORD,DWORD,DWORD);
1785 BOOL WINAPI HeapDestroy(HANDLE);
1786 BOOL WINAPI HeapFree(HANDLE,DWORD,PVOID);
1787 BOOL WINAPI HeapLock(HANDLE);
1788 #if (_WIN32_WINNT >= 0x0501)
1789 BOOL WINAPI HeapQueryInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T,PSIZE_T);
1790 #endif
1791 PVOID WINAPI HeapReAlloc(HANDLE,DWORD,PVOID,DWORD);
1792 #if (_WIN32_WINNT >= 0x0501)
1793 BOOL WINAPI HeapSetInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T);
1794 #endif
1795 SIZE_T WINAPI HeapSize(HANDLE,DWORD,LPCVOID);
1796 BOOL WINAPI HeapUnlock(HANDLE);
1797 BOOL WINAPI HeapValidate(HANDLE,DWORD,LPCVOID);
1798 BOOL WINAPI HeapWalk(HANDLE,LPPROCESS_HEAP_ENTRY);
1799 BOOL WINAPI ImpersonateAnonymousToken(HANDLE);
1800 BOOL WINAPI ImpersonateLoggedOnUser(HANDLE);
1801 BOOL WINAPI ImpersonateNamedPipeClient(HANDLE);
1802 BOOL WINAPI ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL);
1803 BOOL WINAPI InitAtomTable(DWORD);
1804 BOOL WINAPI InitializeAcl(PACL,DWORD,DWORD);
1805 #if (_WIN32_WINNT >= 0x0600)
1806 VOID WINAPI InitializeConditionVariable(PCONDITION_VARIABLE);
1807 #endif
1808 VOID WINAPI InitializeCriticalSection(LPCRITICAL_SECTION);
1809 BOOL WINAPI InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION,DWORD);
1810 DWORD WINAPI SetCriticalSectionSpinCount(LPCRITICAL_SECTION,DWORD);
1811 BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR,DWORD);
1812 BOOL WINAPI InitializeSid (PSID,PSID_IDENTIFIER_AUTHORITY,BYTE);
1813
1814 #if (_WIN32_WINNT >= 0x0600)
1815 VOID WINAPI InitializeSRWLock(PSRWLOCK);
1816 #endif
1817 #ifndef __INTERLOCKED_DECLARED
1818 #define __INTERLOCKED_DECLARED
1819
1820 #if defined (_M_AMD64) || defined (_M_IA64)
1821
1822 #define InterlockedAnd _InterlockedAnd
1823 #define InterlockedOr _InterlockedOr
1824 #define InterlockedXor _InterlockedXor
1825 #define InterlockedIncrement _InterlockedIncrement
1826 #define InterlockedIncrementAcquire InterlockedIncrement
1827 #define InterlockedIncrementRelease InterlockedIncrement
1828 #define InterlockedDecrement _InterlockedDecrement
1829 #define InterlockedDecrementAcquire InterlockedDecrement
1830 #define InterlockedDecrementRelease InterlockedDecrement
1831 #define InterlockedExchange _InterlockedExchange
1832 #define InterlockedExchangeAdd _InterlockedExchangeAdd
1833 #define InterlockedCompareExchange _InterlockedCompareExchange
1834 #define InterlockedCompareExchangeAcquire InterlockedCompareExchange
1835 #define InterlockedCompareExchangeRelease InterlockedCompareExchange
1836 #define InterlockedExchangePointer _InterlockedExchangePointer
1837 #define InterlockedCompareExchangePointer _InterlockedCompareExchangePointer
1838 #define InterlockedCompareExchangePointerAcquire _InterlockedCompareExchangePointer
1839 #define InterlockedCompareExchangePointerRelease _InterlockedCompareExchangePointer
1840 #define InterlockedAnd64 _InterlockedAnd64
1841 #define InterlockedOr64 _InterlockedOr64
1842 #define InterlockedXor64 _InterlockedXor64
1843 #define InterlockedIncrement64 _InterlockedIncrement64
1844 #define InterlockedDecrement64 _InterlockedDecrement64
1845 #define InterlockedExchange64 _InterlockedExchange64
1846 #define InterlockedExchangeAdd64 _InterlockedExchangeAdd64
1847 #define InterlockedCompareExchange64 _InterlockedCompareExchange64
1848 #define InterlockedCompareExchangeAcquire64 InterlockedCompareExchange64
1849 #define InterlockedCompareExchangeRelease64 InterlockedCompareExchange64
1850
1851 #else // !(defined (_M_AMD64) || defined (_M_IA64))
1852
1853 LONG WINAPI InterlockedOr(IN OUT LONG volatile *,LONG);
1854 LONG WINAPI InterlockedAnd(IN OUT LONG volatile *,LONG);
1855 LONG WINAPI InterlockedCompareExchange(IN OUT LONG volatile *,LONG,LONG);
1856 WINBASEAPI LONG WINAPI InterlockedDecrement(IN OUT LONG volatile *);
1857 WINBASEAPI LONG WINAPI InterlockedExchange(IN OUT LONG volatile *,LONG);
1858 #if defined(_WIN64)
1859 /* PVOID WINAPI InterlockedExchangePointer(PVOID*,PVOID); */
1860 #define InterlockedExchangePointer(t,v) \
1861 (PVOID)_InterlockedExchange64((LONGLONG*)(t),(LONGLONG)(v))
1862 /* PVOID WINAPI InterlockedCompareExchangePointer(PVOID*,PVOID,PVOID); */
1863 #define InterlockedCompareExchangePointer(d,e,c) \
1864 (PVOID)_InterlockedCompareExchange64((LONGLONG*)(d),(LONGLONG)(e),(LONGLONG)(c))
1865 #else
1866 /* PVOID WINAPI InterlockedExchangePointer(PVOID*,PVOID); */
1867 #define InterlockedExchangePointer(t,v) \
1868 (PVOID)InterlockedExchange((LPLONG)(t),(LONG)(v))
1869 /* PVOID WINAPI InterlockedCompareExchangePointer(PVOID*,PVOID,PVOID); */
1870 #define InterlockedCompareExchangePointer(d,e,c) \
1871 (PVOID)InterlockedCompareExchange((LPLONG)(d),(LONG)(e),(LONG)(c))
1872 #endif
1873 LONG WINAPI InterlockedExchangeAdd(IN OUT LONG volatile *,LONG);
1874 #if (_WIN32_WINNT >= 0x0501)
1875 PSLIST_ENTRY WINAPI InterlockedFlushSList(PSLIST_HEADER);
1876 #endif
1877 WINBASEAPI LONG WINAPI InterlockedIncrement(IN OUT LONG volatile *);
1878 #if (_WIN32_WINNT >= 0x0501)
1879 PSLIST_ENTRY WINAPI InterlockedPopEntrySList(PSLIST_HEADER);
1880 PSLIST_ENTRY WINAPI InterlockedPushEntrySList(PSLIST_HEADER,PSLIST_ENTRY);
1881 #endif
1882
1883 #endif // !(defined (_M_AMD64) || defined (_M_IA64))
1884
1885 #if defined(_SLIST_HEADER_) && !defined(_NTOSP_)
1886
1887 WINBASEAPI
1888 VOID
1889 WINAPI
1890 InitializeSListHead (
1891 IN OUT PSLIST_HEADER ListHead);
1892 #endif
1893
1894 USHORT WINAPI QueryDepthSList(PSLIST_HEADER);
1895
1896 #ifdef _MSC_VER
1897
1898 //
1899 // Intrinsics are a mess -- *sigh*
1900 //
1901 long _InterlockedCompareExchange(volatile long * const Destination, const long Exchange, const long Comperand);
1902 #pragma intrinsic(_InterlockedCompareExchange)
1903 #endif
1904
1905 #if !defined(InterlockedAnd)
1906 #define InterlockedAnd InterlockedAnd_Inline
1907 FORCEINLINE
1908 LONG
1909 InterlockedAnd_Inline(IN OUT volatile LONG *Target,
1910 IN LONG Set)
1911 {
1912 LONG i;
1913 LONG j;
1914
1915 j = *Target;
1916 do {
1917 i = j;
1918 j = _InterlockedCompareExchange((volatile long *)Target,
1919 i & Set,
1920 i);
1921
1922 } while (i != j);
1923
1924 return j;
1925 }
1926 #endif
1927
1928 #if !defined(InterlockedOr)
1929 #define InterlockedOr InterlockedOr_Inline
1930 FORCEINLINE
1931 LONG
1932 InterlockedOr_Inline(IN OUT volatile LONG *Target,
1933 IN LONG Set)
1934 {
1935 LONG i;
1936 LONG j;
1937
1938 j = *Target;
1939 do {
1940 i = j;
1941 j = _InterlockedCompareExchange((volatile long *)Target,
1942 i | Set,
1943 i);
1944
1945 } while (i != j);
1946
1947 return j;
1948 }
1949 #endif
1950
1951 #endif /* __INTERLOCKED_DECLARED */
1952
1953 BOOL WINAPI IsBadCodePtr(FARPROC);
1954 BOOL WINAPI IsBadHugeReadPtr(CONST VOID*,UINT_PTR);
1955 BOOL WINAPI IsBadHugeWritePtr(PVOID,UINT_PTR);
1956 BOOL WINAPI IsBadReadPtr(CONST VOID*,UINT_PTR);
1957 BOOL WINAPI IsBadStringPtrA(LPCSTR,UINT_PTR);
1958 BOOL WINAPI IsBadStringPtrW(LPCWSTR,UINT_PTR);
1959 BOOL WINAPI IsBadWritePtr(PVOID,UINT_PTR);
1960 BOOL WINAPI IsDebuggerPresent(void);
1961 #if (_WIN32_WINNT >= 0x0501)
1962 BOOL WINAPI IsProcessInJob(HANDLE,HANDLE,PBOOL);
1963 #endif
1964 BOOL WINAPI IsProcessorFeaturePresent(DWORD);
1965 BOOL WINAPI IsSystemResumeAutomatic(void);
1966 BOOL WINAPI IsTextUnicode(CONST VOID*,int,LPINT);
1967 #if (_WIN32_WINNT >= 0x0600)
1968 BOOL WINAPI IsThreadAFiber(VOID);
1969 #endif
1970 BOOL WINAPI IsValidAcl(PACL);
1971 BOOL WINAPI IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR);
1972 BOOL WINAPI IsValidSid(PSID);
1973 #if (_WIN32_WINNT >= 0x0501)
1974 BOOL WINAPI IsWellKnownSid(PSID,WELL_KNOWN_SID_TYPE);
1975 BOOL WINAPI IsWow64Process(HANDLE,PBOOL);
1976 #endif
1977 void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION);
1978 #define LimitEmsPages(n)
1979 HINSTANCE WINAPI LoadLibraryA(LPCSTR);
1980 HINSTANCE WINAPI LoadLibraryExA(LPCSTR,HANDLE,DWORD);
1981 HINSTANCE WINAPI LoadLibraryExW(LPCWSTR,HANDLE,DWORD);
1982 HINSTANCE WINAPI LoadLibraryW(LPCWSTR);
1983 DWORD WINAPI LoadModule(LPCSTR,PVOID);
1984 HGLOBAL WINAPI LoadResource(HINSTANCE,HRSRC);
1985 HLOCAL WINAPI LocalAlloc(UINT,SIZE_T);
1986 SIZE_T WINAPI LocalCompact(UINT); /* Obsolete: Has no effect. */
1987 #define LocalDiscard(m) (LocalReAlloc((m),0,LMEM_MOVEABLE))
1988 BOOL WINAPI LocalFileTimeToFileTime(CONST FILETIME *,LPFILETIME);
1989 UINT WINAPI LocalFlags(HLOCAL); /* Obsolete: Has no effect. */
1990 HLOCAL WINAPI LocalFree(HLOCAL);
1991 HLOCAL WINAPI LocalHandle(LPCVOID);
1992 PVOID WINAPI LocalLock(HLOCAL);
1993 HLOCAL WINAPI LocalReAlloc(HLOCAL,SIZE_T,UINT);
1994 SIZE_T WINAPI LocalShrink(HLOCAL,UINT); /* Obsolete: Has no effect. */
1995 SIZE_T WINAPI LocalSize(HLOCAL);
1996 BOOL WINAPI LocalUnlock(HLOCAL);
1997 BOOL WINAPI LockFile(HANDLE,DWORD,DWORD,DWORD,DWORD);
1998 BOOL WINAPI LockFileEx(HANDLE,DWORD,DWORD,DWORD,DWORD,LPOVERLAPPED);
1999 PVOID WINAPI LockResource(HGLOBAL);
2000 #define LockSegment(w) GlobalFix((HANDLE)(w)) /* Obsolete: Has no effect. */
2001 BOOL WINAPI LogonUserA(LPSTR,LPSTR,LPSTR,DWORD,DWORD,PHANDLE);
2002 BOOL WINAPI LogonUserW(LPWSTR,LPWSTR,LPWSTR,DWORD,DWORD,PHANDLE);
2003 BOOL WINAPI LookupAccountNameA(LPCSTR,LPCSTR,PSID,PDWORD,LPSTR,PDWORD,PSID_NAME_USE);
2004 BOOL WINAPI LookupAccountNameW(LPCWSTR,LPCWSTR,PSID,PDWORD,LPWSTR,PDWORD,PSID_NAME_USE);
2005 BOOL WINAPI LookupAccountSidA(LPCSTR,PSID,LPSTR,PDWORD,LPSTR,PDWORD,PSID_NAME_USE);
2006 BOOL WINAPI LookupAccountSidW(LPCWSTR,PSID,LPWSTR,PDWORD,LPWSTR,PDWORD,PSID_NAME_USE);
2007 BOOL WINAPI LookupPrivilegeDisplayNameA(LPCSTR,LPCSTR,LPSTR,PDWORD,PDWORD);
2008 BOOL WINAPI LookupPrivilegeDisplayNameW(LPCWSTR,LPCWSTR,LPWSTR,PDWORD,PDWORD);
2009 BOOL WINAPI LookupPrivilegeNameA(LPCSTR,PLUID,LPSTR,PDWORD);
2010 BOOL WINAPI LookupPrivilegeNameW(LPCWSTR,PLUID,LPWSTR,PDWORD);
2011 BOOL WINAPI LookupPrivilegeValueA(LPCSTR,LPCSTR,PLUID);
2012 BOOL WINAPI LookupPrivilegeValueW(LPCWSTR,LPCWSTR,PLUID);
2013 LPSTR WINAPI lstrcatA(LPSTR,LPCSTR);
2014 LPWSTR WINAPI lstrcatW(LPWSTR,LPCWSTR);
2015 int WINAPI lstrcmpA(LPCSTR,LPCSTR);
2016 int WINAPI lstrcmpiA(LPCSTR,LPCSTR);
2017 int WINAPI lstrcmpiW( LPCWSTR,LPCWSTR);
2018 int WINAPI lstrcmpW(LPCWSTR,LPCWSTR);
2019 LPSTR WINAPI lstrcpyA(LPSTR,LPCSTR);
2020 LPSTR WINAPI lstrcpynA(LPSTR,LPCSTR,int);
2021 LPWSTR WINAPI lstrcpynW(LPWSTR,LPCWSTR,int);
2022 LPWSTR WINAPI lstrcpyW(LPWSTR,LPCWSTR);
2023 int WINAPI lstrlenA(LPCSTR);
2024 int WINAPI lstrlenW(LPCWSTR);
2025 BOOL WINAPI MakeAbsoluteSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD,PACL,PDWORD,PACL,PDWORD,PSID,PDWORD,PSID,PDWORD);
2026 #define MakeProcInstance(p,i) (p)
2027 BOOL WINAPI MakeSelfRelativeSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD);
2028 VOID WINAPI MapGenericMask(PDWORD,PGENERIC_MAPPING);
2029 PVOID WINAPI MapViewOfFile(HANDLE,DWORD,DWORD,DWORD,SIZE_T);
2030 PVOID WINAPI MapViewOfFileEx(HANDLE,DWORD,DWORD,DWORD,SIZE_T,PVOID);
2031 BOOL WINAPI MoveFileA(LPCSTR,LPCSTR);
2032 BOOL WINAPI MoveFileExA(LPCSTR,LPCSTR,DWORD);
2033 BOOL WINAPI MoveFileExW(LPCWSTR,LPCWSTR,DWORD);
2034 BOOL WINAPI MoveFileW(LPCWSTR,LPCWSTR);
2035 int WINAPI MulDiv(int,int,int);
2036 BOOL WINAPI NotifyChangeEventLog(HANDLE,HANDLE);
2037 BOOL WINAPI ObjectCloseAuditAlarmA(LPCSTR,PVOID,BOOL);
2038 BOOL WINAPI ObjectCloseAuditAlarmW(LPCWSTR,PVOID,BOOL);
2039 BOOL WINAPI ObjectDeleteAuditAlarmA(LPCSTR,PVOID,BOOL);
2040 BOOL WINAPI ObjectDeleteAuditAlarmW(LPCWSTR,PVOID,BOOL);
2041 BOOL WINAPI ObjectOpenAuditAlarmA(LPCSTR,PVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL);
2042 BOOL WINAPI ObjectOpenAuditAlarmW(LPCWSTR,PVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL);
2043 BOOL WINAPI ObjectPrivilegeAuditAlarmA(LPCSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL);
2044 BOOL WINAPI ObjectPrivilegeAuditAlarmW(LPCWSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL);
2045 HANDLE WINAPI OpenBackupEventLogA(LPCSTR,LPCSTR);
2046 HANDLE WINAPI OpenBackupEventLogW(LPCWSTR,LPCWSTR);
2047 HANDLE WINAPI OpenEventA(DWORD,BOOL,LPCSTR);
2048 HANDLE WINAPI OpenEventLogA (LPCSTR,LPCSTR);
2049 HANDLE WINAPI OpenEventLogW(LPCWSTR,LPCWSTR);
2050 HANDLE WINAPI OpenEventW(DWORD,BOOL,LPCWSTR);
2051 HFILE WINAPI OpenFile(LPCSTR,LPOFSTRUCT,UINT);
2052 #if (_WIN32_WINNT >= 0x0600)
2053 HANDLE WINAPI OpenFileById(HANDLE,LPFILE_ID_DESCRIPTOR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD);
2054 #endif
2055 HANDLE WINAPI OpenFileMappingA(DWORD,BOOL,LPCSTR);
2056 HANDLE WINAPI OpenFileMappingW(DWORD,BOOL,LPCWSTR);
2057 HANDLE WINAPI OpenMutexA(DWORD,BOOL,LPCSTR);
2058 HANDLE WINAPI OpenMutexW(DWORD,BOOL,LPCWSTR);
2059 HANDLE WINAPI OpenProcess(DWORD,BOOL,DWORD);
2060 BOOL WINAPI OpenProcessToken(HANDLE,DWORD,PHANDLE);
2061 HANDLE WINAPI OpenSemaphoreA(DWORD,BOOL,LPCSTR);
2062 HANDLE WINAPI OpenSemaphoreW(DWORD,BOOL,LPCWSTR);
2063 #if (_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)
2064 HANDLE WINAPI OpenThread(DWORD,BOOL,DWORD);
2065 #endif
2066 BOOL WINAPI OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE);
2067 HANDLE WINAPI OpenWaitableTimerA(DWORD,BOOL,LPCSTR);
2068 HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR);
2069 WINBASEAPI void WINAPI OutputDebugStringA(LPCSTR);
2070 WINBASEAPI void WINAPI OutputDebugStringW(LPCWSTR);
2071 BOOL WINAPI PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD);
2072 BOOL WINAPI PostQueuedCompletionStatus(HANDLE,DWORD,ULONG_PTR,LPOVERLAPPED);
2073 DWORD WINAPI PrepareTape(HANDLE,DWORD,BOOL);
2074 BOOL WINAPI PrivilegeCheck (HANDLE,PPRIVILEGE_SET,PBOOL);
2075 BOOL WINAPI PrivilegedServiceAuditAlarmA(LPCSTR,LPCSTR,HANDLE,PPRIVILEGE_SET,BOOL);
2076 BOOL WINAPI PrivilegedServiceAuditAlarmW(LPCWSTR,LPCWSTR,HANDLE,PPRIVILEGE_SET,BOOL);
2077 #if (_WIN32_WINNT >= 0x0500)
2078 BOOL WINAPI ProcessIdToSessionId(DWORD,DWORD*);
2079 #endif
2080 BOOL WINAPI PulseEvent(HANDLE);
2081 BOOL WINAPI PurgeComm(HANDLE,DWORD);
2082 #if (_WIN32_WINNT >= 0x0501)
2083 BOOL WINAPI QueryActCtxW(DWORD,HANDLE,PVOID,ULONG,PVOID,SIZE_T,SIZE_T*);
2084 #endif
2085 DWORD WINAPI QueryDosDeviceA(LPCSTR,LPSTR,DWORD);
2086 DWORD WINAPI QueryDosDeviceW(LPCWSTR,LPWSTR,DWORD);
2087 #if (_WIN32_WINNT >= 0x0501)
2088 BOOL WINAPI QueryMemoryResourceNotification(HANDLE,PBOOL);
2089 #endif
2090 BOOL WINAPI QueryPerformanceCounter(PLARGE_INTEGER);
2091 BOOL WINAPI QueryPerformanceFrequency(PLARGE_INTEGER);
2092 #if (_WIN32_WINNT >= 0x0600)
2093 VOID WINAPI QuerySecurityAccessMask(SECURITY_INFORMATION,LPDWORD);
2094 #endif
2095 DWORD WINAPI QueueUserAPC(PAPCFUNC,HANDLE,ULONG_PTR);
2096 #if (_WIN32_WINNT >= 0x0500)
2097 BOOL WINAPI QueueUserWorkItem(LPTHREAD_START_ROUTINE,PVOID,ULONG);
2098 #endif
2099 void WINAPI RaiseException(DWORD,DWORD,DWORD,const ULONG_PTR*);
2100 BOOL WINAPI ReadDirectoryChangesW(HANDLE,PVOID,DWORD,BOOL,DWORD,PDWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE);
2101 BOOL WINAPI ReadEventLogA(HANDLE,DWORD,DWORD,PVOID,DWORD,DWORD *,DWORD *);
2102 BOOL WINAPI ReadEventLogW(HANDLE,DWORD,DWORD,PVOID,DWORD,DWORD *,DWORD *);
2103 BOOL WINAPI ReadFile(HANDLE,PVOID,DWORD,PDWORD,LPOVERLAPPED);
2104 BOOL WINAPI ReadFileEx(HANDLE,PVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE);
2105 BOOL WINAPI ReadFileScatter(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED);
2106 BOOL WINAPI ReadProcessMemory(HANDLE,LPCVOID,LPVOID,SIZE_T,PSIZE_T);
2107 #if (_WIN32_WINNT >= 0x0600)
2108 VOID WINAPI RecoveryFinished(BOOL);
2109 HRESULT WINAPI RecoveryInProgress(OUT PBOOL);
2110 HRESULT WINAPI RegisterApplicationRecoveryCallback(APPLICATION_RECOVERY_CALLBACK,PVOID, DWORD, DWORD);
2111 HRESULT WINAPI RegisterApplicationRestart(PCWSTR,DWORD);
2112 #endif
2113 HANDLE WINAPI RegisterEventSourceA (LPCSTR,LPCSTR);
2114 HANDLE WINAPI RegisterEventSourceW(LPCWSTR,LPCWSTR);
2115 #if (_WIN32_WINNT >= 0x0500)
2116 BOOL WINAPI RegisterWaitForSingleObject(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
2117 HANDLE WINAPI RegisterWaitForSingleObjectEx(HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
2118 #endif
2119 #if (_WIN32_WINNT >= 0x0501)
2120 void WINAPI ReleaseActCtx(HANDLE);
2121 #endif
2122 BOOL WINAPI ReleaseMutex(HANDLE);
2123 BOOL WINAPI ReleaseSemaphore(HANDLE,LONG,LPLONG);
2124 #if (_WIN32_WINNT >= 0x0600)
2125 VOID WINAPI ReleaseSRWLockExclusive(PSRWLOCK);
2126 VOID WINAPI ReleaseSRWLockShared(PSRWLOCK);
2127 #endif
2128 BOOL WINAPI RemoveDirectoryA(LPCSTR);
2129 BOOL WINAPI RemoveDirectoryW(LPCWSTR);
2130 #if (_WIN32_WINNT >= 0x0500)
2131 ULONG WINAPI RemoveVectoredExceptionHandler(PVOID);
2132 #endif
2133 #if (_WIN32_WINNT >= 0x0500)
2134 BOOL WINAPI ReplaceFileA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPVOID,LPVOID);
2135 BOOL WINAPI ReplaceFileW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPVOID,LPVOID);
2136 #endif
2137 BOOL WINAPI ReportEventA(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCSTR*,PVOID);
2138 BOOL WINAPI ReportEventW(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCWSTR*,PVOID);
2139 BOOL WINAPI ResetEvent(HANDLE);
2140 UINT WINAPI ResetWriteWatch(LPVOID,SIZE_T);
2141 #if (_WIN32_WINNT >= 0x0510)
2142 VOID WINAPI RestoreLastError(DWORD);
2143 #endif
2144 DWORD WINAPI ResumeThread(HANDLE);
2145 BOOL WINAPI RevertToSelf(void);
2146 DWORD WINAPI SearchPathA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPSTR,LPSTR*);
2147 DWORD WINAPI SearchPathW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*);
2148 BOOL WINAPI SetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS);
2149 BOOL WINAPI SetCommBreak(HANDLE);
2150 BOOL WINAPI SetCommConfig(HANDLE,LPCOMMCONFIG,DWORD);
2151 BOOL WINAPI SetCommMask(HANDLE,DWORD);
2152 BOOL WINAPI SetCommState(HANDLE,LPDCB);
2153 BOOL WINAPI SetCommTimeouts(HANDLE,LPCOMMTIMEOUTS);
2154 BOOL WINAPI SetComputerNameA(LPCSTR);
2155 BOOL WINAPI SetComputerNameW(LPCWSTR);
2156 #if (_WIN32_WINNT >= 0x0500)
2157 BOOL WINAPI SetComputerNameExA(COMPUTER_NAME_FORMAT,LPCSTR);
2158 BOOL WINAPI SetComputerNameExW(COMPUTER_NAME_FORMAT,LPCWSTR);
2159 #endif
2160 BOOL WINAPI SetCurrentDirectoryA(LPCSTR);
2161 BOOL WINAPI SetCurrentDirectoryW(LPCWSTR);
2162 BOOL WINAPI SetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,DWORD);
2163 BOOL WINAPI SetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,DWORD);
2164 #if (_WIN32_WINNT >= 0x0502)
2165 BOOL WINAPI SetDllDirectoryA(LPCSTR);
2166 BOOL WINAPI SetDllDirectoryW(LPCWSTR);
2167 #endif
2168 BOOL WINAPI SetEndOfFile(HANDLE);
2169 BOOL WINAPI SetEnvironmentVariableA(LPCSTR,LPCSTR);
2170 BOOL WINAPI SetEnvironmentVariableW(LPCWSTR,LPCWSTR);
2171 UINT WINAPI SetErrorMode(UINT);
2172 BOOL WINAPI SetEvent(HANDLE);
2173 VOID WINAPI SetFileApisToANSI(void);
2174 VOID WINAPI SetFileApisToOEM(void);
2175 BOOL WINAPI SetFileAttributesA(LPCSTR,DWORD);
2176 #if (_WIN32_WINNT >= 0x0600)
2177 BOOL WINAPI SetFileAttributesByHandle(HANDLE,DWORD,DWORD);
2178 #endif
2179 BOOL WINAPI SetFileAttributesW(LPCWSTR,DWORD);
2180 #if (_WIN32_WINNT >= 0x0600)
2181 BOOL WINAPI SetFileBandwidthReservation(HANDLE,DWORD,DWORD,BOOL,LPDWORD,LPDWORD);
2182 BOOL WINAPI SetFileCompletionNotificationModes(HANDLE,UCHAR);
2183 #endif
2184 DWORD WINAPI SetFilePointer(HANDLE,LONG,PLONG,DWORD);
2185 BOOL WINAPI SetFilePointerEx(HANDLE,LARGE_INTEGER,PLARGE_INTEGER,DWORD);
2186 BOOL WINAPI SetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
2187 BOOL WINAPI SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
2188 #if (_WIN32_WINNT >= 0x0501)
2189 BOOL WINAPI SetFileShortNameA(HANDLE,LPCSTR);
2190 BOOL WINAPI SetFileShortNameW(HANDLE,LPCWSTR);
2191 #endif
2192 BOOL WINAPI SetFileTime(HANDLE,const FILETIME*,const FILETIME*,const FILETIME*);
2193 #if (_WIN32_WINNT >= 0x0501)
2194 BOOL WINAPI SetFileValidData(HANDLE,LONGLONG);
2195 #endif
2196 #if (_WIN32_WINNT >= 0x0502)
2197 BOOL WINAPI SetFirmwareEnvironmentVariableA(LPCSTR,LPCSTR,PVOID,DWORD);
2198 BOOL WINAPI SetFirmwareEnvironmentVariableW(LPCWSTR,LPCWSTR,PVOID,DWORD);
2199 #endif
2200 UINT WINAPI SetHandleCount(UINT);
2201 BOOL WINAPI SetHandleInformation(HANDLE,DWORD,DWORD);
2202 BOOL WINAPI SetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
2203 void WINAPI SetLastError(DWORD);
2204 void WINAPI SetLastErrorEx(DWORD,DWORD);
2205 BOOL WINAPI SetLocalTime(const SYSTEMTIME*);
2206 BOOL WINAPI SetMailslotInfo(HANDLE,DWORD);
2207 BOOL WINAPI SetNamedPipeHandleState(HANDLE,PDWORD,PDWORD,PDWORD);
2208 BOOL WINAPI SetPriorityClass(HANDLE,DWORD);
2209 BOOL WINAPI SetPrivateObjectSecurity(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR *,PGENERIC_MAPPING,HANDLE);
2210 BOOL WINAPI SetProcessAffinityMask(HANDLE,DWORD_PTR);
2211 BOOL WINAPI SetProcessPriorityBoost(HANDLE,BOOL);
2212 BOOL WINAPI SetProcessShutdownParameters(DWORD,DWORD);
2213 BOOL WINAPI SetProcessWorkingSetSize(HANDLE,SIZE_T,SIZE_T);
2214 #if (_WIN32_WINNT >= 0x0600)
2215 VOID WINAPI SetSecurityAccessMask(SECURITY_INFORMATION,LPDWORD);
2216 #endif
2217 BOOL WINAPI SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,SECURITY_DESCRIPTOR_CONTROL,SECURITY_DESCRIPTOR_CONTROL);
2218 BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL);
2219 BOOL WINAPI SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID,BOOL);
2220 BOOL WINAPI SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID,BOOL);
2221 DWORD WINAPI SetSecurityDescriptorRMControl(PSECURITY_DESCRIPTOR,PUCHAR);
2222 BOOL WINAPI SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL);
2223 BOOL WINAPI SetStdHandle(DWORD,HANDLE);
2224 #define SetSwapAreaSize(w) (w)
2225 BOOL WINAPI SetSystemPowerState(BOOL,BOOL);
2226 BOOL WINAPI SetSystemTime(const SYSTEMTIME*);
2227 BOOL WINAPI SetSystemTimeAdjustment(DWORD,BOOL);
2228 DWORD WINAPI SetTapeParameters(HANDLE,DWORD,PVOID);
2229 DWORD WINAPI SetTapePosition(HANDLE,DWORD,DWORD,DWORD,DWORD,BOOL);
2230 DWORD_PTR WINAPI SetThreadAffinityMask(HANDLE,DWORD_PTR);
2231 BOOL WINAPI SetThreadContext(HANDLE,const CONTEXT*);
2232 DWORD WINAPI SetThreadIdealProcessor(HANDLE,DWORD);
2233 BOOL WINAPI SetThreadPriority(HANDLE,int);
2234 BOOL WINAPI SetThreadPriorityBoost(HANDLE,BOOL);
2235 BOOL WINAPI SetThreadToken (PHANDLE,HANDLE);
2236 BOOL WINAPI SetTimeZoneInformation(const TIME_ZONE_INFORMATION *);
2237 BOOL WINAPI SetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD);
2238 LPTOP_LEVEL_EXCEPTION_FILTER WINAPI SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER);
2239 BOOL WINAPI SetupComm(HANDLE,DWORD,DWORD);
2240 BOOL WINAPI SetVolumeLabelA(LPCSTR,LPCSTR);
2241 BOOL WINAPI SetVolumeLabelW(LPCWSTR,LPCWSTR);
2242 #if (_WIN32_WINNT >= 0x0500)
2243 BOOL WINAPI SetVolumeMountPointA(LPCSTR,LPCSTR);
2244 BOOL WINAPI SetVolumeMountPointW(LPCWSTR,LPCWSTR);
2245 #endif
2246 BOOL WINAPI SetWaitableTimer(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,PVOID,BOOL);
2247 DWORD WINAPI SignalObjectAndWait(HANDLE,HANDLE,DWORD,BOOL);
2248 DWORD WINAPI SizeofResource(HINSTANCE,HRSRC);
2249 WINBASEAPI void WINAPI Sleep(DWORD);
2250 #if (_WIN32_WINNT >= 0x0600)
2251 BOOL WINAPI SleepConditionVariableCS(PCONDITION_VARIABLE,PCRITICAL_SECTION,DWORD);
2252 BOOL WINAPI SleepConditionVariableSRW(PCONDITION_VARIABLE,PSRWLOCK,DWORD,ULONG);
2253 #endif
2254 DWORD WINAPI SleepEx(DWORD,BOOL);
2255 DWORD WINAPI SuspendThread(HANDLE);
2256 void WINAPI SwitchToFiber(PVOID);
2257 BOOL WINAPI SwitchToThread(void);
2258 BOOL WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME);
2259 BOOL WINAPI SystemTimeToTzSpecificLocalTime(CONST TIME_ZONE_INFORMATION*,CONST SYSTEMTIME*,LPSYSTEMTIME);
2260 BOOL WINAPI TerminateProcess(HANDLE,UINT);
2261 BOOL WINAPI TerminateThread(HANDLE,DWORD);
2262 DWORD WINAPI TlsAlloc(VOID);
2263 BOOL WINAPI TlsFree(DWORD);
2264 PVOID WINAPI TlsGetValue(DWORD);
2265 BOOL WINAPI TlsSetValue(DWORD,PVOID);
2266 BOOL WINAPI TransactNamedPipe(HANDLE,PVOID,DWORD,PVOID,DWORD,PDWORD,LPOVERLAPPED);
2267 BOOL WINAPI TransmitCommChar(HANDLE,char);
2268 BOOL WINAPI TryEnterCriticalSection(LPCRITICAL_SECTION);
2269 BOOL WINAPI TzSpecificLocalTimeToSystemTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME);
2270 LONG WINAPI UnhandledExceptionFilter(LPEXCEPTION_POINTERS);
2271 BOOL WINAPI UnlockFile(HANDLE,DWORD,DWORD,DWORD,DWORD);
2272 BOOL WINAPI UnlockFileEx(HANDLE,DWORD,DWORD,DWORD,LPOVERLAPPED);
2273 #define UnlockResource(h) (h)
2274 #define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) /* Obsolete: Has no effect. */
2275 BOOL WINAPI UnmapViewOfFile(LPCVOID);
2276 #if (_WIN32_WINNT >= 0x0500)
2277 BOOL WINAPI UnregisterWait(HANDLE);
2278 BOOL WINAPI UnregisterWaitEx(HANDLE,HANDLE);
2279 #endif
2280 BOOL WINAPI UpdateResourceA(HANDLE,LPCSTR,LPCSTR,WORD,PVOID,DWORD);
2281 BOOL WINAPI UpdateResourceW(HANDLE,LPCWSTR,LPCWSTR,WORD,PVOID,DWORD);
2282 BOOL WINAPI VerifyVersionInfoA(LPOSVERSIONINFOEXA,DWORD,DWORDLONG);
2283 BOOL WINAPI VerifyVersionInfoW(LPOSVERSIONINFOEXW,DWORD,DWORDLONG);
2284 PVOID WINAPI VirtualAlloc(PVOID,SIZE_T,DWORD,DWORD);
2285 PVOID WINAPI VirtualAllocEx(HANDLE,PVOID,SIZE_T,DWORD,DWORD);
2286 BOOL WINAPI VirtualFree(PVOID,SIZE_T,DWORD);
2287 BOOL WINAPI VirtualFreeEx(HANDLE,PVOID,SIZE_T,DWORD);
2288 BOOL WINAPI VirtualLock(PVOID,SIZE_T);
2289 BOOL WINAPI VirtualProtect(PVOID,SIZE_T,DWORD,PDWORD);
2290 BOOL WINAPI VirtualProtectEx(HANDLE,PVOID,SIZE_T,DWORD,PDWORD);
2291 DWORD WINAPI VirtualQuery(LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T);
2292 DWORD WINAPI VirtualQueryEx(HANDLE,LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T);
2293 BOOL WINAPI VirtualUnlock(PVOID,SIZE_T);
2294 BOOL WINAPI WaitCommEvent(HANDLE,PDWORD,LPOVERLAPPED);
2295 BOOL WINAPI WaitForDebugEvent(LPDEBUG_EVENT,DWORD);
2296 DWORD WINAPI WaitForMultipleObjects(DWORD,const HANDLE*,BOOL,DWORD);
2297 DWORD WINAPI WaitForMultipleObjectsEx(DWORD,const HANDLE*,BOOL,DWORD,BOOL);
2298 DWORD WINAPI WaitForSingleObject(HANDLE,DWORD);
2299 DWORD WINAPI WaitForSingleObjectEx(HANDLE,DWORD,BOOL);
2300 BOOL WINAPI WaitNamedPipeA(LPCSTR,DWORD);
2301 BOOL WINAPI WaitNamedPipeW(LPCWSTR,DWORD);
2302 #if (_WIN32_WINNT >= 0x0600)
2303 VOID WINAPI WakeConditionVariable(PCONDITION_VARIABLE);
2304 VOID WINAPI WakeAllConditionVariable(PCONDITION_VARIABLE);
2305 #endif
2306 BOOL WINAPI WinLoadTrustProvider(GUID*);
2307 BOOL WINAPI Wow64DisableWow64FsRedirection(PVOID*);
2308 BOOLEAN WINAPI Wow64EnableWow64FsRedirection(BOOLEAN);
2309 BOOL WINAPI Wow64RevertWow64FsRedirection(PVOID);
2310 BOOL WINAPI WriteFile(HANDLE,LPCVOID,DWORD,LPDWORD,LPOVERLAPPED);
2311 BOOL WINAPI WriteFileEx(HANDLE,LPCVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE);
2312 BOOL WINAPI WriteFileGather(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED);
2313 BOOL WINAPI WritePrivateProfileSectionA(LPCSTR,LPCSTR,LPCSTR);
2314 BOOL WINAPI WritePrivateProfileSectionW(LPCWSTR,LPCWSTR,LPCWSTR);
2315 BOOL WINAPI WritePrivateProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
2316 BOOL WINAPI WritePrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR);
2317 BOOL WINAPI WritePrivateProfileStructA(LPCSTR,LPCSTR,LPVOID,UINT,LPCSTR);
2318 BOOL WINAPI WritePrivateProfileStructW(LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR);
2319 BOOL WINAPI WriteProcessMemory(HANDLE,LPVOID,LPCVOID,SIZE_T,SIZE_T*);
2320 BOOL WINAPI WriteProfileSectionA(LPCSTR,LPCSTR);
2321 BOOL WINAPI WriteProfileSectionW(LPCWSTR,LPCWSTR);
2322 BOOL WINAPI WriteProfileStringA(LPCSTR,LPCSTR,LPCSTR);
2323 BOOL WINAPI WriteProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR);
2324 DWORD WINAPI WriteTapemark(HANDLE,DWORD,DWORD,BOOL);
2325 #define Yield()
2326 #if (_WIN32_WINNT >= 0x0501)
2327 BOOL WINAPI ZombifyActCtx(HANDLE);
2328 #endif
2329 #if (_WIN32_WINNT >= 0x0500)
2330 BOOL WINAPI AllocateUserPhysicalPages(HANDLE,PULONG_PTR,PULONG_PTR);
2331 BOOL WINAPI FreeUserPhysicalPages(HANDLE,PULONG_PTR,PULONG_PTR);
2332 BOOL WINAPI MapUserPhysicalPages(PVOID,ULONG_PTR,PULONG_PTR);
2333 BOOL WINAPI MapUserPhysicalPagesScatter(PVOID*,ULONG_PTR,PULONG_PTR);
2334 #endif
2335
2336 #ifdef UNICODE
2337 typedef STARTUPINFOW STARTUPINFO,*LPSTARTUPINFO;
2338 typedef WIN32_FIND_DATAW WIN32_FIND_DATA,*LPWIN32_FIND_DATA;
2339 typedef HW_PROFILE_INFOW HW_PROFILE_INFO,*LPHW_PROFILE_INFO;
2340 typedef ENUMRESLANGPROCW ENUMRESLANGPROC;
2341 typedef ENUMRESNAMEPROCW ENUMRESNAMEPROC;
2342 typedef ENUMRESTYPEPROCW ENUMRESTYPEPROC;
2343 #if (_WIN32_WINNT >= 0x0501)
2344 typedef ACTCTXW ACTCTX,*PACTCTX;
2345 typedef PCACTCTXW PCACTCTX;
2346 #endif
2347 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmW
2348 #define AddAtom AddAtomW
2349 #define BackupEventLog BackupEventLogW
2350 #define BeginUpdateResource BeginUpdateResourceW
2351 #define BuildCommDCB BuildCommDCBW
2352 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsW
2353 #define CallNamedPipe CallNamedPipeW
2354 #if (_WIN32_WINNT >= 0x0501)
2355 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3W
2356 #endif
2357 #define ClearEventLog ClearEventLogW
2358 #define CommConfigDialog CommConfigDialogW
2359 #define CopyFile CopyFileW
2360 #define CopyFileEx CopyFileExW
2361 #if (_WIN32_WINNT >= 0x0501)
2362 #define CreateActCtx CreateActCtxW
2363 #endif
2364 #define CreateDirectory CreateDirectoryW
2365 #define CreateDirectoryEx CreateDirectoryExW
2366 #define CreateEvent CreateEventW
2367 #define CreateFile CreateFileW
2368 #define CreateFileMapping CreateFileMappingW
2369 #if (_WIN32_WINNT >= 0x0500)
2370 #define CreateHardLink CreateHardLinkW
2371 #define CreateJobObject CreateJobObjectW
2372 #endif
2373 #define CreateMailslot CreateMailslotW
2374 #define CreateMutex CreateMutexW
2375 #define CreateNamedPipe CreateNamedPipeW
2376 #define CreateProcess CreateProcessW
2377 #define CreateProcessAsUser CreateProcessAsUserW
2378 #define CreateSemaphore CreateSemaphoreW
2379 #define CreateWaitableTimer CreateWaitableTimerW
2380 #define DecryptFile DecryptFileW
2381 #define DefineDosDevice DefineDosDeviceW
2382 #define DeleteFile DeleteFileW
2383 #if (_WIN32_WINNT >= 0x0500)
2384 #define DeleteVolumeMountPoint DeleteVolumeMountPointW
2385 #define DnsHostnameToComputerName DnsHostnameToComputerNameW
2386 #endif
2387 #define EncryptFile EncryptFileW
2388 #define EndUpdateResource EndUpdateResourceW
2389 #define EnumResourceLanguages EnumResourceLanguagesW
2390 #define EnumResourceNames EnumResourceNamesW
2391 #define EnumResourceTypes EnumResourceTypesW
2392 #define ExpandEnvironmentStrings ExpandEnvironmentStringsW
2393 #define FatalAppExit FatalAppExitW
2394 #define FileEncryptionStatus FileEncryptionStatusW
2395 #if (_WIN32_WINNT >= 0x0501)
2396 #define FindActCtxSectionString FindActCtxSectionStringW
2397 #endif
2398 #define FindAtom FindAtomW
2399 #define FindFirstChangeNotification FindFirstChangeNotificationW
2400 #define FindFirstFile FindFirstFileW
2401 #define FindFirstFileEx FindFirstFileExW
2402 #if (_WIN32_WINNT >= 0x0500)
2403 #define FindFirstVolume FindFirstVolumeW
2404 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointW
2405 #endif
2406 #define FindNextFile FindNextFileW
2407 #if (_WIN32_WINNT >= 0x0500)
2408 #define FindNextVolume FindNextVolumeW
2409 #define FindNextVolumeMountPoint FindNextVolumeMountPointW
2410 #endif
2411 #define FindResource FindResourceW
2412 #define FindResourceEx FindResourceExW
2413 #define FormatMessage FormatMessageW
2414 #define FreeEnvironmentStrings FreeEnvironmentStringsW
2415 #define GetAtomName GetAtomNameW
2416 #define GetBinaryType GetBinaryTypeW
2417 #define GetCommandLine GetCommandLineW
2418 #define GetCompressedFileSize GetCompressedFileSizeW
2419 #define GetComputerName GetComputerNameW
2420 #if (_WIN32_WINNT >= 0x0500)
2421 #define GetComputerNameEx GetComputerNameExW
2422 #endif
2423 #define GetCurrentDirectory GetCurrentDirectoryW
2424 #define GetDefaultCommConfig GetDefaultCommConfigW
2425 #define GetDiskFreeSpace GetDiskFreeSpaceW
2426 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExW
2427 #if (_WIN32_WINNT >= 0x0502)
2428 #define GetDllDirectory GetDllDirectoryW
2429 #endif
2430 #define GetDriveType GetDriveTypeW
2431 #define GetEnvironmentStrings GetEnvironmentStringsW
2432 #define GetEnvironmentVariable GetEnvironmentVariableW
2433 #define GetFileAttributes GetFileAttributesW
2434 #define GetFileAttributesEx GetFileAttributesExW
2435 #define GetFileSecurity GetFileSecurityW
2436 #if (_WIN32_WINNT >= 0x0600)
2437 #define GetFinalPathNameByHandle GetFinalPathNameByHandleW
2438 #endif
2439 #define GetFullPathName GetFullPathNameW
2440 #define GetLogicalDriveStrings GetLogicalDriveStringsW
2441 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
2442 #define GetLongPathName GetLongPathNameW
2443 #endif
2444 #define GetModuleFileName GetModuleFileNameW
2445 #define GetModuleHandle GetModuleHandleW
2446 #if (_WIN32_WINNT >= 0x0500)
2447 #define GetModuleHandleEx GetModuleHandleExW
2448 #endif
2449 #define GetNamedPipeHandleState GetNamedPipeHandleStateW
2450 #define GetPrivateProfileInt GetPrivateProfileIntW
2451 #define GetPrivateProfileSection GetPrivateProfileSectionW
2452 #define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesW
2453 #define GetPrivateProfileString GetPrivateProfileStringW
2454 #define GetPrivateProfileStruct GetPrivateProfileStructW
2455 #define GetProfileInt GetProfileIntW
2456 #define GetProfileSection GetProfileSectionW
2457 #define GetProfileString GetProfileStringW
2458 #define GetShortPathName GetShortPathNameW
2459 #define GetStartupInfo GetStartupInfoW
2460 #define GetSystemDirectory GetSystemDirectoryW
2461 #if (_WIN32_WINNT >= 0x0500)
2462 #define GetSystemWindowsDirectory GetSystemWindowsDirectoryW
2463 #endif
2464 #if (_WIN32_WINNT >= 0x0501)
2465 #define GetSystemWow64Directory GetSystemWow64DirectoryW
2466 #endif
2467 #define GetTempFileName GetTempFileNameW
2468 #define GetTempPath GetTempPathW
2469 #define GetUserName GetUserNameW
2470 #define GetVersionEx GetVersionExW
2471 #define GetVolumeInformation GetVolumeInformationW
2472 #define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointW
2473 #define GetVolumePathName GetVolumePathNameW
2474 #define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameW
2475 #define GetWindowsDirectory GetWindowsDirectoryW
2476 #define GlobalAddAtom GlobalAddAtomW
2477 #define GlobalFindAtom GlobalFindAtomW
2478 #define GlobalGetAtomName GlobalGetAtomNameW
2479 #define IsBadStringPtr IsBadStringPtrW
2480 #define LoadLibrary LoadLibraryW
2481 #define LoadLibraryEx LoadLibraryExW
2482 #define LogonUser LogonUserW
2483 #define LookupAccountName LookupAccountNameW
2484 #define LookupAccountSid LookupAccountSidW
2485 #define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameW
2486 #define LookupPrivilegeName LookupPrivilegeNameW
2487 #define LookupPrivilegeValue LookupPrivilegeValueW
2488 #define lstrcat lstrcatW
2489 #define lstrcmp lstrcmpW
2490 #define lstrcmpi lstrcmpiW
2491 #define lstrcpy lstrcpyW
2492 #define lstrcpyn lstrcpynW
2493 #define lstrlen lstrlenW
2494 #define MoveFile MoveFileW
2495 #define MoveFileEx MoveFileExW
2496 #define ObjectCloseAuditAlarm ObjectCloseAuditAlarmW
2497 #define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmW
2498 #define ObjectOpenAuditAlarm ObjectOpenAuditAlarmW
2499 #define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmW
2500 #define OpenBackupEventLog OpenBackupEventLogW
2501 #define OpenEvent OpenEventW
2502 #define OpenEventLog OpenEventLogW
2503 #define OpenFileMapping OpenFileMappingW
2504 #define OpenMutex OpenMutexW
2505 #define OpenSemaphore OpenSemaphoreW
2506 #define OutputDebugString OutputDebugStringW
2507 #define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmW
2508 #define QueryDosDevice QueryDosDeviceW
2509 #define ReadEventLog ReadEventLogW
2510 #define RegisterEventSource RegisterEventSourceW
2511 #define RemoveDirectory RemoveDirectoryW
2512 #if (_WIN32_WINNT >= 0x0500)
2513 #define ReplaceFile ReplaceFileW
2514 #endif
2515 #define ReportEvent ReportEventW
2516 #define SearchPath SearchPathW
2517 #define SetComputerName SetComputerNameW
2518 #define SetComputerNameEx SetComputerNameExW
2519 #define SetCurrentDirectory SetCurrentDirectoryW
2520 #define SetDefaultCommConfig SetDefaultCommConfigW
2521 #if (_WIN32_WINNT >= 0x0502)
2522 #define SetDllDirectory SetDllDirectoryW
2523 #endif
2524 #define SetEnvironmentVariable SetEnvironmentVariableW
2525 #define SetFileAttributes SetFileAttributesW
2526 #define SetFileSecurity SetFileSecurityW
2527 #if (_WIN32_WINNT >= 0x0501)
2528 #define SetFileShortName SetFileShortNameW
2529 #endif
2530 #if (_WIN32_WINNT >= 0x0502)
2531 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableW
2532 #endif
2533 #define SetVolumeLabel SetVolumeLabelW
2534 #define SetVolumeMountPoint SetVolumeMountPointW
2535 #define UpdateResource UpdateResourceW
2536 #define VerifyVersionInfo VerifyVersionInfoW
2537 #define WaitNamedPipe WaitNamedPipeW
2538 #define WritePrivateProfileSection WritePrivateProfileSectionW
2539 #define WritePrivateProfileString WritePrivateProfileStringW
2540 #define WritePrivateProfileStruct WritePrivateProfileStructW
2541 #define WriteProfileSection WriteProfileSectionW
2542 #define WriteProfileString WriteProfileStringW
2543 #else
2544 typedef STARTUPINFOA STARTUPINFO,*LPSTARTUPINFO;
2545 typedef WIN32_FIND_DATAA WIN32_FIND_DATA,*LPWIN32_FIND_DATA;
2546 typedef HW_PROFILE_INFOA HW_PROFILE_INFO,*LPHW_PROFILE_INFO;
2547 #if (_WIN32_WINNT >= 0x0501)
2548 typedef ACTCTXA ACTCTX,*PACTCTX;
2549 typedef PCACTCTXA PCACTCTX;
2550 #endif
2551 typedef ENUMRESLANGPROCA ENUMRESLANGPROC;
2552 typedef ENUMRESNAMEPROCA ENUMRESNAMEPROC;
2553 typedef ENUMRESTYPEPROCA ENUMRESTYPEPROC;
2554 #define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmA
2555 #define AddAtom AddAtomA
2556 #define BackupEventLog BackupEventLogA
2557 #define BeginUpdateResource BeginUpdateResourceA
2558 #define BuildCommDCB BuildCommDCBA
2559 #define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsA
2560 #define CallNamedPipe CallNamedPipeA
2561 #if (_WIN32_WINNT >= 0x0501)
2562 #define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3A
2563 #endif
2564 #define ClearEventLog ClearEventLogA
2565 #define CommConfigDialog CommConfigDialogA
2566 #define CopyFile CopyFileA
2567 #define CopyFileEx CopyFileExA
2568 #if (_WIN32_WINNT >= 0x0501)
2569 #define CreateActCtx CreateActCtxA
2570 #endif
2571 #define CreateDirectory CreateDirectoryA
2572 #define CreateDirectoryEx CreateDirectoryExA
2573 #define CreateEvent CreateEventA
2574 #define CreateFile CreateFileA
2575 #define CreateFileMapping CreateFileMappingA
2576 #if (_WIN32_WINNT >= 0x0500)
2577 #define CreateHardLink CreateHardLinkA
2578 #define CreateJobObject CreateJobObjectA
2579 #endif
2580 #define CreateMailslot CreateMailslotA
2581 #define CreateMutex CreateMutexA
2582 #define CreateNamedPipe CreateNamedPipeA
2583 #define CreateProcess CreateProcessA
2584 #define CreateProcessAsUser CreateProcessAsUserA
2585 #define CreateSemaphore CreateSemaphoreA
2586 #define CreateWaitableTimer CreateWaitableTimerA
2587 #define DecryptFile DecryptFileA
2588 #define DefineDosDevice DefineDosDeviceA
2589 #define DeleteFile DeleteFileA
2590 #if (_WIN32_WINNT >= 0x0500)
2591 #define DeleteVolumeMountPoint DeleteVolumeMountPointA
2592 #define DnsHostnameToComputerName DnsHostnameToComputerNameA
2593 #endif
2594 #define EncryptFile EncryptFileA
2595 #define EndUpdateResource EndUpdateResourceA
2596 #define EnumResourceLanguages EnumResourceLanguagesA
2597 #define EnumResourceNames EnumResourceNamesA
2598 #define EnumResourceTypes EnumResourceTypesA
2599 #define ExpandEnvironmentStrings ExpandEnvironmentStringsA
2600 #define FatalAppExit FatalAppExitA
2601 #define FileEncryptionStatus FileEncryptionStatusA
2602 #if (_WIN32_WINNT >= 0x0501)
2603 #define FindActCtxSectionString FindActCtxSectionStringA
2604 #endif
2605 #define FindAtom FindAtomA
2606 #define FindFirstChangeNotification FindFirstChangeNotificationA
2607 #define FindFirstFile FindFirstFileA
2608 #define FindFirstFileEx FindFirstFileExA
2609 #if (_WIN32_WINNT >= 0x0500)
2610 #define FindFirstVolume FindFirstVolumeA
2611 #define FindFirstVolumeMountPoint FindFirstVolumeMountPointA
2612 #endif
2613 #define FindNextFile FindNextFileA
2614 #if (_WIN32_WINNT >= 0x0500)
2615 #define FindNextVolume FindNextVolumeA
2616 #define FindNextVolumeMountPoint FindNextVolumeMountPointA
2617 #endif
2618 #define FindResource FindResourceA
2619 #define FindResourceEx FindResourceExA
2620 #define FormatMessage FormatMessageA
2621 #define FreeEnvironmentStrings FreeEnvironmentStringsA
2622 #define GetAtomName GetAtomNameA
2623 #define GetBinaryType GetBinaryTypeA
2624 #define GetCommandLine GetCommandLineA
2625 #define GetComputerName GetComputerNameA
2626 #if (_WIN32_WINNT >= 0x0500)
2627 #define GetComputerNameEx GetComputerNameExA
2628 #endif
2629 #define GetCompressedFileSize GetCompressedFileSizeA
2630 #define GetCurrentDirectory GetCurrentDirectoryA
2631 #define GetDefaultCommConfig GetDefaultCommConfigA
2632 #define GetDiskFreeSpace GetDiskFreeSpaceA
2633 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExA
2634 #if (_WIN32_WINNT >= 0x0502)
2635 #define GetDllDirectory GetDllDirectoryA
2636 #endif
2637 #define GetDriveType GetDriveTypeA
2638 #define GetEnvironmentStringsA GetEnvironmentStrings
2639 #define GetEnvironmentVariable GetEnvironmentVariableA
2640 #define GetFileAttributes GetFileAttributesA
2641 #define GetFileAttributesEx GetFileAttributesExA
2642 #define GetFileSecurity GetFileSecurityA
2643 #if (_WIN32_WINNT >= 0x0600)
2644 #define GetFinalPathNameByHandle GetFinalPathNameByHandleA
2645 #endif
2646 #define GetFullPathName GetFullPathNameA
2647 #define GetLogicalDriveStrings GetLogicalDriveStringsA
2648 #if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
2649 #define GetLongPathName GetLongPathNameA
2650 #endif
2651 #define GetNamedPipeHandleState GetNamedPipeHandleStateA
2652 #define GetModuleHandle GetModuleHandleA
2653 #if (_WIN32_WINNT >= 0x0500)
2654 #define GetModuleHandleEx GetModuleHandleExA
2655 #endif
2656 #define GetModuleFileName GetModuleFileNameA
2657 #define GetPrivateProfileInt GetPrivateProfileIntA
2658 #define GetPrivateProfileSection GetPrivateProfileSectionA
2659 #define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesA
2660 #define GetPrivateProfileString GetPrivateProfileStringA
2661 #define GetPrivateProfileStruct GetPrivateProfileStructA
2662 #define GetProfileInt GetProfileIntA
2663 #define GetProfileSection GetProfileSectionA
2664 #define GetProfileString GetProfileStringA
2665 #define GetShortPathName GetShortPathNameA
2666 #define GetStartupInfo GetStartupInfoA
2667 #define GetSystemDirectory GetSystemDirectoryA
2668 #if (_WIN32_WINNT >= 0x0500)
2669 #define GetSystemWindowsDirectory GetSystemWindowsDirectoryA
2670 #endif
2671 #if (_WIN32_WINNT >= 0x0501)
2672 #define GetSystemWow64Directory GetSystemWow64DirectoryA
2673 #endif
2674 #define GetTempFileName GetTempFileNameA
2675 #define GetTempPath GetTempPathA
2676 #define GetUserName GetUserNameA
2677 #define GetVersionEx GetVersionExA
2678 #define GetVolumeInformation GetVolumeInformationA
2679 #define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointA
2680 #define GetVolumePathName GetVolumePathNameA
2681 #define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameA
2682 #define GetWindowsDirectory GetWindowsDirectoryA
2683 #define GlobalAddAtom GlobalAddAtomA
2684 #define GlobalFindAtom GlobalFindAtomA
2685 #define GlobalGetAtomName GlobalGetAtomNameA
2686 #define IsBadStringPtr IsBadStringPtrA
2687 #define LoadLibrary LoadLibraryA
2688 #define LoadLibraryEx LoadLibraryExA
2689 #define LogonUser LogonUserA
2690 #define LookupAccountName LookupAccountNameA
2691 #define LookupAccountSid LookupAccountSidA
2692 #define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameA
2693 #define LookupPrivilegeName LookupPrivilegeNameA
2694 #define LookupPrivilegeValue LookupPrivilegeValueA
2695 #define lstrcat lstrcatA
2696 #define lstrcmp lstrcmpA
2697 #define lstrcmpi lstrcmpiA
2698 #define lstrcpy lstrcpyA
2699 #define lstrcpyn lstrcpynA
2700 #define lstrlen lstrlenA
2701 #define MoveFile MoveFileA
2702 #define MoveFileEx MoveFileExA
2703 #define ObjectCloseAuditAlarm ObjectCloseAuditAlarmA
2704 #define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmA
2705 #define ObjectOpenAuditAlarm ObjectOpenAuditAlarmA
2706 #define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmA
2707 #define OpenBackupEventLog OpenBackupEventLogA
2708 #define OpenEvent OpenEventA
2709 #define OpenEventLog OpenEventLogA
2710 #define OpenFileMapping OpenFileMappingA
2711 #define OpenMutex OpenMutexA
2712 #define OpenSemaphore OpenSemaphoreA
2713 #define OutputDebugString OutputDebugStringA
2714 #define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmA
2715 #define QueryDosDevice QueryDosDeviceA
2716 #define ReadEventLog ReadEventLogA
2717 #define RegisterEventSource RegisterEventSourceA
2718 #define RemoveDirectory RemoveDirectoryA
2719 #if (_WIN32_WINNT >= 0x0500)
2720 #define ReplaceFile ReplaceFileA
2721 #endif
2722 #define ReportEvent ReportEventA
2723 #define SearchPath SearchPathA
2724 #define SetComputerName SetComputerNameA
2725 #define SetComputerNameEx SetComputerNameExA
2726 #define SetCurrentDirectory SetCurrentDirectoryA
2727 #define SetDefaultCommConfig SetDefaultCommConfigA
2728 #if (_WIN32_WINNT >= 0x0502)
2729 #define SetDllDirectory SetDllDirectoryA
2730 #endif
2731 #define SetEnvironmentVariable SetEnvironmentVariableA
2732 #define SetFileAttributes SetFileAttributesA
2733 #define SetFileSecurity SetFileSecurityA
2734 #if (_WIN32_WINNT >= 0x0501)
2735 #define SetFileShortName SetFileShortNameA
2736 #endif
2737 #if (_WIN32_WINNT >= 0x0502)
2738 #define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableA
2739 #endif
2740 #define SetVolumeLabel SetVolumeLabelA
2741 #define SetVolumeMountPoint SetVolumeMountPointA
2742 #define UpdateResource UpdateResourceA
2743 #define VerifyVersionInfo VerifyVersionInfoA
2744 #define WaitNamedPipe WaitNamedPipeA
2745 #define WritePrivateProfileSection WritePrivateProfileSectionA
2746 #define WritePrivateProfileString WritePrivateProfileStringA
2747 #define WritePrivateProfileStruct WritePrivateProfileStructA
2748 #define WriteProfileSection WriteProfileSectionA
2749 #define WriteProfileString WriteProfileStringA
2750 #endif
2751 #endif
2752
2753 #ifdef _MSC_VER
2754 #pragma warning(pop)
2755 #endif
2756
2757 #ifdef __cplusplus
2758 }
2759 #endif
2760 #endif /* _WINBASE_H */