Função IoRegisterBootDriverReinitialization (ntddk.h)

A rotina IoRegisterBootDriverReinitialization é chamada por um driver de inicialização para registrar a rotina de reinicialização do driver com o gerente de E/S a ser chamado depois que todos os dispositivos forem enumerados e iniciados.

Sintaxe

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

Parâmetros

[in] DriverObject

Ponteiro para o objeto driver para que o driver de inicialização seja reinicializado.

[in] DriverReinitializationRoutine

Ponteiro para a rotina de reinicialização do driver.

[in, optional] Context

Ponteiro de contexto opcional a ser passado para a rotina de reinicialização do driver.

Retornar valor

Nenhum

Comentários

Um driver de inicialização normalmente chama IoRegisterBootDriverReinitialization de sua rotina DriverEntry , que é executada durante a inicialização do driver de inicialização. IoRegisterBootDriverReinitialization registra a rotina de retorno de chamada de reinicialização do driver a ser chamada pelo gerente de E/S depois que todos os dispositivos tiverem sido enumerados e iniciados. O DriverReinitializationRoutine é executado em um thread do sistema em IRQL = PASSIVE_LEVEL.

Um driver deve chamar IoRegisterBootDriverReinitialization somente se sua rotina DriverEntry retornar STATUS_SUCCESS.

Se o DriverReinitializationRoutine usar o registro, a rotina DriverEntry deverá incluir no parâmetro Context de IoRegisterBootDriverReinitialization uma cópia da cadeia de caracteres para a qual o parâmetro RegistryPath do DriverEntry aponta.

A rotina DriverEntry pode chamar IoRegisterBootDriverReinitialization apenas uma vez. Se a rotina de reinicialização precisar ser executada mais de uma vez, a DriverReinitializationRoutine poderá chamar IoRegisterBootDriverReinitialization quantas vezes forem necessárias, usando o parâmetro Count para acompanhar o número de vezes que o DriverReinitializationRoutine foi chamado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 2000.
Plataforma de Destino Universal
Cabeçalho ntddk.h (inclua Ntifs.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Regras de conformidade de DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Confira também

DRIVER_OBJECT

IoRegisterDriverReinitialization

Reinicializar