次の方法で共有


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場合、 は無視されます。

Flags

ファイル データ 消去する前に、ファイルのプライベート キャッシュ マップを初期化解除するには、TRUE に設定します。

戻り値

ccPurgeCacheSection は、キャッシュされたファイル データが正常に消去された場合 TRUE を返し、それ以外の場合は FALSE 返します。

備考

ファイル システム CcPurgeCacheSection を呼び出して、古いデータをキャッシュから消去します。 たとえば、ファイルが切り捨てられ、削除されていない場合は、CcPurgeCacheSection を呼び出して、ファイルの一部ではなくなったキャッシュされたデータを消去する必要があります。

ccPurgeCacheSection 、マップされたファイルは消去されません。

CcPurgeCacheSection呼び出す前に、呼び出し元はファイルを排他的に取得し、呼び出し元を含むスレッドがファイル内のバイト範囲をマップまたはピン留めしないようにする必要があります。

必要条件

要件 価値
ターゲット プラットフォーム の 万国
ヘッダー ntifs.h (Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

関連項目

CcFlushCache の

ccInitializeCacheMap の

CcIsFileCached

ccUninitializeCacheMap の

mmFlushImageSection の