Compartilhar via


função de retorno de chamada FILTER_DETACH (ndis.h)

O NDIS chama a função FilterDetach de um driver de filtro para liberar todos os recursos associados a um módulo de filtro.

Nota Você deve declarar a função usando o tipo FILTER_DETACH . Para obter mais informações, consulte a seção Exemplos a seguir.
 

Sintaxe

FILTER_DETACH FilterDetach;

void FilterDetach(
  [in] NDIS_HANDLE FilterModuleContext
)
{...}

Parâmetros

[in] FilterModuleContext

Um identificador para a área de contexto do módulo de filtro que o NDIS removerá da pilha do driver. O driver de filtro criou e inicializou essa área de contexto na função FilterAttach .

Retornar valor

Nenhum

Comentários

FilterDetach é uma função necessária. O NDIS chama FilterDetach para remover um módulo de filtro de uma pilha de driver. O NDIS chama FilterDetach quando o módulo de filtro está no estado Pausado .

FilterDetach libera as áreas de contexto do driver e outros recursos (como pools de buffers) para o módulo de filtro afetado.

Depois que o driver de filtro retorna de FilterDetach, o módulo de filtro está no estado Desanexado .

Chamadas NDIS FilterDetach em IRQL = PASSIVE_LEVEL.

Exemplos

Para definir uma função FilterDetach , primeiro você deve fornecer uma declaração de função que identifique o tipo de função que você está definindo. O Windows fornece um conjunto de tipos de função para drivers. Declarar uma função usando os tipos de função ajuda a Análise de Código para Drivers, SDV ( Verificador de Driver Estático ) e outras ferramentas de verificação a encontrar erros e é um requisito para gravar drivers para o sistema operacional Windows.

Por exemplo, para definir uma função FilterDetach chamada "MyDetach", use o tipo FILTER_DETACH conforme mostrado neste exemplo de código:

FILTER_DETACH MyDetach;

Em seguida, implemente sua função da seguinte maneira:

_Use_decl_annotations_
VOID
 MyDetach(
    NDIS_HANDLE  FilterModuleContext
    )
  {...}

O tipo de função FILTER_DETACH é definido no arquivo de cabeçalho Ndis.h. Para identificar erros com mais precisão ao executar as ferramentas de análise de código, adicione a anotação Use_decl_annotations à sua definição de função. A anotação Use_decl_annotations garante que as anotações aplicadas ao tipo de função FILTER_DETACH no arquivo de cabeçalho sejam usadas. Para obter mais informações sobre os requisitos para declarações de função, consulte Declarando funções usando tipos de função de função para drivers NDIS.

Para obter informações sobre Use_decl_annotations, consulte Anotando o comportamento da função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte no NDIS 6.0 e posterior.
Plataforma de Destino Windows
Cabeçalho ndis.h (inclua Ndis.h)
IRQL PASSIVE_LEVEL

Confira também

FilterAttach