OSDN Git Service

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