CcPurgeCacheSection 関数 (ntifs.h)
CcPurgeCacheSection ルーチンは、キャッシュされたファイルの全部または一部をシステム キャッシュから消去します。
構文
BOOLEAN CcPurgeCacheSection(
[in] PSECTION_OBJECT_POINTERS SectionObjectPointer,
[in, optional] PLARGE_INTEGER FileOffset,
[in] ULONG Length,
ULONG Flags
);
パラメーター
[in] SectionObjectPointer
ファイル オブジェクトのセクション オブジェクト ポインターを含む構造体へのポインター。
[in, optional] FileOffset
データを消去するキャッシュ ファイル内の開始バイト オフセットを指定する変数へのポインター。
FileOffset が NULL の場合、ファイル全体がキャッシュから消去されます。
FileOffset が NULL でない場合は、FileOffset と Length で指定されたバイト範囲のみが消去されます。
[in] Length
消去するバイト範囲の長さ ( FileOffset 以降)。 Length が 0 の場合、FileOffset からファイルの末尾までの範囲が消去されます。 FileOffset が NULL の場合、Length は無視されます。
Flags
ファイル データを消去する前に、ファイルのプライベート キャッシュ マップを初期化解除するには 、TRUE に 設定します。
戻り値
CcPurgeCacheSection は、キャッシュされたファイル データが正常に消去された場合は TRUE を返し、それ以外の場合は FALSE を 返します。
注釈
ファイル システムは CcPurgeCacheSection を呼び出して、古いデータをキャッシュから消去します。 たとえば、ファイルが切り捨てられ、削除されていない場合は、ファイルの一部ではないキャッシュされたデータを消去するために CcPurgeCacheSection を呼び出す必要があります。
CcPurgeCacheSection では、マップされたファイルは消去されません。
CcPurgeCacheSection を呼び出す前に、呼び出し元はファイルを排他的に取得し、呼び出し元を含むスレッドがファイル内のバイト範囲をマップまたは固定しないようにする必要があります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
Header | ntifs.h (Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |