Compartir a través de


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

WDFDEVICE_INIT

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER

WdfChildListAddOrUpdateChildDescriptionAsPresent

WdfChildListCreate

WdfChildListUpdateAllChildDescriptionsAsPresent

WdfDeviceCrear

WdfFdoInitSetDefaultChildListConfig