FileTimeToDosDateTime  4J8AXA 

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 FILETIMEA44M8H structure has the following form:

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 GetLastError11C2VS7.

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

DosDateTimeToFileTime, FileTimeToSystemTime, SystemTimeToFileTime