次の方法で共有


EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED コールバック関数 (wdfchildlist.h)

[KMDF にのみ適用]

ドライバーの EvtChildListDeviceReenumerated イベント コールバック関数を使用すると、ドライバーは、指定したデバイスの再開を承認またはキャンセルできます。

構文

EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED EvtWdfChildListDeviceReenumerated;

BOOLEAN EvtWdfChildListDeviceReenumerated(
  [in]  WDFCHILDLIST ChildList,
  [in]  WDFDEVICE OldDevice,
  [in]  PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER OldAddressDescription,
  [out] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER NewAddressDescription
)
{...}

パラメーター

[in] ChildList

フレームワークの子リスト オブジェクトへのハンドル。

[in] OldDevice

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

[in] OldAddressDescription

子アドレスの説明を識別する WDF_CHILD_ADDRESS_DESCRIPTION_HEADER 構造体への省略可能なポインター(NULL)。 指定した場合、この構造体には、デバイスが再び表示される前に関連していたアドレス情報が含まれます。

[out] NewAddressDescription

子アドレスの説明を識別する WDF_CHILD_ADDRESS_DESCRIPTION_HEADER 構造体への省略可能なポインター(NULL)。 指定した場合、コールバック関数はこの構造体にデバイスに関する新しいアドレス情報を入力します。

戻り値

EvtChildListDeviceReenumerated コールバック関数は、再開を承認するために TRUE 返すか、または取り消すために FALSE します。

備考

バス ドライバーが動的列挙 使用している場合は、WdfFdoInitSetDefaultChildListConfig または WdfChildListCreate 呼び出すことによって、EvtChildListDeviceReenumerated コールバック関数を登録できます。

フレームワーク ベースのバス ドライバーは、特定の子デバイスを再び有効にするために、関数ドライバーから要求を受け取ることができます。 これらの要求の詳細については、「列挙要求の処理」を参照してください。

バス ドライバーの EvtChildListDeviceReenumerated コールバック関数を使用すると、ドライバーは再再開を承認または取り消します。 OldDevice パラメーターはデバイスを識別し、ChildList パラメーターは、デバイスがメンバーになっている子リストを識別します。 コールバック関数が再再開を承認するために TRUE 返す場合、またはコールバック関数が存在しない場合、フレームワークは次の処理を行います。

  1. デバイスのフレームワーク デバイス オブジェクト (OldDevice によって識別される) を削除しますが、デバイスの識別の説明は保持されます。
  2. ドライバーの EvtChildListCreateDevice コールバック関数を呼び出し、保存された ID の説明を渡して、コールバック関数が WdfDeviceCreate 呼び出して新しいフレームワーク デバイス オブジェクトを作成できるようにします。
バス ドライバーがアドレスの説明を使用する場合、EvtChildListDeviceReenumerated コールバック関数は、2 つのアドレスの説明へのポインターを受け取ります。 1 つは、古いデバイス オブジェクトに関連付けられているアドレスの説明を指します。 もう 1 つのポイントは、コールバック関数がデバイスの現在の場所を説明する情報を入力する必要があるアドレスの説明です。

動的列挙の詳細については、「バス上のデバイスの列挙」を参照してください。

必要条件

要件 価値
ターゲット プラットフォーム 万国
最小 KMDF バージョン 1.0
ヘッダー wdfchildlist.h (Wdf.h を含む)
IRQL <= DISPATCH_LEVEL

関連項目

EvtChildListCreateDevice

WDF_CHILD_ADDRESS_DESCRIPTION_HEADER

WdfChildListCreate

WdfDeviceCreate

WdfFdoInitSetDefaultChildListConfig