Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Správce filtrů poskytuje podporu, která umožňuje ovladačům minifiltru přidružit kontexty k objektům, aby zachoval stav napříč vstupně-výstupními operacemi. Mezi objekty, které můžou mít kontexty, patří soubory, svazky, instance, streamy, popisovače datových proudů a transakce. Podívejte se na O kontextech minifiltrů pro podrobnosti o implementaci minifiltru.
Systémy souborů třetích stran musí používat strukturu FSRTL_ADVANCED_FCB_HEADER (místo struktury FSRTL_COMMON_FCB_HEADER), aby správně fungovaly s kontexty datových proudů a kontexty manipulátoru datových proudů.
Kontexty lze přidělovat ze stránkovaného nebo nestránkového fondu s výjimkou kontextů svazků, které musí být přiděleny z nestránkového fondu.
Kontexty se uvolní automaticky, když byly uvolněny všechny nevyřízené odkazy. Pokud ovladač minifiltru definuje rutinu zpětného volání, správce filtru tuto rutinu zavolá před uvolněním kontextu.
Správce filtrů se postará o odstranění kontextů při odstranění přidruženého objektu, při odpojení instance a při uvolnění ovladače minifiltru.
Kontexty nejsou podporovány pro stránkovací soubory ani během následujících operací:
Předoperační zpracování žádostí o vytváření
Zpracování po uzavření žádostí
Zpracování požadavků IRP_MJ_NETWORK_QUERY_OPEN
Příklad ovladače minifiltru, který používá kontexty, najdete v ukázce CTX.
Správce filtrů podporuje rutiny správy kontextu.
Správce filtrů poskytuje mnoho rutin podpory kontextu pro minifiltry:
Vytváření a registrace kontextů:
- FltAllocateContext
- FltRegisterFilter
Kontexty nastavení:
Kontexty dotazování:
Získání a odkazování na kontexty:
- FltGetContexts
- FltGetContextsEx
- FltGetFileContext
- FltGetInstanceContext
- FltGetSectionContext
- FltGetStreamContext
- FltGetStreamHandleContext
- FltGetTransactionContext
- FltGetVolumeContext
- FltReferenceContext
Uvolnění a odstranění kontextů:
- FltDeleteContext
- FltDeleteFileContext
- FltDeleteInstanceContext
- FltDeleteStreamContext
- FltDeleteStreamHandleContext
- FltDeleteTransactionContext
- FltDeleteVolumeContext
- FltReleaseContext
- FltReleaseContexts
- FltReleaseContextsEx