138 lines
4.7 KiB
Factor
138 lines
4.7 KiB
Factor
IN: win32-api
|
|
USING: alien kernel errors ;
|
|
|
|
: MAX_PATH 260 ; inline
|
|
|
|
: GHND HEX: 40 ; inline
|
|
: GMEM_FIXED 0 ; inline
|
|
: GMEM_MOVEABLE 2 ; inline
|
|
: GMEM_ZEROINIT HEX: 40 ; inline
|
|
: GPTR HEX: 40 ; inline
|
|
|
|
: GENERIC_READ HEX: 80000000 ; inline
|
|
: GENERIC_WRITE HEX: 40000000 ; inline
|
|
: GENERIC_EXECUTE HEX: 20000000 ; inline
|
|
: GENERIC_ALL HEX: 10000000 ; inline
|
|
|
|
: CREATE_NEW 1 ; inline
|
|
: CREATE_ALWAYS 2 ; inline
|
|
: OPEN_EXISTING 3 ; inline
|
|
: OPEN_ALWAYS 4 ; inline
|
|
: TRUNCATE_EXISTING 5 ; inline
|
|
|
|
: FILE_LIST_DIRECTORY HEX: 00000001 ; inline
|
|
: FILE_READ_DAT HEX: 00000001 ; inline
|
|
: FILE_ADD_FILE HEX: 00000002 ; inline
|
|
: FILE_WRITE_DATA HEX: 00000002 ; inline
|
|
: FILE_ADD_SUBDIRECTORY HEX: 00000004 ; inline
|
|
: FILE_APPEND_DATA HEX: 00000004 ; inline
|
|
: FILE_CREATE_PIPE_INSTANCE HEX: 00000004 ; inline
|
|
: FILE_READ_EA HEX: 00000008 ; inline
|
|
: FILE_READ_PROPERTIES HEX: 00000008 ; inline
|
|
: FILE_WRITE_EA HEX: 00000010 ; inline
|
|
: FILE_WRITE_PROPERTIES HEX: 00000010 ; inline
|
|
: FILE_EXECUTE HEX: 00000020 ; inline
|
|
: FILE_TRAVERSE HEX: 00000020 ; inline
|
|
: FILE_DELETE_CHILD HEX: 00000040 ; inline
|
|
: FILE_READ_ATTRIBUTES HEX: 00000080 ; inline
|
|
: FILE_WRITE_ATTRIBUTES HEX: 00000100 ; inline
|
|
|
|
: FILE_SHARE_READ 1 ; inline
|
|
: FILE_SHARE_WRITE 2 ; inline
|
|
: FILE_SHARE_DELETE 4 ; inline
|
|
: FILE_SHARE_VALID_FLAGS 7 ; inline
|
|
|
|
: FILE_FLAG_WRITE_THROUGH HEX: 80000000 ; inline
|
|
: FILE_FLAG_OVERLAPPED HEX: 40000000 ; inline
|
|
: FILE_FLAG_NO_BUFFERING HEX: 20000000 ; inline
|
|
: FILE_FLAG_RANDOM_ACCESS HEX: 10000000 ; inline
|
|
: FILE_FLAG_SEQUENTIAL_SCAN HEX: 08000000 ; inline
|
|
: FILE_FLAG_DELETE_ON_CLOSE HEX: 04000000 ; inline
|
|
: FILE_FLAG_BACKUP_SEMANTICS HEX: 02000000 ; inline
|
|
: FILE_FLAG_POSIX_SEMANTICS HEX: 01000000 ; inline
|
|
: FILE_FLAG_OPEN_REPARSE_POINT HEX: 00200000 ; inline
|
|
: FILE_FLAG_OPEN_NO_RECALL HEX: 00100000 ; inline
|
|
: FILE_FLAG_FIRST_PIPE_INSTANCE HEX: 00080000 ; inline
|
|
|
|
: FILE_ATTRIBUTE_READONLY HEX: 00000001 ; inline
|
|
: FILE_ATTRIBUTE_HIDDEN HEX: 00000002 ; inline
|
|
: FILE_ATTRIBUTE_SYSTEM HEX: 00000004 ; inline
|
|
: FILE_ATTRIBUTE_DIRECTORY HEX: 00000010 ; inline
|
|
: FILE_ATTRIBUTE_ARCHIVE HEX: 00000020 ; inline
|
|
: FILE_ATTRIBUTE_DEVICE HEX: 00000040 ; inline
|
|
: FILE_ATTRIBUTE_NORMAL HEX: 00000080 ; inline
|
|
: FILE_ATTRIBUTE_TEMPORARY HEX: 00000100 ; inline
|
|
: FILE_ATTRIBUTE_SPARSE_FILE HEX: 00000200 ; inline
|
|
: FILE_ATTRIBUTE_REPARSE_POINT HEX: 00000400 ; inline
|
|
: FILE_ATTRIBUTE_COMPRESSED HEX: 00000800 ; inline
|
|
: FILE_ATTRIBUTE_OFFLINE HEX: 00001000 ; inline
|
|
: FILE_ATTRIBUTE_NOT_CONTENT_INDEXED HEX: 00002000 ; inline
|
|
: FILE_ATTRIBUTE_ENCRYPTED HEX: 00004000 ; inline
|
|
|
|
: STD_INPUT_HANDLE -10 ; inline
|
|
: STD_OUTPUT_HANDLE -11 ; inline
|
|
: STD_ERROR_HANDLE -12 ; inline
|
|
|
|
: INVALID_HANDLE_VALUE -1 <alien> ; inline
|
|
: INVALID_FILE_SIZE HEX: FFFFFFFF ; inline
|
|
|
|
: FILE_BEGIN 0 ; inline
|
|
: FILE_CURRENT 1 ; inline
|
|
: FILE_END 2 ; inline
|
|
|
|
: OF_READ 0 ;
|
|
: OF_READWRITE 2 ;
|
|
: OF_WRITE 1 ;
|
|
: OF_SHARE_COMPAT 0 ;
|
|
: OF_SHARE_DENY_NONE 64 ;
|
|
: OF_SHARE_DENY_READ 48 ;
|
|
: OF_SHARE_DENY_WRITE 32 ;
|
|
: OF_SHARE_EXCLUSIVE 16 ;
|
|
: OF_CANCEL 2048 ;
|
|
: OF_CREATE 4096 ;
|
|
: OF_DELETE 512 ;
|
|
: OF_EXIST 16384 ;
|
|
: OF_PARSE 256 ;
|
|
: OF_PROMPT 8192 ;
|
|
: OF_REOPEN 32768 ;
|
|
: OF_VERIFY 1024 ;
|
|
|
|
|
|
: INFINITE HEX: FFFFFFFF ; inline
|
|
|
|
! From C:\cygwin\usr\include\w32api\winbase.h
|
|
: FILE_TYPE_UNKNOWN 0 ;
|
|
: FILE_TYPE_DISK 1 ;
|
|
: FILE_TYPE_CHAR 2 ;
|
|
: FILE_TYPE_PIPE 3 ;
|
|
: FILE_TYPE_REMOTE HEX: 8000 ;
|
|
|
|
: TIME_ZONE_ID_UNKNOWN 0 ; inline
|
|
: TIME_ZONE_ID_STANDARD 1 ; inline
|
|
: TIME_ZONE_ID_DAYLIGHT 2 ; inline
|
|
: TIME_ZONE_ID_INVALID HEX: FFFFFFFF ; inline
|
|
|
|
|
|
: CREATE_DEFAULT_ERROR_MODE HEX: 4000000 ; inline
|
|
: DETACHED_PROCESS 8 ; inline
|
|
: PF_XMMI64_INSTRUCTIONS_AVAILABLE 10 ; inline
|
|
: PF_SSE3_INSTRUCTIONS_AVAILABLE 13 ; inline
|
|
|
|
: MAX_COMPUTERNAME_LENGTH 15 ; inline
|
|
: UNLEN 256 ; inline
|
|
|
|
: PROCESS_TERMINATE ( -- number ) HEX: 1 ; inline
|
|
: PROCESS_CREATE_THREAD ( -- number ) HEX: 2 ; inline
|
|
: PROCESS_VM_OPERATION ( -- number ) HEX: 8 ; inline
|
|
: PROCESS_VM_READ ( -- number ) HEX: 10 ; inline
|
|
: PROCESS_VM_WRITE ( -- number ) HEX: 20 ; inline
|
|
: PROCESS_DUP_HANDLE ( -- number ) HEX: 40 ; inline
|
|
: PROCESS_CREATE_PROCESS ( -- number ) HEX: 80 ; inline
|
|
: PROCESS_SET_QUOTA ( -- number ) HEX: 100 ; inline
|
|
: PROCESS_SET_INFORMATION ( -- number ) HEX: 200 ; inline
|
|
: PROCESS_QUERY_INFORMATION ( -- number ) HEX: 400 ; inline
|
|
|
|
: PAGE_READWRITE ( -- number ) HEX: 4 ; inline
|
|
: MEM_COMMIT ( -- number ) HEX: 1000 ; inline
|
|
: MEM_RELEASE ( -- number ) HEX: 8000 ; inline
|