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 asignó correctamente recursos para el puerto. |
|
NDIS no pudo asignar recursos para el puerto. |
|
Error en la asignación de puertos porque el adaptador de miniporte asociado se está cerrando. |
|
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