Función NdisRegisterProtocolDriver (ndis.h)
Un controlador de protocolo llama a la función NdisRegisterProtocolDriver para registrar sus funciones ProtocolXxx con NDIS.
Sintaxis
NDIS_STATUS NdisRegisterProtocolDriver(
[in, optional] NDIS_HANDLE ProtocolDriverContext,
[in] PNDIS_PROTOCOL_DRIVER_CHARACTERISTICS ProtocolCharacteristics,
[out] PNDIS_HANDLE NdisProtocolHandle
);
Parámetros
[in, optional] ProtocolDriverContext
Identificador de un área de contexto asignada por el controlador donde el controlador mantiene la información de estado y configuración.
[in] ProtocolCharacteristics
Puntero a un NDIS_PROTOCOL_DRIVER_CHARACTERISTICS estructura que el controlador de protocolo creó e inicializó con sus puntos de entrada de función ProtocolXxx .
[out] NdisProtocolHandle
Puntero a una variable de identificador proporcionada por el autor de la llamada. NDIS escribe un identificador en esta variable que identifica de forma única el controlador que se registra. El controlador debe guardar este identificador para su uso en llamadas de función NdisXxx posteriores.
Valor devuelto
NdisRegisterProtocolDriver devuelve uno de los siguientes valores de estado:
Código devuelto | Descripción |
---|---|
|
NdisRegisterProtocolDriver devuelve NDIS_STATUS_SUCCESS si registró el controlador de protocolo. |
|
La versión especificada en el miembro MajorNdisVersion de la estructura en ProtocolCharacteristics no es válida. |
|
Algunos miembros de la estructura en el parámetro ProtocolCharacteristics no son válidos . |
|
Error de NdisRegisterProtocolDriver debido a recursos insuficientes. |
|
NdisRegisterProtocolDriver devuelve NDIS_STATUS_FAILURE si no se aplica ninguno de los valores anteriores. |
Comentarios
Un controlador de protocolo llama a la función NdisRegisterProtocolDriver desde su rutina DriverEntry . Para obtener más información sobre DriverEntry, vea DriverEntry of NDIS Protocol Drivers.
Los controladores que llaman a NdisRegisterProtocolDriver deben estar preparados para una llamada inmediata a cualquiera de sus funciones ProtocolXxx .
Cada controlador de protocolo exporta un conjunto de funciones ProtocolXxx mediante la configuración de NDIS_PROTOCOL_DRIVER_CHARACTERISTICS estructura y llamada a NdisRegisterProtocolDriver. NDIS copia esta estructura en el almacenamiento interno de la biblioteca NDIS.
Para permitir que los controladores de protocolo registren servicios opcionales, NDIS llama a la función ProtocolSetOptions dentro del contexto de NdisRegisterProtocolDriver.
Los controladores de protocolo llaman a Función NdisDeregisterProtocolDriver para liberar los recursos asignados anteriormente con NdisRegisterProtocolDriver.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Se admite en NDIS 6.0 y versiones posteriores. |
Plataforma de destino | Escritorio |
Encabezado | ndis.h (incluya Ndis.h) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
Reglas de cumplimiento de DDI | Irql_Protocol_Driver_Function(ndis) |
Consulte también
DriverEntry de controladores de protocolo NDIS
NDIS_PROTOCOL_DRIVER_CHARACTERISTICS