Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La función MiniportRemoveDevice libera los recursos asignados a la función MiniportAddDevice.
Sintaxis
MINIPORT_REMOVE_DEVICE MiniportRemoveDevice;
void MiniportRemoveDevice(
[in] NDIS_HANDLE MiniportAddDeviceContext
)
{...}
Parámetros
[in] MiniportAddDeviceContext
Identificador de un área de contexto asignada por el controlador que el controlador de miniporte registró con NDIS en la función MiniportAddDevice.
Valor devuelto
Ninguno
Observaciones
La función MiniportRemoveDevice es una función opcional. Los controladores de miniporte que admiten MSI-X deben especificar un punto de entrada para esta función en . NDIS_MINIPORT_PNP_CHARACTERISTICS estructura.
Cuando NDIS recibe una solicitud del administrador de Plug and Play (PnP) para quitar un dispositivo, NDIS llama a la función MiniportRemoveDevice. MiniportRemoveDevice debe deshacer las operaciones que realizó la función MiniportAddDevice.
Es posible que los adaptadores de miniporte se detengan e inicialicen varias veces antes de que las llamadas NDIS MiniportRemoveDevice. Si NDIS llamó a MiniportAddDevice y devolvió NDIS_STATUS_SUCCESS, NDIS no llamará a MiniportAddDevice para el mismo adaptador de miniport antes de llamar a MiniportRemoveDevice para ese adaptador.
NDIS llama a miniportRemoveDevice en IRQL = PASSIVE_LEVEL.
Ejemplos de
Para definir una función MiniportRemoveDevice, primero debe proporcionar una declaración de función que identifique el tipo de función que va a definir. Windows proporciona un conjunto de tipos de función para controladores. Declarar una función mediante los tipos de función ayuda a análisis de código para controladores, comprobador de controladores estáticos (SDV) y otras herramientas de comprobación encuentran errores y es un requisito para escribir controladores para el sistema operativo Windows.Por ejemplo, para definir un miniportRemoveDevice función denominada "MyRemoveDevice", use el tipo MINIPORT_REMOVE_DEVICE tal como se muestra en este ejemplo de código:
MINIPORT_REMOVE_DEVICE MyRemoveDevice;
A continuación, implemente la función de la siguiente manera:
_Use_decl_annotations_
VOID
MyRemoveDevice(
NDIS_HANDLE MiniportAddDeviceContext
)
{...}
El tipo de función MINIPORT_REMOVE_DEVICE se define en el archivo de encabezado Ndis.h. Para identificar con más precisión los errores al ejecutar las herramientas de análisis de código, asegúrese de agregar la anotación Use_decl_annotations a la definición de función. La anotación Use_decl_annotations garantiza que se usen las anotaciones que se aplican al tipo de función MINIPORT_REMOVE_DEVICE en el archivo de encabezado. Para obtener más información sobre los requisitos de las declaraciones de función, vea Declaración de funciones mediante el uso de tipos de roles de función para controladores NDIS.
Para obtener información sobre Use_decl_annotations, vea Anotación del comportamiento de la función.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Se admite en NDIS 6.0 y versiones posteriores. |
de la plataforma de destino de | Windows |
encabezado de | ndis.h (incluya Ndis.h) |
irQL | PASSIVE_LEVEL |