次の方法で共有


EVT_WDF_DEVICE_QUERY_STOP コールバック関数 (wdfdevice.h)

[KMDF と UMDF に適用]

ドライバーの EvtDeviceQueryStop イベント コールバック関数は、PnP マネージャーがシステム ハードウェア リソースを再配布できるように、指定したデバイスを停止できるかどうかを決定します。

構文

EVT_WDF_DEVICE_QUERY_STOP EvtWdfDeviceQueryStop;

NTSTATUS EvtWdfDeviceQueryStop(
  [in] WDFDEVICE Device
)
{...}

パラメーター

[in] Device

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

戻り値

ドライバーがデバイスを停止できると判断した場合、EvtDeviceQueryStop コールバック関数は、NT_SUCCESS(status) が TRUE と等しいSTATUS_SUCCESSまたは別の状態値を返す必要があります。 それ以外の場合は、NT_SUCCESS(status) が FALSE である状態値を返す必要があります。 STATUS_NOT_SUPPORTEDを返さないでください。

注釈

EvtDeviceQueryStop コールバック関数を登録するには、ドライバーで WdfDeviceInitSetPnpPowerEventCallbacks を呼び出す必要があります。

デバイスとドライバーがアイドル状態の電源ダウンをサポートしている場合、フレームワークがドライバーの EvtDeviceQueryStop コールバック関数を呼び出すときに、デバイスが動作状態にならない可能性があります。 コールバック関数は 、WdfDeviceStopIdle を呼び出してデバイスを強制的に動作 (D0) 状態にし、コールバック関数が WdfDeviceResumeIdle を呼び出してから返すことができます。

EvtDeviceQueryStop コールバック関数の詳細については、「デバイスを停止するための要求の処理」を参照してください。

フレームワークは 、EvtDeviceQueryStop コールバック関数を他の PnP および電源管理コールバック関数と同期しません。 フレームワークがドライバーのイベント コールバック関数の実行を同期する方法については、「 自動同期の使用」を参照してください。

要件

要件
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.0
最小 UMDF バージョン 2.0
Header wdfdevice.h (Wdf.h を含む)
IRQL PASSIVE_LEVEL

こちらもご覧ください

EvtDeviceQueryRemove