次の方法で共有


FsRtlInsertPerFileContext 関数 (ntifs.h)

FsRtlInsertPerFileContext ルーチンは、FSRTL_PER_FILE_CONTEXT オブジェクトをファイルのドライバー指定のコンテキスト オブジェクトに関連付けます。

構文

NTSTATUS FsRtlInsertPerFileContext(
  [in] PVOID                   *PerFileContextPointer,
  [in] PFSRTL_PER_FILE_CONTEXT Ptr
);

パラメーター

[in] PerFileContextPointer

ファイル システム ランタイム ライブラリ (FSRTL) パッケージがファイル コンテキストを追跡するために使用する不透明なポインターへのポインター。 ファイル オブジェクトからこのポインターを取得するには、 FsRtlGetPerFileContextPointer マクロを使用します。

[in] Ptr

ドライバー固有のコンテキスト構造へのポインター。

戻り値

FsRtlInsertPerFileContext ルーチンは、STATUS_SUCCESS、または次のような適切なエラー コードを返します。

リターン コード 説明
STATUS_INVALID_DEVICE_REQUEST
基になるファイル システムでは、フィルター ファイル コンテキストはサポートされていません。 FsRtlSupportsPerFileContexts マクロを使用して、ファイル システムがファイル コンテキスト オブジェクトごとにサポートされているかどうかをチェックできます。
STATUS_INSUFFICIENT_RESOURCES
システムはリソース (通常はメモリ) を割り当てませんでした。

注釈

FsRtlGetPerFileContextPointer マクロは、開いている ファイルの FileContextSupportPointer を返します。

パラメーター

FileObject

FILE_OBJECT

ファイル オブジェクトへのポインター。

戻り値

PVOID

FsRtlGetPerFileContextPointer マクロは、ファイル システム ランタイム ライブラリ (FSRTL) パッケージがファイル コンテキストを追跡するために使用する不透明なポインターを返します。 ファイル システムがファイルを含むファイルごとのコンテキスト オブジェクトの使用をサポートしていない場合、マクロは NULL を 返します。

FsRtlGetPerFileContextPointer マクロは、FsRtlInsertPerFileContext、FsRtlLookupPerFileContext、FsRtlRemovePerFileContext などのルーチンに渡されるポインター返します。

コンテキスト オブジェクトを使用して作成する方法の詳細については、「 レガシ ファイル システム フィルター ドライバーでの Per-File コンテキストの追跡」を参照してください。

要件

要件
サポートされている最小のクライアント Windows Vista
対象プラットフォーム ユニバーサル
Header ntifs.h (FltKernel.h、Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL <=APC_LEVEL

こちらもご覧ください

FSRTL_PER_FILE_CONTEXT

FsRtlLookupPerFileContext

FsRtlRemovePerFileContext

レガシ ファイル システム フィルター ドライバーでの Per-File コンテキストの追跡