FsRtlMdlWriteCompleteDev-Funktion (ntifs.h)

Die FsRtlMdlWriteCompleteDev-Routine gibt die Ressourcen frei, die FsRtlPrepareMdlWriteDev zugeordnet hat.

Syntax

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

Parameter

[in] FileObject

Ein Zeiger auf das Dateiobjekt.

[in] FileOffset

Ein Zeiger auf einen Wert, der den Anfangsbyteoffset innerhalb des Caches angibt, der die Daten enthält.

[in] MdlChain

Ein Zeiger auf eine verknüpfte Liste von Speicherdeskriptorlisten (MDLs), die FsRtlPrepareMdlWriteDev zugeordnet hat.

[ in, optional ] DeviceObject

Ein Zeiger auf ein Geräteobjekt, auf dem die Datei geöffnet wird.

Rückgabewert

Die FsRtlMdlWriteCompleteDev-Routine gibt TRUE zurück, wenn der Vorgang erfolgreich ist, und FALSE , wenn der Vorgang fehlschlägt oder wenn das FO_WRITE_THROUGH-Flag im Dateiobjekt festgelegt ist.

Hinweise

Die FsRtlMdlWriteCompleteDev-Routine gibt die Speicherdeskriptorlisten (MDLs) frei, die FsRtlPrepareMdlWriteDev zugeordnet hat, und entsperrt den Cachespeicher, den FsRtlPrepareMdlWriteDev gesperrt hat.

Wenn das FO_WRITE_THROUGH-Flag für das Dateiobjekt festgelegt ist, auf das der FileObject-Parameter verweist, leert FsRtlMdlWriteCompleteDev sofort den zwischengespeicherten Speicher auf den Datenträger. Dieser Leerungsvorgang wechselt erneut in das Dateisystem und kann dazu führen, dass FsRtlMdlWriteCompleteDev eine Ausnahme auslöst, wenn der Leerungsvorgang fehlschlägt.

Jedem Aufruf von FsRtlPrepareMdlWriteDev muss ein Aufruf von FsRtlMdlWriteCompleteDev folgen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 8.
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI-Complianceregeln HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Weitere Informationen

FsRtlPrepareMdlWriteDev