次の方法で共有


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 マクロは、FsRtlInsertPerFileContextFsRtlLookupPerFileContextFsRtlRemovePerFileContextなどのルーチンに渡されるポインターを返します。

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

必要条件

要件 価値
サポートされる最小クライアント Windows Vista
ターゲット プラットフォーム の 万国
ヘッダー ntifs.h (FltKernel.h、Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=APC_LEVEL

関連項目

FSRTL_PER_FILE_CONTEXT

FsRtlLookupPerFileContext

FsRtlRemovePerFileContext

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