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

Zeigen Sie auf eine SECTION_OBJECT_POINTERS Struktur, die die Abschnittsobjektzeiger des Dateiobjekts enthält.

[in, optional] FileOffset

Zeigen Sie auf eine Variable, die den Anfangsbyte-Offset in der zwischengespeicherten Datei angibt, in der die Daten geleert werden sollen.

Wenn FileOffset-NULL-ist, wird die gesamte Datei aus dem Cache geleert.

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

[in] Length

Länge des zu leerenden Bytebereichs ab FileOffset-. Wenn FileOffset-NULL-ist, wird Länge ignoriert.

[out, optional] IoStatus

Zeigen Sie auf eine Struktur, die den endgültigen Abschlussstatus und Informationen zum Löschvorgang empfängt. Wenn die Daten erfolgreich geleert werden, enthält IoStatus.Status STATUS_SUCCESS. Wenn nicht alle Daten erfolgreich geleert werden, enthält IoStatus.Information die tatsächliche Anzahl der Bytes, die geleert wurden. Andernfalls enthält IoStatus.Information den in Lengthangegebenen Wert.

Rückgabewert

Nichts

Bemerkungen

CcFlushCache- hat keinen parameter Wait. Daher muss der Aufrufer in der Lage sein, einen Wartezustand einzugeben, bis alle Daten geleert wurden.

Verwenden Sie CcInitializeCacheMap, um eine Datei zwischenzuspeichern.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe

Siehe auch

CcCopyWrite-

CcInitializeCacheMap-

CcIsFileCached-

CcPurgeCacheSection-