Funzione WdfPdoAddEjectionRelationsPhysicalDevice (wdfpdo.h)

[Si applica solo a KMDF]

Il metodo WdfPdoAddEjectionRelationsPhysicalDevice indica che un dispositivo specificato viene espulso quando viene inserito 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
Un'allocazione di memoria non riuscita.
 

Il metodo potrebbe restituire anche altri valori NTSTATUS.

Un controllo del bug di sistema si verifica se il driver fornisce un handle di oggetti non valido.

Commenti

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

Per altre informazioni, vedere Supporto di dispositivi eiettabili.

Esempio

Nell'esempio di codice seguente viene aggiunto un dispositivo che la struttura pPhysicalDeviceObject rappresenta all'elenco di dispositivi che vengono espulsi quando il dispositivo specificato dal dispositivo viene espulso.

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

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1.0
Intestazione wdfpdo.h (includere Wdf.h)
Libreria Wdf01000.sys (vedere Framework Library Versioning).
IRQL <= DISPATCH_LEVEL
Regole di conformità DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Vedi anche

WdfPdoClearEjectionRelationsDevices

WdfPdoRemoveEjectionRelationsPhysicalDevice