Partager via


structure FILE_ALLOCATION_INFORMATION (ntifs.h)

La structure FILE_ALLOCATION_INFORMATION est utilisée pour définir la taille d’allocation d’un fichier.

Syntaxe

typedef struct _FILE_ALLOCATION_INFORMATION {
  LARGE_INTEGER AllocationSize;
} FILE_ALLOCATION_INFORMATION, *PFILE_ALLOCATION_INFORMATION;

Membres

AllocationSize

Taille d’allocation de fichiers, en octets. En règle générale, cette valeur est un multiple de la taille du secteur ou du cluster de l’appareil physique sous-jacent.

Remarques

Cette opération peut être effectuée de l’une des manières suivantes :

  • Appelez FltSetInformationFile ou ZwSetInformationFile, en passant FileAllocationInformation comme valeur de FileInformationClass et en passant une mémoire tampon FILE_ALLOCATION_INFORMATION structurée par l’appelant comme valeur de FileInformation. Le paramètre FileHandle spécifie le fichier dont la taille d’allocation doit être définie.

  • Créez un IRP avec le code de fonction principal IRP_MJ_SET_INFORMATION.

Cette opération est valide uniquement pour les fichiers. Il n’est pas défini pour les répertoires.

Les minifilters du système de fichiers doivent utiliser FltSetInformationFile, et non ZwSetInformationFile, pour définir la taille d’allocation d’un fichier.

FILE_WRITE_DATA’accès est requis pour définir ces informations.

La taille d’allocation d’un fichier et la position de fin de fichier sont indépendantes les unes des autres, à l’exception suivante : la position de fin de fichier doit toujours être inférieure ou égale à la taille d’allocation. Si la taille d’allocation est définie sur une valeur inférieure à la position de fin de fichier, la position de fin de fichier est automatiquement ajustée pour correspondre à la taille d’allocation.

La taille de la mémoire tampon FileInformation passée à FltSetInformationFile ou ZwSetInformationFile doit être >= sizeof(FILE_ALLOCATION_INFORMATION).

Cette structure doit être alignée sur une limite LONGLONG (8 octets).

Exigences

Exigence Valeur
d’en-tête ntifs.h (include Ntifs.h, Fltkernel.h)

Voir aussi

FILE_END_OF_FILE_INFORMATION

FltSetInformationFile

IRP_MJ_SET_INFORMATION

ZwSetInformationFile