Função FltGetFilterFromInstance (fltkernel.h)

A rotina FltGetFilterFromInstance retorna um ponteiro de filtro opaco para o driver de minifiltro que criou a instância fornecida.

Sintaxe

NTSTATUS FLTAPI FltGetFilterFromInstance(
  [in]  PFLT_INSTANCE Instance,
  [out] PFLT_FILTER   *RetFilter
);

Parâmetros

[in] Instance

Ponteiro de instância opaco para a instância.

[out] RetFilter

Ponteiro para uma variável alocada pelo chamador que recebe um ponteiro de filtro opaco para o driver de minifiltro. Esse parâmetro é necessário e não pode ser NULL.

Retornar valor

FltGetFilterFromInstance retorna STATUS_SUCCESS ou um valor NTSTATUS apropriado, como o seguinte:

Código de retorno Descrição
STATUS_FLT_DELETING_OBJECT
O motorista do minifiltro está sendo destruído. Este é um código de erro.

Comentários

FltGetFilterFromInstance adiciona uma referência de rundown ao ponteiro de filtro opaco retornado no parâmetro RetFilter . Quando esse ponteiro não for mais necessário, o chamador deverá liberá-lo chamando FltObjectDereference. Portanto, cada chamada bem-sucedida para FltGetFilterFromInstance deve ser correspondida por uma chamada subsequente para FltObjectDereference.

Para obter um ponteiro de volume opaco para o volume ao qual uma determinada instância de driver de minifiltro está anexada, chame FltGetVolumeFromInstance.

Para enumerar todas as instâncias de um determinado driver de minifiltro, chame FltEnumerateInstanceInformationByFilter.

Para enumerar instâncias de todos os drivers de minifiltro em todos os volumes, chame FltEnumerateInstances.

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

FltEnumerateInstanceInformationByFilter

FltEnumerateInstances

FltGetVolumeFromInstance

FltObjectDereference