次の方法で共有


WdfDeviceIndicateWakeStatus 関数 (wdfdevice.h)

[KMDF にのみ適用]

WdfDeviceIndicateWakeStatus メソッドは、呼び出し元のバス ドライバーが、指定されたデバイスがバスでウェイク 信号をトリガーするのを待機するのを停止したことをフレームワークに通知します。

構文

NTSTATUS WdfDeviceIndicateWakeStatus(
  [in] WDFDEVICE Device,
  [in] NTSTATUS  WaitWakeStatus
);

パラメーター

[in] Device

フレームワーク デバイス オブジェクトへのハンドル。

[in] WaitWakeStatus

NTSTATUS 状態値。 デバイスがウェイク シグナルをトリガーした場合、呼び出し元は、この値を STATUS_SUCCESS または NT_SUCCESS(WaitWakeStatus) が TRUE 等しい別の状態値に設定する必要があります。 デバイスがウェイク シグナルをトリガーしなかった場合、またはエラーが検出された場合、呼び出し元は、NT_SUCCESS(WaitWakeStatus) が FALSE 等しい状態値を指定する必要があります。 詳細については、次の「解説」セクションを参照してください。

戻り値

操作が成功した場合、WdfDeviceIndicateWakeStatus はSTATUS_SUCCESSを返します。 その他の戻り値は次のとおりです。

リターン コード 形容
STATUS_INVALID_PARAMETER
WaitWakeStatus がSTATUS_PENDINGまたはSTATUS_CANCELLED
STATUS_INVALID_DEVICE_REQUEST
デバイスがウェイク シグナルをトリガーするまで待機するようにドライバー スタックが設定されていませんでした。
STATUS_INVALID_DEVICE_STATE
呼び出し元のドライバーは、デバイスがスリープ解除信号をトリガーするのを待機する責任はありません。
 

このメソッドは、NTSTATUS 値を返す場合があります。

ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。

備考

NT_SUCCESS(WaitWakeStatus) が TRUE 等しい場合、フレームワークはデバイスとシステムを動作状態に復元します。 NT_SUCCESS(WaitWakeStatus) が FALSE 等しい場合、デバイスとシステムは現在の状態のままです。

WdfDeviceIndicateWakeStatus メソッドの呼び出しの詳細については、「システム ウェイクアップ のサポートを参照してください。

次のコード例は、指定したデバイスがウェイク シグナルをトリガーしたことをフレームワークに通知します。

NTSTATUS  status;

status = WdfDeviceIndicateWakeStatus(
                                     hChild,
                                     STATUS_SUCCESS
                                     );

必要条件

要件 価値
ターゲット プラットフォーム 万国
最小 KMDF バージョン 1.0
ヘッダー wdfdevice.h (Wdf.h を含む)
ライブラリ Wdf01000.sys (フレームワーク ライブラリのバージョン管理を参照)。
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 する DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)