MmFlushImageSection, fonction (ntifs.h)
La routine MmFlushImageSection vide la section image d’un fichier.
Syntaxe
BOOLEAN MmFlushImageSection(
PSECTION_OBJECT_POINTERS SectionObjectPointer,
[in] MMFLUSH_TYPE FlushType
);
Paramètres
SectionObjectPointer
Pointeur vers une structure qui contient les pointeurs d’objet de section de l’objet de fichier.
[in] FlushType
Spécifie la raison de l’opération de vidage. Il peut s’agir de l’une des valeurs répertoriées dans le tableau suivant.
Valeur FlushType | Signification |
---|---|
mmFlushForDelete | Le fichier est en cours de suppression. |
mmFlushForWrite | Le fichier est ouvert pour l’accès en écriture. |
Valeur de retour
MmFlushImageSection retourne TRUE si l’opération de vidage réussit ou si aucune section d’image n’existe pour le fichier ; sinon, MmFlushImageSection retourne FALSE .
Remarques
Un système de fichiers doit appeler la routine MmFlushImageSection avant de supprimer un fichier ou d’ouvrir un fichier pour l’accès en écriture.
Avant de supprimer un fichier, le système de fichiers doit appeler mmFlushImageSection de sa routine de répartition IRP_MJ_SET_INFORMATION ou IRP_MJ_CLEANUP, en passant MmFlushForDelete pour le paramètre FlushType.
Lors de l’ouverture d’un fichier pour l’accès en écriture, le système de fichiers doit appeler MmFlushImageSection à partir de sa routine de répartition IRP_MJ_CREATE, en passant MmFlushForWrite pour le paramètre FlushType.
S’il n’existe aucune vue mappée de la section image, MmFlushImageSection détruit la section image et retourne toutes les pages utilisées dans la liste gratuite.
Avant d’utiliser MmFlushImageSection, les enregistreurs de système de fichiers sont fortement encouragés à étudier la façon dont cette routine est utilisée dans l’exemple FASTFAT.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Universel |
d’en-tête | ntifs.h (include Ntifs.h) |
bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |