次の方法で共有


FltGetTransactionContext 関数 (fltkernel.h)

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

構文

NTSTATUS FLTAPI FltGetTransactionContext(
  [in]  PFLT_INSTANCE Instance,
  [in]  PKTRANSACTION Transaction,
  [out] PFLT_CONTEXT  *Context
);

パラメーター

[in] Instance

呼び出し元の不透明なインスタンス ポインター。

[in] Transaction

コンテキストが取得されるトランザクションの不透明なトランザクション ポインター。

[out] Context

トランザクション コンテキストのアドレスを受け取る呼び出し元によって割り当てられた変数へのポインター。

戻り値

FltGetTransactionContext は 、次のようなSTATUS_SUCCESSまたは適切な NTSTATUS 値を返します。

リターン コード 説明
STATUS_NOT_FOUND 一致するコンテキストが見つかりませんでした。 これはエラー コードです。

注釈

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

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

トランザクションのコンテキストを設定するには、 FltSetTransactionContext を呼び出します。

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

トランザクション コンテキストを削除するには、 FltDeleteTransactionContext または FltDeleteContext を呼び出します。

要件

要件
対象プラットフォーム ユニバーサル
Header fltkernel.h (Fltkernel.h を含む)
Library FltMgr.lib
[DLL] FltMgr.sys
IRQL <= APC_LEVEL

こちらもご覧ください

FltAllocateContext

FltCommitComplete

FltDeleteContext

FltDeleteTransactionContext

FltEnlistInTransaction

FltPrePrepareComplete

FltPrepareComplete

FltReleaseContext

FltRollbackComplete

FltRollbackEnlistment

FltSetTransactionContext