]> gitweb.factorcode.org Git - factor.git/blob - basis/windows/kernel32/kernel32.factor
scryfall: add more filter/reject words, better mtga parser
[factor.git] / basis / windows / kernel32 / kernel32.factor
1 ! Copyright (C) 2005, 2006 Doug Coleman.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien alien.c-types alien.syntax kernel windows.types
4 math multiline classes.struct alien.data arrays literals ;
5 QUALIFIED-WITH: alien.c-types c
6 IN: windows.kernel32
7
8 : lo-word ( wparam -- lo ) c:short <ref> c:short deref ; inline
9 : hi-word ( wparam -- hi ) -16 shift lo-word ; inline
10 : >lo-hi ( WORD -- array ) [ lo-word ] [ hi-word ] bi 2array ; inline
11
12 CONSTANT: MAX_PATH 260
13
14 CONSTANT: GHND          0x42
15 CONSTANT: GMEM_FIXED          0
16 CONSTANT: GMEM_MOVEABLE       2
17 CONSTANT: GMEM_ZEROINIT 0x40
18 CONSTANT: GPTR          0x40
19
20 CONSTANT: GENERIC_READ    0x80000000
21 CONSTANT: GENERIC_WRITE   0x40000000
22 CONSTANT: GENERIC_EXECUTE 0x20000000
23 CONSTANT: GENERIC_ALL     0x10000000
24
25 CONSTANT: CREATE_NEW        1
26 CONSTANT: CREATE_ALWAYS     2
27 CONSTANT: OPEN_EXISTING     3
28 CONSTANT: OPEN_ALWAYS       4
29 CONSTANT: TRUNCATE_EXISTING 5
30
31 CONSTANT: FILE_LIST_DIRECTORY       0x00000001
32 CONSTANT: FILE_READ_DATA            0x00000001
33 CONSTANT: FILE_ADD_FILE             0x00000002
34 CONSTANT: FILE_WRITE_DATA           0x00000002
35 CONSTANT: FILE_ADD_SUBDIRECTORY     0x00000004
36 CONSTANT: FILE_APPEND_DATA          0x00000004
37 CONSTANT: FILE_CREATE_PIPE_INSTANCE 0x00000004
38 CONSTANT: FILE_READ_EA              0x00000008
39 CONSTANT: FILE_READ_PROPERTIES      0x00000008
40 CONSTANT: FILE_WRITE_EA             0x00000010
41 CONSTANT: FILE_WRITE_PROPERTIES     0x00000010
42 CONSTANT: FILE_EXECUTE              0x00000020
43 CONSTANT: FILE_TRAVERSE             0x00000020
44 CONSTANT: FILE_DELETE_CHILD         0x00000040
45 CONSTANT: FILE_READ_ATTRIBUTES      0x00000080
46 CONSTANT: FILE_WRITE_ATTRIBUTES     0x00000100
47
48 CONSTANT: FILE_SHARE_READ        1
49 CONSTANT: FILE_SHARE_WRITE       2
50 CONSTANT: FILE_SHARE_DELETE      4
51 CONSTANT: FILE_SHARE_VALID_FLAGS 7
52
53 CONSTANT: FILE_FLAG_WRITE_THROUGH       0x80000000
54 CONSTANT: FILE_FLAG_OVERLAPPED          0x40000000
55 CONSTANT: FILE_FLAG_NO_BUFFERING        0x20000000
56 CONSTANT: FILE_FLAG_RANDOM_ACCESS       0x10000000
57 CONSTANT: FILE_FLAG_SEQUENTIAL_SCAN     0x08000000
58 CONSTANT: FILE_FLAG_DELETE_ON_CLOSE     0x04000000
59 CONSTANT: FILE_FLAG_BACKUP_SEMANTICS    0x02000000
60 CONSTANT: FILE_FLAG_POSIX_SEMANTICS     0x01000000
61 CONSTANT: FILE_FLAG_OPEN_REPARSE_POINT  0x00200000
62 CONSTANT: FILE_FLAG_OPEN_NO_RECALL      0x00100000
63 CONSTANT: FILE_FLAG_FIRST_PIPE_INSTANCE 0x00080000
64
65 CONSTANT: FILE_ATTRIBUTE_READONLY            0x00000001
66 CONSTANT: FILE_ATTRIBUTE_HIDDEN              0x00000002
67 CONSTANT: FILE_ATTRIBUTE_SYSTEM              0x00000004
68 CONSTANT: FILE_ATTRIBUTE_DIRECTORY           0x00000010
69 CONSTANT: FILE_ATTRIBUTE_ARCHIVE             0x00000020
70 CONSTANT: FILE_ATTRIBUTE_DEVICE              0x00000040
71 CONSTANT: FILE_ATTRIBUTE_NORMAL              0x00000080
72 CONSTANT: FILE_ATTRIBUTE_TEMPORARY           0x00000100
73 CONSTANT: FILE_ATTRIBUTE_SPARSE_FILE         0x00000200
74 CONSTANT: FILE_ATTRIBUTE_REPARSE_POINT       0x00000400
75 CONSTANT: FILE_ATTRIBUTE_COMPRESSED          0x00000800
76 CONSTANT: FILE_ATTRIBUTE_OFFLINE             0x00001000
77 CONSTANT: FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 0x00002000
78 CONSTANT: FILE_ATTRIBUTE_ENCRYPTED           0x00004000
79 CONSTANT: FILE_ATTRIBUTE_INTEGRITY_STREAM    0x00008000
80 CONSTANT: FILE_ATTRIBUTE_VIRTUAL             0x00010000
81 CONSTANT: FILE_ATTRIBUTE_NO_SCRUB_DATA       0x00020000
82
83 CONSTANT: FILE_NOTIFY_CHANGE_FILE_NAME    0x001
84 CONSTANT: FILE_NOTIFY_CHANGE_DIR_NAME     0x002
85 CONSTANT: FILE_NOTIFY_CHANGE_ATTRIBUTES   0x004
86 CONSTANT: FILE_NOTIFY_CHANGE_SIZE         0x008
87 CONSTANT: FILE_NOTIFY_CHANGE_LAST_WRITE   0x010
88 CONSTANT: FILE_NOTIFY_CHANGE_LAST_ACCESS  0x020
89 CONSTANT: FILE_NOTIFY_CHANGE_CREATION     0x040
90 CONSTANT: FILE_NOTIFY_CHANGE_EA           0x080
91 CONSTANT: FILE_NOTIFY_CHANGE_SECURITY     0x100
92 CONSTANT: FILE_NOTIFY_CHANGE_STREAM_NAME  0x200
93 CONSTANT: FILE_NOTIFY_CHANGE_STREAM_SIZE  0x400
94 CONSTANT: FILE_NOTIFY_CHANGE_STREAM_WRITE 0x800
95 CONSTANT: FILE_NOTIFY_CHANGE_ALL          0xfff
96
97 CONSTANT: FILE_ACTION_ADDED 1
98 CONSTANT: FILE_ACTION_REMOVED 2
99 CONSTANT: FILE_ACTION_MODIFIED 3
100 CONSTANT: FILE_ACTION_RENAMED_OLD_NAME 4
101 CONSTANT: FILE_ACTION_RENAMED_NEW_NAME 5
102 CONSTANT: FILE_ACTION_ADDED_STREAM 6
103 CONSTANT: FILE_ACTION_REMOVED_STREAM 7
104 CONSTANT: FILE_ACTION_MODIFIED_STREAM 8
105
106 CONSTANT: FILE_CASE_SENSITIVE_SEARCH        0x00000001
107 CONSTANT: FILE_CASE_PRESERVED_NAMES         0x00000002
108 CONSTANT: FILE_UNICODE_ON_DISK              0x00000004
109 CONSTANT: FILE_PERSISTENT_ACLS              0x00000008
110 CONSTANT: FILE_FILE_COMPRESSION             0x00000010
111 CONSTANT: FILE_VOLUME_QUOTAS                0x00000020
112 CONSTANT: FILE_SUPPORTS_SPARSE_FILES        0x00000040
113 CONSTANT: FILE_SUPPORTS_REPARSE_POINTS      0x00000080
114 CONSTANT: FILE_VOLUME_IS_COMPRESSED         0x00008000
115 CONSTANT: FILE_SUPPORTS_OBJECT_IDS          0x00010000
116 CONSTANT: FILE_SUPPORTS_ENCRYPTION          0x00020000
117 CONSTANT: FILE_NAMED_STREAMS                0x00040000
118 CONSTANT: FILE_READ_ONLY_VOLUME             0x00080000
119 CONSTANT: FILE_SEQUENTIAL_WRITE_ONCE        0x00100000
120 CONSTANT: FILE_SUPPORTS_TRANSACTIONS        0x00200000
121 CONSTANT: FILE_SUPPORTS_HARD_LINKS          0x00400000
122 CONSTANT: FILE_SUPPORTS_EXTENDED_ATTRIBUTES 0x00800000
123 CONSTANT: FILE_SUPPORTS_OPEN_BY_FILE_ID     0x01000000
124 CONSTANT: FILE_SUPPORTS_USN_JOURNAL         0x02000000
125 CONSTANT: FILE_DAX_VOLUME                   0x20000000
126
127 CONSTANT: DONT_RESOLVE_DLL_REFERENCES 1
128
129 STRUCT: FILE_NOTIFY_INFORMATION
130     { NextEntryOffset DWORD }
131     { Action DWORD }
132     { FileNameLength DWORD }
133     { FileName WCHAR[1] } ;
134
135 TYPEDEF: FILE_NOTIFY_INFORMATION* PFILE_NOTIFY_INFORMATION
136
137 CONSTANT: STD_INPUT_HANDLE  -10
138 CONSTANT: STD_OUTPUT_HANDLE -11
139 CONSTANT: STD_ERROR_HANDLE  -12
140
141 : INVALID_HANDLE_VALUE ( -- alien ) -1 <alien> ; inline
142 CONSTANT: INVALID_FILE_SIZE 0xFFFFFFFF
143 CONSTANT: INVALID_SET_FILE_POINTER 0xffffffff
144
145 CONSTANT: FILE_BEGIN 0
146 CONSTANT: FILE_CURRENT 1
147 CONSTANT: FILE_END 2
148
149 CONSTANT: OF_READ 0
150 CONSTANT: OF_READWRITE    2
151 CONSTANT: OF_WRITE    1
152 CONSTANT: OF_SHARE_COMPAT    0
153 CONSTANT: OF_SHARE_DENY_NONE    64
154 CONSTANT: OF_SHARE_DENY_READ    48
155 CONSTANT: OF_SHARE_DENY_WRITE    32
156 CONSTANT: OF_SHARE_EXCLUSIVE    16
157 CONSTANT: OF_CANCEL    2048
158 CONSTANT: OF_CREATE    4096
159 CONSTANT: OF_DELETE    512
160 CONSTANT: OF_EXIST    16384
161 CONSTANT: OF_PARSE    256
162 CONSTANT: OF_PROMPT    8192
163 CONSTANT: OF_REOPEN    32768
164 CONSTANT: OF_VERIFY    1024
165
166 CONSTANT: INFINITE 0xFFFFFFFF
167
168 ! From C:\cygwin\usr\include\w32api\winbase.h
169 CONSTANT: FILE_TYPE_UNKNOWN 0
170 CONSTANT: FILE_TYPE_DISK 1
171 CONSTANT: FILE_TYPE_CHAR 2
172 CONSTANT: FILE_TYPE_PIPE 3
173 CONSTANT: FILE_TYPE_REMOTE 0x8000
174
175 CONSTANT: TIME_ZONE_ID_UNKNOWN 0
176 CONSTANT: TIME_ZONE_ID_STANDARD 1
177 CONSTANT: TIME_ZONE_ID_DAYLIGHT 2
178 CONSTANT: TIME_ZONE_ID_INVALID 0xFFFFFFFF
179
180 CONSTANT: PF_XMMI64_INSTRUCTIONS_AVAILABLE 10
181 CONSTANT: PF_SSE3_INSTRUCTIONS_AVAILABLE 13
182
183 CONSTANT: MAX_COMPUTERNAME_LENGTH 15
184 CONSTANT: UNLEN 256
185
186 CONSTANT: PROCESS_TERMINATE 0x1
187 CONSTANT: PROCESS_CREATE_THREAD 0x2
188 CONSTANT: PROCESS_VM_OPERATION 0x8
189 CONSTANT: PROCESS_VM_READ 0x10
190 CONSTANT: PROCESS_VM_WRITE 0x20
191 CONSTANT: PROCESS_DUP_HANDLE 0x40
192 CONSTANT: PROCESS_CREATE_PROCESS 0x80
193 CONSTANT: PROCESS_SET_QUOTA 0x100
194 CONSTANT: PROCESS_SET_INFORMATION 0x200
195 CONSTANT: PROCESS_QUERY_INFORMATION 0x400
196 CONSTANT: PROCESS_ALL_ACCESS 0x001F0FFF
197
198 CONSTANT: MEM_COMMIT 0x1000
199 CONSTANT: MEM_RELEASE  0x8000
200
201 CONSTANT: PAGE_NOACCESS    1
202 CONSTANT: PAGE_READONLY    2
203 CONSTANT: PAGE_READWRITE 4
204 CONSTANT: PAGE_WRITECOPY 8
205 CONSTANT: PAGE_EXECUTE 0x10
206 CONSTANT: PAGE_EXECUTE_READ 0x20
207 CONSTANT: PAGE_EXECUTE_READWRITE 0x40
208 CONSTANT: PAGE_EXECUTE_WRITECOPY 0x80
209 CONSTANT: PAGE_GUARD 0x100
210 CONSTANT: PAGE_NOCACHE 0x200
211
212 CONSTANT: SEC_BASED 0x00200000
213 CONSTANT: SEC_NO_CHANGE 0x00400000
214 CONSTANT: SEC_FILE 0x00800000
215 CONSTANT: SEC_IMAGE 0x01000000
216 CONSTANT: SEC_VLM 0x02000000
217 CONSTANT: SEC_RESERVE 0x04000000
218 CONSTANT: SEC_COMMIT 0x08000000
219 CONSTANT: SEC_NOCACHE 0x10000000
220 ALIAS: MEM_IMAGE SEC_IMAGE
221
222 CONSTANT: FILE_MAP_ALL_ACCESS 0xf001f
223 CONSTANT: FILE_MAP_READ   4
224 CONSTANT: FILE_MAP_WRITE  2
225 CONSTANT: FILE_MAP_COPY   1
226
227 CONSTANT: THREAD_MODE_BACKGROUND_BEGIN 0x10000
228 CONSTANT: THREAD_MODE_BACKGROUND_END   0x20000
229 CONSTANT: THREAD_PRIORITY_ABOVE_NORMAL 1
230 CONSTANT: THREAD_PRIORITY_BELOW_NORMAL -1
231 CONSTANT: THREAD_PRIORITY_HIGHEST 2
232 CONSTANT: THREAD_PRIORITY_IDLE -15
233 CONSTANT: THREAD_PRIORITY_LOWEST -2
234 CONSTANT: THREAD_PRIORITY_NORMAL 0
235 CONSTANT: THREAD_PRIORITY_TIME_CRITICAL 15
236
237 ENUM: COMPUTER_NAME_FORMAT
238     ComputerNameNetBIOS
239     ComputerNameDnsHostname
240     ComputerNameDnsDomain
241     ComputerNameDnsFullyQualified
242     ComputerNamePhysicalNetBIOS
243     ComputerNamePhysicalDnsHostname
244     ComputerNamePhysicalDnsDomain
245     ComputerNamePhysicalDnsFullyQualified
246     ComputerNameMax ;
247
248 STRUCT: OVERLAPPED
249     { internal UINT_PTR }
250     { internal-high UINT_PTR }
251     { offset DWORD }
252     { offset-high DWORD }
253     { event HANDLE } ;
254
255 STRUCT: SYSTEMTIME
256     { wYear WORD }
257     { wMonth WORD }
258     { wDayOfWeek WORD }
259     { wDay WORD }
260     { wHour WORD }
261     { wMinute WORD }
262     { wSecond WORD }
263     { wMilliseconds WORD } ;
264
265 STRUCT: TIME_ZONE_INFORMATION
266     { Bias LONG }
267     { StandardName WCHAR[32] }
268     { StandardDate SYSTEMTIME }
269     { StandardBias LONG }
270     { DaylightName WCHAR[32] }
271     { DaylightDate SYSTEMTIME }
272     { DaylightBias LONG } ;
273
274 STRUCT: DYNAMIC_TIME_ZONE_INFORMATION
275     { Bias LONG }
276     { StandardName WCHAR[32] }
277     { StandardDate SYSTEMTIME }
278     { StandardBias LONG }
279     { DaylightName WCHAR[32] }
280     { DaylightDate SYSTEMTIME }
281     { DaylightBias LONG }
282     { TimeZoneKeyName WCHAR[128] }
283     { DynamicDaylightTimeDisabled BOOLEAN } ;
284
285 TYPEDEF: DYNAMIC_TIME_ZONE_INFORMATION* PDYNAMIC_TIME_ZONE_INFORMATION
286
287
288 STRUCT: FILETIME
289     { dwLowDateTime DWORD }
290     { dwHighDateTime DWORD } ;
291
292 STRUCT: STARTUPINFO
293     { cb DWORD }
294     { lpReserved LPTSTR }
295     { lpDesktop LPTSTR }
296     { lpTitle LPTSTR }
297     { dwX DWORD }
298     { dwY DWORD }
299     { dwXSize DWORD }
300     { dwYSize DWORD }
301     { dwXCountChars DWORD }
302     { dwYCountChars DWORD }
303     { dwFillAttribute DWORD }
304     { dwFlags DWORD }
305     { wShowWindow WORD }
306     { cbReserved2 WORD }
307     { lpReserved2 LPBYTE }
308     { hStdInput HANDLE }
309     { hStdOutput HANDLE }
310     { hStdError HANDLE } ;
311
312 TYPEDEF: void* LPSTARTUPINFO
313
314 STRUCT: PROCESS_INFORMATION
315     { hProcess HANDLE }
316     { hThread HANDLE }
317     { dwProcessId DWORD }
318     { dwThreadId DWORD } ;
319
320 STRUCT: SYSTEM_INFO
321     { dwOemId DWORD }
322     { dwPageSize DWORD }
323     { lpMinimumApplicationAddress LPVOID }
324     { lpMaximumApplicationAddress LPVOID }
325     { dwActiveProcessorMask DWORD_PTR }
326     { dwNumberOfProcessors DWORD }
327     { dwProcessorType DWORD }
328     { dwAllocationGranularity DWORD }
329     { wProcessorLevel WORD }
330     { wProcessorRevision WORD } ;
331
332 TYPEDEF: void* LPSYSTEM_INFO
333
334 STRUCT: MEMORYSTATUS
335     { dwLength DWORD }
336     { dwMemoryLoad DWORD }
337     { dwTotalPhys SIZE_T }
338     { dwAvailPhys SIZE_T }
339     { dwTotalPageFile SIZE_T }
340     { dwAvailPageFile SIZE_T }
341     { dwTotalVirtual SIZE_T }
342     { dwAvailVirtual SIZE_T } ;
343
344 TYPEDEF: void* LPMEMORYSTATUS
345
346 STRUCT: MEMORYSTATUSEX
347     { dwLength DWORD }
348     { dwMemoryLoad DWORD }
349     { ullTotalPhys DWORDLONG }
350     { ullAvailPhys DWORDLONG }
351     { ullTotalPageFile DWORDLONG }
352     { ullAvailPageFile DWORDLONG }
353     { ullTotalVirtual DWORDLONG }
354     { ullAvailVirtual DWORDLONG }
355     { ullAvailExtendedVirtual DWORDLONG } ;
356
357 TYPEDEF: void* LPMEMORYSTATUSEX
358
359 STRUCT: OSVERSIONINFO
360     { dwOSVersionInfoSize DWORD }
361     { dwMajorVersion DWORD }
362     { dwMinorVersion DWORD }
363     { dwBuildNumber DWORD }
364     { dwPlatformId DWORD }
365     { szCSDVersion WCHAR[128] } ;
366
367 TYPEDEF: void* LPOSVERSIONINFO
368
369 STRUCT: MEMORY_BASIC_INFORMATION
370   { BaseAddress void* }
371   { AllocationBase void* }
372   { AllocationProtect DWORD }
373   { RegionSize SIZE_T }
374   { state DWORD }
375   { protect DWORD }
376   { type DWORD } ;
377
378 STRUCT: GUID
379     { Data1 ULONG }
380     { Data2 WORD }
381     { Data3 WORD }
382     { Data4 UCHAR[8] } ;
383
384 ![[
385     fBinary  :1;
386     fParity  :1;
387     fOutxCtsFlow  :1;
388     fOutxDsrFlow  :1;
389     fDtrControl  :2;
390     fDsrSensitivity  :1;
391     fTXContinueOnXoff  :1;
392     fOutX  :1;
393     fInX  :1;
394     fErrorChar  :1;
395     fNull  :1;
396     fRtsControl  :2;
397     fAbortOnError  :1;
398     fDummy2  :17;
399 ]]
400
401 CONSTANT: SP_SERIALCOMM   0x1
402 CONSTANT: BAUD_075        0x1
403 CONSTANT: BAUD_110        0x2
404 CONSTANT: BAUD_134_5      0x4
405 CONSTANT: BAUD_150        0x8
406 CONSTANT: BAUD_300        0x10
407 CONSTANT: BAUD_600        0x20
408 CONSTANT: BAUD_1200       0x40
409 CONSTANT: BAUD_1800       0x80
410 CONSTANT: BAUD_2400       0x100
411 CONSTANT: BAUD_4800       0x200
412 CONSTANT: BAUD_7200       0x400
413 CONSTANT: BAUD_9600       0x800
414 CONSTANT: BAUD_14400      0x1000
415 CONSTANT: BAUD_19200      0x2000
416 CONSTANT: BAUD_38400      0x4000
417 CONSTANT: BAUD_56K        0x8000
418 CONSTANT: BAUD_57600      0x40000
419 CONSTANT: BAUD_115200     0x20000
420 CONSTANT: BAUD_128K       0x10000
421 CONSTANT: BAUD_USER       0x10000000
422 CONSTANT: PST_FAX     0x21
423 CONSTANT: PST_LAT     0x101
424 CONSTANT: PST_MODEM       0x6
425 CONSTANT: PST_NETWORK_BRIDGE  0x100
426 CONSTANT: PST_PARALLELPORT    0x2
427 CONSTANT: PST_RS232       0x1
428 CONSTANT: PST_RS422       0x3
429 CONSTANT: PST_RS423       0x4
430 CONSTANT: PST_RS449       0x5
431 CONSTANT: PST_SCANNER     0x22
432 CONSTANT: PST_TCPIP_TELNET    0x102
433 CONSTANT: PST_UNSPECIFIED 0
434 CONSTANT: PST_X25     0x103
435 CONSTANT: PCF_16BITMODE   0x200
436 CONSTANT: PCF_DTRDSR      0x1
437 CONSTANT: PCF_INTTIMEOUTS 0x80
438 CONSTANT: PCF_PARITY_CHECK    0x8
439 CONSTANT: PCF_RLSD        0x4
440 CONSTANT: PCF_RTSCTS      0x2
441 CONSTANT: PCF_SETXCHAR    0x20
442 CONSTANT: PCF_SPECIALCHARS    0x100
443 CONSTANT: PCF_TOTALTIMEOUTS   0x40
444 CONSTANT: PCF_XONXOFF     0x10
445 CONSTANT: SP_BAUD     0x2
446 CONSTANT: SP_DATABITS     0x4
447 CONSTANT: SP_HANDSHAKING  0x10
448 CONSTANT: SP_PARITY       0x1
449 CONSTANT: SP_PARITY_CHECK 0x20
450 CONSTANT: SP_RLSD     0x40
451 CONSTANT: SP_STOPBITS     0x8
452 CONSTANT: DATABITS_5      1
453 CONSTANT: DATABITS_6      2
454 CONSTANT: DATABITS_7      4
455 CONSTANT: DATABITS_8      8
456 CONSTANT: DATABITS_16     16
457 CONSTANT: DATABITS_16X    32
458 CONSTANT: STOPBITS_10     1
459 CONSTANT: STOPBITS_15     2
460 CONSTANT: STOPBITS_20     4
461 CONSTANT: PARITY_NONE     256
462 CONSTANT: PARITY_ODD      512
463 CONSTANT: PARITY_EVEN     1024
464 CONSTANT: PARITY_MARK     2048
465 CONSTANT: PARITY_SPACE    4096
466 CONSTANT: COMMPROP_INITIALIZED    0xe73cf52e
467
468 CONSTANT: CBR_110         110
469 CONSTANT: CBR_300         300
470 CONSTANT: CBR_600         600
471 CONSTANT: CBR_1200            1200
472 CONSTANT: CBR_2400            2400
473 CONSTANT: CBR_4800            4800
474 CONSTANT: CBR_9600            9600
475 CONSTANT: CBR_14400           14400
476 CONSTANT: CBR_19200           19200
477 CONSTANT: CBR_38400           38400
478 CONSTANT: CBR_56000           56000
479 CONSTANT: CBR_57600           57600
480 CONSTANT: CBR_115200          115200
481 CONSTANT: CBR_128000          128000
482 CONSTANT: CBR_256000          256000
483 CONSTANT: DTR_CONTROL_DISABLE     0
484 CONSTANT: DTR_CONTROL_ENABLE      1
485 CONSTANT: DTR_CONTROL_HANDSHAKE   2
486 CONSTANT: RTS_CONTROL_DISABLE     0
487 CONSTANT: RTS_CONTROL_ENABLE      1
488 CONSTANT: RTS_CONTROL_HANDSHAKE   2
489 CONSTANT: RTS_CONTROL_TOGGLE      3
490 CONSTANT: EVENPARITY          2
491 CONSTANT: MARKPARITY          3
492 CONSTANT: NOPARITY            0
493 CONSTANT: ODDPARITY           1
494 CONSTANT: SPACEPARITY         4
495 CONSTANT: ONESTOPBIT          0
496 CONSTANT: ONE5STOPBITS        1
497 CONSTANT: TWOSTOPBITS         2
498
499 ! Flowcontrol bit mask in DCB
500 CONSTANT: FM_fBinary          0x1
501 CONSTANT: FM_fParity          0x2
502 CONSTANT: FM_fOutxCtsFlow     0x4
503 CONSTANT: FM_fOutxDsrFlow     0x8
504 CONSTANT: FM_fDtrControl      0x30
505 CONSTANT: FM_fDsrSensitivity      0x40
506 CONSTANT: FM_fTXContinueOnXoff    0x80
507 CONSTANT: FM_fOutX            0x100
508 CONSTANT: FM_fInX         0x200
509 CONSTANT: FM_fErrorChar       0x400
510 CONSTANT: FM_fNull            0x800
511 CONSTANT: FM_fRtsControl      0x3000
512 CONSTANT: FM_fAbortOnError        0x4000
513 CONSTANT: FM_fDummy2          0xffff8000
514
515 CONSTANT: BM_fCtsHold     0x1
516 CONSTANT: BM_fDsrHold     0x2
517 CONSTANT: BM_fRlsdHold    0x4
518 CONSTANT: BM_fXoffHold    0x8
519 CONSTANT: BM_fXoffSent    0x10
520 CONSTANT: BM_fEof     0x20
521 CONSTANT: BM_fTxim        0x40
522 CONSTANT: BM_AllBits      0x7f
523
524 ! PurgeComm bit mask
525 CONSTANT: PURGE_TXABORT   0x1
526 CONSTANT: PURGE_RXABORT   0x2
527 CONSTANT: PURGE_TXCLEAR   0x4
528 CONSTANT: PURGE_RXCLEAR   0x8
529
530 ! GetCommModemStatus bit mask
531 CONSTANT: MS_CTS_ON       0x10
532 CONSTANT: MS_DSR_ON       0x20
533 CONSTANT: MS_RING_ON      0x40
534 CONSTANT: MS_RLSD_ON      0x80
535
536 ! EscapeCommFunction operations
537 CONSTANT: SETXOFF     0x1
538 CONSTANT: SETXON      0x2
539 CONSTANT: SETRTS      0x3
540 CONSTANT: CLRRTS      0x4
541 CONSTANT: SETDTR      0x5
542 CONSTANT: CLRDTR      0x6
543 CONSTANT: SETBREAK        0x8
544 CONSTANT: CLRBREAK        0x9
545
546 ! ClearCommError bit mask
547 CONSTANT: CE_RXOVER       0x1
548 CONSTANT: CE_OVERRUN      0x2
549 CONSTANT: CE_RXPARITY     0x4
550 CONSTANT: CE_FRAME        0x8
551 CONSTANT: CE_BREAK        0x10
552 CONSTANT: CE_TXFULL       0x100
553 ! LPT only
554 CONSTANT: CE_PTO        0x200
555 CONSTANT: CE_IOE        0x400
556 CONSTANT: CE_DNS        0x800
557 CONSTANT: CE_OOP        0x1000
558 ! LPT only
559 CONSTANT: CE_MODE     0x8000
560
561 ! GetCommMask bits
562 CONSTANT: EV_RXCHAR       0x1
563 CONSTANT: EV_RXFLAG       0x2
564 CONSTANT: EV_TXEMPTY      0x4
565 CONSTANT: EV_CTS      0x8
566 CONSTANT: EV_DSR      0x10
567 CONSTANT: EV_RLSD     0x20
568 CONSTANT: EV_BREAK        0x40
569 CONSTANT: EV_ERR      0x80
570 CONSTANT: EV_RING     0x100
571 CONSTANT: EV_PERR     0x200
572 CONSTANT: EV_RX80FULL     0x400
573 CONSTANT: EV_EVENT1       0x800
574 CONSTANT: EV_EVENT2       0x1000
575
576 STRUCT: DCB
577     { DCBlength DWORD }
578     { BaudRate DWORD }
579     { flags DWORD }
580     { wReserved WORD  }
581     { XonLim WORD  }
582     { XoffLim WORD  }
583     { ByteSize BYTE  }
584     { Parity BYTE  }
585     { StopBits BYTE  }
586     { XonChar char  }
587     { XoffChar char  }
588     { ErrorChar char  }
589     { EofChar char  }
590     { EvtChar char  }
591     { wReserved1 WORD  } ;
592 TYPEDEF: DCB* PDCB
593 TYPEDEF: DCB* LPDCB
594
595 STRUCT: COMMCONFIG
596     { dwSize DWORD }
597     { wVersion WORD }
598     { wReserved WORD }
599     { dcb DCB }
600     { dwProviderSubType DWORD }
601     { dwProviderOffset DWORD }
602     { dwProviderSize DWORD }
603     { wcProviderData { WCHAR 1 } } ;
604 TYPEDEF: COMMCONFIG* LPCOMMCONFIG
605
606 STRUCT: COMMPROP
607     { wPacketLength WORD }
608     { wPacketVersion WORD }
609     { dwServiceMask DWORD }
610     { dwReserved1 DWORD }
611     { dwMaxTxQueue DWORD }
612     { dwMaxRxQueue DWORD }
613     { dwMaxBaud DWORD }
614     { dwProvSubType DWORD }
615     { dwProvCapabilities DWORD }
616     { dwSettableParams DWORD }
617     { dwSettableBaud DWORD }
618     { wSettableData WORD  }
619     { wSettableStopParity WORD  }
620     { dwCurrentTxQueue DWORD }
621     { dwCurrentRxQueue DWORD }
622     { dwProvSpec1 DWORD }
623     { dwProvSpec2 DWORD }
624     { wcProvChar { WCHAR 1 } } ;
625 TYPEDEF: COMMPROP* LPCOMMPROP
626
627
628 CONSTANT: SE_CREATE_TOKEN_NAME "SeCreateTokenPrivilege"
629 CONSTANT: SE_ASSIGNPRIMARYTOKEN_NAME "SeAssignPrimaryTokenPrivilege"
630 CONSTANT: SE_LOCK_MEMORY_NAME "SeLockMemoryPrivilege"
631 CONSTANT: SE_INCREASE_QUOTA_NAME "SeIncreaseQuotaPrivilege"
632 CONSTANT: SE_UNSOLICITED_INPUT_NAME "SeUnsolicitedInputPrivilege"
633 CONSTANT: SE_MACHINE_ACCOUNT_NAME "SeMachineAccountPrivilege"
634 CONSTANT: SE_TCB_NAME "SeTcbPrivilege"
635 CONSTANT: SE_SECURITY_NAME "SeSecurityPrivilege"
636 CONSTANT: SE_TAKE_OWNERSHIP_NAME "SeTakeOwnershipPrivilege"
637 CONSTANT: SE_LOAD_DRIVER_NAME "SeLoadDriverPrivilege"
638 CONSTANT: SE_SYSTEM_PROFILE_NAME "SeSystemProfilePrivilege"
639 CONSTANT: SE_SYSTEMTIME_NAME "SeSystemtimePrivilege"
640 CONSTANT: SE_PROF_SINGLE_PROCESS_NAME "SeProfileSingleProcessPrivilege"
641 CONSTANT: SE_INC_BASE_PRIORITY_NAME "SeIncreaseBasePriorityPrivilege"
642 CONSTANT: SE_CREATE_PAGEFILE_NAME "SeCreatePagefilePrivilege"
643 CONSTANT: SE_CREATE_PERMANENT_NAME "SeCreatePermanentPrivilege"
644 CONSTANT: SE_BACKUP_NAME "SeBackupPrivilege"
645 CONSTANT: SE_RESTORE_NAME "SeRestorePrivilege"
646 CONSTANT: SE_SHUTDOWN_NAME "SeShutdownPrivilege"
647 CONSTANT: SE_DEBUG_NAME "SeDebugPrivilege"
648 CONSTANT: SE_AUDIT_NAME "SeAuditPrivilege"
649 CONSTANT: SE_SYSTEM_ENVIRONMENT_NAME "SeSystemEnvironmentPrivilege"
650 CONSTANT: SE_CHANGE_NOTIFY_NAME "SeChangeNotifyPrivilege"
651 CONSTANT: SE_REMOTE_SHUTDOWN_NAME "SeRemoteShutdownPrivilege"
652 CONSTANT: SE_UNDOCK_NAME "SeUndockPrivilege"
653 CONSTANT: SE_ENABLE_DELEGATION_NAME "SeEnableDelegationPrivilege"
654 CONSTANT: SE_MANAGE_VOLUME_NAME "SeManageVolumePrivilege"
655 CONSTANT: SE_IMPERSONATE_NAME "SeImpersonatePrivilege"
656 CONSTANT: SE_CREATE_GLOBAL_NAME "SeCreateGlobalPrivilege"
657
658 CONSTANT: SE_GROUP_MANDATORY 0x00000001
659 CONSTANT: SE_GROUP_ENABLED_BY_DEFAULT 0x00000002
660 CONSTANT: SE_GROUP_ENABLED 0x00000004
661 CONSTANT: SE_GROUP_OWNER 0x00000008
662 CONSTANT: SE_GROUP_USE_FOR_DENY_ONLY 0x00000010
663 CONSTANT: SE_GROUP_LOGON_ID 0xC0000000
664 CONSTANT: SE_GROUP_RESOURCE 0x20000000
665
666 CONSTANT: SE_PRIVILEGE_ENABLED_BY_DEFAULT 0x00000001
667 CONSTANT: SE_PRIVILEGE_ENABLED 0x00000002
668 CONSTANT: SE_PRIVILEGE_REMOVE 0x00000004
669 CONSTANT: SE_PRIVILEGE_USED_FOR_ACCESS 0x80000000
670
671 CONSTANT: PRIVILEGE_SET_ALL_NECESSARY 1
672
673 CONSTANT: SE_OWNER_DEFAULTED 0x00000001
674 CONSTANT: SE_GROUP_DEFAULTED 0x00000002
675 CONSTANT: SE_DACL_PRESENT 0x00000004
676 CONSTANT: SE_DACL_DEFAULTED 0x00000008
677 CONSTANT: SE_SACL_PRESENT 0x00000010
678 CONSTANT: SE_SACL_DEFAULTED 0x00000020
679 CONSTANT: SE_DACL_AUTO_INHERIT_REQ 0x00000100
680 CONSTANT: SE_SACL_AUTO_INHERIT_REQ 0x00000200
681 CONSTANT: SE_DACL_AUTO_INHERITED 0x00000400
682 CONSTANT: SE_SACL_AUTO_INHERITED 0x00000800
683 CONSTANT: SE_DACL_PROTECTED  0x00001000
684 CONSTANT: SE_SACL_PROTECTED  0x00002000
685 CONSTANT: SE_SELF_RELATIVE 0x00008000
686
687 CONSTANT: ANYSIZE_ARRAY 1
688
689 CONSTANT: MAXIMUM_WAIT_OBJECTS 64
690 CONSTANT: MAXIMUM_SUSPEND_COUNT 0x7f
691 CONSTANT: WAIT_OBJECT_0 0
692 CONSTANT: WAIT_ABANDONED_0 128
693 CONSTANT: WAIT_TIMEOUT 258
694 CONSTANT: WAIT_IO_COMPLETION 0xc0
695 CONSTANT: WAIT_FAILED 0xffffffff
696
697 STRUCT: LUID
698     { LowPart DWORD }
699     { HighPart LONG } ;
700 TYPEDEF: LUID* PLUID
701
702 STRUCT: LUID_AND_ATTRIBUTES
703     { Luid LUID }
704     { Attributes DWORD } ;
705 TYPEDEF: LUID_AND_ATTRIBUTES* PLUID_AND_ATTRIBUTES
706
707 STRUCT: TOKEN_PRIVILEGES
708     { PrivilegeCount DWORD }
709     { Privileges LUID_AND_ATTRIBUTES* } ;
710 TYPEDEF: TOKEN_PRIVILEGES* PTOKEN_PRIVILEGES
711
712 STRUCT: WIN32_FILE_ATTRIBUTE_DATA
713     { dwFileAttributes DWORD }
714     { ftCreationTime FILETIME }
715     { ftLastAccessTime FILETIME }
716     { ftLastWriteTime FILETIME }
717     { nFileSizeHigh DWORD }
718     { nFileSizeLow DWORD } ;
719 TYPEDEF: WIN32_FILE_ATTRIBUTE_DATA* LPWIN32_FILE_ATTRIBUTE_DATA
720
721 STRUCT: BY_HANDLE_FILE_INFORMATION
722   { dwFileAttributes DWORD }
723   { ftCreationTime FILETIME }
724   { ftLastAccessTime FILETIME }
725   { ftLastWriteTime FILETIME }
726   { dwVolumeSerialNumber DWORD }
727   { nFileSizeHigh DWORD }
728   { nFileSizeLow DWORD }
729   { nNumberOfLinks DWORD }
730   { nFileIndexHigh DWORD }
731   { nFileIndexLow DWORD } ;
732 TYPEDEF: BY_HANDLE_FILE_INFORMATION* LPBY_HANDLE_FILE_INFORMATION
733
734 CONSTANT: OFS_MAXPATHNAME 128
735
736 STRUCT: OFSTRUCT
737     { cBytes BYTE }
738     { fFixedDisk BYTE }
739     { nErrCode WORD }
740     { Reserved1 WORD }
741     { Reserved2 WORD }
742     { szPathName { CHAR 128 } } ;
743     ! { szPathName { CHAR OFS_MAXPATHNAME } } ;
744
745 TYPEDEF: OFSTRUCT* LPOFSTRUCT
746
747 STRUCT: WIN32_FIND_DATA
748     { dwFileAttributes DWORD }
749     { ftCreationTime FILETIME }
750     { ftLastAccessTime FILETIME }
751     { ftLastWriteTime FILETIME }
752     { nFileSizeHigh DWORD }
753     { nFileSizeLow DWORD }
754     { dwReserved0 DWORD }
755     { dwReserved1 DWORD }
756     { cFileName { TCHAR MAX_PATH } }
757     { cAlternateFileName TCHAR[14] } ;
758
759 TYPEDEF: WIN32_FIND_DATA* PWIN32_FIND_DATA
760 TYPEDEF: WIN32_FIND_DATA* LPWIN32_FIND_DATA
761 TYPEDEF: void* POVERLAPPED
762 TYPEDEF: void* LPOVERLAPPED
763 TYPEDEF: void* LPSECURITY_ATTRIBUTES
764 TYPEDEF: void* LPPROCESS_INFORMATION
765
766 TYPEDEF: SYSTEMTIME* PSYSTEMTIME
767 TYPEDEF: PSYSTEMTIME LPSYSTEMTIME
768
769 TYPEDEF: TIME_ZONE_INFORMATION* PTIME_ZONE_INFORMATION
770 TYPEDEF: PTIME_ZONE_INFORMATION LPTIME_ZONE_INFORMATION
771
772 TYPEDEF: FILETIME* PFILETIME
773 TYPEDEF: PFILETIME LPFILETIME
774
775 TYPEDEF: int GET_FILEEX_INFO_LEVELS
776
777 STRUCT: SECURITY_ATTRIBUTES
778     { nLength DWORD }
779     { lpSecurityDescriptor LPVOID }
780     { bInheritHandle BOOL } ;
781
782 CONSTANT: HANDLE_FLAG_INHERIT 1
783 CONSTANT: HANDLE_FLAG_PROTECT_FROM_CLOSE 2
784
785 CONSTANT: STARTF_USESHOWWINDOW    0x00000001
786 CONSTANT: STARTF_USESIZE          0x00000002
787 CONSTANT: STARTF_USEPOSITION      0x00000004
788 CONSTANT: STARTF_USECOUNTCHARS    0x00000008
789 CONSTANT: STARTF_USEFILLATTRIBUTE 0x00000010
790 CONSTANT: STARTF_RUNFULLSCREEN    0x00000020
791 CONSTANT: STARTF_FORCEONFEEDBACK  0x00000040
792 CONSTANT: STARTF_FORCEOFFFEEDBACK 0x00000080
793 CONSTANT: STARTF_USESTDHANDLES    0x00000100
794 CONSTANT: STARTF_USEHOTKEY        0x00000200
795
796 CONSTANT: PIPE_ACCESS_INBOUND  1
797 CONSTANT: PIPE_ACCESS_OUTBOUND 2
798 CONSTANT: PIPE_ACCESS_DUPLEX   3
799
800 CONSTANT: PIPE_TYPE_BYTE    0
801 CONSTANT: PIPE_TYPE_MESSAGE 4
802
803 CONSTANT: PIPE_READMODE_BYTE    0
804 CONSTANT: PIPE_READMODE_MESSAGE 2
805
806 CONSTANT: PIPE_WAIT   0
807 CONSTANT: PIPE_NOWAIT 1
808
809 CONSTANT: PIPE_UNLIMITED_INSTANCES 255
810
811 CONSTANT: EXCEPTION_NONCONTINUABLE          0x1
812 CONSTANT: STATUS_GUARD_PAGE_VIOLATION       0x80000001
813 CONSTANT: STATUS_DATATYPE_MISALIGNMENT      0x80000002
814 CONSTANT: STATUS_BREAKPOINT                 0x80000003
815 CONSTANT: STATUS_SINGLE_STEP                0x80000004
816 CONSTANT: STATUS_ACCESS_VIOLATION           0xC0000005
817 CONSTANT: STATUS_IN_PAGE_ERROR              0xC0000006
818 CONSTANT: STATUS_INVALID_HANDLE             0xC0000008
819 CONSTANT: STATUS_NO_MEMORY                  0xC0000017
820 CONSTANT: STATUS_ILLEGAL_INSTRUCTION        0xC000001D
821 CONSTANT: STATUS_NONCONTINUABLE_EXCEPTION   0xC0000025
822 CONSTANT: STATUS_INVALID_DISPOSITION        0xC0000026
823 CONSTANT: STATUS_ARRAY_BOUNDS_EXCEEDED      0xC000008C
824 CONSTANT: STATUS_FLOAT_DENORMAL_OPERAND     0xC000008D
825 CONSTANT: STATUS_FLOAT_DIVIDE_BY_ZERO       0xC000008E
826 CONSTANT: STATUS_FLOAT_INEXACT_RESULT       0xC000008F
827 CONSTANT: STATUS_FLOAT_INVALID_OPERATION    0xC0000090
828 CONSTANT: STATUS_FLOAT_OVERFLOW             0xC0000091
829 CONSTANT: STATUS_FLOAT_STACK_CHECK          0xC0000092
830 CONSTANT: STATUS_FLOAT_UNDERFLOW            0xC0000093
831 CONSTANT: STATUS_INTEGER_DIVIDE_BY_ZERO     0xC0000094
832 CONSTANT: STATUS_INTEGER_OVERFLOW           0xC0000095
833 CONSTANT: STATUS_PRIVILEGED_INSTRUCTION     0xC0000096
834 CONSTANT: STATUS_STACK_OVERFLOW             0xC00000FD
835 CONSTANT: STATUS_CONTROL_C_EXIT             0xC000013A
836 CONSTANT: STATUS_FLOAT_MULTIPLE_FAULTS      0xC00002B4
837 CONSTANT: STATUS_FLOAT_MULTIPLE_TRAPS       0xC00002B5
838
839 STRUCT: COORD
840 { X SHORT }
841 { Y SHORT } ;
842
843 STRUCT: SMALL_RECT
844 { Left SHORT }
845 { Top SHORT }
846 { Right SHORT }
847 { Bottom SHORT } ;
848
849 STRUCT: CONSOLE_SCREEN_BUFFER_INFO
850 { dwSize COORD }
851 { dwCursorPosition COORD }
852 { wAttributes WORD }
853 { srWindow SMALL_RECT }
854 { dwMaximumWindowSize COORD } ;
855
856 CONSTANT: HEAP_CREATE_ENABLE_EXECUTE 0x00040000
857 CONSTANT: HEAP_GENERATE_EXCEPTIONS 0x00000004
858 CONSTANT: HEAP_NO_SERIALIZE 0x00000001
859
860 STRUCT: HEAPLIST32
861     { dwSize SIZE_T }
862     { th32ProcessID DWORD }
863     { th32HeapID ULONG_PTR }
864     { dwFlags DWORD } ;
865 TYPEDEF: HEAPLIST32* PHEAPLIST32
866 TYPEDEF: HEAPLIST32* LPHEAPLIST32
867
868 STRUCT: HEAPENTRY32
869     { dwSize SIZE_T }
870     { hHandle HANDLE }
871     { dwAddress ULONG_PTR }
872     { dwBlockSize SIZE_T }
873     { dwFlags DWORD }
874     { dwLockCount DWORD }
875     { dwResvd DWORD }
876     { th32ProcessID DWORD }
877     { th32HeapID ULONG_PTR } ;
878 TYPEDEF: HEAPENTRY32* PHEAPENTRY32
879 TYPEDEF: HEAPENTRY32* LPHEAPENTRY32
880
881 STRUCT: PROCESSENTRY32
882     { dwSize DWORD }
883     { cntUsage DWORD }
884     { th32ProcessID DWORD }
885     { th32DefaultHeapID ULONG_PTR }
886     { th32ModuleID DWORD }
887     { cntThreads DWORD }
888     { th32ParentProcessID DWORD }
889     { pcPriClassBase LONG }
890     { dwFlags DWORD }
891     { szExeFile TCHAR[MAX_PATH] } ;
892 TYPEDEF: PROCESSENTRY32* PPROCESSENTRY32
893 TYPEDEF: PROCESSENTRY32* LPPROCESSENTRY32
894
895 CONSTANT: MAX_MODULE_NAME32 255
896 CONSTANT: MAX_MODULE_NAME32_SIZE 256
897 ! STRUCT: MODULEENTRY32
898 !     { dwSize DWORD }
899 !     { th32ModuleID DWORD }
900 !     { th32ProcessID DWORD }
901 !     { GlblcntUsage DWORD }
902 !     { ProccntUsage DWORD }
903 !     { modBaseAddr BYTE* }
904 !     { modBaseSize DWORD }
905 !     { hModule HMODULE }
906 !     { szModule char[MAX_MODULE_NAME32_SIZE] }
907 !     { szExePath char[MAX_PATH] } ;
908 ! TYPEDEF: MODULEENTRY32* PMODULEENTRY32
909 ! TYPEDEF: MODULEENTRY32* LPMODULEENTRY32
910
911 STRUCT: MODULEENTRY32W
912     { dwSize DWORD }
913     { th32ModuleID DWORD }
914     { th32ProcessID DWORD }
915     { GlblcntUsage DWORD }
916     { ProccntUsage DWORD }
917     { modBaseAddr BYTE* }
918     { modBaseSize DWORD }
919     { hModule HMODULE }
920     { szModule WCHAR[MAX_MODULE_NAME32_SIZE] }
921     { szExePath WCHAR[MAX_PATH] } ;
922 TYPEDEF: MODULEENTRY32W* PMODULEENTRY32W
923 TYPEDEF: MODULEENTRY32W* LPMODULEENTRY32W
924
925 STRUCT: THREADENTRY32
926     { dwSize DWORD }
927     { cntUsage DWORD }
928     { th32ThreadID DWORD }
929     { th32OwnerProcessID DWORD }
930     { tpBasePri LONG }
931     { tpDeltaPri LONG }
932     { dwFlags DWORD } ;
933 TYPEDEF: THREADENTRY32* PTHREADENTRY32
934 TYPEDEF: THREADENTRY32* LPTHREADENTRY32
935
936 ! Resource IDs
937 : MAKEINTRESOURCE ( int -- resource ) 0xffff bitand <alien> ; inline
938
939 : RT_CURSOR       ( -- id )  1 MAKEINTRESOURCE ; inline
940 : RT_BITMAP       ( -- id )  2 MAKEINTRESOURCE ; inline
941 : RT_ICON         ( -- id )  3 MAKEINTRESOURCE ; inline
942 : RT_MENU         ( -- id )  4 MAKEINTRESOURCE ; inline
943 : RT_DIALOG       ( -- id )  5 MAKEINTRESOURCE ; inline
944 : RT_STRING       ( -- id )  6 MAKEINTRESOURCE ; inline
945 : RT_FONTDIR      ( -- id )  7 MAKEINTRESOURCE ; inline
946 : RT_FONT         ( -- id )  8 MAKEINTRESOURCE ; inline
947 : RT_ACCELERATOR  ( -- id )  9 MAKEINTRESOURCE ; inline
948 : RT_RCDATA       ( -- id ) 10 MAKEINTRESOURCE ; inline
949 : RT_MESSAGETABLE ( -- id ) 11 MAKEINTRESOURCE ; inline
950 : RT_GROUP_CURSOR ( -- id ) 12 MAKEINTRESOURCE ; inline
951 : RT_GROUP_ICON   ( -- id ) 14 MAKEINTRESOURCE ; inline
952 : RT_VERSION      ( -- id ) 16 MAKEINTRESOURCE ; inline
953 : RT_DLGINCLUDE   ( -- id ) 17 MAKEINTRESOURCE ; inline
954 : RT_PLUGPLAY     ( -- id ) 19 MAKEINTRESOURCE ; inline
955 : RT_VXD          ( -- id ) 20 MAKEINTRESOURCE ; inline
956 : RT_ANICURSOR    ( -- id ) 21 MAKEINTRESOURCE ; inline
957 : RT_ANIICON      ( -- id ) 22 MAKEINTRESOURCE ; inline
958 : RT_MANIFEST     ( -- id ) 24 MAKEINTRESOURCE ; inline
959
960 LIBRARY: kernel32
961 ! FUNCTION: _hread
962 ! FUNCTION: _hwrite
963 ! FUNCTION: _lclose
964 ! FUNCTION: _lcreat
965 ! FUNCTION: _llseek
966 ! FUNCTION: _lopen
967 ! FUNCTION: _lread
968 ! FUNCTION: _lwrite
969 ! FUNCTION: ActivateActCtx
970 ! FUNCTION: AddAtomA
971 ! FUNCTION: AddAtomW
972 ! FUNCTION: AddConsoleAliasA
973 ! FUNCTION: AddConsoleAliasW
974 ! FUNCTION: AddLocalAlternateComputerNameA
975 ! FUNCTION: AddLocalAlternateComputerNameW
976 ! FUNCTION: AddRefActCtx
977 ! FUNCTION: AddVectoredExceptionHandler
978 ! FUNCTION: AllocateUserPhysicalPages
979 FUNCTION: BOOL AllocConsole ( )
980 ! FUNCTION: AreFileApisANSI
981 ! FUNCTION: AssignProcessToJobObject
982 ! FUNCTION: AttachConsole
983 ! FUNCTION: BackupRead
984 ! FUNCTION: BackupSeek
985 ! FUNCTION: BackupWrite
986 ! FUNCTION: BaseCheckAppcompatCache
987 ! FUNCTION: BaseCleanupAppcompatCache
988 ! FUNCTION: BaseCleanupAppcompatCacheSupport
989 ! FUNCTION: BaseDumpAppcompatCache
990 ! FUNCTION: BaseFlushAppcompatCache
991 ! FUNCTION: BaseInitAppcompatCache
992 ! FUNCTION: BaseInitAppcompatCacheSupport
993 ! FUNCTION: BasepCheckWinSaferRestrictions
994 ! FUNCTION: BaseProcessInitPostImport
995 ! FUNCTION: BaseQueryModuleData
996 ! FUNCTION: BaseUpdateAppcompatCache
997 ! FUNCTION: Beep
998 ! FUNCTION: BeginUpdateResourceA
999 FUNCTION: HANDLE BeginUpdateResourceW ( LPCTSTR pFileName, BOOL bDeleteExistingResources )
1000 ALIAS: BeginUpdateResource BeginUpdateResourceW
1001 ! FUNCTION: BindIoCompletionCallback
1002 ! FUNCTION: BuildCommDCBA
1003 ! FUNCTION: BuildCommDCBAndTimeoutsA
1004 ! FUNCTION: BuildCommDCBAndTimeoutsW
1005 ! FUNCTION: BuildCommDCBW
1006 ! FUNCTION: CallNamedPipeA
1007 ! FUNCTION: CallNamedPipeW
1008 ! FUNCTION: CancelDeviceWakeupRequest
1009 FUNCTION: BOOL CancelIo ( HANDLE h )
1010 ! FUNCTION: CancelTimerQueueTimer
1011 ! FUNCTION: CancelWaitableTimer
1012 ! FUNCTION: ChangeTimerQueueTimer
1013 ! FUNCTION: CheckNameLegalDOS8Dot3A
1014 ! FUNCTION: CheckNameLegalDOS8Dot3W
1015 ! FUNCTION: CheckRemoteDebuggerPresent
1016 ! FUNCTION: ClearCommBreak
1017 ! FUNCTION: ClearCommError
1018 ! FUNCTION: CloseConsoleHandle
1019 FUNCTION: BOOL CloseHandle ( HANDLE h )
1020 ! FUNCTION: CloseProfileUserMapping
1021 ! FUNCTION: CmdBatNotification
1022 ! FUNCTION: CommConfigDialogA
1023 ! FUNCTION: CommConfigDialogW
1024 ! FUNCTION: CompareFileTime
1025 ! FUNCTION: CompareStringA
1026 ! FUNCTION: CompareStringW
1027 FUNCTION: BOOL ConnectNamedPipe ( HANDLE hNamedPipe, LPOVERLAPPED lpOverlapped )
1028 ! FUNCTION: ConsoleMenuControl
1029 ! FUNCTION: ContinueDebugEvent
1030 ! FUNCTION: ConvertDefaultLocale
1031 ! FUNCTION: ConvertFiberToThread
1032 ! FUNCTION: ConvertThreadToFiber
1033 ! FUNCTION: CopyFileA
1034 ! FUNCTION: CopyFileExA
1035 ! FUNCTION: CopyFileExW
1036 FUNCTION: BOOL CopyFileW ( LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName, BOOL bFailIfExists )
1037 ALIAS: CopyFile CopyFileW
1038 ! FUNCTION: CopyLZFile
1039
1040 FUNCTION: void CopyMemory ( PVOID Destination, VOID* Source, SIZE_T Length )
1041 ! FUNCTION: CreateActCtxA
1042 ! FUNCTION: CreateActCtxW
1043 ! FUNCTION: CreateConsoleScreenBuffer
1044 ! FUNCTION: CreateDirectoryA
1045 ! FUNCTION: CreateDirectoryExA
1046 ! FUNCTION: CreateDirectoryExW
1047 FUNCTION: BOOL CreateDirectoryW ( LPCTSTR lpPathName, LPSECURITY_ATTRIBUTES lpSecurityAttribytes )
1048 ALIAS: CreateDirectory CreateDirectoryW
1049
1050 ! FUNCTION: CreateEventA
1051 ! FUNCTION: CreateEventW
1052 ! FUNCTION: CreateFiber
1053 ! FUNCTION: CreateFiberEx
1054
1055
1056 FUNCTION: HANDLE CreateFileW ( LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttribures, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile )
1057 ALIAS: CreateFile CreateFileW
1058
1059 FUNCTION: HANDLE  CreateFileMappingW ( HANDLE hFile,
1060                                        LPSECURITY_ATTRIBUTES lpAttributes,
1061                                        DWORD flProtect,
1062                                        DWORD dwMaximumSizeHigh,
1063                                        DWORD dwMaximumSizeLow,
1064                                        LPCTSTR lpName )
1065 ALIAS: CreateFileMapping CreateFileMappingW
1066
1067 ! FUNCTION: CreateHardLinkA
1068 ! FUNCTION: CreateHardLinkW
1069 ! FUNCTION: HANDLE CreateIoCompletionPort ( HANDLE hFileHandle, HANDLE hExistingCompletionPort, ULONG_PTR uCompletionKey, DWORD dwNumberofConcurrentThreads ) ;
1070 FUNCTION: HANDLE CreateIoCompletionPort ( HANDLE hFileHandle, HANDLE hExistingCompletionPort, void* uCompletionKey, DWORD dwNumberofConcurrentThreads )
1071 ! FUNCTION: CreateJobObjectA
1072 ! FUNCTION: CreateJobObjectW
1073 ! FUNCTION: CreateJobSet
1074 ! FUNCTION: CreateMailslotA
1075 ! FUNCTION: CreateMailslotW
1076 ! FUNCTION: CreateMemoryResourceNotification
1077 ! FUNCTION: CreateMutexA
1078 ! FUNCTION: CreateMutexW
1079 ! FUNCTION: CreateNamedPipeA
1080 FUNCTION: HANDLE CreateNamedPipeW ( LPCTSTR lpName, DWORD dwOpenMode, DWORD dwPipeMode, DWORD nMaxInstances, DWORD nOutBufferSize, DWORD nInBufferSize, DWORD nDefaultTimeOut, LPSECURITY_ATTRIBUTES lpSecurityAttributes )
1081 ALIAS: CreateNamedPipe CreateNamedPipeW
1082
1083 ! FUNCTION: CreateNlsSecurityDescriptor
1084 FUNCTION: BOOL CreatePipe ( PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY_ATTRIBUTES lpPipeAttributes, DWORD nSize )
1085
1086 CONSTANT: DEBUG_PROCESS                   0x00000001
1087 CONSTANT: DEBUG_ONLY_THIS_PROCESS         0x00000002
1088 CONSTANT: CREATE_SUSPENDED                0x00000004
1089 CONSTANT: DETACHED_PROCESS                0x00000008
1090 CONSTANT: CREATE_NEW_CONSOLE              0x00000010
1091 CONSTANT: NORMAL_PRIORITY_CLASS           0x00000020
1092 CONSTANT: IDLE_PRIORITY_CLASS             0x00000040
1093 CONSTANT: HIGH_PRIORITY_CLASS             0x00000080
1094 CONSTANT: REALTIME_PRIORITY_CLASS         0x00000100
1095 CONSTANT: CREATE_NEW_PROCESS_GROUP        0x00000200
1096 CONSTANT: CREATE_UNICODE_ENVIRONMENT      0x00000400
1097 CONSTANT: CREATE_SEPARATE_WOW_VDM         0x00000800
1098 CONSTANT: CREATE_SHARED_WOW_VDM           0x00001000
1099 CONSTANT: CREATE_FORCEDOS                 0x00002000
1100 CONSTANT: BELOW_NORMAL_PRIORITY_CLASS     0x00004000
1101 CONSTANT: ABOVE_NORMAL_PRIORITY_CLASS     0x00008000
1102 CONSTANT: CREATE_BREAKAWAY_FROM_JOB       0x01000000
1103 CONSTANT: CREATE_WITH_USERPROFILE         0x02000000
1104 CONSTANT: CREATE_DEFAULT_ERROR_MODE       0x04000000
1105 CONSTANT: CREATE_NO_WINDOW                0x08000000
1106 CONSTANT: PROFILE_USER                    0x10000000
1107 CONSTANT: PROFILE_KERNEL                  0x20000000
1108 CONSTANT: PROFILE_SERVER                  0x40000000
1109
1110 FUNCTION: BOOL CreateProcessW ( LPCTSTR lpApplicationname,
1111                                 LPTSTR lpCommandLine,
1112                                 LPSECURITY_ATTRIBUTES lpProcessAttributes,
1113                                 LPSECURITY_ATTRIBUTES lpThreadAttributes,
1114                                 BOOL bInheritHandles,
1115                                 DWORD dwCreationFlags,
1116                                 LPVOID lpEnvironment,
1117                                 LPCTSTR lpCurrentDirectory,
1118                                 LPSTARTUPINFO lpStartupInfo,
1119                                 LPPROCESS_INFORMATION lpProcessInformation )
1120 ALIAS: CreateProcess CreateProcessW
1121 ! FUNCTION: CreateProcessInternalA
1122 ! FUNCTION: CreateProcessInternalW
1123 ! FUNCTION: CreateProcessInternalWSecure
1124 FUNCTION: HANDLE CreateRemoteThread ( HANDLE hProcess,
1125                                       LPSECURITY_ATTRIBUTES lpThreadAttributes,
1126                                       SIZE_T dwStackSize,
1127                                       LPVOID lpStartAddress,
1128                                       LPVOID lpParameter,
1129                                       DWORD dwCreationFlags,
1130                                       LPDWORD lpThreadId )
1131 ! FUNCTION: CreateSemaphoreA
1132 ! FUNCTION: CreateSemaphoreW
1133 ! FUNCTION: CreateSocketHandle
1134 ! FUNCTION: CreateTapePartition
1135 ! FUNCTION: CreateThread
1136 ! FUNCTION: CreateTimerQueue
1137 ! FUNCTION: CreateTimerQueueTimer
1138
1139 CONSTANT: TH32CS_INHERIT 0x80000000
1140 CONSTANT: TH32CS_SNAPHEAPLIST 1
1141 CONSTANT: TH32CS_SNAPMODULE 8
1142 CONSTANT: TH32CS_SNAPMODULE32 0x10
1143 CONSTANT: TH32CS_SNAPPROCESS 2
1144 CONSTANT: TH32CS_SNAPTHREAD 4
1145 CONSTANT: TH32CS_SNAPALL flags{ TH32CS_SNAPHEAPLIST TH32CS_SNAPMODULE TH32CS_SNAPPROCESS TH32CS_SNAPTHREAD }
1146
1147 FUNCTION: HANDLE CreateToolhelp32Snapshot ( DWORD dwFlags, DWORD th32ProcessID )
1148 ! FUNCTION: CreateVirtualBuffer
1149 ! FUNCTION: CreateWaitableTimerA
1150 ! FUNCTION: CreateWaitableTimerW
1151 ! FUNCTION: DeactivateActCtx
1152 ! FUNCTION: DebugActiveProcess
1153 ! FUNCTION: DebugActiveProcessStop
1154 ! FUNCTION: DebugBreak
1155 ! FUNCTION: DebugBreakProcess
1156 ! FUNCTION: DebugSetProcessKillOnExit
1157 ! FUNCTION: DecodePointer
1158 ! FUNCTION: DecodeSystemPointer
1159 ! FUNCTION: DefineDosDeviceA
1160 ! FUNCTION: DefineDosDeviceW
1161 ! FUNCTION: DelayLoadFailureHook
1162 ! FUNCTION: DeleteAtom
1163 ! FUNCTION: DeleteCriticalSection
1164 ! FUNCTION: DeleteFiber
1165 ! FUNCTION: DeleteFileA
1166 FUNCTION: BOOL DeleteFileW ( LPCTSTR lpFileName )
1167 ALIAS: DeleteFile DeleteFileW
1168 ! FUNCTION: DeleteTimerQueue
1169 ! FUNCTION: DeleteTimerQueueEx
1170 ! FUNCTION: DeleteTimerQueueTimer
1171 ! FUNCTION: DeleteVolumeMountPointA
1172 ! FUNCTION: DeleteVolumeMountPointW
1173 ! FUNCTION: DeviceIoControl
1174 ! FUNCTION: DisableThreadLibraryCalls
1175 ! FUNCTION: DisconnectNamedPipe
1176 ! FUNCTION: DnsHostnameToComputerNameA
1177 ! FUNCTION: DnsHostnameToComputerNameW
1178 ! FUNCTION: DosDateTimeToFileTime
1179 ! FUNCTION: DosPathToSessionPathA
1180 ! FUNCTION: DosPathToSessionPathW
1181 ! FUNCTION: DuplicateConsoleHandle
1182
1183 FUNCTION: BOOL DuplicateHandle (
1184     HANDLE hSourceProcessHandle,
1185     HANDLE hSourceHandle,
1186     HANDLE hTargetProcessHandle,
1187     LPHANDLE lpTargetHandle,
1188     DWORD dwDesiredAccess,
1189     BOOL bInheritHandle,
1190     DWORD dwOptions )
1191
1192 CONSTANT: DUPLICATE_CLOSE_SOURCE 1
1193 CONSTANT: DUPLICATE_SAME_ACCESS 2
1194
1195 ! FUNCTION: EncodePointer
1196 ! FUNCTION: EncodeSystemPointer
1197 ! FUNCTION: EndUpdateResourceA
1198 FUNCTION: BOOL EndUpdateResourceW ( HANDLE hUpdate, BOOL fDiscard )
1199 ALIAS: EndUpdateResource EndUpdateResourceW
1200 ! FUNCTION: EnterCriticalSection
1201 ! FUNCTION: EnumCalendarInfoA
1202 ! FUNCTION: EnumCalendarInfoExA
1203 ! FUNCTION: EnumCalendarInfoExW
1204 ! FUNCTION: EnumCalendarInfoW
1205 ! FUNCTION: EnumDateFormatsA
1206 ! FUNCTION: EnumDateFormatsExA
1207 ! FUNCTION: EnumDateFormatsExW
1208 ! FUNCTION: EnumDateFormatsW
1209 ! FUNCTION: EnumerateLocalComputerNamesA
1210 ! FUNCTION: EnumerateLocalComputerNamesW
1211 ! FUNCTION: EnumLanguageGroupLocalesA
1212 ! FUNCTION: EnumLanguageGroupLocalesW
1213 ! FUNCTION: EnumResourceLanguagesA
1214 ! FUNCTION: EnumResourceLanguagesW
1215 ! FUNCTION: EnumResourceNamesA
1216 ! FUNCTION: EnumResourceNamesW
1217 ! FUNCTION: EnumResourceTypesA
1218 ! FUNCTION: EnumResourceTypesW
1219 ! FUNCTION: EnumSystemCodePagesA
1220 ! FUNCTION: EnumSystemCodePagesW
1221 ! FUNCTION: EnumSystemGeoID
1222 ! FUNCTION: EnumSystemLanguageGroupsA
1223 ! FUNCTION: EnumSystemLanguageGroupsW
1224 ! FUNCTION: EnumSystemLocalesA
1225 ! FUNCTION: EnumSystemLocalesW
1226 ! FUNCTION: EnumTimeFormatsA
1227 ! FUNCTION: EnumTimeFormatsW
1228 ! FUNCTION: EnumUILanguagesA
1229 ! FUNCTION: EnumUILanguagesW
1230 ! FUNCTION: EraseTape
1231 ! FUNCTION: EscapeCommFunction
1232 ! FUNCTION: ExitProcess
1233 ! FUNCTION: ExitThread
1234 ! FUNCTION: ExitVDM
1235 ! FUNCTION: ExpandEnvironmentStringsA
1236 ! FUNCTION: ExpandEnvironmentStringsW
1237 ! FUNCTION: ExpungeConsoleCommandHistoryA
1238 ! FUNCTION: ExpungeConsoleCommandHistoryW
1239 ! FUNCTION: ExtendVirtualBuffer
1240 ! FUNCTION: FatalAppExitA
1241 ! FUNCTION: FatalAppExitW
1242 ! FUNCTION: FatalExit
1243 ! FUNCTION: FileTimeToDosDateTime
1244 ! FUNCTION: FileTimeToLocalFileTime
1245 ! FUNCTION: FileTimeToSystemTime
1246 ! FUNCTION: FillConsoleOutputAttribute
1247 ! FUNCTION: FillConsoleOutputCharacterA
1248 ! FUNCTION: FillConsoleOutputCharacterW
1249 ! FUNCTION: FindActCtxSectionGuid
1250 ! FUNCTION: FindActCtxSectionStringA
1251 ! FUNCTION: FindActCtxSectionStringW
1252 ! FUNCTION: FindAtomA
1253 ! FUNCTION: FindAtomW
1254 FUNCTION: BOOL FindClose ( HANDLE hFindFile )
1255 FUNCTION: BOOL FindCloseChangeNotification ( HANDLE hChangeHandle )
1256 FUNCTION: HANDLE FindFirstChangeNotificationW ( LPCTSTR lpPathName,
1257                                         BOOL bWatchSubtree,
1258                                         DWORD dwNotifyFilter )
1259 ALIAS: FindFirstChangeNotification FindFirstChangeNotificationW
1260 ! FUNCTION: FindFirstFileA
1261 ! FUNCTION: FindFirstFileExA
1262 ! FUNCTION: FindFirstFileExW
1263 FUNCTION: HANDLE FindFirstFileW ( LPCTSTR lpFileName, LPWIN32_FIND_DATA lpFindFileData )
1264 ALIAS: FindFirstFile FindFirstFileW
1265
1266 ENUM: STREAM_INFO_LEVELS
1267     FindStreamInfoStandard
1268     FindStreamInfoMaxInfoLevel ;
1269
1270 STRUCT: WIN32_FIND_STREAM_DATA
1271     { StreamSize LARGE_INTEGER }
1272     { cStreamName WCHAR[292] } ;
1273
1274 TYPEDEF: WIN32_FIND_STREAM_DATA* PWIN32_FIND_STREAM_DATA
1275
1276 FUNCTION: HANDLE FindFirstStreamW (
1277     LPCWSTR            lpFileName,
1278     STREAM_INFO_LEVELS InfoLevel,
1279     LPVOID             lpFindStreamData,
1280     DWORD              dwFlags
1281 )
1282 ALIAS: FindFirstStream FindFirstStreamW
1283
1284 FUNCTION: BOOL FindNextStreamW ( HANDLE hFindStream, LPVOID lpFindStreamData )
1285 ALIAS: FindNextStream FindNextStreamW
1286
1287 ! FUNCTION: FindFirstVolumeA
1288 ! FUNCTION: FindFirstVolumeMountPointA
1289
1290 FUNCTION: HANDLE FindFirstVolumeMountPointW (
1291     LPTSTR lpszRootPathName,
1292     LPTSTR lpszVolumeMountPoint,
1293     DWORD cchBufferLength
1294 )
1295 ALIAS: FindFirstVolumeMountPoint FindFirstVolumeMountPointW
1296
1297 FUNCTION: HANDLE FindFirstVolumeW ( LPTSTR lpszVolumeName, DWORD cchBufferLength )
1298 ALIAS: FindFirstVolume FindFirstVolumeW
1299
1300 FUNCTION: BOOL FindNextChangeNotification ( HANDLE hChangeHandle )
1301
1302 ! FUNCTION: FindNextFileA
1303 FUNCTION: BOOL FindNextFileW ( HANDLE hFindFile, LPWIN32_FIND_DATA lpFindFileData )
1304 ALIAS: FindNextFile FindNextFileW
1305
1306 ! FUNCTION: FindNextVolumeA
1307 ! FUNCTION: FindNextVolumeMountPointA
1308
1309 FUNCTION: BOOL FindNextVolumeMountPointW (
1310     HANDLE hFindVolumeMountPoint,
1311     LPTSTR lpszVolumeMountPoint,
1312     DWORD cchBufferLength
1313 )
1314 ALIAS: FindNextVolumeMountPoint FindNextVolumeMountPointW
1315
1316 FUNCTION: BOOL FindNextVolumeW ( HANDLE hFindVolume, LPTSTR lpszVolumeName, DWORD cchBufferLength )
1317 ALIAS: FindNextVolume FindNextVolumeW
1318
1319 ! FUNCTION: FindResourceA
1320 ! FUNCTION: FindResourceExA
1321 ! FUNCTION: FindResourceExW
1322 FUNCTION: HRSRC FindResourceW ( HMODULE hModule, LPCTSTR lpName, LPCTSTR lpType )
1323 ALIAS: FindResource FindResourceW
1324
1325 FUNCTION: BOOL FindVolumeClose ( HANDLE hFindVolume )
1326 FUNCTION: BOOL FindVolumeMountPointClose ( HANDLE hFindVolumeMountPoint )
1327 ! FUNCTION: FlushConsoleInputBuffer
1328 ! FUNCTION: FlushFileBuffers
1329 ! FUNCTION: FlushInstructionCache
1330 ! FUNCTION: FlushViewOfFile
1331 ! FUNCTION: FoldStringA
1332 ! FUNCTION: FoldStringW
1333 ! FUNCTION: FormatMessageA
1334 FUNCTION: DWORD FormatMessageW (
1335         DWORD dwFlags,
1336         LPCVOID lpSource,
1337         DWORD dwMessageId,
1338         DWORD dwLanguageId,
1339         LPTSTR lpBuffer,
1340         DWORD nSize,
1341         void* Arguments
1342     )
1343
1344 ALIAS: FormatMessage FormatMessageW
1345
1346
1347 FUNCTION: BOOL FreeConsole ( )
1348 ! FUNCTION: FreeEnvironmentStringsA
1349 FUNCTION: BOOL FreeEnvironmentStringsW ( LPTCH lpszEnvironmentBlock )
1350 ALIAS: FreeEnvironmentStrings FreeEnvironmentStringsW
1351 FUNCTION: BOOL FreeLibrary ( HMODULE hModule )
1352 ! FUNCTION: FreeLibraryAndExitThread
1353 ! FUNCTION: FreeResource
1354 ! FUNCTION: FreeUserPhysicalPages
1355 ! FUNCTION: FreeVirtualBuffer
1356 ! FUNCTION: GenerateConsoleCtrlEvent
1357 ! FUNCTION: GetACP
1358 ! FUNCTION: GetAtomNameA
1359 ! FUNCTION: GetAtomNameW
1360 ! FUNCTION: GetBinaryType
1361 ! FUNCTION: GetBinaryTypeA
1362 ! FUNCTION: GetBinaryTypeW
1363 ! FUNCTION: GetCalendarInfoA
1364 ! FUNCTION: GetCalendarInfoW
1365 ! FUNCTION: GetCommandLineA
1366 ! FUNCTION: GetCommandLineW
1367 FUNCTION: BOOL GetCommConfig ( HANDLE hCommDev, LPCOMMCONFIG lpCC, LPDWORD lpdwSize )
1368 FUNCTION: BOOL GetCommMask ( HANDLE hFile, LPDWORD lpEvtMask )
1369 FUNCTION: BOOL GetCommModemStatus ( HANDLE hFile, LPDWORD lpModemStat )
1370 FUNCTION: BOOL GetCommProperties ( HANDLE hFile, LPCOMMPROP lpCommProp )
1371 FUNCTION: BOOL GetCommState ( HANDLE hFile, LPDCB lpDCB )
1372 ! FUNCTION: GetCommTimeouts
1373 ! FUNCTION: GetComPlusPackageInstallStatus
1374 ! FUNCTION: GetCompressedFileSizeA
1375 FUNCTION: DWORD GetCompressedFileSizeW ( LPCTSTR lpFileName, LPDWORD lpFileSizeHigh )
1376 ALIAS: GetCompressedFileSize GetCompressedFileSizeW
1377 FUNCTION: BOOL GetComputerNameW ( LPTSTR lpBuffer, LPDWORD lpnSize )
1378 ALIAS: GetComputerName GetComputerNameW
1379 FUNCTION: BOOL GetComputerNameExW ( COMPUTER_NAME_FORMAT NameType, LPTSTR lpBuffer, LPDWORD lpnSize )
1380 ALIAS: GetComputerNameEx GetComputerNameExW
1381 ! FUNCTION: GetConsoleAliasA
1382 ! FUNCTION: GetConsoleAliasesA
1383 ! FUNCTION: GetConsoleAliasesLengthA
1384 ! FUNCTION: GetConsoleAliasesLengthW
1385 ! FUNCTION: GetConsoleAliasesW
1386 ! FUNCTION: GetConsoleAliasExesA
1387 ! FUNCTION: GetConsoleAliasExesLengthA
1388 ! FUNCTION: GetConsoleAliasExesLengthW
1389 ! FUNCTION: GetConsoleAliasExesW
1390 ! FUNCTION: GetConsoleAliasW
1391 ! FUNCTION: GetConsoleCharType
1392 ! FUNCTION: GetConsoleCommandHistoryA
1393 ! FUNCTION: GetConsoleCommandHistoryLengthA
1394 ! FUNCTION: GetConsoleCommandHistoryLengthW
1395 ! FUNCTION: GetConsoleCommandHistoryW
1396 ! FUNCTION: GetConsoleCP
1397 ! FUNCTION: GetConsoleCursorInfo
1398 ! FUNCTION: GetConsoleCursorMode
1399 ! FUNCTION: GetConsoleDisplayMode
1400 ! FUNCTION: GetConsoleFontInfo
1401 ! FUNCTION: GetConsoleFontSize
1402 ! FUNCTION: GetConsoleHardwareState
1403 ! FUNCTION: GetConsoleInputExeNameA
1404 ! FUNCTION: GetConsoleInputExeNameW
1405 ! FUNCTION: GetConsoleInputWaitHandle
1406 ! FUNCTION: GetConsoleKeyboardLayoutNameA
1407 ! FUNCTION: GetConsoleKeyboardLayoutNameW
1408 ! FUNCTION: GetConsoleMode
1409 ! FUNCTION: GetConsoleNlsMode
1410 ! FUNCTION: GetConsoleOutputCP
1411 ! FUNCTION: GetConsoleProcessList
1412 FUNCTION: BOOL GetConsoleScreenBufferInfo ( HANDLE hConsoleOutput, CONSOLE_SCREEN_BUFFER_INFO* lpConsoleScreenBufferInfo )
1413 ! FUNCTION: GetConsoleSelectionInfo
1414 FUNCTION: DWORD GetConsoleTitleW ( LPWSTR lpConsoleTitle, DWORD nSize )
1415 ALIAS: GetConsoleTitle GetConsoleTitleW
1416 FUNCTION: HWND GetConsoleWindow ( )
1417 ! FUNCTION: GetCPFileNameFromRegistry
1418 ! FUNCTION: GetCPInfo
1419 ! FUNCTION: GetCPInfoExA
1420 ! FUNCTION: GetCPInfoExW
1421 ! FUNCTION: GetCurrencyFormatA
1422 ! FUNCTION: GetCurrencyFormatW
1423 ! FUNCTION: GetCurrentActCtx
1424 ! FUNCTION: GetCurrentConsoleFont
1425 ! FUNCTION: GetCurrentDirectoryA
1426 FUNCTION: BOOL GetCurrentDirectoryW ( DWORD len, LPTSTR buf )
1427 ALIAS: GetCurrentDirectory GetCurrentDirectoryW
1428 FUNCTION: HANDLE GetCurrentProcess ( )
1429 FUNCTION: DWORD GetCurrentProcessId ( )
1430 FUNCTION: HANDLE GetCurrentThread ( )
1431 ! FUNCTION: GetCurrentThreadId
1432 ! FUNCTION: GetDateFormatA
1433 ! FUNCTION: GetDateFormatW
1434 ! FUNCTION: GetDefaultCommConfigA
1435 FUNCTION: BOOL GetDefaultCommConfigW ( LPCTSTR lpszName, LPCOMMCONFIG lpCC, LPDWORD lpdwSize )
1436 ALIAS: GetDefaultCommConfig GetDefaultCommConfigW
1437 ! FUNCTION: GetDefaultSortkeySize
1438 ! FUNCTION: GetDevicePowerState
1439 ! FUNCTION: GetDiskFreeSpaceA
1440 ! FUNCTION: GetDiskFreeSpaceExA
1441 FUNCTION: BOOL GetDiskFreeSpaceExW ( LPCTSTR lpDirectoryName, PULARGE_INTEGER pFreeBytesAvailable, PULARGE_INTEGER lpTotalNumberOfBytes, PULARGE_INTEGER lpTotalNumberOfFreeBytes )
1442 ALIAS: GetDiskFreeSpaceEx GetDiskFreeSpaceExW
1443 ! FUNCTION: GetDiskFreeSpaceW
1444 ! FUNCTION: GetDllDirectoryA
1445 ! FUNCTION: GetDllDirectoryW
1446 ! FUNCTION: GetDriveTypeA
1447 FUNCTION: UINT GetDriveTypeW ( LPCTSTR lpRootPathName )
1448 ALIAS: GetDriveType GetDriveTypeW
1449
1450 FUNCTION: DWORD GetDynamicTimeZoneInformation ( PDYNAMIC_TIME_ZONE_INFORMATION pTimeZoneInformation )
1451
1452 FUNCTION: void* GetEnvironmentStringsW ( )
1453 ! FUNCTION: GetEnvironmentStringsA
1454 ALIAS: GetEnvironmentStrings GetEnvironmentStringsW
1455 ! FUNCTION: GetEnvironmentVariableA
1456 FUNCTION: DWORD GetEnvironmentVariableW ( LPCTSTR lpName, LPTSTR lpBuffer, DWORD nSize )
1457 ALIAS: GetEnvironmentVariable GetEnvironmentVariableW
1458 FUNCTION: BOOL GetExitCodeProcess ( HANDLE hProcess, LPDWORD lpExitCode )
1459 ! FUNCTION: GetExitCodeThread
1460 ! FUNCTION: GetExpandedNameA
1461 ! FUNCTION: GetExpandedNameW
1462 ! FUNCTION: GetFileAttributesA
1463 FUNCTION: DWORD GetFileAttributesW ( LPCTSTR lpFileName )
1464 ! FUNCTION: GetFileAttributesExA
1465
1466 CONSTANT: GetFileExInfoStandard 0
1467
1468
1469 FUNCTION: BOOL GetFileAttributesExW ( LPCTSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, LPVOID lpFileInformation )
1470
1471 ALIAS: GetFileAttributesEx GetFileAttributesExW
1472
1473 FUNCTION: BOOL GetFileInformationByHandle ( HANDLE hFile, LPBY_HANDLE_FILE_INFORMATION lpFileInformation )
1474 FUNCTION: DWORD GetFileSize ( HANDLE hFile, LPDWORD lpFileSizeHigh )
1475 FUNCTION: BOOL GetFileSizeEx ( HANDLE hFile, PLARGE_INTEGER lpFileSize )
1476 FUNCTION: BOOL GetFileTime ( HANDLE hFile, LPFILETIME lpCreationTime, LPFILETIME lpLastAccessTime, LPFILETIME lpLastWriteTime )
1477 FUNCTION: DWORD GetFileType ( HANDLE hFile )
1478 ! FUNCTION: GetFirmwareEnvironmentVariableA
1479 ! FUNCTION: GetFirmwareEnvironmentVariableW
1480 ! FUNCTION: GetFullPathNameA
1481 FUNCTION: DWORD GetFullPathNameW ( LPCTSTR lpFileName, DWORD nBufferLength, LPTSTR lpBuffer, LPTSTR* lpFilePart )
1482 ALIAS: GetFullPathName GetFullPathNameW
1483
1484 ! FUNCTION: GetGeoInfoA
1485 ! FUNCTION: GetGeoInfoW
1486 ! FUNCTION: GetHandleContext
1487 FUNCTION: BOOL GetHandleInformation ( HANDLE hObject, LPDWORD lpdwFlags )
1488 ! FUNCTION: GetLargestConsoleWindowSize
1489 FUNCTION: DWORD GetLastError ( )
1490 ! FUNCTION: GetLinguistLangSize
1491 ! FUNCTION: GetLocaleInfoA
1492 ! FUNCTION: GetLocaleInfoW
1493 ! FUNCTION: GetLocalTime
1494 FUNCTION: DWORD GetLogicalDrives ( )
1495 FUNCTION: DWORD GetLogicalDriveStringsA ( DWORD dwBufferLength, LPWSTR lpBuffer )
1496 FUNCTION: DWORD GetLogicalDriveStringsW ( DWORD dwBufferLength, LPSTR lpBuffer )
1497 ALIAS: GetLogicalDriveStrings GetLogicalDriveStringsW
1498 ! FUNCTION: GetLongPathNameA
1499 ! FUNCTION: GetLongPathNameW
1500 ! FUNCTION: GetMailslotInfo
1501 ! FUNCTION: GetModuleFileNameA
1502 FUNCTION: DWORD GetModuleFileNameW ( HMODULE hModule, LPTSTR lpFilename, DWORD nSize )
1503 ALIAS: GetModuleFileName GetModuleFileNameW
1504 FUNCTION: HMODULE GetModuleHandleW ( LPCWSTR lpModuleName )
1505 ALIAS: GetModuleHandle GetModuleHandleW
1506 ! FUNCTION: GetModuleHandleExA
1507 ! FUNCTION: GetModuleHandleExW
1508 ! FUNCTION: GetNamedPipeHandleStateA
1509 ! FUNCTION: GetNamedPipeHandleStateW
1510 ! FUNCTION: GetNamedPipeInfo
1511 ! FUNCTION: GetNativeSystemInfo
1512 ! FUNCTION: GetNextVDMCommand
1513 ! FUNCTION: GetNlsSectionName
1514 ! FUNCTION: GetNumaAvailableMemory
1515 ! FUNCTION: GetNumaAvailableMemoryNode
1516 ! FUNCTION: GetNumaHighestNodeNumber
1517 ! FUNCTION: GetNumaNodeProcessorMask
1518 ! FUNCTION: GetNumaProcessorMap
1519 ! FUNCTION: GetNumaProcessorNode
1520 ! FUNCTION: GetNumberFormatA
1521 ! FUNCTION: GetNumberFormatW
1522 ! FUNCTION: GetNumberOfConsoleFonts
1523 ! FUNCTION: GetNumberOfConsoleInputEvents
1524 ! FUNCTION: GetNumberOfConsoleMouseButtons
1525 ! FUNCTION: GetOEMCP
1526 FUNCTION: BOOL GetOverlappedResult ( HANDLE hFile, LPOVERLAPPED lpOverlapped, LPDWORD lpNumberOfBytesTransferred, BOOL bWait )
1527 FUNCTION: DWORD GetPriorityClass ( HANDLE hProcess )
1528 ! FUNCTION: GetPrivateProfileIntA
1529 ! FUNCTION: GetPrivateProfileIntW
1530 ! FUNCTION: GetPrivateProfileSectionA
1531 ! FUNCTION: GetPrivateProfileSectionNamesA
1532 ! FUNCTION: GetPrivateProfileSectionNamesW
1533 ! FUNCTION: GetPrivateProfileSectionW
1534 ! FUNCTION: GetPrivateProfileStringA
1535 ! FUNCTION: GetPrivateProfileStringW
1536 ! FUNCTION: GetPrivateProfileStructA
1537 ! FUNCTION: GetPrivateProfileStructW
1538 FUNCTION: LPVOID GetProcAddress ( HMODULE hModule, c-string lpProcName )
1539 ! FUNCTION: GetProcessAffinityMask
1540 ! FUNCTION: GetProcessHandleCount
1541 ! FUNCTION: GetProcessHeap
1542 ! FUNCTION: GetProcessHeaps
1543 ! FUNCTION: GetProcessId
1544 ! FUNCTION: GetProcessIoCounters
1545 ! FUNCTION: GetProcessPriorityBoost
1546 ! FUNCTION: GetProcessShutdownParameters
1547 ! FUNCTION: GetProcessTimes
1548 ! FUNCTION: GetProcessVersion
1549 ! FUNCTION: GetProcessWorkingSetSize
1550 ! FUNCTION: GetProfileIntA
1551 ! FUNCTION: GetProfileIntW
1552 ! FUNCTION: GetProfileSectionA
1553 ! FUNCTION: GetProfileSectionW
1554 ! FUNCTION: GetProfileStringA
1555 ! FUNCTION: GetProfileStringW
1556 FUNCTION: BOOL GetQueuedCompletionStatus ( HANDLE hCompletionPort, LPDWORD lpNumberOfBytes, void* lpCompletionKey, LPOVERLAPPED lpOverlapped, DWORD dwMilliseconds )
1557 ! FUNCTION: GetShortPathNameA
1558 ! FUNCTION: GetShortPathNameW
1559 ! FUNCTION: GetStartupInfoA
1560 ! FUNCTION: GetStartupInfoW
1561 FUNCTION: HANDLE GetStdHandle ( DWORD nStdHandle )
1562 ! FUNCTION: GetStringTypeA
1563 ! FUNCTION: GetStringTypeExA
1564 ! FUNCTION: GetStringTypeExW
1565 ! FUNCTION: GetStringTypeW
1566 ! FUNCTION: GetSystemDefaultLangID
1567 ! FUNCTION: GetSystemDefaultLCID
1568 ! FUNCTION: GetSystemDefaultUILanguage
1569 ! FUNCTION: GetSystemDirectoryA
1570 FUNCTION: UINT GetSystemDirectoryW ( LPTSTR lpBuffer, UINT uSize )
1571 ALIAS: GetSystemDirectory GetSystemDirectoryW
1572 FUNCTION: void GetSystemInfo ( LPSYSTEM_INFO lpSystemInfo )
1573 ! FUNCTION: GetSystemPowerStatus
1574 ! FUNCTION: GetSystemRegistryQuota
1575 FUNCTION: void GetSystemTime ( LPSYSTEMTIME lpSystemTime )
1576 ! FUNCTION: GetSystemTimeAdjustment
1577 FUNCTION: void GetSystemTimeAsFileTime ( LPFILETIME lpSystemTimeAsFileTime )
1578 ! FUNCTION: GetSystemTimes
1579 ! FUNCTION: GetSystemWindowsDirectoryA
1580 FUNCTION: UINT GetSystemWindowsDirectoryW ( LPTSTR lpBuffer, UINT uSize )
1581 ALIAS: GetSystemWindowsDirectory GetSystemWindowsDirectoryW
1582 ! FUNCTION: GetSystemWow64DirectoryA
1583 ! FUNCTION: GetSystemWow64DirectoryW
1584 ! FUNCTION: GetTapeParameters
1585 ! FUNCTION: GetTapePosition
1586 ! FUNCTION: GetTapeStatus
1587 ! FUNCTION: GetTempFileNameA
1588 ! FUNCTION: GetTempFileNameW
1589 ! FUNCTION: GetTempPathA
1590 FUNCTION: DWORD GetTempPathW ( DWORD nBufferLength, LPWSTR lpBuffer )
1591 ALIAS: GetTempPath GetTempPathW
1592 ! FUNCTION: GetThreadContext
1593 ! FUNCTION: GetThreadIOPendingFlag
1594 ! FUNCTION: GetThreadLocale
1595 FUNCTION: int GetThreadPriority ( HANDLE hThread )
1596 FUNCTION: BOOL GetThreadPriorityBoost ( HANDLE hThread, PBOOL pDisablePriorityBoost )
1597 ! FUNCTION: GetThreadSelectorEntry
1598 ! FUNCTION: GetThreadTimes
1599 ! FUNCTION: GetTickCount
1600 ! FUNCTION: GetTimeFormatA
1601 ! FUNCTION: GetTimeFormatW
1602 FUNCTION: DWORD GetTimeZoneInformation ( LPTIME_ZONE_INFORMATION lpTimeZoneInformation )
1603 ! FUNCTION: GetUserDefaultLangID
1604 ! FUNCTION: GetUserDefaultLCID
1605 ! FUNCTION: GetUserDefaultUILanguage
1606 ! FUNCTION: GetUserGeoID
1607 ! FUNCTION: GetVDMCurrentDirectories
1608 FUNCTION: DWORD GetVersion ( )
1609 FUNCTION: BOOL GetVersionExW ( LPOSVERSIONINFO lpVersionInfo )
1610 ALIAS: GetVersionEx GetVersionExW
1611 ! FUNCTION: GetVolumeInformationA
1612 FUNCTION: BOOL GetVolumeInformationW (
1613     LPCTSTR lpRootPathName,
1614     LPTSTR lpVolumNameBuffer,
1615     DWORD nVolumeNameSize,
1616     LPDWORD lpVolumeSerialNumber,
1617     LPDWORD lpMaximumComponentLength,
1618     LPDWORD lpFileSystemFlags,
1619     LPCTSTR lpFileSystemNameBuffer,
1620     DWORD nFileSystemNameSize
1621 )
1622 ALIAS: GetVolumeInformation GetVolumeInformationW
1623 ! FUNCTION: GetVolumeNameForVolumeMountPointA
1624 ! FUNCTION: GetVolumeNameForVolumeMountPointW
1625 ! FUNCTION: GetVolumePathNameA
1626 ! FUNCTION: GetVolumePathNamesForVolumeNameA
1627 FUNCTION: BOOL GetVolumePathNamesForVolumeNameW ( LPCTSTR lpszVolumeName, LPTSTR lpszVolumePathNames, DWORD cchBufferLength, PDWORD lpcchReturnLength )
1628 ALIAS: GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameW
1629
1630 ! FUNCTION: GetVolumePathNameW
1631 ! FUNCTION: GetWindowsDirectoryA
1632 FUNCTION: UINT GetWindowsDirectoryW ( LPTSTR lpBuffer, UINT uSize )
1633 ALIAS: GetWindowsDirectory GetWindowsDirectoryW
1634 ! FUNCTION: GetWriteWatch
1635 ! FUNCTION: GlobalAddAtomA
1636 ! FUNCTION: GlobalAddAtomW
1637 FUNCTION: HGLOBAL GlobalAlloc ( UINT uFlags, SIZE_T dwBytes )
1638 ! FUNCTION: GlobalCompact
1639 ! FUNCTION: GlobalDeleteAtom
1640 ! FUNCTION: GlobalFindAtomA
1641 ! FUNCTION: GlobalFindAtomW
1642 ! FUNCTION: GlobalFix
1643 ! FUNCTION: GlobalFlags
1644 FUNCTION: HGLOBAL GlobalFree ( HGLOBAL hMem )
1645 ! FUNCTION: GlobalGetAtomNameA
1646 ! FUNCTION: GlobalGetAtomNameW
1647 ! FUNCTION: GlobalHandle
1648 FUNCTION: LPVOID GlobalLock ( HGLOBAL hMem )
1649 FUNCTION: void GlobalMemoryStatus ( LPMEMORYSTATUS lpBuffer )
1650 FUNCTION: BOOL GlobalMemoryStatusEx ( LPMEMORYSTATUSEX lpBuffer )
1651 ! FUNCTION: GlobalReAlloc
1652 ! FUNCTION: GlobalSize
1653 ! FUNCTION: GlobalUnfix
1654 FUNCTION: BOOL GlobalUnlock ( HGLOBAL hMem )
1655 ! FUNCTION: GlobalUnWire
1656 ! FUNCTION: GlobalWire
1657 FUNCTION: BOOL Heap32First ( LPHEAPENTRY32 lphe, DWORD th32ProcessID, ULONG_PTR th32HeapID )
1658 FUNCTION: BOOL Heap32ListFirst ( HANDLE hSnapshot, LPHEAPLIST32 lphl )
1659 FUNCTION: BOOL Heap32ListNext ( HANDLE hSnapshot, LPHEAPLIST32 lphl )
1660 FUNCTION: BOOL Heap32Next ( LPHEAPENTRY32 lphe )
1661 FUNCTION: LPVOID HeapAlloc ( HANDLE hHeap, DWORD dwFlags, SIZE_T dwBytes )
1662 ! FUNCTION: HeapCompact
1663
1664 FUNCTION: HANDLE HeapCreate ( DWORD  flOptions, SIZE_T dwInitialSize, SIZE_T dwMaximumSize )
1665 ! FUNCTION: HeapCreateTagsW
1666 ! FUNCTION: HeapDestroy
1667 ! FUNCTION: HeapExtend
1668 FUNCTION: BOOL HeapFree ( HANDLE hHeap, DWORD dwFlags, LPVOID lpMem )
1669 ! FUNCTION: HeapLock
1670 ! FUNCTION: HeapQueryInformation
1671 ! FUNCTION: HeapQueryTagW
1672 ! FUNCTION: HeapReAlloc
1673 ! FUNCTION: HeapSetInformation
1674 ! FUNCTION: HeapSize
1675 ! FUNCTION: HeapSummary
1676 ! FUNCTION: HeapUnlock
1677 ! FUNCTION: HeapUsage
1678 ! FUNCTION: HeapValidate
1679 ! FUNCTION: HeapWalk
1680 ! FUNCTION: InitAtomTable
1681 ! FUNCTION: InitializeCriticalSection
1682 ! FUNCTION: InitializeCriticalSectionAndSpinCount
1683 ! FUNCTION: InitializeSListHead
1684 ! FUNCTION: InterlockedCompareExchange
1685 ! FUNCTION: InterlockedDecrement
1686 ! FUNCTION: InterlockedExchange
1687 ! FUNCTION: InterlockedExchangeAdd
1688 ! FUNCTION: InterlockedFlushSList
1689 ! FUNCTION: InterlockedIncrement
1690 ! FUNCTION: InterlockedPopEntrySList
1691 ! FUNCTION: InterlockedPushEntrySList
1692 ! FUNCTION: InvalidateConsoleDIBits
1693 ! FUNCTION: IsBadCodePtr
1694 ! FUNCTION: IsBadHugeReadPtr
1695 ! FUNCTION: IsBadHugeWritePtr
1696 ! FUNCTION: IsBadReadPtr
1697 ! FUNCTION: IsBadStringPtrA
1698 ! FUNCTION: IsBadStringPtrW
1699 ! FUNCTION: IsBadWritePtr
1700 ! FUNCTION: IsDBCSLeadByte
1701 ! FUNCTION: IsDBCSLeadByteEx
1702 ! FUNCTION: IsDebuggerPresent
1703 ! FUNCTION: IsProcessInJob
1704 FUNCTION: BOOL IsProcessorFeaturePresent ( DWORD ProcessorFeature )
1705 ! FUNCTION: IsSystemResumeAutomatic
1706 ! FUNCTION: IsValidCodePage
1707 ! FUNCTION: IsValidLanguageGroup
1708 ! FUNCTION: IsValidLocale
1709 ! FUNCTION: IsValidUILanguage
1710 ! FUNCTION: IsWow64Process
1711 ! FUNCTION: LCMapStringA
1712 ! FUNCTION: LCMapStringW
1713 ! FUNCTION: LeaveCriticalSection
1714 ! FUNCTION: LoadLibraryA
1715 ! FUNCTION: LoadLibraryExA
1716 FUNCTION: HMODULE LoadLibraryExW ( LPCTSTR lpFile, HANDLE hFile, DWORD flags )
1717 ALIAS: LoadLibraryEx LoadLibraryExW
1718 ! FUNCTION: LoadLibraryW
1719 ! FUNCTION: LoadModule
1720 ! FUNCTION: LoadResource
1721 FUNCTION: HLOCAL LocalAlloc ( UINT uFlags, SIZE_T uBytes )
1722 ! FUNCTION: LocalCompact
1723 ! FUNCTION: LocalFileTimeToFileTime
1724 ! FUNCTION: LocalFlags
1725 FUNCTION: HLOCAL LocalFree ( HLOCAL hMem )
1726 ! FUNCTION: LocalHandle
1727 ! FUNCTION: LocalLock
1728 ! FUNCTION: LocalReAlloc
1729 ! FUNCTION: LocalShrink
1730 ! FUNCTION: LocalSize
1731 ! FUNCTION: LocalUnlock
1732 ! FUNCTION: LockFile
1733 ! FUNCTION: LockFileEx
1734 FUNCTION: LPVOID LockResource ( HGLOBAL hResData )
1735 ! FUNCTION: lstrcat
1736 ! FUNCTION: lstrcatA
1737 ! FUNCTION: lstrcatW
1738 ! FUNCTION: lstrcmp
1739 ! FUNCTION: lstrcmpA
1740 ! FUNCTION: lstrcmpi
1741 ! FUNCTION: lstrcmpiA
1742 ! FUNCTION: lstrcmpiW
1743 ! FUNCTION: lstrcmpW
1744 ! FUNCTION: lstrcpy
1745 ! FUNCTION: lstrcpyA
1746 ! FUNCTION: lstrcpyn
1747 ! FUNCTION: lstrcpynA
1748 ! FUNCTION: lstrcpynW
1749 ! FUNCTION: lstrcpyW
1750 ! FUNCTION: lstrlen
1751 ! FUNCTION: lstrlenA
1752 ! FUNCTION: lstrlenW
1753 ! FUNCTION: LZClose
1754 ! FUNCTION: LZCloseFile
1755 ! FUNCTION: LZCopy
1756 ! FUNCTION: LZCreateFileW
1757 ! FUNCTION: LZDone
1758 ! FUNCTION: LZInit
1759 ! FUNCTION: LZOpenFileA
1760 ! FUNCTION: LZOpenFileW
1761 ! FUNCTION: LZRead
1762 ! FUNCTION: LZSeek
1763 ! FUNCTION: LZStart
1764 ! FUNCTION: MapUserPhysicalPages
1765 ! FUNCTION: MapUserPhysicalPagesScatter
1766 FUNCTION: LPVOID MapViewOfFile ( HANDLE hFileMappingObject,
1767                                  DWORD dwDesiredAccess,
1768                                  DWORD dwFileOffsetHigh,
1769                                  DWORD dwFileOffsetLow,
1770                                  SIZE_T dwNumberOfBytesToMap )
1771
1772 FUNCTION: LPVOID MapViewOfFileEx ( HANDLE hFileMappingObject,
1773                                  DWORD dwDesiredAccess,
1774                                  DWORD dwFileOffsetHigh,
1775                                  DWORD dwFileOffsetLow,
1776                                  SIZE_T dwNumberOfBytesToMap,
1777                                  LPVOID lpBaseAddress )
1778
1779 ! FUNCTION: BOOL Module32First ( HANDLE hSnapshot, LPMODULEENTRY32 lpme )
1780 FUNCTION: BOOL Module32FirstW ( HANDLE hSnapshot, LPMODULEENTRY32W lpme )
1781 ! FUNCTION: BOOL Module32Next ( HANDLE hSnapshot, LPMODULEENTRY32 lpme )
1782 FUNCTION: BOOL Module32NextW ( HANDLE hSnapshot, LPMODULEENTRY32W lpme )
1783 ! FUNCTION: MoveFileA
1784 ! FUNCTION: MoveFileExA
1785 FUNCTION: BOOL MoveFileExW ( LPCSTR lpExistingFile, LPCSTR lpNewFileName, DWORD dwFlags )
1786 ALIAS: MoveFileEx MoveFileExW
1787 FUNCTION: BOOL MoveFileW ( LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName )
1788 ALIAS: MoveFile MoveFileW
1789 ! FUNCTION: MoveFileWithProgressA
1790 ! FUNCTION: MoveFileWithProgressW
1791 ! FUNCTION: MulDiv
1792 ! FUNCTION: MultiByteToWideChar
1793 ! FUNCTION: NlsConvertIntegerToString
1794 ! FUNCTION: NlsGetCacheUpdateCount
1795 ! FUNCTION: NlsResetProcessLocale
1796 ! FUNCTION: NumaVirtualQueryNode
1797 ! FUNCTION: OpenConsoleW
1798 ! FUNCTION: OpenDataFile
1799 ! FUNCTION: OpenEventA
1800 ! FUNCTION: OpenEventW
1801 ! WARNING: OpenFile is limited to paths of 128 chars in length.  Do not use!
1802 ! FUNCTION: HFILE OpenFile ( LPCTSTR lpFileName, LPOFSTRUCT lpReOpenBuff, UINT uStyle ) ;
1803 FUNCTION: HANDLE OpenFileMappingW ( DWORD dwDesiredAccess,
1804                                     BOOL bInheritHandle,
1805                                     LPCTSTR lpName )
1806 ALIAS: OpenFileMapping OpenFileMappingW
1807 ! FUNCTION: OpenJobObjectA
1808 ! FUNCTION: OpenJobObjectW
1809 ! FUNCTION: OpenMutexA
1810 ! FUNCTION: OpenMutexW  
1811 FUNCTION: HANDLE OpenProcess ( DWORD dwDesiredAccess, BOOL bInheritHandle, DWORD dwProcessId )
1812 ! FUNCTION: OpenProfileUserMapping
1813 ! FUNCTION: OpenSemaphoreA
1814 ! FUNCTION: OpenSemaphoreW
1815 ! FUNCTION: OpenThread
1816 ! FUNCTION: OpenWaitableTimerA
1817 ! FUNCTION: OpenWaitableTimerW
1818 ! FUNCTION: OutputDebugStringA
1819 ! FUNCTION: OutputDebugStringW
1820 ! FUNCTION: PeekConsoleInputA
1821 ! FUNCTION: PeekConsoleInputW
1822 ! FUNCTION: PeekNamedPipe
1823 ! FUNCTION: PostQueuedCompletionStatus
1824 ! FUNCTION: PrepareTape
1825 ! FUNCTION: PrivCopyFileExW
1826 ! FUNCTION: PrivMoveFileIdentityW
1827 ! FUNCTION: Process32First
1828 FUNCTION: BOOL Process32FirstW ( HANDLE hSnapshot, LPPROCESSENTRY32 lppe )
1829 ALIAS: Process32First Process32FirstW
1830 ! FUNCTION: Process32Next
1831 FUNCTION: BOOL Process32NextW ( HANDLE hSnapshot, LPPROCESSENTRY32 lppe )
1832 ALIAS: Process32Next Process32NextW
1833 ! FUNCTION: ProcessIdToSessionId
1834 ! FUNCTION: PulseEvent
1835 ! FUNCTION: PurgeComm
1836 ! FUNCTION: QueryActCtxW
1837 ! FUNCTION: QueryDepthSList
1838 ! FUNCTION: QueryDosDeviceA
1839 ! FUNCTION: QueryDosDeviceW
1840 CONSTANT: PROCESS_NAME_NATIVE 1
1841 FUNCTION: BOOL QueryFullProcessImageNameA ( HANDLE hProcess, DWORD dwFlags, LPSTR lpExeName, PDWORD lpdwSize )
1842 ! FUNCTION: QueryInformationJobObject
1843 ! FUNCTION: QueryMemoryResourceNotification
1844 FUNCTION: BOOL QueryPerformanceCounter ( LARGE_INTEGER* lpPerformanceCount )
1845 FUNCTION: BOOL QueryPerformanceFrequency ( LARGE_INTEGER* lpFrequency )
1846 ! FUNCTION: QueryWin31IniFilesMappedToRegistry
1847 ! FUNCTION: QueueUserAPC
1848 ! FUNCTION: QueueUserWorkItem
1849 ! FUNCTION: RaiseException
1850 ! FUNCTION: ReadConsoleA
1851 ! FUNCTION: ReadConsoleInputA
1852 ! FUNCTION: ReadConsoleInputExA
1853 ! FUNCTION: ReadConsoleInputExW
1854 ! FUNCTION: ReadConsoleInputW
1855 ! FUNCTION: ReadConsoleOutputA
1856 ! FUNCTION: ReadConsoleOutputAttribute
1857 ! FUNCTION: ReadConsoleOutputCharacterA
1858 ! FUNCTION: ReadConsoleOutputCharacterW
1859 ! FUNCTION: ReadConsoleOutputW
1860 ! FUNCTION: ReadConsoleW
1861 FUNCTION: BOOL ReadDirectoryChangesW ( HANDLE hDirectory, LPVOID lpBuffer, DWORD nBufferLength, BOOL bWatchSubtree, DWORD dwNotifyFilter, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped, void* lpCompletionRoutine )
1862 FUNCTION: BOOL ReadFile ( HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, void* lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped )
1863 ! FUNCTION: BOOL ReadFile ( HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped ) ;
1864 FUNCTION: BOOL ReadFileEx ( HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine )
1865 ! FUNCTION: ReadFileScatter
1866 FUNCTION: BOOL ReadProcessMemory ( HANDLE hProcess, void* lpBaseAddress, void* lpBuffer, long nSize, long* lpNumberOfBytesRead )
1867 ! FUNCTION: RegisterConsoleIME
1868 ! FUNCTION: RegisterConsoleOS2
1869 ! FUNCTION: RegisterConsoleVDM
1870 ! FUNCTION: RegisterWaitForInputIdle
1871 ! FUNCTION: RegisterWaitForSingleObject
1872 ! FUNCTION: RegisterWaitForSingleObjectEx
1873 ! FUNCTION: RegisterWowBaseHandlers
1874 ! FUNCTION: RegisterWowExec
1875 ! FUNCTION: ReleaseActCtx
1876 ! FUNCTION: ReleaseMutex
1877 ! FUNCTION: ReleaseSemaphore
1878 ! FUNCTION: RemoveDirectoryA
1879 FUNCTION: BOOL RemoveDirectoryW ( LPCTSTR lpPathName )
1880 ALIAS: RemoveDirectory RemoveDirectoryW
1881 ! FUNCTION: RemoveLocalAlternateComputerNameA
1882 ! FUNCTION: RemoveLocalAlternateComputerNameW
1883 ! FUNCTION: RemoveVectoredExceptionHandler
1884 ! FUNCTION: ReplaceFile
1885 ! FUNCTION: ReplaceFileA
1886 ! FUNCTION: ReplaceFileW
1887 ! FUNCTION: RequestDeviceWakeup
1888 ! FUNCTION: RequestWakeupLatency
1889 ! FUNCTION: ResetEvent
1890 ! FUNCTION: ResetWriteWatch
1891 ! FUNCTION: RestoreLastError
1892 ! FUNCTION: ResumeThread
1893 ! FUNCTION: RtlCaptureContext
1894 ! FUNCTION: RtlCaptureStackBackTrace
1895 ! FUNCTION: RtlFillMemory
1896 ! FUNCTION: RtlMoveMemory
1897 ! FUNCTION: RtlUnwind
1898 ! FUNCTION: RtlZeroMemory
1899 ! FUNCTION: ScrollConsoleScreenBufferA
1900 ! FUNCTION: ScrollConsoleScreenBufferW
1901 ! FUNCTION: SearchPathA
1902 ! FUNCTION: SearchPathW
1903 ! FUNCTION: SetCalendarInfoA
1904 ! FUNCTION: SetCalendarInfoW
1905 ! FUNCTION: SetClientTimeZoneInformation
1906 FUNCTION: BOOL SetCommBreak ( HANDLE hFile )
1907 FUNCTION: BOOL SetCommConfig ( HANDLE hCommDev, LPCOMMCONFIG lpCC, DWORD dwSize )
1908 FUNCTION: BOOL SetCommMask ( HANDLE hFile, DWORD dwEvtMask )
1909 FUNCTION: BOOL SetCommState ( HANDLE hFile, LPDCB lpDCB )
1910 ! FUNCTION: SetCommTimeouts
1911 ! FUNCTION: SetComPlusPackageInstallStatus
1912 ! FUNCTION: SetComputerNameA
1913 ! FUNCTION: SetComputerNameExA
1914 ! FUNCTION: SetComputerNameExW
1915 ! FUNCTION: SetComputerNameW
1916 ! FUNCTION: SetConsoleActiveScreenBuffer
1917 ! FUNCTION: SetConsoleCommandHistoryMode
1918 ! FUNCTION: SetConsoleCP
1919 ! FUNCTION: SetConsoleCtrlHandler
1920 ! FUNCTION: SetConsoleCursor
1921 ! FUNCTION: SetConsoleCursorInfo
1922 ! FUNCTION: SetConsoleCursorMode
1923 ! FUNCTION: SetConsoleCursorPosition
1924 ! FUNCTION: SetConsoleDisplayMode
1925 ! FUNCTION: SetConsoleFont
1926 ! FUNCTION: SetConsoleHardwareState
1927 ! FUNCTION: SetConsoleIcon
1928 ! FUNCTION: SetConsoleInputExeNameA
1929 ! FUNCTION: SetConsoleInputExeNameW
1930 ! FUNCTION: SetConsoleKeyShortcuts
1931 ! FUNCTION: SetConsoleLocalEUDC
1932 ! FUNCTION: SetConsoleMaximumWindowSize
1933 ! FUNCTION: SetConsoleMenuClose
1934 ! FUNCTION: SetConsoleMode
1935 ! FUNCTION: SetConsoleNlsMode
1936 ! FUNCTION: SetConsoleNumberOfCommandsA
1937 ! FUNCTION: SetConsoleNumberOfCommandsW
1938 ! FUNCTION: SetConsoleOS2OemFormat
1939 ! FUNCTION: SetConsoleOutputCP
1940 ! FUNCTION: SetConsolePalette
1941 ! FUNCTION: SetConsoleScreenBufferSize
1942 FUNCTION: BOOL SetConsoleTextAttribute ( HANDLE hConsoleOutput, WORD wAttributes )
1943 FUNCTION: BOOL SetConsoleTitleW ( LPCWSTR lpConsoleTitle )
1944 ALIAS: SetConsoleTitle SetConsoleTitleW
1945 ! FUNCTION: SetConsoleWindowInfo
1946 ! FUNCTION: SetCPGlobal
1947 ! FUNCTION: SetCriticalSectionSpinCount
1948 ! FUNCTION: SetCurrentDirectoryA
1949 FUNCTION: BOOL SetCurrentDirectoryW ( LPCWSTR lpDirectory )
1950 ALIAS: SetCurrentDirectory SetCurrentDirectoryW
1951 ! FUNCTION: SetDefaultCommConfigA
1952 FUNCTION: BOOL SetDefaultCommConfigW ( LPCTSTR lpszName, LPCOMMCONFIG lpCC, LPDWORD lpdwSize )
1953 ALIAS: SetDefaultCommConfig SetDefaultCommConfigW
1954 ! FUNCTION: SetDllDirectoryA
1955 ! FUNCTION: SetDllDirectoryW
1956 FUNCTION: BOOL SetEndOfFile ( HANDLE hFile )
1957 ! FUNCTION: SetEnvironmentVariableA
1958 FUNCTION: BOOL SetEnvironmentVariableW ( LPCTSTR key, LPCTSTR value )
1959 ALIAS: SetEnvironmentVariable SetEnvironmentVariableW
1960 ! FUNCTION: SetErrorMode
1961 ! FUNCTION: SetEvent
1962 ! FUNCTION: SetFileApisToANSI
1963 ! FUNCTION: SetFileApisToOEM
1964 ! FUNCTION: SetFileAttributesA
1965 FUNCTION: BOOL SetFileAttributesW ( LPCTSTR lpFileName, DWORD dwFileAttributes )
1966 ALIAS: SetFileAttributes SetFileAttributesW
1967 FUNCTION: DWORD SetFilePointer ( HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod )
1968 FUNCTION: DWORD SetFilePointerEx ( HANDLE hFile, LARGE_INTEGER lDistanceToMove, PLARGE_INTEGER lpDistanceToMoveHigh, DWORD dwMoveMethod )
1969 ! FUNCTION: SetFileShortNameA
1970 ! FUNCTION: SetFileShortNameW
1971 FUNCTION: BOOL SetFileTime ( HANDLE hFile, FILETIME* lpCreationTime, FILETIME* lpLastAccessTime, FILETIME* lpLastWriteTime )
1972 FUNCTION: BOOL SetFileValidData ( HANDLE hFile, LONGLONG ValidDataLength )
1973 ! FUNCTION: SetFirmwareEnvironmentVariableA
1974 ! FUNCTION: SetFirmwareEnvironmentVariableW
1975 ! FUNCTION: SetHandleContext
1976 ! FUNCTION: SetHandleCount
1977 FUNCTION: BOOL SetHandleInformation ( HANDLE hObject, DWORD dwMask, DWORD dwFlags )
1978 ! FUNCTION: SetInformationJobObject
1979 ! FUNCTION: SetLastConsoleEventActive
1980 ! FUNCTION: SetLastError
1981 ! FUNCTION: SetLocaleInfoA
1982 ! FUNCTION: SetLocaleInfoW
1983 ! FUNCTION: SetLocalPrimaryComputerNameA
1984 ! FUNCTION: SetLocalPrimaryComputerNameW
1985 ! FUNCTION: SetLocalTime
1986 ! FUNCTION: SetMailslotInfo
1987 ! FUNCTION: SetMessageWaitingIndicator
1988 ! FUNCTION: SetNamedPipeHandleState
1989 FUNCTION: BOOL SetPriorityClass ( HANDLE hProcess, DWORD dwPriorityClass )
1990 ! FUNCTION: SetProcessAffinityMask
1991 FUNCTION: BOOL SetProcessPriorityBoost ( HANDLE hProcess, BOOL disablePriorityBoost )
1992 ! FUNCTION: SetProcessShutdownParameters
1993 ! FUNCTION: SetProcessWorkingSetSize
1994 ! FUNCTION: SetStdHandle
1995 ! FUNCTION: SetSystemPowerState
1996 FUNCTION: BOOL SetSystemTime ( SYSTEMTIME* lpSystemTime )
1997 ! FUNCTION: SetSystemTimeAdjustment
1998 ! FUNCTION: SetTapeParameters
1999 ! FUNCTION: SetTapePosition
2000 ! FUNCTION: SetTermsrvAppInstallMode
2001 ! FUNCTION: SetThreadAffinityMask
2002 ! FUNCTION: SetThreadContext
2003 ! FUNCTION: SetThreadExecutionState
2004 ! FUNCTION: SetThreadIdealProcessor
2005 ! FUNCTION: SetThreadLocale
2006 FUNCTION: BOOL SetThreadPriority ( HANDLE hThread, int nPriority )
2007 FUNCTION: BOOL SetThreadPriorityBoost ( HANDLE hThread, BOOL disablePriorityBoost )
2008 ! FUNCTION: SetThreadUILanguage
2009 ! FUNCTION: SetTimerQueueTimer
2010 ! FUNCTION: SetTimeZoneInformation
2011 ! FUNCTION: SetUnhandledExceptionFilter
2012 ! FUNCTION: SetupComm
2013 ! FUNCTION: SetUserGeoID
2014 ! FUNCTION: SetVDMCurrentDirectories
2015 ! FUNCTION: SetVolumeLabelA
2016 ! FUNCTION: SetVolumeLabelW
2017 ! FUNCTION: SetVolumeMountPointA
2018 ! FUNCTION: SetVolumeMountPointW
2019 ! FUNCTION: SetWaitableTimer
2020 ! FUNCTION: ShowConsoleCursor
2021 ! FUNCTION: SignalObjectAndWait
2022 FUNCTION: DWORD SizeofResource ( HMODULE hModule, HRSRC hResInfo )
2023 ! FUNCTION: Sleep
2024 FUNCTION: DWORD SleepEx ( DWORD dwMilliSeconds, BOOL bAlertable )
2025 ! FUNCTION: SuspendThread
2026 ! FUNCTION: SwitchToFiber
2027 ! FUNCTION: SwitchToThread
2028 FUNCTION: BOOL SystemTimeToFileTime ( SYSTEMTIME* lpSystemTime, LPFILETIME lpFileTime )
2029 ! FUNCTION: SystemTimeToTzSpecificLocalTime
2030 ! FUNCTION: TerminateJobObject
2031 FUNCTION: BOOL TerminateProcess ( HANDLE hProcess, DWORD uExit )
2032 ! FUNCTION: TerminateThread
2033 ! FUNCTION: TermsrvAppInstallMode
2034 FUNCTION: BOOL Thread32First ( HANDLE hSnapshot, LPTHREADENTRY32 lpte )
2035 FUNCTION: BOOL Thread32Next ( HANDLE hSnapshot, LPTHREADENTRY32 lpte )
2036 ! FUNCTION: TlsAlloc
2037 ! FUNCTION: TlsFree
2038 ! FUNCTION: TlsGetValue
2039 ! FUNCTION: TlsSetValue
2040 FUNCTION: BOOL Toolhelp32ReadProcessMemory ( DWORD th32ProcessID, LPCVOID lpBaseAddress, LPVOID lpBuffer, SIZE_T cbRead, SIZE_T *lpNumberOfBytesRead )
2041 ! FUNCTION: TransactNamedPipe
2042 ! FUNCTION: TransmitCommChar
2043 ! FUNCTION: TrimVirtualBuffer
2044 ! FUNCTION: TryEnterCriticalSection
2045 ! FUNCTION: TzSpecificLocalTimeToSystemTime
2046 ! FUNCTION: UnhandledExceptionFilter
2047 ! FUNCTION: UnlockFile
2048 ! FUNCTION: UnlockFileEx
2049 FUNCTION: BOOL UnmapViewOfFile ( LPCVOID lpBaseAddress )
2050 ! FUNCTION: UnregisterConsoleIME
2051 ! FUNCTION: UnregisterWait
2052 ! FUNCTION: UnregisterWaitEx
2053 ! FUNCTION: UpdateResourceA
2054 FUNCTION: BOOL UpdateResourceW ( HANDLE hUpdate, LPCTSTR lpType, LPCTSTR lpName, WORD wLanguage, LPVOID lpData, DWORD cbData )
2055 ALIAS: UpdateResource UpdateResourceW
2056 ! FUNCTION: UTRegister
2057 ! FUNCTION: UTUnRegister
2058 ! FUNCTION: ValidateLCType
2059 ! FUNCTION: ValidateLocale
2060 ! FUNCTION: VDMConsoleOperation
2061 ! FUNCTION: VDMOperationStarted
2062 ! FUNCTION: VerifyConsoleIoHandle
2063 ! FUNCTION: VerifyVersionInfoA
2064 ! FUNCTION: VerifyVersionInfoW
2065 ! FUNCTION: VerLanguageNameA
2066 ! FUNCTION: VerLanguageNameW
2067 ! FUNCTION: VerSetConditionMask
2068 ! FUNCTION: VirtualAlloc
2069 FUNCTION: HANDLE VirtualAllocEx ( HANDLE hProcess, void* lpAddress, long dwSize, DWORD flAllocationType, DWORD flProtect )
2070 ! FUNCTION: VirtualBufferExceptionHandler
2071 ! FUNCTION: VirtualFree
2072 FUNCTION: BOOL VirtualFreeEx ( HANDLE hProcess, void* lpAddress, long dwSize, DWORD dwFreeType )
2073 ! FUNCTION: VirtualLock
2074 ! FUNCTION: VirtualProtect
2075 ! FUNCTION: VirtualProtectEx
2076 ! FUNCTION: VirtualQuery
2077 FUNCTION: BOOL VirtualQueryEx ( HANDLE hProcess, void* lpAddress, MEMORY_BASIC_INFORMATION* lpBuffer, SIZE_T dwLength )
2078 ! FUNCTION: VirtualUnlock
2079 ! FUNCTION: WaitCommEvent
2080 ! FUNCTION: WaitForDebugEvent
2081 FUNCTION: DWORD WaitForMultipleObjects ( DWORD nCount, HANDLE* lpHandles, BOOL bWaitAll, DWORD dwMilliseconds )
2082 ! FUNCTION: WaitForMultipleObjectsEx
2083 FUNCTION: BOOL WaitForSingleObject ( HANDLE hHandle, DWORD dwMilliseconds )
2084 ! FUNCTION: WaitForSingleObjectEx
2085 ! FUNCTION: WaitNamedPipeA
2086 ! FUNCTION: WaitNamedPipeW
2087 ! FUNCTION: WideCharToMultiByte
2088 ! FUNCTION: WinExec
2089 ! FUNCTION: WriteConsoleA
2090 ! FUNCTION: WriteConsoleInputA
2091 ! FUNCTION: WriteConsoleInputVDMA
2092 ! FUNCTION: WriteConsoleInputVDMW
2093 ! FUNCTION: WriteConsoleInputW
2094 ! FUNCTION: WriteConsoleOutputA
2095 ! FUNCTION: WriteConsoleOutputAttribute
2096 ! FUNCTION: WriteConsoleOutputCharacterA
2097 ! FUNCTION: WriteConsoleOutputCharacterW
2098 ! FUNCTION: WriteConsoleOutputW
2099 ! FUNCTION: WriteConsoleW
2100 FUNCTION: BOOL WriteFile ( HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToWrite, void* lpNumberOfBytesWritten, LPOVERLAPPED lpOverlapped )
2101 FUNCTION: BOOL WriteFileEx ( HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine )
2102 ! FUNCTION: WriteFileGather
2103 ! FUNCTION: WritePrivateProfileSectionA
2104 ! FUNCTION: WritePrivateProfileSectionW
2105 ! FUNCTION: WritePrivateProfileStringA
2106 ! FUNCTION: WritePrivateProfileStringW
2107 ! FUNCTION: WritePrivateProfileStructA
2108 ! FUNCTION: WritePrivateProfileStructW
2109 FUNCTION: BOOL WriteProcessMemory ( HANDLE hProcess, void* lpBaseAddress, void* lpBuffer, long nSize, long* lpNumberOfBytesWritten )
2110 ! FUNCTION: WriteProfileSectionA
2111 ! FUNCTION: WriteProfileSectionW
2112 ! FUNCTION: WriteProfileStringA
2113 ! FUNCTION: WriteProfileStringW
2114 ! FUNCTION: WriteTapemark
2115 ! FUNCTION: WTSGetActiveConsoleSessionId
2116 ! FUNCTION: ZombifyActCtx
2117
2118 : with-global-lock ( HGLOBAL quot -- )
2119     swap [ GlobalLock swap call ] keep GlobalUnlock drop ; inline