Compartilhar via


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

A função ProtocolClDropPartyComplete é usada por clientes NDIS orientados à conexão que configuram conexões de vários pontos. Esses clientes devem ter funções ProtocolClDropPartyComplete para concluir as operações assíncronas que iniciam com

NdisClDropParty. Caso contrário, a função ProtocolClDropPartyComplete registrada do driver de protocolo pode simplesmente retornar o controle.

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

Sintaxe

PROTOCOL_CL_DROP_PARTY_COMPLETE ProtocolClDropPartyComplete;

void ProtocolClDropPartyComplete(
  [in] NDIS_STATUS Status,
  [in] NDIS_HANDLE ProtocolPartyContext
)
{...}

Parâmetros

[in] Status

Especifica o status final da operação suspensa iniciada pelo cliente, que pode ser uma das seguintes:

NDIS_STATUS_SUCCESS

A festa foi descartada. O NdisPartyHandle que representava essa parte, que o cliente armazenava em sua área ProtocolPartyContext , agora é inválido.

NDIS_STATUS_FAILURE

A parte especificada foi a última restante no VC de vários pontos do cliente. Portanto, o cliente deve chamar NdisClCloseCall para descartar essa parte.

[in] ProtocolPartyContext

Especifica o identificador para a área de contexto por parte do cliente, que o cliente originalmente forneceu ao NDIS quando chamou NdisClAddParty ou NdisClMakeCall.

Retornar valor

Nenhum

Comentários

Uma chamada para ProtocolClDropPartyComplete indica que o gerenciador de chamadas concluiu o processamento da solicitação iniciada pela chamada anterior do cliente para NdisClDropParty. ProtocolClDropPartyComplete pode liberar a área de contexto por parte alocada pelo cliente ou prepará-la para reutilização em uma chamada subsequente para NdisClAddParty.

Se o cliente estiver no processo de remover uma VC de vários pontos que ele criou, ProtocolClDropPartyComplete poderá chamar NdisClDropParty com qualquer NdisPartyHandle válido para uma das partes restantes no VC multipoint ativo do cliente. Se apenas mais uma parte permanecer em sua VC de vários pontos, o cliente deverá descartar essa parte passando seu NdisPartyHandle para NdisClCloseCall.

Exemplos

Para definir uma função ProtocolClDropPartyComplete , 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 ProtocolClDropPartyComplete chamada "MyClDropPartyComplete", use o tipo PROTOCOL_CL_DROP_PARTY_COMPLETE conforme mostrado neste exemplo de código:

PROTOCOL_CL_DROP_PARTY_COMPLETE MyClDropPartyComplete;

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

_Use_decl_annotations_
VOID
 MyClDropPartyComplete(
    NDIS_STATUS  Status,
    NDIS_HANDLE  ProtocolPartyContext
    )
  {...}

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

Confira também

NdisClAddParty

NdisClCloseCall

NdisClDropParty

NdisClMakeCall

NdisCmDropPartyComplete

NdisFreeMemory

NdisFreeToNPagedLookasideList

NdisMCmDropPartyComplete

ProtocolCmDropParty