WdfDeviceAssignSxWakeSettings 函式 (wdfdevice.h)
[適用於 KMDF 和 UMDF]
WdfDeviceAssignSxWakeSettings 方法提供驅動程式提供的資訊,說明裝置在裝置和系統處於低電源狀態時觸發喚醒訊號的功能。
語法
NTSTATUS WdfDeviceAssignSxWakeSettings(
[in] WDFDEVICE Device,
[in] PWDF_DEVICE_POWER_POLICY_WAKE_SETTINGS Settings
);
參數
[in] Device
架構裝置物件的句柄。
[in] Settings
呼叫端提供 之WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS 結構的指標。
傳回值
如果作業成功, WdfDeviceAssignSxWakeSettings 會傳回STATUS_SUCCESS。 其他傳回值包括:
傳回碼 | Description |
---|---|
|
呼叫驅動程式不是裝置的電源原則擁有者。 |
|
偵測到無效的 [設定 ] 值。 |
|
WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS 結構的大小不正確。 |
|
總線驅動程式表示裝置無法觸發喚醒訊號,或 WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS 結構包含無效的裝置電源狀態。 |
方法可能會傳回其他 NTSTATUS值。
如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。
備註
如需詳細資訊,請參閱 支援系統喚醒。
範例
下列程式代碼範例會初始化 WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS 結構,然後呼叫 WdfDeviceAssignSxWakeSettings。 此範例會使用 WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_INIT 集的預設設定。
WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS wakeSettings;
NTSTATUS status = STATUS_SUCCESS;
WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_INIT(&wakeSettings);
status = WdfDeviceAssignSxWakeSettings(
device,
&wakeSettings
);
if (!NT_SUCCESS(status)) {
return status;
}
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
最小 KMDF 版本 | 1.0 |
最低UMDF版本 | 2.0 |
標頭 | wdfdevice.h (包含 Wdf.h) |
程式庫 | Wdf01000.sys (KMDF) ;WUDFx02000.dll (UMDF) |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | DriverCreate (kmdf) , FDOPowerPolicyOwnerAPI (kmdf) , KmdfIrql (kmdf) , KmdfIrql2 (kmdf) , KmdfIrqlExplicit (kmdf) , NonFDONotPowerPolicyOwnerAPI (kmdf) |