Fonction SetFileTime (fileapi.h)

Définit la date et l’heure de la création, du dernier accès ou de la dernière modification du fichier ou du répertoire spécifié.

Syntaxe

BOOL SetFileTime(
  [in]           HANDLE         hFile,
  [in, optional] const FILETIME *lpCreationTime,
  [in, optional] const FILETIME *lpLastAccessTime,
  [in, optional] const FILETIME *lpLastWriteTime
);

Paramètres

[in] hFile

Handle du fichier ou du répertoire. Le handle doit avoir été créé à l’aide de la fonction CreateFile avec le droit d’accès FILE_WRITE_ATTRIBUTES . Pour plus d’informations, consultez Sécurité des fichiers et droits d’accès.

[in, optional] lpCreationTime

Pointeur vers une structure FILETIME qui contient la date et l’heure de création du fichier ou du répertoire. Si l’application n’a pas besoin de modifier ces informations, définissez ce paramètre sur NULL ou sur un pointeur vers une structure FILETIME dont les membres dwLowDateTime et dwHighDateTime sont définis sur 0.

[in, optional] lpLastAccessTime

Pointeur vers une structure FILETIME qui contient la date et l’heure du dernier accès pour le fichier ou le répertoire. Le dernier temps d’accès inclut la dernière fois où le fichier ou le répertoire a été écrit, lu ou (dans le cas des fichiers exécutables) exécuté. Si l’application n’a pas besoin de modifier ces informations, définissez ce paramètre sur NULL ou sur un pointeur vers une structure FILETIME dont les membres dwLowDateTime et dwHighDateTime sont définis sur 0.

Pour empêcher les opérations de fichier à l’aide du handle donné de modifier le dernier temps d’accès, appelez SetFileTime immédiatement après l’ouverture du handle de fichier et transmettez une structure FILETIME dont les membres dwLowDateTime et dwHighDateTime sont définis sur 0xFFFFFFFF.

[in, optional] lpLastWriteTime

Pointeur vers une structure FILETIME qui contient la date et l’heure de la dernière modification du fichier ou du répertoire. Si l’application n’a pas besoin de modifier ces informations, définissez ce paramètre sur NULL ou sur un pointeur vers une structure FILETIME dont les membres dwLowDateTime et dwHighDateTime sont définis sur 0.

Pour empêcher les opérations de fichier à l’aide du handle donné de modifier l’heure de la dernière écriture, appelez SetFileTime immédiatement après l’ouverture du handle de fichier et transmettez une structure FILETIME dont les membres dwLowDateTime et dwHighDateTime sont définis sur 0xFFFFFFFF.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Notes

Tous les systèmes de fichiers ne peuvent pas enregistrer les heures de création et de dernier accès, et tous les systèmes de fichiers ne les enregistrent pas de la même manière. Par exemple, sur FAT, le temps de création a une résolution de 10 millisecondes, le temps d’écriture a une résolution de 2 secondes et le temps d’accès a une résolution de 1 jour (en fait, la date d’accès). Par conséquent, la fonction GetFileTime peut ne pas retourner les mêmes informations de temps de fichier définies à l’aide de SetFileTime. NTFS retarde les mises à jour jusqu’à l’heure du dernier accès d’un fichier jusqu’à une heure après le dernier accès.

Exemples

Pour obtenir un exemple, consultez Modification d’une heure de fichier à l’heure actuelle.

Spécifications

   
Client minimal pris en charge Windows XP [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête fileapi.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

FILETIME

Heures de fichier

GetFileSize

GetFileTime

GetFileType

SetFileInformationByHandle

Fonctions de temps