ioRegisterBootDriverReinitialization 函式 (ntddk.h)

IoRegisterBootDriverReinitialization 例程是由開機驅動程式呼叫,以向 I/O 管理員註冊驅動程式的重新初始化例程,以便在列舉並啟動所有裝置之後呼叫。

語法

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

參數

[in] DriverObject

要重新初始化開機驅動程式之驅動程式物件的指標。

[in] DriverReinitializationRoutine

驅動程式 重新初始化 例程的指標。

[in, optional] Context

要傳遞至驅動程式重新初始化例程的選擇性內容指標。

傳回值

備註

開機驅動程式通常會從啟動驅動程式初始化期間執行的 DriverEntry 例程呼叫 IoRegisterBootDriverReinitializationIoRegisterBootDriverReinitialization 會在列舉並啟動所有裝置之後,由 I/O 管理員呼叫的驅動程式重新初始化回呼例程。 DriverReinitializationRoutine 是在 IRQL = PASSIVE_LEVEL的系統線程中執行。

只有當驅動程式的 DriverEntry 例程傳回STATUS_SUCCESS時,驅動程式才應該呼叫 IoRegisterBootDriverReinitialization

如果 DriverReinitializationRoutine 使用登錄, DriverEntry 例程必須包含在 IoRegisterBootDriverReinitializationContext 參數中, DriverEntry 自有 RegistryPath 參數指向的字元串複本。

DriverEntry 例程只能呼叫 IoRegisterBootDriverReinitialization 一次。 如果需要多次執行重新初始化例程, DriverReinitializationRoutine 可以視需要呼叫 IoRegisterBootDriverReinitialization ,使用 Count 參數來追蹤 呼叫 DriverReinitializationRoutine 的次數。

規格需求

需求
最低支援的用戶端 從 Windows 2000 開始提供。
目標平台 Universal
標頭 ntddk.h (包括 Ntifs.h、Ntddk.h、Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 合規性規則 HwStorPortProhibitedDIS (storport) PowerIrpDDis (wdm)

另請參閱

DRIVER_OBJECT

IoRegisterDriverReinitialization

重新初始化