Función NdisRegisterDeviceEx (ndis.h)
La función NdisRegisterDeviceEx crea un objeto de dispositivo basado en los atributos especificados.
Sintaxis
NDIS_STATUS NdisRegisterDeviceEx(
[in] NDIS_HANDLE NdisHandle,
[in] PNDIS_DEVICE_OBJECT_ATTRIBUTES DeviceObjectAttributes,
[out] PDEVICE_OBJECT *pDeviceObject,
[out] PNDIS_HANDLE NdisDeviceHandle
);
Parámetros
[in] NdisHandle
Controlador de miniporte o controlador de filtro que obtuvo el autor de la llamada llamando al función NdisMRegisterMiniportDriver o función NdisFRegisterFilterDriver, respectivamente.
[in] DeviceObjectAttributes
Puntero a un NDIS_DEVICE_OBJECT_ATTRIBUTES estructura que contiene los atributos del nuevo dispositivo.
[out] pDeviceObject
Puntero que apunta a un puntero a una estructura de DEVICE_OBJECT recién creada, si la llamada se realiza correctamente. Si se produce un error en la llamada, pDeviceObject se establece para que apunte a NULL.
[out] NdisDeviceHandle
Puntero a una variable proporcionada por el autor de la llamada en la que esta función, si se ejecuta correctamente, devuelve un identificador al objeto de dispositivo. Este identificador es un parámetro necesario para la función NdisDeregisterDeviceEx que el controlador llama posteriormente.
Valor devuelto
NdisRegisterDeviceEx devuelve uno de los siguientes valores de estado:
Código devuelto | Descripción |
---|---|
|
NdisRegisterDeviceEx registró correctamente el dispositivo. |
|
El autor de la llamada no es un controlador NDIS. |
|
Error al intentar registrar el dispositivo. Normalmente, este estado de error se propaga desde una función de Ndisfunción xxx o una rutina de compatibilidad en modo kernel. |
Observaciones
Los controladores de miniport y los controladores de filtro pueden llamar a NdisRegisterDeviceEx para registrar un dispositivo virtual.
El controlador debe llamar posteriormente a la función NdisDeregisterDeviceEx cuando el dispositivo ya no sea necesario. Si NdisRegisterDeviceEx asigna una extensión, NdisDeregisterDeviceEx libera la extensión.
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 | PASSIVE_LEVEL |
reglas de cumplimiento de DDI | Irql_Miscellaneous_Function(ndis) |