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

A função MiniportCoDeactivateVc é necessária para miniportos orientados à conexão. MiniportCoDeactivateVc é chamado pelo NDIS para indicar que uma VC está sendo marcada como inutilizável.

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

Sintaxe

MINIPORT_CO_DEACTIVATE_VC MiniportCoDeactivateVc;

NDIS_STATUS MiniportCoDeactivateVc(
  [in] NDIS_HANDLE MiniportVcContext
)
{...}

Parâmetros

[in] MiniportVcContext

Especificado o identificador para uma área de contexto alocada pelo driver de miniporto na qual o driver de miniporto mantém informações de estado por VC. O driver de miniporto forneceu esse identificador para o NDIS de sua função MiniportCoCreateVc .

Retornar valor

Código de retorno Descrição
NDIS_STATUS_SUCCESS
Indica que o driver de miniporta interrompeu com êxito qualquer comunicação na VC e a marcou como inutilizável.
NDIS_STATUS_PENDING
Indica que o driver de miniporto concluirá a solicitação para interromper a VC de forma assíncrona. Quando o driver de miniporto tiver concluído a interrupção da VC, ele deverá chamar NdisMCoDeactivateVcComplete para sinalizar ao NDIS que essa operação foi concluída.

Comentários

MiniportCoDeactivateVc comunica-se com seu adaptador de rede para encerrar toda a comunicação por essa VC (em outras palavras, desprogramar buffers de recebimento ou envio no adaptador). O driver de miniporta também deve marcar a VC, sua área de contexto, como inativa para evitar qualquer comunicação adicional na VC.

Não há uma relação um-para-um entre chamadas para MiniportCoActivateVc e MiniportCoDeactivateVc. Embora o NDIS possa chamar MiniportCoActivateVc várias vezes em uma única VC, apenas uma chamada para MiniportCoDeactivateVc é feita para desligar uma conexão virtual. Por exemplo, uma VC pode ser reutilizado para chamadas diferentes, possivelmente causando várias chamadas para MiniportCoActivateVc.

Exemplos

Para definir uma função MiniportCoDeactivateVc , 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 escrever drivers para o sistema operacional Windows.

Por exemplo, para definir uma função MiniportCoDeactivateVc chamada "MyCoDeactivateVc", use o tipo MINIPORT_CO_DEACTIVATE_VC conforme mostrado neste exemplo de código:

MINIPORT_CO_DEACTIVATE_VC MyCoDeactivateVc;

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

_Use_decl_annotations_
NDIS_STATUS
 MyCoDeactivateVc(
    NDIS_HANDLE  MiniportVcContext
    )
  {...}

O tipo de função MINIPORT_CO_DEACTIVATE_VC é 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 MINIPORT_CO_DEACTIVATE_VC 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 para drivers NDIS 6.0 e NDIS 5.1 (consulte MiniportCoDeactivateVc (NDIS 5.1)) no Windows Vista. Com suporte para drivers NDIS 5.1 (consulte MiniportCoDeactivateVc (NDIS 5.1)) no Windows XP.
Plataforma de Destino Windows
Cabeçalho ndis.h (inclua Ndis.h)
IRQL <= DISPATCH_LEVEL

Confira também

MiniportCoActivateVc

NdisMCoDeactivateVcComplete