FS_FileDateTime( PIOREQ pir )
The file modification date and time is set and retrieved through FS_FileDateTime. This routine handles the INT 21h function: 57h.
ir_rh
Supplies handle to disk volume or network resource which contains the file.
ir_fh
Supplies FSD file handle.
ir_sfn
Supplies system file number.
ir_flags
Supplies desired command type to perform.
Command Type Values: One of the following types will be specified. | |
Value | Meaning |
GET_MODIFY_DATETIME | Get the file modification date and time. |
SET_MODIFY_DATETIME | Set the file modification date and time. |
GET_LAST_ACCESS_DATETIME | Get the last access date and time for the file. |
SET_LAST_ACCESS_DATETIME | Set the last access date and time for the file. |
GET_CREATION_DATE_TIME | Get the creation date and time for the file. |
SET_CREATION_DATE_TIME | Set the creation date and time for the file. |
ir_dostime
Supplies new date and time for file on all the set commands. The date and time is in DOS format. For SET_LAST_ACCESS_DATETIME, the time field may be 0 indicating that last access time is not supported.
ir_options
Supplies the 10 millisecond intervals for additional precision for the creation time. This field is valid only on the SET_CREATION_DATE_TIME command.
ir_user
Supplies user id for this request.
ir_pid
Supplies process id for this request.
ir_error | Returns status of the operation ( 0 if no error, errorcode otherwise ). |
ir_dostime | Returns current file date and time on all the get commands. The date and time is in DOS format. For GET_LAST_ACCESS_DATETIME, if only the date is supported, the time field should be set to 0. |
ir_options | Returns the 10 millisecond interval on the GET_CREATION_DATE_TIME. |
Any fields that are not supported will have an input value if zero. If the FSD does not support any of the date and time fields it should return 0 and not fail the call. The creation time has additional precision over the normal DOS time of 2 second intervals - it gives a precision upto 10milliseconds, the new parameter specifying the number of 10 millisecond intervals beyond the 2 second precision already stored in the DOS time.