Поделиться через


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

Подпрограмма ZwFlushBuffersFile вызывается драйвером фильтра файловой системы для отправки запроса на очистку указанного файла в файловую систему.

Синтаксис

NTSYSAPI NTSTATUS ZwFlushBuffersFile(
  [in]  HANDLE           FileHandle,
  [out] PIO_STATUS_BLOCK IoStatusBlock
);

Параметры

[in] FileHandle

Дескриптор, возвращаемый ZwCreateFile или ZwOpenFile для файла, буферы которого будут промыты. Этот параметр является обязательным и не может быть null.

[out] IoStatusBlock

Адрес блока состояния ввода-вывода вызывающего объекта. Этот параметр является обязательным и не может быть null.

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

ZwFlushBuffersFile возвращает STATUS_SUCCESS или соответствующее значение NTSTATUS, например одно из следующих:

Возвращаемый код Описание
STATUS_MEDIA_WRITE_PROTECTED
Файл находится на томе, защищенном записью; это код ошибки.
STATUS_VOLUME_DISMOUNTED
Файл находится на томе, который в настоящее время не подключен; это код ошибки.

Замечания

Драйвер фильтра файловой системы может вызывать ZwFlushBuffersFile для выдачи запроса IRP_MJ_FLUSH_BUFFERS файловой системе для заданного файла. Операция очистки синхронна.

Драйверы минифильтра должны вызывать FltFlushBuffers вместо вызова ZwFlushBuffersFile.

Вызывающие ZwFlushBuffersFile должны выполняться в IRQL = PASSIVE_LEVEL и с поддержкой специальных API ядра.

Примечание Если вызов функции ZwFlushBuffersFile происходит в пользовательском режиме, следует использовать имя "NtFlushBuffersFile" вместо "ZwFlushBuffersFile".
 
Для вызовов драйверов в режиме ядра версии **Nt*Xxx** и **Zw*Xxx*** подпрограммы системных служб Windows Native System Services могут вести себя по-разному так, как они обрабатывают и интерпретируют входные параметры. Дополнительные сведения о связях между подпрограммами **Nt*Xxx** и **Zw*Xxx*** подпрограммы см. в разделе [Использование программ собственных системных служб с использованием nt и Zw](/windows-hardware/drivers/kernel/using-nt-and-zw-versions-of-native-system-services-routines).

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista
целевая платформа Всеобщий
заголовка ntifs.h (include Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL (см. раздел "Примечания")
правил соответствия DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

См. также

FltFlushBuffers

IRP_MJ_FLUSH_BUFFERS

использование версий собственных системных служб и Zw

ZwCreateFile

ZwOpenFile