Compartir a través de


Función NdisMAllocatePort (ndis.h)

La función NdisMAllocatePort asigna un puerto NDIS asociado a un adaptador de miniport.

Sintaxis

NDIS_STATUS NdisMAllocatePort(
            NDIS_HANDLE                NdisMiniportHandle,
  [in, out] PNDIS_PORT_CHARACTERISTICS PortCharacteristics
);

Parámetros

NdisMiniportHandle

Identificador del adaptador de miniporte que NDIS pasó al parámetro MiniportAdapterHand le del parámetro de la función miniportInitializeEx.

[in, out] PortCharacteristics

Puntero a un NDIS_PORT_CHARACTERISTICS estructura que define las características del puerto.

Valor devuelto

NdisMAllocatePort puede devolver uno de los siguientes valores:

Código devuelto Descripción
NDIS_STATUS_SUCCESS
NDIS asignó correctamente recursos para el puerto.
NDIS_STATUS_RESOURCES
NDIS no pudo asignar recursos para el puerto.
NDIS_STATUS_CLOSING
Error en la asignación de puertos porque el adaptador de miniporte asociado se está cerrando.
NDIS_STATUS_INVALID_DATA
Los datos proporcionados en el PortCharacteristics parámetro no eran válidos.

Observaciones

La función NdisMAllocatePort asigna recursos y un número de puerto para un puerto asociado a un adaptador de miniport. El puerto no está activo hasta que el controlador de miniporte emite un evento NetEventPortActivation Plug and Play (PnP) para el puerto.

Una vez que el controlador de miniporte activa el puerto, NDIS genera una notificación PnP para los controladores que están sobreaplicando. Si una aplicación en modo de usuario o controlador excesiva emite el OID_GEN_ENUMERATE_PORTS OID para enumerar los puertos de un adaptador de miniporte, NDIS no incluye puertos asignados no activos en la lista de puertos.

Cuando NdisMAllocatePort devuelve correctamente, el miembro PortNumber del elemento NDIS_PORT_CHARACTERISTICS estructura que el parámetro portCharacteristics de se establece en el número de puerto asignado al puerto.

Una vez que ya no se requiera un puerto, el controlador de miniport debe llamar a la función NdisMFreePort para liberar el puerto.

Requisitos

Requisito Valor
cliente mínimo admitido Se admite en NDIS 6.0 y versiones posteriores.
de la plataforma de destino de Universal
encabezado de ndis.h (incluya Ndis.h)
biblioteca de Ndis.lib
irQL <= DISPATCH_LEVEL

Consulte también

asignar un de puerto NDIS

MiniportInitializeEx

NDIS_PORT_CHARACTERISTICS

NdisMFreePort

OID_GEN_ENUMERATE_PORTS