Função WdfChildListRetrieveAddressDescription (wdfchildlist.h)
[Aplica-se somente ao KMDF]
O método WdfChildListRetrieveAddressDescription localiza um dispositivo filho que tem uma descrição de identificação especificada e recupera a descrição do endereço do dispositivo.
Sintaxe
NTSTATUS WdfChildListRetrieveAddressDescription(
[in] WDFCHILDLIST ChildList,
[in] PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription,
[in, out] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription
);
Parâmetros
[in] ChildList
Um identificador para um objeto de lista filho.
[in] IdentificationDescription
Um ponteiro para uma estrutura de WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER alocada pelo chamador que identifica uma descrição de identificação filho fornecida pelo driver.
[in, out] AddressDescription
Um ponteiro para uma estrutura WDF_CHILD_ADDRESS_DESCRIPTION_HEADER que identifica uma descrição de endereço filho. A estrutura preenche essa descrição.
Retornar valor
WdfChildListRetrieveAddressDescription retorna STATUS_SUCCESS ou outro valor status para o qual NT_SUCCESS(status) é igual a TRUE, se a operação for bem-sucedida. Caso contrário, esse método poderá retornar um dos seguintes valores:
Código de retorno | Descrição |
---|---|
|
Um parâmetro de entrada era inválido. |
|
Nenhum dispositivo correspondeu à descrição de identificação especificada. |
|
A lista filho não continha descrições de endereço ou o tamanho da descrição do endereço especificada por AddressDescription estava incorreto. |
Esse método também pode retornar outros valores NTSTATUS.
Um bug do sistema marcar ocorrerá se o driver fornecer um identificador de objeto inválido.
Comentários
Para obter mais informações sobre listas filho, consulte Enumeração dinâmica.
Exemplos
O exemplo de código a seguir pesquisa uma lista filho para um dispositivo filho cuja descrição de identificação contém o valor especificado por SomeValue. Se WdfChildListRetrieveAddressDescription localizar o dispositivo, ele recuperará a descrição do endereço do dispositivo.
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;
}
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Cabeçalho | wdfchildlist.h (inclua Wdf.h) |
Biblioteca | Wdf01000.sys (consulte Controle de versão da biblioteca de estrutura.) |
IRQL | <= DISPATCH_LEVEL |
Regras de conformidade de DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |
Confira também
WDF_CHILD_ADDRESS_DESCRIPTION_HEADER
WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_INIT