Structure BY_HANDLE_FILE_INFORMATION
La structure BY_HANDLE_FILE_INFORMATION contient différentes informations sur un fichier:
typedef struct _BY_HANDLE_FILE_INFORMATION {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD dwVolumeSerialNumber;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD nNumberOfLinks;
DWORD nFileIndexHigh;
DWORD nFileIndexLow;
} BY_HANDLE_FILE_INFORMATION,
*PBY_HANDLE_FILE_INFORMATION;
Avec dwFileAttributes: Attribut d'un fichier:
ftCreationTime Structure de type FILETIME indiquant quand un fichier ou un répertoire a été créé (non supporté par tous les systèmes et peut donc retourner la valeur 0).
ftLastAccessTime Structure de type FILETIME
indiquant pour un fichier la dernier fois que celui a été accédé
en lecture ou écriture. Pour un répertoire, il s'agit de la date
de création (non supporté par tous les systèmes et peut
donc retourner la valeur 0).
ftLastWriteTime Structure de type FILETIME
indiquant le dernier accès en écriture sur le fichier. Sinon,
toujours la date de création d'un répertoire (non supporté
par tous les systèmes et peut donc retourner la valeur 0).
dwVolumeSerialNumber Numéro de série du volume
nFileSizeHigh
nFileSizeLow Taille du fichier
nNumberOfLinks Nombre de lien, toujours à 1 sur un système FAT
(l'information n'existait pas !!!)
nFileIndexHigh
nFileIndexLow Numéro d'index du fichier. Combiné au numéro
de série d'un volume, peut permettre de vérifier que deux handles
ne pointent pas sur le même fichier...
Voir le chapitre
FILETIME pour une conversion en structure
time_t.