FileTimeToDosDateTime
The FileTimeToDosDateTime
function converts a 64-bit file time to MS-DOS date and time values.
BOOL FileTimeToDosDateTime(
CONST FILETIME *lpFileTime, |
// pointer to
64-bit file time |
LPWORD lpFatDate, |
// pointer to
variable for MS-DOS date |
LPWORD lpFatTime |
// pointer to
variable for MS-DOS time |
); |
|
Parameters
lpFileTime
Points to a FILETIME
structure containing the 64-bit file time to convert to MS-DOS date and time
format. The FILETIME
typedef struct _FILETIME { // ft
DWORD
dwLowDateTime;
DWORD
dwHighDateTime;
} FILETIME;
lpFatDate
Points to a
variable to receive the MS-DOS date. The date is a packed 16-bit value with the
following format:
Bits |
Contents |
0-4 |
Day of the
month (1-31) |
5-8 |
Month (1 =
January, 2 = February, etc.) |
9-15 |
Year offset
from 1980 (add 1980 to get actual year) |
lpFatTime
Points to a
variable to receive the MS-DOS time. The time is a packed 16-bit value with the
following format:
Bits |
Contents |
0-4 |
Second
divided by 2 |
5-10 |
Minute (0-59) |
11-15 |
Hour (0-23 on a 24-hour clock) |
Return Values
If the
function succeeds, the return value is nonzero.
If the
function fails, the return value is zero. To get extended error information,
call GetLastError
Remarks
The MS-DOS
date format can represent only dates between 1/1/1980 and 12/31/2107; this
conversion fails if the input file time is outside this range.
See Also