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