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 |