FltGetContexts-Funktion (fltkernel.h)
Die FltGetContexts-Routine ruft die Kontexte eines Minifiltertreibers für die Objekte im Zusammenhang mit dem aktuellen Vorgang ab.
Syntax
VOID FLTAPI FltGetContexts(
PCFLT_RELATED_OBJECTS FltObjects,
FLT_CONTEXT_TYPE DesiredContexts,
PFLT_RELATED_CONTEXTS Contexts
);
Parameter
FltObjects
[in] Zeiger auf eine FLT_RELATED_OBJECTS-Struktur , die undurchsichtige Zeiger für die Objekte enthält, die sich auf den aktuellen Vorgang beziehen. Weitere Informationen zu diesem Parameter finden Sie im Abschnitt Hinweise.
DesiredContexts
[in] Gibt die abzurufenden Kontexttypen an. Dieser Parameter kann ein bitweiser OR der folgenden Werte sein.
Konstante | Wert |
---|---|
FLT_VOLUME_CONTEXT | 0x0001 |
FLT_INSTANCE_CONTEXT | 0x0002 |
FLT_FILE_CONTEXT | 0x0004 |
FLT_STREAM_CONTEXT | 0x0008 |
FLT_STREAMHANDLE_CONTEXT | 0x0010 |
FLT_TRANSACTION_CONTEXT | 0x0020 |
FLT_SECTION_CONTEXT (ab Windows 8) | 020040 |
FLT_ALL_CONTEXTS | Bitweises OR aller Kontextwerte |
Contexts
[out] Zeiger auf eine vom Aufrufer zugewiesene FLT_RELATED_CONTEXTS Struktur, die die angeforderten Kontexte empfängt. Dieser Parameter ist erforderlich und kann nicht auf NULL festgelegt werden. FltMgr legt einen Strukturmember auf 0 (null) für Folgendes fest:
- Kontexte, die der Aufrufer nicht angefordert hat.
- Kontexte, die vom Aufrufer angefordert wurden, FltMgr jedoch nicht finden konnte.
Rückgabewert
Keine.
Hinweise
Weitere Informationen zu Kontexten finden Sie unter Informationen zu Minifilterkontexten.
Ein Minifiltertreiber ruft FltGetContexts auf, um Zeiger auf die Kontexte des Minifiltertreibers für die Objekte in einer FLT_RELATED_OBJECTS-Struktur abzurufen.
Die folgenden Minifiltertreiber-Rückrufroutinentypen erhalten einen Zeiger auf eine FLT_RELATED_OBJECTS-Struktur als FltObjects-Eingabeparameter :
- PFLT_PRE_OPERATION_CALLBACK
- PFLT_POST_OPERATION_CALLBACK
- PFLT_INSTANCE_SETUP_CALLBACK
- PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK
- PFLT_INSTANCE_TEARDOWN_CALLBACK
FltGetContexts inkrementiert die Verweisanzahl für jeden der Kontexte, die in der FLT_RELATED_CONTEXTS-Struktur zurückgegeben werden, auf die der Contexts-Parameter verweist. Daher muss der Aufrufer für jeden erfolgreichen Aufruf von FltGetContexts entweder:
- Rufen Sie FltReleaseContexts für die gesamte Struktur auf, auf die der Contexts-Parameter zeigt.
- Rufen Sie FltReleaseContext für jeden der in der -Struktur zurückgegebenen Kontexte auf, und legen Sie jedes in der -Struktur zurückgegebene Kontextfeld auf Null fest.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | fltkernel.h (fltkernel.h einschließen) |
Bibliothek | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |
Weitere Informationen
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK