This is an old revision of the document!
Table of Contents
Note: This API call is for DOS and Win16 personality only. Use Family API for portability.
Int 21H, AH=57H
Version
2 and higher
Brief
“GET FILE'S LAST-WRITTEN DATE AND TIME
Family API
Input
AX = 5700h BX = file handle
Return
CF clear if successful
CX = file's time (see #01665) DX = file's date (see #01666) CF set on error AX = error code (01h,06h) (see #01680)
Notes
under DR DOS 3.41 and 5.0, this function returns 0 (no date/time) for character devices; MS-DOS returns date and time of opening
Bitfields for file time: Bit(s) Description (Table 01665) 15-11 hours (0-23) 10-5 minutes 4-0 seconds/2
Bitfields for file date: Bit(s) Description (Table 01666) 15-9 year - 1980 8-5 month 4-0 day
See also
AX=5701h,AX=5704h"Windows95"
Note
Text based on Ralf Brown Interrupt List Release 61
osFree Macro Library | |
---|---|
Video I/O | @SetMode @SetCurSz @SetCurPos @GetCur @SetPage @ScrollUp @ScrollDn @Scroll @GetChAtr @PutChAtr @PutCh @SetPalet @SetColor @SetDot @GetDot @WrtTTY @VideoState @GetMode @GetDisplay @GetVideoState @GetEGAInfo @Cls |
Hardware info | @Equipment @MemSize |
Serial I/O | @AuxInit @AuxSendChar @AuxRecieveChar @AuxStatus |
Tape I/O | @TapeOn @TapeOff @TapeRead @TapeWrite |
Keyboard I/O | @KbdStatus @CharIn @CharPeek |
Printer I/O | @PrnPrint @PrnInit @PrnStatus |
Disk I/O | @DskReset @DskStatus @DskRead @DskWrite @DskVerify @DskFormat |
Date and Time | @SetTime @GetTime |
Mouse | @MouInit @MouShowPointer @MouStatus @MouSetPos @MouSetMickey @MouRegion |
Memory manager | @ModBlok SET_BLOCK |
INT 21 - DOS 2+ - SET FILE'S LAST-WRITTEN DATE AND TIME
AX = 5701h BX = file handle CX = new time (see #01665) DX = new date (see #01666)
Return: CF clear if successful
CF set on error AX = error code (01h,06h) (see #01680)
SeeAlso: AX=5700h,AX=5705h”Windows95“,AX=5707h”Windows95“ ——–D-215702—————————– INT 21 - DOS 4.x only - GET EXTENDED ATTRIBUTES FOR FILE
AX = 5702h BX = file handle CX = size of result buffer or 0000h DS:SI -> EAP list (see #01667) ES:DI -> buffer for returned EAV list (see #01670)
Return: CF clear if successful
CX = size of returned data CF set on error AX = error code (see #01680)
Desc: get the current value of one or more extended attributes Notes: if CX=0000h on entry, ES:DI is ignored and no data is actually
returned, only the amount of data which is available the default DOS 4 behavior is to return a single word of 0000h (no structures) in the result buffer if CX>=0002h on entry; this functionality was apparently never released to the public
SeeAlso: AX=5703h,AX=5704h,AH=6Eh,INT 2F/AX=112Dh
Format of EAP (extended attribute properties) list: Offset Size Description (Table 01667) 00h WORD number of EAP structures following 02h var array of EAP structures (see #01668) SeeAlso: #01670
Format of EAP (extended attribute property) structure: Offset Size Description (Table 01668) 00h BYTE attribute type
01h boolean (either 00h or 01h) 02h number (BYTE, WORD, or DWORD) 03h string 04h date stamp 05h time stamp
01h WORD EAP flags (see #01669) 03h BYTE size of reference string (name) 04h N BYTEs reference string
Bitfields for EAP flags: Bit(s) Description (Table 01669) 12 unchangeable 13 ignore 14 unchangeable 15 used by COMMAND.COM for code page, but not understood by ATTRIB
Format of EAV (extended attribute value) list: Offset Size Description (Table 01670) 00h WORD number of EAV structures following 02h var array of Extended Attribute Value structures (see #01671) SeeAlso: #01667
Format of Extended Attribute Value structures: Offset Size Description (Table 01671) 00h 4 BYTEs ??? 04h BYTE size of reference string 05h WORD size of value 07h var reference string
var value
——–O-215702—————————– INT 21 - OS/2 v1.1+ Family API - DosQFileInfo
AX = 5702h BX = file handle CX = size of buffer for information DX = level of information 0001h standard file information (see #01672) 0002h Query EA Size (see #01672) 0003h Query EAs from List (see #01673) 0004h Query All EAs (see #01673) ES:DI -> buffer for information (see #01672,#01673)
Return: CF clear if successful
CF set on error AX = error code
SeeAlso: AX=5702h/BX=FFFFh,AX=5703h”OS/2“,AH=6Dh”OS/2“
Format of OS/2 DosQFileInfo: Offset Size Description (Table 01672) 00h WORD creation date 02h WORD creation time 04h WORD last access date 06h WORD last access time 08h WORD last write date 0Ah WORD last write time 0Ch DWORD file size in bytes 10h DWORD allocated space in bytes 14h WORD file attributes —level 2 only— 16h DWORD size of Extended Attributes in byte SeeAlso: #01673,#01676
Format of OS/2 DosQFileInfo, EAOP structure: Offset Size Description (Table 01673) 00h DWORD pointer to general EA list (see #01674) 04h DWORD pointer to buffer for full EA list, with length field set 08h DWORD (ret) error Note: for info level 3, the first pointer must contain the address of a
list of the Extended Attributes to be retrieved; for info level 4, it should be 0000h:0000h
SeeAlso: #01672,#01676
Format of OS/2 DosQFileInfo, General EA List: Offset Size Description (Table 01674) 00h DWORD (call) total size of list in bytes (including this field)
(ret) number of bytes actually used (including this field)
04h var Extended Attribute entries (see #01675) [packed arrray]
Format of OS/2 DosQFileInfo, General EA entry: Offset Size Description (Table 01675) 00h BYTE length of Extended Attribute name (excluding terminating NUL) 01h N BYTEs EA name
BYTE 00h
SeeAlso: #01674
Format of OS/2 DosQFileInfo, Full EA List: Offset Size Description (Table 01676) 00h DWORD (call) total size of list in bytes (including this field)
(ret) number of bytes actually used (including this field)
04h var Extended Attribute data (see #01677) [packed array] SeeAlso: #01672,#01673
Format of OS/2 Extended Attribute data (struct FEA): Offset Size Description (Table 01677) 00h BYTE flags
bit 7: critical EA
01h BYTE length of Extended Attribute name (excluding terminating NUL) 02h WORD length of Extended Attribute value 04h N BYTEs EA name
BYTE 00h M BYTEs EA value
——–O-215702BXFFFF———————– INT 21 - OS/2 v1.1+ Compatibility Box Family API - DosQPathInfo
AX = 5702h BX = FFFFh CX = size of buffer for information DX = level of information (0002h) DS:SI -> filename ES:DI -> buffer for FAPI path information (see #01678)
Return: CF clear if successful
AL = 00h CF set on error AX = error code
SeeAlso: AX=5702h”OS/2“,AX=5703h/BX=FFFFh
Format of FAPI path information: Offset Size Description (Table 01678) 00h 22 BYTEs ??? 16h DWORD extended attribute size (none present if less than 5) ——–D-215703—————————– INT 21 - DOS 4.x only - GET EXTENDED ATTRIBUTE PROPERTIES
AX = 5703h BX = file handle CX = size of result buffer or 0000h ES:DI -> result buffer
Return: CF clear if successful
CX = size of returned data CF set on error AX = error code (see #01680) ES:DI -> zero word (DOS 4.0) if CX >= 2 on entry
Desc: get a list of the extended attributes which are defined for the
specified file
Notes: if CX=0000h on entry, ES:DI is ignored and no data is actually
returned, only the amount of data which is available the default DOS 4 behavior is to return a trivial EAP list consisting of the single word 0000h (no EAP structures) if CX>=0002h on entry; this functionality was apparently never released to the public
SeeAlso: AX=5702h,AX=5704h,AH=6Eh,INT 2F/AX=112Dh ——–O-215703—————————– INT 21 - OS/2 v1.1+ Family API - DosSetFileInfo
AX = 5703h BX = file handle CX = size of information buffer DX = level of information ES:DI -> information buffer
Return: CF clear if successful
CF set on error AX = error code
SeeAlso: AX=5702h”OS/2“,AX=5703h/BX=FFFFh ——–O-215703BXFFFF———————– INT 21 - OS/2 v1.1+ Family API - DosSetPathInfo
AX = 5703h BX = FFFFh CX = size of information buffer DX = level of information DS:SI -> filename ES:DI -> information buffer
Return: CF clear if successful
CF set on error AX = error code
SeeAlso: AX=5702h/BX=FFFFh,AX=5703h”OS/2“