IWDFDevice3::AssignS0IdleSettingsEx 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,而且較新版本的 Windows 10 上對 UMDF 1 的支援有限。 通用 Windows 驅動程式必須使用 UMDF 2。 如需詳細資訊,請參閱 開始使用 UMDF。]
AssignS0IdleSettingsEx 方法會提供驅動程式提供的資訊,讓架構在裝置閑置且系統處於運作中狀態時使用。
語法
HRESULT AssignS0IdleSettingsEx(
[in] PWUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS IdleSettings
);
參數
[in] IdleSettings
WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT 巨集呼叫所初始化之 WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS 結構的指標。
傳回值
如果作業成功,此方法會傳回S_OK。 否則,此方法會傳回 Winerror.h 中定義的其中一個錯誤碼。
言論
驅動程式可以在驅動程式呼叫 IWDFDriver::CreateDevice之後,隨時呼叫 assignS0IdleSettingsEx。 在呼叫 IWDFDriver::CreateDevice之前,驅動程式必須先呼叫 IWDFDeviceInitialize::SetPowerPolicyOwnership,並將 fTrue 參數設定為 TRUE。 如需此呼叫順序的範例,請參閱 IWDFDriver::CreateDevice。
如果您的驅動程式呼叫 AssignS0IdleSettingsEx 多次,請遵循 AssignS0IdleSettings 一节中所述的规则。
如需閒置電源關閉的詳細資訊,請參閱 支援 UMDF 型驅動程式中的閒置 Power-Down。
例子
下列程式代碼範例會初始化 WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS 結構,並設定10秒的閒置逾時值。 然後,此範例會取得 IWDFDevice3 介面,並呼叫 AssignS0IdleSettingsEx。
IWDFDevice3 *pIWDFDevice3 = NULL;
HRESULT hr;
WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS idleSettings;
WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT(
&idleSettings,
IdleCanWakeFromS0
);
idleSettings.IdleTimeout = 10000;
//
// Get a pointer to the IWDFDevice3 interface.
//
hr = pIWDFDevice->QueryInterface(__uuidof(IWDFDevice3),
(void**) &pIWDFDevice3);
if (SUCCEEDED(hr))
{
hr = pIWDFDevice3->AssignS0IdleSettingsEx(&idleSettings
);
}
...
SAFE_RELEASE(pIWDFDevice3);
要求
要求 | 價值 |
---|---|
終止支援 | UMDF 2.0 和更新版本中無法使用。 |
目標平臺 | 桌面 |
最低 UMDF 版本 | 1.11 |
標頭 | wudfddi.h |
DLL | WUDFx.dll |