EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART回呼函式 (wdfdevice.h)

[適用于 KMDF 和 UMDF]

驅動程式的 EvtDeviceSelfManagedIoRestart 事件回呼函式會重新開機裝置的自我管理 I/O 作業。

語法

EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART EvtWdfDeviceSelfManagedIoRestart;

NTSTATUS EvtWdfDeviceSelfManagedIoRestart(
  [in] WDFDEVICE Device
)
{...}

參數

[in] Device

架構裝置物件的控制碼。

傳回值

如果EvtDeviceSelfManagedIoRestart回呼函式未發生任何錯誤,它必須傳回STATUS_SUCCESS,或NT_SUCCESS (狀態) 等於TRUE的另一個狀態值。 否則,它必須傳回狀態值,NT_SUCCESS (狀態) 等於 FALSE。 如果NT_SUCCESS (狀態) 等於 FALSE,架構會停止裝置並卸載裝置的驅動程式。

如果NT_SUCCESS (狀態) 等於 FALSE,架構會呼叫驅動程式的 EvtDeviceSelfManagedIoFlushEvtDeviceSelfManagedIoCleanup 回 呼函式。

如需此回呼函式傳回值的詳細資訊,請參閱 報告裝置失敗

備註

若要註冊 EvtDeviceSelfManagedIoRestart 回呼函式,驅動程式必須呼叫 WdfDeviceInitSetPnpPowerEventCallbacks

如果驅動程式已註冊 EvtDeviceSelfManagedIoRestart 回呼函式,則每次裝置從低電源狀態傳回至其運作 (D0) 狀態時呼叫該函式。 架構只有在呼叫驅動程式的EvtDeviceSelfManagedIoSuspend 回呼函式之後,才會呼叫 EvtDeviceSelfManagedIoSuspend 回呼函式。

驅動程式的 EvtDeviceSelfManagedIoRestart 回呼函式必須執行任何需要,才能繼續裝置的自我管理 I/O 作業。

如需架構何時呼叫此回呼函式的詳細資訊,請參閱 PnP 和電源管理案例

如需提供此回呼函式之驅動程式的詳細資訊,請參閱 使用 Self-Managed I/O

EvtDeviceSelfManagedIoRestart回呼函式是在 IRQL = PASSIVE_LEVEL呼叫。 您不應該讓此回呼函 式可分頁

規格需求

   
目標平臺 環球
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
標頭 wdfdevice.h (包含 Wdf.h)
IRQL PASSIVE_LEVEL (請參閱一節)

另請參閱

EvtDeviceSelfManagedIoCleanup

EvtDeviceSelfManagedIoFlush

EvtDeviceSelfManagedIoInit

EvtDeviceSelfManagedIoSuspend