Функция MmFlushImageSection (ntifs.h)

Подпрограмма MmFlushImageSection очищает раздел изображения для файла.

Синтаксис

BOOLEAN MmFlushImageSection(
       PSECTION_OBJECT_POINTERS SectionObjectPointer,
  [in] MMFLUSH_TYPE             FlushType
);

Параметры

SectionObjectPointer

Указатель на структуру, содержащую указатели объектов раздела файлового объекта.

[in] FlushType

Указывает причину операции очистки. Это может быть одно из значений, перечисленных в следующей таблице.

Значение FlushType Значение
MmFlushForDelete Файл удаляется.
MmFlushForWrite Файл открывается для доступа на запись.

Возвращаемое значение

MmFlushImageSection возвращает значение TRUE , если операция очистки выполнена успешно или если для файла не существует раздела образа; в противном случае MmFlushImageSection возвращает значение FALSE.

Примечание Если указано значение FlushType MmFlushForDelete и в разделе данных файла есть одна или несколько невыполненных проб записи, MmFlushImageSection возвращает значение FALSE.
 

Комментарии

Файловая система должна вызвать подпрограмму MmFlushImageSection перед удалением файла или открытием файла для доступа на запись.

Перед удалением файла файловая система должна вызвать MmFlushImageSection из IRP_MJ_SET_INFORMATION или IRP_MJ_CLEANUP подпрограммы диспетчеризации, передав mmFlushForDelete для параметра FlushType .

При открытии файла для доступа на запись файловая система должна вызывать MmFlushImageSection из своей IRP_MJ_CREATE подпрограммы диспетчеризации, передав mmFlushForWrite для параметра FlushType .

Если в разделе изображения нет сопоставленных представлений, MmFlushImageSection уничтожает раздел изображения и возвращает все используемые страницы в свободный список.

Перед использованием MmFlushImageSection настоятельно рекомендуется изучить, как эта подпрограмма используется в примере FASTFAT.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть ntifs.h (включая Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

См. также раздел

CcPurgeCacheSection