EVT_WDF_CHILD_LIST_CREATE_DEVICE Rückruffunktion (wdfchildlist.h)

[Gilt nur für KMDF]

DieEvtChildListCreateDevice-Ereignisrückruffunktion eines Bustreibers erstellt ein Frameworkgeräteobjekt für ein neues Gerät, das dynamisch aufgelistet wurde.

Syntax

EVT_WDF_CHILD_LIST_CREATE_DEVICE EvtWdfChildListCreateDevice;

NTSTATUS EvtWdfChildListCreateDevice(
  [in] WDFCHILDLIST ChildList,
  [in] PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription,
  [in] PWDFDEVICE_INIT ChildInit
)
{...}

Parameter

[in] ChildList

Ein Handle für das untergeordnete Framework-Listenobjekt, das der Treiber beim Aufruf von WdfChildListAddOrUpdateChildDescriptionAsPresent angegeben hat.

[in] IdentificationDescription

Ein Zeiger auf eine Kopie der WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER Struktur, die der Treiber angegeben hat, als er WdfChildListAddOrUpdateChildDescriptionAsPresent aufgerufen hat.

[in] ChildInit

Ein Zeiger auf eine WDFDEVICE_INIT-Struktur .

Rückgabewert

Die Rückruffunktion EvtChildListCreateDevice muss STATUS_SUCCESS oder einen anderen status Wert zurückgeben, für den NT_SUCCESS(status) true entspricht, wenn der Vorgang erfolgreich ist. Andernfalls muss diese Funktion einen status Wert zurückgeben, für den NT_SUCCESS(status) false entspricht.

Wenn der Vorgang fehlgeschlagen ist, Ihr Treiber es jedoch später erneut versuchen sollte, und wenn die Rückruffunktion EvtChildListCreateDevice des Treibers nicht WdfDeviceCreate aufgerufen hat, kann der Treiber STATUS_RETRY zurückgeben. Daher ruft das Framework die Rückruffunktion EvtChildListCreateDevice später erneut auf. Wenn Ihr Treiber STATUS_RETRY mehrmals zurückgibt, beendet das Framework den Aufruf der Rückruffunktion für das fehlerhafte Gerät.

Hinweise

Wenn ein Bustreiber eine dynamische Enumeration verwendet, kann er eine EvtChildListCreateDevice-Rückruffunktion registrieren, indem er WdfFdoInitSetDefaultChildListConfig oder WdfChildListCreate aufruft.

Nachdem ein Treiber WdfChildListAddOrUpdateChildDescriptionAsPresent oder WdfChildListUpdateAllChildDescriptionsAsPresent aufgerufen hat, ruft das Framework die EvtChildListCreateDevice-Rückruffunktion des Treibers auf. Die Rückruffunktion muss WdfDeviceCreate aufrufen, um ein Framework-Geräteobjekt (PDO) zu erstellen.

Vor dem Aufrufen von WdfDeviceCreate muss der Treiber vom Framework bereitgestellte Funktionen aufrufen, die die WDFDEVICE_INIT-Struktur initialisieren. Weitere Informationen zu diesen Funktionen finden Sie unter WDFDEVICE_INIT.

Weitere Informationen zum Aufrufen von WdfDeviceCreate finden Sie unter Erstellen eines Framework-Geräteobjekts.

Weitere Informationen zur dynamischen Enumeration finden Sie unter Auflisten der Geräte in einem Bus.

Anforderungen

Anforderung Wert
Zielplattform Universell
KMDF-Mindestversion 1.0
Kopfzeile wdfchildlist.h (einschließen von Wdf.h)
IRQL PASSIVE_LEVEL

Weitere Informationen

WDFDEVICE_INIT

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER

WdfChildListAddOrUpdateChildDescriptionAsPresent

WdfChildListCreate

WdfChildListUpdateAllChildDescriptionsAsPresent

WdfDeviceCreate

WdfFdoInitSetDefaultChildListConfig