共用方式為


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

另請參閱

IWDFDevice2::AssignS0IdleSettings

IWDFDevice3

WdfDeviceAssignS0IdleSettings