Compartilhar via


EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP função de retorno de chamada (wdfchildlist.h)

[Aplica-se somente ao KMDF]

A função de retorno de chamada de evento de um driver EvtChildListAddressDescriptionCleanup libera todas as alocações de memória para uma descrição de endereço que a função de retorno de chamada do driver EvtChildListAddressDescriptionDuplicate alocada.

Sintaxe

EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP EvtWdfChildListAddressDescriptionCleanup;

void EvtWdfChildListAddressDescriptionCleanup(
  [in]      WDFCHILDLIST ChildList,
  [in, out] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription
)
{...}

Parâmetros

[in] ChildList

Um identificador para um objeto de lista filho da estrutura.

[in, out] AddressDescription

Um ponteiro para uma estrutura de WDF_CHILD_ADDRESS_DESCRIPTION_HEADER que identifica uma descrição de endereço.

Valor de retorno

Nenhum

Observações

Se um driver de ônibus estiver usando de enumeração dinâmica, ele poderá registrar uma função de retorno de chamada EvtChildListAddressDescriptionCleanup chamando WdfFdoInitSetDefaultChildListConfig ou WdfChildListCreate.

Se uma descrição de endereço apontar para informações adicionais armazenadas na memória alocada dinamicamente e se essa memória for alocada por um EvtChildListAddressDescriptionDuplicate função de retorno de chamada, o driver deverá fornecer uma função de retorno de chamada EvtChildListAddressDescriptionCleanup função de retorno de chamada.

Normalmente, a função EvtChildListAddressDescriptionDuplicate aloca memória chamando ExAllocatePool. A função de retorno de chamada EvtChildListAddressDescriptionCleanup deve desalocar essa memória chamando ExFreePool. Essa função de retorno de chamada não deve tentar desalocar o restante da descrição do endereço. Em outras palavras, a função de retorno de chamada não deve desalocar a estrutura de descrição do endereço à qual o parâmetro AddressDescription aponta; ele deve desalocar apenas alocações de memória adicionais para as quais a estrutura de descrição aponta.

Para obter mais informações sobre enumeração dinâmica, consulte Enumerando os dispositivos em um barramento.

Requisitos

Requisito Valor
da Plataforma de Destino Universal
versão mínima do KMDF 1.0
cabeçalho wdfchildlist.h (inclua Wdf.h)
IRQL <= DISPATCH_LEVEL

Consulte também

EvtChildListAddressDescriptionDuplicate

ExAllocatePool

ExFreePool

WDF_CHILD_ADDRESS_DESCRIPTION_HEADER

WdfChildListCreate

WdfFdoInitSetDefaultChildListConfig