Compartilhar via


NdisIMRegisterLayeredMiniport

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Essa função registra um intermediário do driver MiniportaXXX entrada pontos e o nome com a biblioteca NDIS quando o driver é inicializado.

Syntax

NDIS_STATUS NdisIMRegisterLayeredMiniport(
  NDIS_HANDLE NdisWrapperHandle,
  PNDIS_MINIPORT_CHARACTERISTICS MiniportCharacteristics,
  UINT CharacteristicsLength,
  PNDIS_HANDLE DriverHandle
);

Parameters

  • CharacteristicsLength
    [no] Especifica o comprimento em bytes de reserva de características Caller-supplied. Depending on o valor de MajorNdisVersion, esse parâmetro deve ser *sizeof(NDIS50_MINIPORT_CHARACTERISTICS)*Se o driver fornece uma NDIS50_MINIPORT_CHARACTERISTICS estrutura ou *sizeof(NDIS40_MINIPORT_CHARACTERISTICS)*Se o driver fornece uma NDIS_MINIPORT_CHARACTERISTICS estrutura.

    Se o driver inclui a instrução compilar NDIS50_MINIPORT ou NDIS40_MINIPORT, como apropriado, em suas fontes ou se o gravador driver usa as opção de compilador NDIS50_MINIPORT ou NDIS40_MINIPORT, este parâmetro é definido quando o driver é compilado.

  • DriverHandle
    [out] Aponta para uma variável no qual NdisIMRegisterLayeredMiniport, se for esse chamar bem-sucedido, retorna um identificador que o chamador deve salvar. O chamador subseqüentemente deve transmitir este identificador para NdisIMInitializeDeviceInstance, geralmente de seu ProtocolBindAdapter função.

Return Value

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

Valor Descrição

NDIS_STATUS_SUCCESS

NDIS registrado o chamador como uma miniporta.

NDIS_STATUS_BAD_CHARACTERISTICS

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

NDIS_STATUS_BAD_VERSION

O MajorNdisVersion Ou MinorNdisVersion especificado nas características estrutura é inválido.

NDIS_STATUS_RESOURCES

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

NDIS_STATUS_FAILURE

Este é um status de erro usar como padrão, retornado quando nenhuma da acima erros causou o registro falhe. De exemplo, se a biblioteca NDIS não pode carregar da o driver imagem e bloqueio-lo no sistema memória, ele retorna este erro.

Remarks

Qualquer intermediário NDIS driver que exporta ambos MiniportaXXX e ProtocoloXXX funções configura uma estrutura características e chamadas NdisIMRegisterLayeredMiniport do seu DriverEntry função após DriverEntry Chamadas NdisMInitializeWrapper. Essa estrutura é copiada na NdisIMRegisterLayeredMiniport solicitação para armazenamento interno da biblioteca de NDIS. Portanto, depois que ele tenha registrado, tal um driver não é possível alteração suas funções manipulador.

Após tal um intermediário NDIS driver foi chamado NdisIMRegisterLayeredMiniport com êxito, ele deve chamar NdisRegisterProtocol Para registrar seu ProtocoloXXX funções com a biblioteca NDIS. Tal um driver normalmente tem dois ProtocolBindAdapter e ProtocolUnbindAdapter funções. Seu ProtocolBindAdapter função será chamado próximo quando o subjacente NIC driver foi inicializado com êxito. ProtocolBindAdapter Em seguida, pode estabelecer uma ligação para esse driver NIC com NdisOpenAdapter.

Um intermediário NDIS driver deve ter um MiniportSendPackets função se um subjacente driver NIC talvez suporte multipacket envia ou consumir informações Media-specific, such as prioridades pacote, enviado para baixo em uma matriz pacote de um protocolo de nível superior. Um intermediário NDIS driver deve ter um MiniportReturnPacket função se um subjacente driver NIC pode multipacket suporte receber indicações ou indicar matrizes pacote contendo informações Media-specific. A biblioteca NDIS manipula matrizes pacote transferidos entre um subjacente driver NIC e protocolo de nível mais alto que suporte somente único - pacote transfere on Behalf Of tal um intermediário driver.

Requirements

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

See Also

Reference

DriverEntry
MiniportCancelSendPackets
MiniportCheckForHang
MiniportHalt
MiniportInitialize
MiniportQueryInformation
MiniportReset
MiniportReturnPacket
MiniportReturnPacket
MiniportSend
MiniportSendPackets
MiniportSetInformation
MiniportShutdown
MiniportTransferData
MiniportWanSend
NdisIMInitializeDeviceInstance
NdisMInitializeWrapper
NdisMRegisterAdapterShutdownHandler
NdisOpenAdapter
NdisRegisterProtocol
ProtocolBindAdapter
ProtocolUnbindAdapter