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 に等しい別の状態値を返します。 それ以外の場合、このメソッドは次のいずれかの値を返す可能性があります。
リターン コード | 説明 |
---|---|
|
入力パラメーターが無効です。 |
|
指定された識別の説明に一致するデバイスはありません。 |
|
子リストにアドレスの説明が含まれていないか、 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