Compartir a través de


Escribir una rutina DriverEntry

Cada controlador debe tener una rutina DriverEntry , que inicializa recursos y estructuras de datos para todo el controlador. El administrador de E/S llama a la rutina DriverEntry cuando carga el controlador.

En un controlador que admite Plug and Play (PnP), como todos los controladores deben, la rutina DriverEntry es responsable de la inicialización del controlador, mientras que la rutina AddDevice (y, posiblemente, la rutina de envío que controla una solicitud de IRP_MN_START_DEVICE PnP) es responsable de la inicialización del dispositivo. La inicialización del controlador incluye la exportación de otros puntos de entrada del controlador, la inicialización de determinados objetos que usa el controlador y la configuración de varios recursos del sistema por controlador. (Los controladores que no son PnP tienen requisitos considerablemente diferentes, como se describe en el Kit de desarrollo de controladores [DDK] para Microsoft Windows NT 4.0 y versiones anteriores).

Se llama a las rutinas DriverEntry en el contexto de un subproceso del sistema en IRQL = PASSIVE_LEVEL.

Una rutina DriverEntry puede ser paginable y debe estar en un segmento INIT para que se descarte. Usa una directiva pragma de alloc_text , como se muestra en los controladores de ejemplo que se proporcionan con el Kit de controladores de Windows (WDK).

Esta sección contiene los siguientes temas:

Responsabilidades necesarias de DriverEntry

Responsabilidades opcionales de DriverEntry

Valores devueltos de DriverEntry