FltDeleteInstanceContext-Funktion (fltkernel.h)
FltDeleteInstanceContext entfernt einen Kontext aus einem bestimmten instance und markiert den Kontext zum Löschen.
Syntax
NTSTATUS FLTAPI FltDeleteInstanceContext(
[in] PFLT_INSTANCE Instance,
[out] PFLT_CONTEXT *OldContext
);
Parameter
[in] Instance
Undurchsichtiger instance Zeiger für die instance.
[out] OldContext
Zeiger auf eine vom Aufrufer zugeordnete 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 zeigt, ist der Aufrufer für den Aufruf von FltReleaseContext verantwortlich, um diesen Kontext freizugeben, wenn er nicht mehr benötigt wird.
Rückgabewert
FltDeleteInstanceContext gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-Wert zurück, z. B. einen der folgenden:
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 in der Regel nicht erforderlich, dass ein Minifiltertreiber eine Routine wie FltDeleteInstanceContext aufruft , um einen Kontext explizit zu löschen.
Ein Minifiltertreiber ruft FltDeleteInstanceContext auf, um einen Kontext aus einem instance zu entfernen und den Kontext zum Löschen zu markieren. Der Kontext wird in der Regel sofort freigegeben, es sei denn, es gibt einen ausstehenden Verweis darauf (z. B. weil der Kontext noch von einem anderen Thread verwendet wird).
Um einen neuen Kontext zuzuordnen, rufen Sie FltAllocateContext auf.
Um einen instance Kontext abzurufen, rufen Sie FltGetInstanceContext auf.
Um einen instance Kontext festzulegen, rufen Sie FltSetInstanceContext auf.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | fltkernel.h (fltkernel.h einschließen) |
Bibliothek | FltMgr.lib |
IRQL | <= APC_LEVEL |