次の方法で共有


FsRtlAddToTunnelCache 関数 (ntifs.h)

FsRtlAddToTunnelCache ルーチンは、ファイル名の変更または削除時にディレクトリから削除されるファイル名をキャッシュします。

構文

void FsRtlAddToTunnelCache(
  [in] TUNNEL         *Cache,
  [in] ULONGLONG      DirectoryKey,
  [in] UNICODE_STRING *ShortName,
  [in] UNICODE_STRING *LongName,
  [in] BOOLEAN        KeyByShortName,
  [in] ULONG          DataLength,
  [in] VOID           *Data
);

パラメーター

[in] Cache

FsRtlInitializeTunnelCacheによって初期化されたトンネル キャッシュへのポインター。

[in] DirectoryKey

削除または名前変更されるファイルを含むディレクトリのキー値。 ディレクトリ キーは、ファイル システムによって生成され、ディレクトリに割り当てられる一意の符号なし 64 ビット識別子です。

[in] ShortName

ファイルの短い (8.3) 名を含む Unicode 文字列。 KeyByShortName が FALSE場合、ShortName 省略可能です。

[in] LongName

ファイルの長い名前を含む Unicode 文字列。 長いファイル名は、標準の 8.3 ファイル名形式を超えるファイルまたはディレクトリの名前です。 KeyByShortName が TRUE場合、LongName は省略可能です。

[in] KeyByShortName

ディレクトリから削除するファイル名がファイルの短い名前の場合は true を に設定し、長い名前の場合は FALSE します。

[in] DataLength

このファイルのトンネル キャッシュ エントリに格納される情報の長さ (バイト単位)。 このパラメーターの値はファイル システム固有ですが、トンネル キャッシュ内のすべてのエントリで同じである必要があります。

[in] Data

このファイルのトンネル キャッシュ エントリに格納されるファイル システム固有の情報を含むバッファーへのポインター。

戻り値

何一つ

備考

ファイル名がディレクトリから削除されると (名前を変更または削除するファイルの場合)、ファイル システムは FsRtlAddToTunnelCache呼び出すことによってファイル名をキャッシュできます。 トンネル キャッシュの目的は、ファイルが削除または名前変更されたのと同じ長い名前または短い名前の新しいファイルが作成された場合に、ファイルのプロパティを伝達することです。

FsRtlAddToTunnelCache 、指定したファイル名とディレクトリ キーを含む新しいエントリを作成し、ファイルが削除または削除されるマウントされたボリュームのトンネル キャッシュにエントリを追加します。 このエントリには、ファイル システム固有のファイル情報の固定サイズ のデータ パケットを含めることもできます。

呼び出し元は、FsRtlDeleteTunnelCacheに対してこの呼び出しを同期する必要があります。 言い換えると、ファイル システムは、FsRtlAddToTunnelCache を呼び出さないことを確認し、FsRtlDeleteTunnelCache を異なるスレッドから同時に する必要があります。

ファイル名トンネリングの詳細については、マイクロソフト サポート技術情報の記事 172190を参照してください。

必要条件

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

関連項目

FsRtlDeleteKeyFromTunnelCache の

FsRtlDeleteTunnelCache

FsRtlInitializeTunnelCache

UNICODE_STRING