Función WdfDeviceWdmGetAttachedDevice (wdfdevice.h)
[Solo se aplica a KMDF]
El método WdfDeviceWdmGetAttachedDevice devuelve el siguiente objeto de dispositivo WDM inferior en la pila del dispositivo.
Sintaxis
PDEVICE_OBJECT WdfDeviceWdmGetAttachedDevice(
[in] WDFDEVICE Device
);
Parámetros
[in] Device
Identificador de un objeto de dispositivo de marco.
Valor devuelto
WdfDeviceWdmGetAttachedDevice devuelve un puntero a una estructura de DEVICE_OBJECT WDM . Si el identificador de objeto especificado representa un objeto de dispositivo físico (PDO), el método devuelve NULL.
Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.
Comentarios
El puntero que devuelve el método WdfDeviceWdmGetAttachedDevice es válido hasta que se elimina el objeto de dispositivo de marco. Si el controlador proporciona una función EvtCleanupCallback para el objeto de dispositivo de marco, el puntero es válido hasta que se devuelve la función de devolución de llamada.
Ejemplos
En el ejemplo de código siguiente se crea un mensaje de seguimiento que contiene punteros a los objetos de dispositivo WDM que representan el PDO, el FDO y el dispositivo siguiente inferior de un dispositivo.
TraceEvents(
TRACE_LEVEL_INFORMATION,
DBG_PNP,
"PDO(0x%p) FDO(0x%p), Lower(0x%p)\n",
WdfDeviceWdmGetPhysicalDevice(device),
WdfDeviceWdmGetDeviceObject(device),
WdfDeviceWdmGetAttachedDevice(device)
);
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Encabezado | wdfdevice.h (incluir Wdf.h) |
Library | 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) |