Compartir a través de


Función WdfPdoAddEjectionRelationsPhysicalDevice (wdfpdo.h)

[Solo se aplica a KMDF]

El método WdfPdoAddEjectionRelationsPhysicalDevice indica que se expulsa un dispositivo especificado cuando se expulsa otro dispositivo especificado.

Sintaxis

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

Parámetros

[in] Device

Identificador de un objeto de dispositivo de marco.

[in] PhysicalDevice

Puntero a una estructura de DEVICE_OBJECT proporcionada por el autor de la llamada que representa un objeto de dispositivo físico (PDO).

Valor devuelto

Si la operación se realiza correctamente, el método devuelve STATUS_SUCCESS. Entre los valores devueltos adicionales se incluyen:

Código de retorno Descripción
STATUS_INVALID_PARAMETER
Un parámetro de entrada es NULL .
STATUS_INSUFFICIENT_RESOURCES
Error en la asignación de memoria.
 

El método también puede devolver otros valores de NTSTATUS.

Se produce una comprobación de errores del sistema si el controlador proporciona un identificador de objeto no válido.

Observaciones

El parámetro PhysicalDevice apunta a un PDO de un dispositivo que se expulsa cuando se expulsa el dispositivo identificado por Dispositivo. Normalmente, ambos dispositivos se controlan mediante el controlador de llamada. No notifique los dispositivos secundarios de Dispositivo porque cuando el administrador de PnP expulsa un dispositivo primario, también expulsa los elementos secundarios del dispositivo.

Para obtener más información, vea compatibilidad con dispositivos ejectables.

Ejemplos

En el ejemplo de código siguiente se agrega un dispositivo que la estructura pPhysicalDeviceObject representa a la lista de dispositivos que se expulsan cuando se expulsa el dispositivo que dispositivo especifica.

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

Requisitos

Requisito Valor
de la plataforma de destino de Universal
versión mínima de KMDF 1.0
encabezado wdfpdo.h (incluya Wdf.h)
Biblioteca Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos).
irQL <= DISPATCH_LEVEL
reglas de cumplimiento de DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Consulte también

WdfPdoClearEjectionRelationsDevices

WdfPdoRemoveEjectionRelationsPhysicalDevice