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


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

Программа FsRtlMdlWriteCompleteDev освобождает выделенные ресурсы, FsRtlPrepareMdlWriteD ev.

Синтаксис

BOOLEAN FsRtlMdlWriteCompleteDev(
  [in]             PFILE_OBJECT   FileObject,
  [in]             PLARGE_INTEGER FileOffset,
  [in]             PMDL           MdlChain,
  [ in, optional ] PDEVICE_OBJECT DeviceObject
);

Параметры

[in] FileObject

Указатель на объект файла.

[in] FileOffset

Указатель на значение, указывающее начальное смещение байтов в кэше, в котором хранятся данные.

[in] MdlChain

Указатель на связанный список списков дескрипторов памяти (MDLs), которые выделенных FsRtlPrepareMdlWriteDev.

[ in, optional ] DeviceObject

Указатель на объект устройства, на который открывается файл.

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

Подпрограмма FsRtlMdlWriteCompleteDev возвращает TRUE, если операция завершается успешно и FALSE, если операция завершается ошибкой или если флаг FO_WRITE_THROUGH задан в объекте файла.

Замечания

Программа FsRtlMdlWriteCompleteDev освобождает списки дескрипторов памяти (MDLs), которые FsRtlPrepareMdlWriteDev выделены и разблокируют память кэша, FsRtlPrepareMdlWriteDev заблокирован.

Если флаг FO_WRITE_THROUGH задан на объекте файла, на который указывает параметр FileObject, FsRtlMdlWriteCompleteDev немедленно сбрасывает кэшированную память на диск. Эта операция очистки повторно вводит файловую систему и может привести к тому, что FsRtlMdlWdlWriteCompleteDev вызвать исключение, если операция очистки завершается ошибкой.

За каждым вызовом FsRtlPrepareMdlWriteDev должен следовать вызов FsRtlMdlWriteCompleteDev.

Требования

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

См. также

FsRtlPrepareMdlWriteDev