Función NdisFRegisterFilterDriver (ndis.h)
Un controlador de filtro llama a función NdisFRegisterFilterDriver para registrar sus funciones de FilterXxx con NDIS.
Sintaxis
NDIS_STATUS NdisFRegisterFilterDriver(
[in] PDRIVER_OBJECT DriverObject,
[in] NDIS_HANDLE FilterDriverContext,
PNDIS_FILTER_DRIVER_CHARACTERISTICS FilterDriverCharacteristics,
[out] PNDIS_HANDLE NdisFilterDriverHandle
);
Parámetros
[in] DriverObject
Puntero a un objeto de controlador opaco que el controlador de filtro recibió en su rutina de DriverEntry en el parámetro Argument1. (Para obtener más información, vea DriverEntry of NDIS Filter Drivers).)
[in] FilterDriverContext
Identificador de un área de contexto asignada por el controlador donde el controlador mantiene la información de estado y configuración.
FilterDriverCharacteristics
Puntero a un NDIS_FILTER_DRIVER_CHARACTERISTICS estructura que creó e inicializó el controlador de filtro con sus puntos de entrada de función filterXxx .
[out] NdisFilterDriverHandle
Puntero a una variable de identificador. Si la llamada a NdisFRegisterFilterDriver se realiza correctamente, NDIS rellena esta variable con un identificador de controlador de filtro. El controlador de filtro guarda este identificador y, posteriormente, pasa este identificador a funciones NDIS, como NdisFDeregisterFilterDriver, que requieren un controlador de filtro como parámetro de entrada.
Valor devuelto
NdisFRegisterFilterDriver devuelve uno de los siguientes valores de estado:Código devuelto | Descripción |
---|---|
|
NdisFRegisterFilterDriver devuelve NDIS_STATUS_SUCCESS si registró el controlador de filtro. |
|
La versión especificada en el miembro majorNdisVersion de la estructura en FilterCharacteristics no es válida. |
|
Al menos uno de los miembros especificados en NDIS_FILTER_DRIVER_CHARACTERISTICS no es válido. |
|
Al menos uno de los parámetros de entrada que el controlador pasó a NdisFRegisterFilterDriver no es válido. |
|
error de NdisFRegisterFilterDriver debido a recursos insuficientes. |
|
NdisFRegisterFilterDriver devuelve NDIS_STATUS_FAILURE si no se aplica ninguno de los valores anteriores. |
Observaciones
Un controlador de filtro llama a función NdisFRegisterFilterDriver de su rutina de DriverEntry. Para obtener más información sobre DriverEntry, vea DriverEntry of NDIS Filter Drivers.
Los controladores que llaman a NdisFRegisterFilterDriver deben estar preparados para una llamada inmediata a cualquiera de sus funciones de FilterXxx. Para obtener más información, vea Inicializar un controlador de filtro.
Cada controlador de filtro exporta un conjunto de funciones de FilterXxx mediante la configuración de estructura y llamada de NDIS_FILTER_DRIVER_CHARACTERISTICS NdisFRegisterFilterDriver. NDIS copia esta estructura en el almacenamiento interno de la biblioteca NDIS.
Para permitir que los controladores de filtro registren servicios opcionales, NDIS llama a la función FilterSetOptions dentro del contexto de . NdisFRegisterFilterDriver.
Una vez registrado, un controlador de filtro puede llamar posteriormente a la función NdisSetOptionalHandlers para cambiar los puntos de entrada de las funciones opcionales FilterXxx.
Los controladores de filtro llaman a función NdisFDeregisterFilterDriver para liberar recursos asignados previamente con NdisFRegisterFilterDriver.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Se admite en NDIS 6.0 y versiones posteriores. |
de la plataforma de destino de | Escritorio |
encabezado de | ndis.h (incluya Ndis.h) |
biblioteca de | Ndis.lib |
irQL | PASSIVE_LEVEL |
reglas de cumplimiento de DDI | Irql_Filter_Driver_Function(ndis), NdisFDeregisterFilterDriver(ndis) |
Consulte también
DriverEntry de controladores de filtro NDIS
inicializar un controlador de filtro
NDIS_FILTER_DRIVER_CHARACTERISTICS