EVT_WDF_CHILD_LIST_CREATE_DEVICE función de devolución de llamada (wdfchildlist.h)
[Solo se aplica a KMDF]
Un controlador de busEvtChildListCreateDevice función de devolución de llamada de eventos crea un objeto de dispositivo de marco para un nuevo dispositivo que se ha enumerado dinámicamente.
Sintaxis
EVT_WDF_CHILD_LIST_CREATE_DEVICE EvtWdfChildListCreateDevice;
NTSTATUS EvtWdfChildListCreateDevice(
[in] WDFCHILDLIST ChildList,
[in] PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription,
[in] PWDFDEVICE_INIT ChildInit
)
{...}
Parámetros
[in] ChildList
Identificador del objeto de lista secundaria del marco que especificó el controlador cuando llamó a WdfChildListAddOrUpdateChildDescriptionAsPresent.
[in] IdentificationDescription
Puntero a una copia de la estructura WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER que especificó el controlador cuando llamó a WdfChildListAddOrUpdateChildDescriptionAsPresent.
[in] ChildInit
Puntero a una estructura de WDFDEVICE_INIT.
Valor devuelto
La función de devolución de llamada EvtChildListCreateDevice debe devolver STATUS_SUCCESS u otro valor de estado para el que NT_SUCCESS(estado) es igual a TRUE, si la operación se realiza correctamente. De lo contrario, esta función debe devolver un valor de estado para el que NT_SUCCESS(estado) es igual a FALSE.
Si se produjo un error en la operación, pero cree que el controlador debe intentarlo más tarde y si el controlador EvtChildListCreateDevice función de devolución de llamada no ha llamado a WdfDeviceCreate, el controlador puede devolver STATUS_RETRY. Como resultado, el marco llama a la EvtChildListCreateDevice función de devolución de llamada más adelante. Si el controlador devuelve STATUS_RETRY varias veces, el marco dejará de llamar a la función de devolución de llamada para el dispositivo con errores.
Observaciones
Si un controlador de bus usa enumeración dinámica, puede registrar un EvtChildListCreateDevice función de devolución de llamada llamando a WdfFdoInitSetDefaultChildListConfig o WdfChildListCreate.
Después de que un controlador llame a WdfChildListAddOrUpdateChildDescriptionAsPresent o WdfChildListUpdateAllChildDescriptionsAsPresent, el marco llama a la función de devolución de llamada EvtChildListCreateDevice del controlador. La función de devolución de llamada debe llamar a WdfDeviceCreate para crear un objeto de dispositivo de marco (un PDO).
Antes de llamar a WdfDeviceCreate, el controlador debe llamar a funciones proporcionadas por el marco que inicializan la estructura WDFDEVICE_INIT. Para obtener más información sobre estas funciones, consulte WDFDEVICE_INIT.
Para obtener más información sobre cómo llamar a WdfDeviceCreate, vea Creating a Framework Device Object.
Para obtener más información sobre la enumeración dinámica, vea Enumerar los dispositivos en un bus.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Universal |
versión mínima de KMDF | 1.0 |
encabezado de | wdfchildlist.h (incluya Wdf.h) |
irQL | PASSIVE_LEVEL |
Consulte también
WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER
WdfChildListAddOrUpdateChildDescriptionAsPresent