EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED función de devolución de llamada (wdfchildlist.h)
[Solo se aplica a KMDF]
La función de devolución de llamada de eventos EvtChildListDeviceReenumerate del controlador permite al controlador aprobar o cancelar una reenumeración de un dispositivo especificado.
Sintaxis
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
Identificador de un objeto de lista secundario de marco.
[in] OldDevice
Identificador de un objeto de dispositivo de marco.
[in] OldAddressDescription
Puntero opcional a una estructura de WDF_CHILD_ADDRESS_DESCRIPTION_HEADER que identifica una descripción de dirección secundaria o NULL. Si se proporciona, esta estructura contiene información de dirección que era relevante antes de volver a enumerar el dispositivo.
[out] NewAddressDescription
Puntero opcional a una estructura de WDF_CHILD_ADDRESS_DESCRIPTION_HEADER que identifica una descripción de dirección secundaria o NULL. Si se proporciona, la función de devolución de llamada rellena esta estructura con información de dirección nueva sobre el dispositivo.
Valor devuelto
La función de devolución de llamada EvtChildListDeviceReenumerated devuelve TRUE para aprobar la reenumeración o FALSE para cancelarla.
Comentarios
Si un controlador de bus usa la enumeración dinámica, puede registrar una función de devolución de llamada EvtChildListDeviceReenumerate llamando a WdfFdoInitSetDefaultChildListConfig o WdfChildListCreate.
Los controladores de bus basados en marco pueden recibir una solicitud de un controlador de función para volver a enumerar un dispositivo secundario determinado. Para obtener más información sobre estas solicitudes, vea Control de solicitudes de enumeración.
La función de devolución de llamada EvtChildListDeviceReenumerate del controlador permite al controlador aprobar o cancelar la reenumeración. El parámetro OldDevice identifica el dispositivo y el parámetro ChildList identifica la lista secundaria de la que es miembro el dispositivo. Si la función de devolución de llamada devuelve TRUE para aprobar la reenumeración o si la función de devolución de llamada no existe, el marco hace lo siguiente:
- Quita el objeto de dispositivo de marco del dispositivo (identificado por OldDevice), pero conserva la descripción de identificación del dispositivo.
- Llama a la función de devolución de llamada EvtChildListCreateDevice del controlador, pasando la descripción de identificación guardada, para que la función de devolución de llamada pueda llamar a WdfDeviceCreate para crear un nuevo objeto de dispositivo de marco.
Para obtener más información sobre la enumeración dinámica, vea Enumeración de los dispositivos en un bus.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Encabezado | wdfchildlist.h (incluya Wdf.h) |
IRQL | <= DISPATCH_LEVEL |