EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED funzione di callback (wdfchildlist.h)

[Si applica solo a KMDF]

La funzione di callback dell'evento EvtChildListDeviceReenumerated di un driver consente al driver di approvare o annullare una rinumerazione di un dispositivo specificato.

Sintassi

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
)
{...}

Parametri

[in] ChildList

Handle per un oggetto elenco figlio del framework.

[in] OldDevice

Handle per un oggetto dispositivo framework.

[in] OldAddressDescription

Puntatore facoltativo a una struttura WDF_CHILD_ADDRESS_DESCRIPTION_HEADER che identifica una descrizione dell'indirizzo figlio o NULL. Se specificato, questa struttura contiene informazioni sull'indirizzo rilevanti prima della rinumerazione del dispositivo.

[out] NewAddressDescription

Puntatore facoltativo a una struttura WDF_CHILD_ADDRESS_DESCRIPTION_HEADER che identifica una descrizione dell'indirizzo figlio o NULL. Se specificato, la funzione di callback riempie questa struttura con nuove informazioni sull'indirizzo del dispositivo.

Valore restituito

La funzione di callback evtChildListDeviceReenumerated restituisceTRUE per approvare la rinumerazione o FALSE per annullarla.

Commenti

Se un driver del bus usa enumerazione dinamica, può registrare una funzione di callback evtChildListDeviceReenumenumerated chiamando WdfFdoInitSetDefaultChildListConfig o WdfChildListCreate.

I driver del bus basati su framework possono ricevere una richiesta da un driver di funzione per rinumerare un determinato dispositivo figlio. Per altre informazioni su queste richieste, vedere Gestione delle richieste di enumerazione.

La funzione di callback evtChildListDeviceReenumerated del driver consente al driver di approvare o annullare la rinumerazione. Il parametro OldDevice identifica il dispositivo e il parametro ChildList identifica l'elenco figlio di cui il dispositivo è membro. Se la funzione callback restituisce TRUE per approvare la rinumerazione o se la funzione di callback non esiste, il framework esegue le operazioni seguenti:

  1. Rimuove l'oggetto del dispositivo framework del dispositivo del dispositivo ,identificato da OldDevice, ma mantiene la descrizione dell'identificazione del dispositivo.
  2. Chiama la funzione di callback EvtChildListCreateDevice del driver, passando la descrizione dell'identificazione salvata, in modo che la funzione di callback possa chiamare WdfDeviceCreate per creare un nuovo oggetto dispositivo framework.
Se il driver del bus usa descrizioni degli indirizzi, la funzione di callback evtChildListDeviceReenumerated riceve puntatori a due descrizioni degli indirizzi. Un punto alla descrizione dell'indirizzo associato all'oggetto dispositivo precedente. L'altro punta a una descrizione dell'indirizzo che la funzione callback deve compilare con informazioni che descrivono la posizione corrente del dispositivo.

Per altre informazioni sull'enumerazione dinamica, vedere Enumerazione dei dispositivi in un bus.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1,0
Intestazione wdfchildlist.h (includere Wdf.h)
IRQL <= DISPATCH_LEVEL

Vedi anche

EvtChildListCreateDevice

WDF_CHILD_ADDRESS_DESCRIPTION_HEADER

WdfChildListCreate

WdfDeviceCreate

WdfFdoInitSetDefaultChildListConfig