Прочитать на английском

Поделиться через


Функция 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.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка fltkernel.h (include Fltkernel.h)
библиотеки FltMgr.lib
DLL FltMgr.sys
IRQL <= APC_LEVEL

См. также

FltAllocateContext

FltCommitComplete

FltDeleteContext

FltDeleteTransactionContext

FltEnlistInTransaction

FltPrepareComplete

FltPrepareComplete

FltReleaseContext

FltRollbackComplete

FltRollbackEnlistment

FltSetTransactionContext