Функция 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 (включая Fltkernel.h) |
Библиотека | FltMgr.lib |
DLL | FltMgr.sys |
IRQL | <= APC_LEVEL |