Compartir a través de


Función IoRegisterBootDriverReinitialization (ntddk.h)

Un controlador de arranque llama a la rutina IoRegisterBootDriverReinitialization para registrar la rutina de reinicialización del controlador con el administrador de E/S que se llamará después de que se hayan enumerado e iniciado todos los dispositivos.

Sintaxis

void IoRegisterBootDriverReinitialization(
  [in]           PDRIVER_OBJECT       DriverObject,
  [in]           PDRIVER_REINITIALIZE DriverReinitializationRoutine,
  [in, optional] PVOID                Context
);

Parámetros

[in] DriverObject

Puntero al objeto de controlador para que se reinicialice el controlador de arranque.

[in] DriverReinitializationRoutine

Puntero a la rutina Reinicializar del controlador.

[in, optional] Context

Puntero de contexto opcional que se va a pasar a la rutina de reinicialización del controlador.

Valor devuelto

None

Observaciones

Normalmente, un controlador de arranque llama a IoRegisterBootDriverReinitialization desde su rutina DriverEntry , que se ejecuta durante la inicialización del controlador de arranque. IoRegisterBootDriverReinitialization registra la rutina de devolución de llamada de reinicialización del controlador a la que llamará el administrador de E/S después de que se hayan enumerado e iniciado todos los dispositivos. DriverReinitializationRoutine se ejecuta en un subproceso del sistema en IRQL = PASSIVE_LEVEL.

Un controlador debe llamar a IoRegisterBootDriverReinitialization solo si su rutina DriverEntry devolverá STATUS_SUCCESS.

Si DriverReinitializationRoutine usa el registro, la rutina DriverEntry debe incluir en el parámetro Context de IoRegisterBootDriverReinitialization una copia de la cadena a la que apunta el propio parámetro RegistryPath de DriverEntry.

La rutina DriverEntry puede llamar a IoRegisterBootDriverReinitialization solo una vez. Si la rutina de reinicialización debe ejecutarse más de una vez, DriverReinitializationRoutine puede llamar a IoRegisterBootDriverReinitialization tantas veces más como sea necesario, mediante el parámetro Count para realizar un seguimiento del número de veces que se ha llamado a DriverReinitializationRoutine .

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 2000.
Plataforma de destino Universal
Encabezado ntddk.h (incluya Ntifs.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Consulte también

DRIVER_OBJECT

IoRegisterDriverReinitialization

Reinicializar