FltDeleteTransactionContext-Funktion (fltkernel.h)
Die FltDeleteTransactionContext-Routine entfernt einen Kontext aus einer bestimmten Transaktion und markiert den Kontext zum Löschen.
Syntax
NTSTATUS FLTAPI FltDeleteTransactionContext(
[in] PFLT_INSTANCE Instance,
[in] PKTRANSACTION Transaction,
[out, optional] PFLT_CONTEXT *OldContext
);
Parameter
[in] Instance
Undurchsichtiger instance Zeiger für den Aufrufer.
[in] Transaction
Undurchsichtiger Transaktionszeiger für die Transaktion, deren Kontext gelöscht wird.
[out, optional] OldContext
Zeiger auf eine vom Aufrufer zugewiesene Variable, die die Adresse des gelöschten Kontexts empfängt. Dieser Parameter ist optional und kann NULL sein. Wenn OldContext nicht NULL ist und nicht auf NULL_CONTEXT verweist, ist der Aufrufer für den Aufruf von FltReleaseContext verantwortlich, um diesen Kontext zu freigeben, wenn er nicht mehr benötigt wird.
Rückgabewert
FltDeleteTransactionContext gibt STATUS_SUCCESS oder einen entsprechenden NTSTATUS-Wert wie den folgenden zurück:
Rückgabecode | Beschreibung |
---|---|
STATUS_FLT_DELETING_OBJECT | Die angegebene Instanz wird abgerissen. Dies ist ein Fehlercode. |
STATUS_NOT_FOUND | Es wurde kein übereinstimmenden Kontext gefunden. Dies ist ein Fehlercode. |
Hinweise
Weitere Informationen zu Kontexten finden Sie unter Informationen zu Minifilterkontexten.
Da Kontexte referenzgezählt werden, ist es normalerweise nicht erforderlich, dass ein Minifiltertreiber eine Routine wie FltDeleteTransactionContext aufruft , um einen Kontext explizit zu löschen.
Ein Minifiltertreiber ruft FltDeleteTransactionContext auf, um einen Kontext aus einer Transaktion zu entfernen und den Kontext zum Löschen zu markieren. Der Kontext wird normalerweise sofort freigegeben, es sei denn, es gibt einen ausstehenden Verweis darauf (z. B. weil der Kontext weiterhin von einem anderen Thread verwendet wird).
Um einen neuen Kontext zuzuordnen, rufen Sie FltAllocateContext auf.
Um einen Transaktionskontext abzurufen, rufen Sie FltGetTransactionContext auf.
Um einen Transaktionskontext festzulegen, rufen Sie FltSetTransactionContext auf.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista und höher |
Zielplattform | Universell |
Header | fltkernel.h (include Fltkernel.h) |
Bibliothek | FltMgr.lib |
IRQL | <= APC_LEVEL |