Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
[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 |
|---|---|
|
Un parámetro de entrada es NULL . |
|
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) |