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