OSDN Git Service

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