source: Daodan/MinGW/include/winbase.h@ 1163

Last change on this file since 1163 was 1046, checked in by alloc, 8 years ago

Daodan: Added Windows MinGW and build batch file

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