次の方法で共有


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

[KMDF と UMDF に適用]

ドライバーの EvtDeviceSelfManagedIoInit イベント コールバック関数が初期化され、デバイスのセルフマネージド I/O 操作が開始されます。

構文

EVT_WDF_DEVICE_SELF_MANAGED_IO_INIT EvtWdfDeviceSelfManagedIoInit;

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

パラメーター

[in] Device

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

戻り値

EvtDeviceSelfManagedIoInit コールバック関数でエラーが発生しない場合は、STATUS_SUCCESS、またはNT_SUCCESS(status) が TRUE に等しい別の状態値を返す必要があります。 それ以外の場合は、NT_SUCCESS(status) が FALSE状態値を返す必要があります。 NT_SUCCESS(status) が FALSE の場合、フレームワークはデバイスを起動しません。

NT_SUCCESS(status) が FALSE の場合、フレームワークはドライバーの EvtDeviceSelfManagedIoFlush および EvtDeviceSelfManagedIoCleanup コールバック関数を呼び出します。

このコールバック関数の戻り値の詳細については、「 デバイスエラーの報告」を参照してください。

注釈

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

ドライバーが EvtDeviceSelfManagedIoInit コールバック関数を登録した場合、フレームワークはドライバーの EvtDeviceD0Entry コールバック関数を初めて呼び出した後、デバイスごとに 1 回呼び出します。 デバイスが削除されて再接続されたり、ドライバーが再読み込みされたりしない限り、フレームワークはそのデバイスに対して EvtDeviceSelfManagedIoInit コールバック関数を再度呼び出しません。

EvtDeviceSelfManagedIoInit コールバック関数は、ドライバーがデバイスに対して処理するセルフマネージド I/O 操作を初期化して開始する必要があります。

フレームワークがこのコールバック関数を呼び出すタイミングの詳細については、「 PnP と Power Management のシナリオ」を参照してください。

このコールバック関数を提供するドライバーの詳細については、「 Self-Managed I/O の使用」を参照してください。

要件

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

こちらもご覧ください

EvtDeviceSelfManagedIoCleanup

EvtDeviceSelfManagedIoFlush

EvtDeviceSelfManagedIoRestart

EvtDeviceSelfManagedIoSuspend