WdfChildListRetrieveAddressDescription 関数 (wdfchildlist.h)

[KMDF にのみ適用]

WdfChildListRetrieveAddressDescription メソッドは、指定した識別の説明を持つ子デバイスを検索し、デバイスのアドレスの説明を取得します。

構文

NTSTATUS WdfChildListRetrieveAddressDescription(
  [in]      WDFCHILDLIST                                 ChildList,
  [in]      PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription,
  [in, out] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER        AddressDescription
);

パラメーター

[in] ChildList

子リスト オブジェクトへのハンドル。

[in] IdentificationDescription

ドライバーによって指定された子識別の説明を識別する呼び出し元によって割り当てられた WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER 構造体へのポインター。

[in, out] AddressDescription

子アドレスの説明を識別する WDF_CHILD_ADDRESS_DESCRIPTION_HEADER 構造体へのポインター。 フレームワークはこの説明を入力します。

戻り値

WdfChildListRetrieveAddressDescription は、STATUS_SUCCESS、または操作が成功した場合 、NT_SUCCESS(status)TRUE に等しい別の状態値を返します。 それ以外の場合、このメソッドは次のいずれかの値を返す可能性があります。

リターン コード 説明
STATUS_INVALID_PARAMETER
入力パラメーターが無効です。
STATUS_NO_SUCH_DEVICE
指定された識別の説明に一致するデバイスはありません。
STATUS_INVALID_DEVICE_REQUEST
子リストにアドレスの説明が含まれていないか、 AddressDescription が指定したアドレスの説明のサイズが正しくありません。
 

このメソッドは、他の NTSTATUS 値も返す場合があります。

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

注釈

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

次のコード例では、識別の説明に SomeValue で指定された値が含まれている子デバイスの子リストを検索します。 WdfChildListRetrieveAddressDescription がデバイスを見つけた場合は、デバイスのアドレスの説明を取得します。

MY_IDENTIFICATION_DESCRIPTION  id;
MY_ADDRESS_DESCRIPTION  addrDescrip;

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_INIT(
                                                 &id.Header,
                                                 sizeof(id)
                                                 );
WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_INIT(
                                          &addrDescrip.Header,
                                          sizeof(addrDescrip)
                                          );

id.DeviceIdentifier = SomeValue;
status = WdfChildListRetrieveAddressDescription(
                                                list,
                                                &idDescrip.Header,
                                                &addrDescrip.Header
                                                );
if (!NT_SUCCESS(status) {
    return status;
}

要件

要件
対象プラットフォーム ユニバーサル
最小 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_ADDRESS_DESCRIPTION_HEADER

WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_INIT

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_INIT