次の方法で共有


WdfChildListBeginIteration 関数 (wdfchildlist.h)

[KMDF にのみ適用]

WdfChildListBeginIteration メソッドは、指定された子リストから項目を取得するためのフレームワークを準備します。

構文

void WdfChildListBeginIteration(
  [in] WDFCHILDLIST             ChildList,
  [in] PWDF_CHILD_LIST_ITERATOR Iterator
);

パラメーター

[in] ChildList

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

[in] Iterator

取得する子デバイスの種類を示す呼び出し元によって割り当てられた WDF_CHILD_LIST_ITERATOR 構造体へのポインター。

戻り値

なし

解説

ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。

WdfChildListBeginIteration を呼び出した後、ドライバーは WdfChildListRetrieveNextDevice を繰り返し呼び出して、子リスト内の各子デバイスに関する情報を取得できます。

ドライバーが WdfChildListRetrieveNextDevice の呼び出しを完了したら、 WdfChildListEndIteration を呼び出す必要があります。

ドライバーが WdfChildListBeginIteration を呼び出した後に子リストに変更を加える場合、フレームワークはすべての変更を格納し、ドライバーが WdfChildListEndIteration を呼び出したときに変更をプラグ アンド プレイ (PnP) マネージャーに通知します。

ドライバーは 、WdfChildListBeginIterationWdfChildListEndIteration への呼び出しを入れ子にすることができます。 ドライバーがこれらのメソッドの呼び出しを入れ子にした場合、フレームワークは WdfChildListEndIteration の最後の呼び出しまですべての変更を格納します。

子リストの詳細については、「 動的列挙」を参照してください。

WdfChildListBeginIteration を使用するコード例については、「WdfChildListRetrieveNextDevice」を参照してください。

要件

要件
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.0
Header wdfchildlist.h (Wdf.h を含む)
Library Wdf01000.sys (「Framework ライブラリのバージョン管理」を参照)。
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 DriverCreate(kmdf)KmdfIrql(kmdf)KmdfIrql2(kmdf)、KmdfIrqlExplicit(kmdf)

こちらもご覧ください

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_INIT

WDF_CHILD_LIST_ITERATOR

WDF_CHILD_LIST_ITERATOR_INIT

WdfChildListBeginScan

WdfChildListEndIteration

WdfChildListRequestChildEject

WdfChildListRetrieveNextDevice