Функция FltDeleteTransactionContext (fltkernel.h)
Подпрограмма FltDeleteTransactionContext удаляет контекст из данной транзакции и помечает контекст для удаления.
NTSTATUS FLTAPI FltDeleteTransactionContext(
[in] PFLT_INSTANCE Instance,
[in] PKTRANSACTION Transaction,
[out, optional] PFLT_CONTEXT *OldContext
);
[in] Instance
Указатель непрозрачного экземпляра для вызывающего объекта.
[in] Transaction
Непрозрачный указатель транзакции для транзакции, контекст которой удаляется.
[out, optional] OldContext
Указатель на выделенную вызывающим переменную, которая получает адрес удаленного контекста. Этот параметр является необязательным и может быть null. Если OldContext не NULL и не указывает на NULL_CONTEXT, вызывающий объект отвечает за вызов FltReleaseContext, чтобы освободить этот контекст, если он больше не нужен.
FltDeleteTransactionContext возвращает STATUS_SUCCESS или соответствующее значение NTSTATUS, например следующее:
Возвращаемый код | Описание |
---|---|
STATUS_FLT_DELETING_OBJECT | Указанный экземпляр выполняется отключается. Это код ошибки. |
STATUS_NOT_FOUND | Контекст сопоставления не найден. Это код ошибки. |
Дополнительные сведения о контекстах см. в разделе О контекстах минифильтра.
Так как контексты считаются ссылочными, обычно не требуется для вызова подпрограммы, такой как FltDeleteTransactionContext для явного удаления контекста.
Драйвер мини-фильтра вызывает FltDeleteTransactionContext, чтобы удалить контекст из транзакции и пометить контекст для удаления. Контекст обычно освобождается немедленно, если в нем нет выдающейся ссылки (например, поскольку контекст по-прежнему используется другим потоком).
Чтобы выделить новый контекст, вызовите FltAllocateContext.
Чтобы получить контекст транзакции, вызовите FltGetTransactionContext.
Чтобы задать контекст транзакции, вызовите FltSetTransactionContext.
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista и более поздние версии |
целевая платформа | Всеобщий |
заголовка | fltkernel.h (include Fltkernel.h) |
библиотеки | FltMgr.lib |
IRQL | <= APC_LEVEL |