次の方法で共有


EVT_WDF_DEVICE_EJECT コールバック関数 (wdfpdo.h)

[KMDF にのみ適用]

ドライバーの EvtDeviceEject イベント コールバック関数は、ドッキング ステーションからデバイスを取り出すために必要な操作を処理します。

構文

EVT_WDF_DEVICE_EJECT EvtWdfDeviceEject;

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

パラメーター

[in] Device

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

戻り値

操作が成功した場合、ドライバーはSTATUS_SUCCESSを返す必要があります。 それ以外の場合は、NT_SUCCESS FALSEとして評価される NTSTATUS 値を返す必要があります。 STATUS_NOT_SUPPORTEDを返さないでください。

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

注釈

フレームワーク ベースのバス ドライバーは、 EvtDeviceEject コールバック関数を提供できます。 ドライバーがデバイスのドッキング ステーションから列挙子デバイスの 1 つを物理的に取り出す操作を実行する必要がある場合、バス ドライバーは EvtDeviceEject コールバック関数を提供する必要があります。 このコールバック関数を登録するには、バス ドライバーで WdfPdoInitSetEventCallbacks を呼び出す必要があります。

EvtDeviceEject コールバック関数を呼び出す前に、フレームワークはドライバーの EvtDeviceD0Exit および EvtDeviceReleaseHardware コールバック関数を呼び出します。

ドライバーの EvtDeviceEject コールバック関数がSTATUS_SUCCESSを返す場合、フレームワークはドライバーの子リストを更新して、取り出されたデバイスが使用できなくなったことを示します。 そのため、ドライバーは WdfPdoMarkMissing または WdfChildListUpdateChildDescriptionAsMissing を呼び出す必要はありません。

デバイスの取り出しの詳細については、「 イジェクタブル デバイスのサポート」を参照してください。

要件

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

こちらもご覧ください

EvtDeviceSetLock