Compartilhar via


NdisRegisterProtocol

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Essa função registra de um driver NDIS Protocolo_ * entrada pontos e o nome com a biblioteca NDIS quando o driver é inicializado.

Syntax

VOID NdisRegisterProtocol(
  PNDIS_STATUS Status,
  PNDIS_HANDLE NdisProtocolHandle,
  PNDIS_PROTOCOL_CHARACTERISTICS ProtocolCharacteristics,
  UINT CharacteristicsLength
);

Parameters

  • Status
    [out] Ponteiro para uma variável Caller-supplied que fornece o status da tentativa de registro.
  • NdisProtocolHandle
    [out] Ponteiro para uma variável Caller-supplied no qual essa função retorna um identificador que representa o driver registrado.
  • ProtocolCharacteristics
    [no] Ponteiro para um NDIS_PROTOCOL_CHARACTERISTICS estrutura configurar, o chamador.
  • CharacteristicsLength
    [no] Especifica o tamanho, em bytes, da estrutura em ProtocolCharacteristics. Se a diretiva compilar NDIS40 for especificada nas origens abaixo do previsto # include NDIS.h, esse valor é fornecida automaticamente.

Return Value

A seguinte tabela mostra os valores de retorno para esta função.

Valor Descrição

NDIS_STATUS_SUCCESS

A biblioteca NDIS registrado o chamador como um driver protocolo.

NDIS_STATUS_BAD_CHARACTERISTICS

O CharacteristicsLength é muito pequeno para o MajorNdisVersion especificado na reserva em ProtocolCharacteristics.

NDIS_STATUS_BAD_VERSION

O MajorNdisVersion especificado na reserva em ProtocolCharacteristics é inválido.

NDIS_STATUS_RESOURCES

Uma falta de recursos, possivelmente memória, impediu a biblioteca NDIS registrando o chamador.

Remarks

O valor fornecido no CharacteristicsLength deve ser pelo menos o sizeof(NDISXXX_PROTOCOL_CHARACTERISTICS) designado pelo fornecido MajorNdisVersion nessa estrutura.

Para melhor desempenho, um protocolo que camadas acima próprio recebe um driver NIC que ofereça suporte a multipacket deve fornecer um ProtocolReceivePacket função. Um driver NIC que envia multipacket oferece suporte também é provável que indicam multipacket recebe. Um driver que fornece uma ProtocolReceivePacket função também deve fornecer um ProtocolReceive função.

Após um bem-sucedido chamar para esta função, um driver não é possível alterar o conjunto de ProtocoloXXX funções que ele fornecido.

Um driver registrado com êxito salva o identificador retornado no NdisProtocolHandle. Outras funções NDIS que o driver chama subseqüentemente exigem esse parâmetro.

Após um bem-sucedido chamar para esta função, o driver pode chamar o NdisOpenAdapter função para configurar uma ligação para o subjacente driver NIC ou a camada própria acima qualquer driver NDIS que registrou um conjunto de NDIS (upper-EdgeMiniportaXXX) funções.

Requirements

Header ndis.h
Windows Embedded CE Windows CE .NET 4.0 and later

See Also

Reference

NdisDeregisterProtocol
NdisInitializeString
NdisInitUnicodeString
NdisOpenAdapter
NdisZeroMemory
ProtocolReceivePacket
ProtocolReceive