Condividi tramite


Funzione WdfPdoAddEjectionRelationsPhysicalDevice (wdfpdo.h)

[Si applica solo a KMDF]

Il metodo WdfPdoAddEjectionRelationsPhysicalDevice indica che un dispositivo specificato viene espulso quando viene espulso un altro dispositivo specificato.

Sintassi

NTSTATUS WdfPdoAddEjectionRelationsPhysicalDevice(
  [in] WDFDEVICE      Device,
  [in] PDEVICE_OBJECT PhysicalDevice
);

Parametri

[in] Device

Handle per un oggetto dispositivo framework.

[in] PhysicalDevice

Puntatore a una struttura di DEVICE_OBJECT fornita dal chiamante che rappresenta un oggetto dispositivo fisico (PDO).

Valore restituito

Se l'operazione ha esito positivo, il metodo restituisce STATUS_SUCCESS. I valori restituiti aggiuntivi includono:

Codice restituito Descrizione
STATUS_INVALID_PARAMETER
Un parametro di input è NULL.
STATUS_INSUFFICIENT_RESOURCES
Allocazione di memoria non riuscita.
 

Il metodo potrebbe anche restituire altri valori NTSTATUS.

Se il driver fornisce un handle di oggetto non valido, si verifica un controllo dei bug di sistema.

Osservazioni:

Il parametro PhysicalDevice punta a un PDO di un dispositivo che viene espulso quando il dispositivo identificato da Dispositivo viene espulso. In genere, entrambi i dispositivi sono controllati dal driver chiamante. Non segnalare i dispositivi figlio di Dispositivo perché quando il gestore PnP esegge un dispositivo padre, espelle anche gli elementi figlio del dispositivo.

Per altre informazioni, vedere Supporto di dispositivi eiettabili.

Esempi

Nell'esempio di codice seguente viene aggiunto un dispositivo rappresentato dalla struttura pPhysicalDeviceObject all'elenco di dispositivi che vengono espulsi quando viene espulso il dispositivo che dispositivo specifica.

PDEVICE_OBJECT  pPhysicalDeviceObject;
NTSTATUS  status;
...
status = WdfPdoAddEjectionRelationsPhysicalDevice(
 device,
 pPhysicalDeviceObject
                                                  );

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
versione minima di KMDF 1.0
intestazione wdfpdo.h (include Wdf.h)
Biblioteca Wdf01000.sys (vedere Controllo delle versioni della libreria framework).
IRQL <= LIVELLO_DI_INVIO
regole di conformità DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Vedere anche

WdfPdoClearEjectionRelationsDevices

WdfPdoRemoveEjectionRelationsPhysicalDevice