EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED função de retorno de chamada (wdfchildlist.h)
[Aplica-se somente ao KMDF]
A função de retorno de chamada de evento EvtChildListDeviceReenumerated de um driver permite que o driver aprove ou cancele uma reenumeração de um dispositivo especificado.
Sintaxe
EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED EvtWdfChildListDeviceReenumerated;
BOOLEAN EvtWdfChildListDeviceReenumerated(
[in] WDFCHILDLIST ChildList,
[in] WDFDEVICE OldDevice,
[in] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER OldAddressDescription,
[out] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER NewAddressDescription
)
{...}
Parâmetros
[in] ChildList
Um identificador para um objeto de lista filho da estrutura.
[in] OldDevice
Um identificador para um objeto de dispositivo de estrutura.
[in] OldAddressDescription
Ponteiro opcional para uma estrutura WDF_CHILD_ADDRESS_DESCRIPTION_HEADER que identifica uma descrição de endereço filho ou NULL. Se fornecida, essa estrutura contém informações de endereço relevantes antes da reenumeração do dispositivo.
[out] NewAddressDescription
Ponteiro opcional para uma estrutura WDF_CHILD_ADDRESS_DESCRIPTION_HEADER que identifica uma descrição de endereço filho ou NULL. Se fornecida, a função de retorno de chamada preencherá essa estrutura com novas informações de endereço sobre o dispositivo.
Retornar valor
A função de retorno de chamada EvtChildListDeviceReenumerated retorna TRUE para aprovar a reenumeração ou FALSE para cancelá-la.
Comentários
Se um driver de barramento estiver usando enumeração dinâmica, ele poderá registrar uma função de retorno de chamada EvtChildListDeviceReenumerated chamando WdfFdoInitSetDefaultChildListConfig ou WdfChildListCreate.
Os drivers de barramento baseados em estrutura podem receber uma solicitação de um driver de função para reenumerar um dispositivo filho específico. Para obter mais informações sobre essas solicitações, consulte Manipulando solicitações de enumeração.
A função de retorno de chamada EvtChildListDeviceReenumerated do driver de ônibus permite que o driver aprove ou cancele a reenumeração. O parâmetro OldDevice identifica o dispositivo e o parâmetro ChildList identifica a lista filho da qual o dispositivo é membro. Se a função de retorno de chamada retornar TRUE para aprovar a reenumeração ou se a função de retorno de chamada não existir, a estrutura fará o seguinte:
- Remove o objeto de dispositivo de estrutura do dispositivo (que é identificado por OldDevice), mas mantém a descrição de identificação do dispositivo.
- Chama a função de retorno de chamada EvtChildListCreateDevice do driver, passando a descrição de identificação salva para que a função de retorno de chamada possa chamar WdfDeviceCreate para criar um novo objeto de dispositivo de estrutura.
Para obter mais informações sobre enumeração dinâmica, consulte Enumerando os dispositivos em um barramento.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Cabeçalho | wdfchildlist.h (inclua Wdf.h) |
IRQL | <= DISPATCH_LEVEL |