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(
  [in]  PCFLT_RELATED_OBJECTS FltObjects,
  [in]  FLT_CONTEXT_TYPE      DesiredContexts,
  [out] PFLT_RELATED_CONTEXTS Contexts
);

Parâmetros

[in] FltObjects

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.

[in] DesiredContexts

Tipo de contextos a serem recuperados. Esse parâmetro pode ter um ou mais dos seguintes valores:

  • FLT_ALL_CONTEXTS
  • FLT_FILE_CONTEXT (Windows Vista e somente posterior)
  • FLT_INSTANCE_CONTEXT
  • FLT_STREAM_CONTEXT
  • FLT_STREAMHANDLE_CONTEXT
  • FLT_TRANSACTION_CONTEXT (Windows Vista e somente posterior)
  • FLT_VOLUME_CONTEXT

[out] Contexts

Ponteiro para uma estrutura de FLT_RELATED_CONTEXTS alocada por chamador que recebe os contextos solicitados. Os contextos que não são solicitados ou solicitados, mas não encontrados, são definidos como zero.

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 do driver de minifiltro recebem um ponteiro para uma estrutura FLT_RELATED_OBJECTS como o parâmetro de entrada FltObjects :

FltGetContexts incrementa a contagem de referência em cada um dos contextos retornados na estrutura FLT_RELATED_CONTEXTS à qual o parâmetro Contexts aponta. Portanto, para cada chamada bem-sucedida para FltGetContexts, o chamador deve:

  • Chame FltReleaseContexts para toda a estrutura à 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

   
Plataforma de Destino Universal
Cabeçalho fltkernel.h (include Fltkernel.h)
Biblioteca FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

Confira também

FLT_RELATED_CONTEXTS

FLT_RELATED_OBJECTS

FltRegisterFilter

FltReleaseContext

FltReleaseContexts

PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK

PFLT_INSTANCE_SETUP_CALLBACK

PFLT_INSTANCE_TEARDOWN_CALLBACK

PFLT_POST_OPERATION_CALLBACK

PFLT_PRE_OPERATION_CALLBACK