Função FltGetContexts (fltkernel.h)
A rotina FltGetContexts recupera os contextos de um driver de minifiltro para os objetos relacionados à operação atual.
Sintaxe
VOID FLTAPI FltGetContexts(
PCFLT_RELATED_OBJECTS FltObjects,
FLT_CONTEXT_TYPE DesiredContexts,
PFLT_RELATED_CONTEXTS Contexts
);
Parâmetros
FltObjects
[in] Ponteiro para uma estrutura FLT_RELATED_OBJECTS que contém ponteiros opacos para os objetos relacionados à operação atual. Para obter mais informações sobre esse parâmetro, consulte a seção Comentários.
DesiredContexts
[in] Identifica os tipos de contextos a serem recuperados. Esse parâmetro pode ser um OR bit a bit dos valores a seguir.
Constante | Valor |
---|---|
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 (começando no Windows 8) | 020040 |
FLT_ALL_CONTEXTS | OR bit a bit de todos os valores de contexto |
Contexts
[out] Ponteiro para uma estrutura de FLT_RELATED_CONTEXTS alocada pelo chamador que recebe os contextos solicitados. Esse parâmetro é necessário e não pode ser definido como NULL. FltMgr define um membro da estrutura como zero para:
- Contextos que o chamador não solicitou.
- Contextos que o chamador solicitou, mas FltMgr não pôde localizar.
Valor retornado
Nenhum.
Comentários
Para obter mais informações sobre contextos, consulte Sobre contextos de minifiltro.
Um driver de minifiltro chama FltGetContexts para recuperar ponteiros para os contextos do driver de minifiltro para os objetos em uma estrutura FLT_RELATED_OBJECTS .
Os seguintes tipos de rotina de retorno de chamada de driver de minifiltro recebem um ponteiro para uma estrutura FLT_RELATED_OBJECTS como o parâmetro de entrada FltObjects :
- PFLT_PRE_OPERATION_CALLBACK
- PFLT_POST_OPERATION_CALLBACK
- PFLT_INSTANCE_SETUP_CALLBACK
- PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK
- PFLT_INSTANCE_TEARDOWN_CALLBACK
FltGetContexts incrementa a contagem de referência em cada um dos contextos retornados na estrutura FLT_RELATED_CONTEXTS para a qual o parâmetro Contexts aponta. Portanto, para cada chamada bem-sucedida para FltGetContexts, o chamador deve:
- Chame FltReleaseContexts para toda a estrutura para a qual o parâmetro Contexts aponta.
- Chame FltReleaseContext para cada um dos contextos retornados na estrutura e defina cada campo de contexto retornado na estrutura como zero.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Cabeçalho | fltkernel.h (inclua Fltkernel.h) |
Biblioteca | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |
Confira também
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK