Freigeben über


CcFlushCache-Funktion (ntifs.h)

Die CcFlushCache-Routine löscht alle oder einen Teil einer zwischengespeicherten Datei auf den Datenträger.

Syntax

void CcFlushCache(
  [in]            PSECTION_OBJECT_POINTERS SectionObjectPointer,
  [in, optional]  PLARGE_INTEGER           FileOffset,
  [in]            ULONG                    Length,
  [out, optional] PIO_STATUS_BLOCK         IoStatus
);

Parameter

[in] SectionObjectPointer

Zeiger auf eine SECTION_OBJECT_POINTERS-Struktur , die die Abschnittsobjektzeiger des Dateiobjekts enthält.

[in, optional] FileOffset

Zeiger auf eine Variable, die den Startbyteoffset in der zwischengespeicherten Datei angibt, in der die Daten geleert werden sollen.

Wenn FileOffsetNULL ist, wird die gesamte Datei aus dem Cache geleert.

Wenn FileOffset nicht NULL ist, wird nur der Bytebereich geleert, der durch FileOffset und Length angegeben wird.

[in] Length

Länge des zu leerenden Bytebereichs ab FileOffset. Wenn FileOffsetNULL ist, wird Die Länge ignoriert.

[out, optional] IoStatus

Zeiger auf eine Struktur, die die endgültige Vervollständigung status und Informationen zum Löschvorgang empfängt. Wenn die Daten erfolgreich geleert wurden, enthält IoStatus.Status STATUS_SUCCESS. Wenn nicht alle Daten erfolgreich geleert wurden, enthält IoStatus.Information die tatsächliche Anzahl von Bytes, die geleert wurden. Andernfalls enthält IoStatus.Information den in Length angegebenen Wert.

Rückgabewert

Keine

Bemerkungen

CcFlushCache verfügt über keinen Wait-Parameter . Daher muss der Aufrufer in der Lage sein, einen Wartezustand zu wechseln, bis alle Daten geleert wurden.

Um eine Datei zwischenzuspeichern, verwenden Sie CcInitializeCacheMap.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe

Weitere Informationen

CcCopyWrite

CcInitializeCacheMap

CcIsFileCached

CcPurgeCacheSection