次の方法で共有


EVT_UDECX_USB_DEVICE_D0_EXIT コールバック関数 (udecxusbdevice.h)

USB デバイス エミュレーション クラス拡張機能 (UdeCx) は、仮想 USB デバイスを低電力状態に送信する要求を取得すると、このコールバック関数を呼び出します。

構文

EVT_UDECX_USB_DEVICE_D0_EXIT EvtUdecxUsbDeviceD0Exit;

NTSTATUS EvtUdecxUsbDeviceD0Exit(
  [in] WDFDEVICE UdecxWdfDevice,
  [in] UDECXUSBDEVICE UdecxUsbDevice,
  [in] UDECX_USB_DEVICE_WAKE_SETTING WakeSetting
)
{...}

パラメーター

[in] UdecxWdfDevice

USB デバイスが接続されているコントローラーを表すフレームワーク デバイス オブジェクトへのハンドル。 クライアント ドライバーは、 UdecxWdfDeviceAddUsbDeviceEmulation の以前の呼び出しでこのオブジェクトを初期化しました。

[in] UdecxUsbDevice

UDE デバイス オブジェクトへのハンドル。 クライアント ドライバーは、 UdecxUsbDeviceCreate の以前の呼び出しでこのオブジェクトを作成しました。

[in] WakeSetting

USB デバイスのリモート ウェイク機能を示す UDECX_USB_DEVICE_WAKE_SETTING型の値。

戻り値

操作が成功した場合、コールバック関数は STATUS_SUCCESS、または NT_SUCCESS(status) が TRUE に等しい別の状態値を返す必要があります。

注釈

クライアント ドライバーは、その実装への関数ポインターを指定することで 、UdecxUsbDeviceInitSetStateChangeCallbacks の以前の呼び出しで関数を登録しました。

コールバックの実装では、USB デバイスのクライアント ドライバーは、低電力状態にデバイスを送信する手順を実行する必要があります。 この関数では、ドライバーは、低リンク電源状態、関数中断、またはその両方からウェイクアップを開始できます。 これを行うには、USB 2.0 デバイスのドライバーが UdecxUsbDeviceSignalWake メソッドを呼び出す必要があります。 USB 3.0 デバイスでは 、UdecxUsbDeviceSignalFunctionWake を使用する必要があります。

電源要求は、STATUS_PENDINGを返し、後で実際の完了コードを使用して UdecxUsbDeviceLinkPowerExitComplete を呼び出すことによって非同期的に完了できます。

要件

要件
サポートされている最小のクライアント Windows 10
サポートされている最小のサーバー Windows Server 2016
対象プラットフォーム Windows
最小 KMDF バージョン 1.15
Header udecxusbdevice.h (Udecx.h を含む)
IRQL <=DISPATCH_LEVEL

こちらもご覧ください

アーキテクチャ:USB デバイス エミュレーション (UDE)

EVT_UDECX_USB_DEVICE_D0_ENTRY

UdecxUsbDeviceLinkPowerExitComplete

UdecxUsbDeviceSignalWake

UDE クライアント ドライバーを記述する