次の方法で共有


IWDFDevice3::AssignS0IdleSettingsEx メソッド (wudfddi.h)

[警告: UMDF 2 は UMDF の最新バージョンであり、UMDF 1 よりも優先されます。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、新しいバージョンのWindows 10では UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは、UMDF 2 を使用する必要があります。 詳細については、「UMDF を使用したはじめに」を参照してください。

AssignS0IdleSettingsEx メソッドは、デバイスがアイドル状態で、システムが動作 (S0) 状態のときにフレームワークが使用するドライバー提供の情報を提供します。

構文

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 を呼び出す前に、ドライバーは fTrue パラメーターを TRUE に設定して IWDFDeviceInitialize::SetPowerPolicyOwnership を呼び出す必要があります。 この呼び出しシーケンスの例については、「 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
Header wudfddi.h
[DLL] WUDFx.dll

こちらもご覧ください

IWDFDevice2::AssignS0IdleSettings

IWDFDevice3

WdfDeviceAssignS0IdleSettings