FILETIME
La structure FILETIME
La structure FILETIME est en fait un nombre sur 64 bits qui représente le nombre de 100-nanosecond écoulé depuis le 1er janvier 1601.
typedef struct _FILETIME { DWORD dwLowDateTime; // Partie basse DWORD dwHighDateTime; // Partie haute } FILETIME, *PFILETIME;
Pour convertir ce nombre illisible en quelque chose d'affichable, on utilisera
la fonction FileTimeToSystemTime()
Microsoft conseil pour calculer une heure relative de passer d'une struture FILETIME vers une structure ULARGE_INTEGER, que je n'ai jamais essayé...
conversion de FILETIME en SYSTEMTIME:
BOOL FileTimeToSystemTime(
const FILETIME* lpFileTime,
LPSYSTEMTIME lpSystemTime
);
En entrée: lpFileTime de type FILETIME
et lpSystemTime de type SYSTEMTIME
Structure SYSTEMTIME
Représentation de la date et de l'heure
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME,
*PSYSTEMTIME;
Avec
wYear : L'année(1601 - 30827)
wMonth : Le mois (1 à 12)
wDayOfWeek : Le jour de la semaine avec dimanche comme premier jour (0 - 6)
wDay : Le jour dans le mois (1-31)
wHour : L'heure sur 24 H (0-23)
wMinute : Les minutes (0-59)
wSecond : Les secondes (0-59)
wMilliseconds : Le nombre de milliseconde (0-999)
conversion en structure time_t !
Voir chapitre "Horloge", paragraphe "structure de la date horloge et de la date des fichiers"