次の方法で共有


FltGetFileContext 関数 (fltkernel.h)

fltGetFileContext ルーチン は、特定のミニフィルター ドライバー インスタンスによってファイルに設定されたコンテキストを取得します。

構文

NTSTATUS FLTAPI FltGetFileContext(
  [in]  PFLT_INSTANCE Instance,
  [in]  PFILE_OBJECT  FileObject,
  [out] PFLT_CONTEXT  *Context
);

パラメーター

[in] Instance

呼び出し元の不透明なインスタンス ポインター。 このパラメーターは必須であり、NULL することはできません。

[in] FileObject

ファイルのファイル オブジェクト ポインター。 このパラメーターは必須であり、NULL することはできません。

[out] Context

コンテキストのアドレスを受け取る呼び出し元によって割り当てられた変数へのポインター。 このパラメーターは必須であり、NULL に設定することはできません。

戻り値

FltGetFileContext 、要求されたファイル コンテキストが正常に返されたときにSTATUS_SUCCESSを返します。 それ以外の場合は、次のいずれかの適切な NTSTATUS 値を返します。

リターン コード 形容
STATUS_NOT_FOUND 現時点では、このファイルに一致するコンテキストが見つからなかったため、FltMgr コンテキスト NULL_CONTEXTに設定。 これはエラー コードです。
STATUS_NOT_SUPPORTED このファイルでは、ファイル コンテキストはサポートされていません。 これはエラー コードです。

備考

コンテキストの詳細については、「ミニフィルター コンテキストについて」を参照してください。

ミニフィルター ドライバーは、FltGetFileContext 呼び出して、特定のファイルに対して設定されたファイル コンテキストを取得します。

FltGetFileContext Context パラメーターが指すコンテキストの参照カウントがインクリメントされます。 このコンテキスト ポインターが不要になった場合、呼び出し元は FltReleaseContext呼び出すことによって、その参照カウントをデクリメントする必要があります。 したがって、FltGetFileContext 正常に呼び出されるたびに、FltReleaseContext への後続の呼び出し照合する必要があります。

ファイル コンテキストを設定するには、FltSetFileContext呼び出します。

新しいコンテキストを割り当てるには、FltAllocateContext呼び出します。

ファイル コンテキストを削除するには、FltDeleteFileContext呼び出すか、FltDeleteContextします。

特定のファイルに対してファイル コンテキストがサポートされているかどうかを確認するには、FltSupportsFileContexts呼び出すか、FltSupportsFileContextsEx呼び出します。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista
ターゲット プラットフォーム 万国
ヘッダー fltkernel.h (Fltkernel.h を含む)
ライブラリ FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

関連項目

FLT_CONTEXT_REGISTRATION

FltAllocateContext

FltDeleteContext

FltDeleteFileContext

FltReleaseContext

FltSetFileContext

FltSupportsFileContexts

FltSupportsFileContextsEx