Função WdfDeviceWdmGetAttachedDevice (wdfdevice.h)
[Aplica-se somente ao KMDF]
O método WdfDeviceWdmGetAttachedDevice retorna o objeto de dispositivo WDM mais baixo na pilha do dispositivo.
Sintaxe
PDEVICE_OBJECT WdfDeviceWdmGetAttachedDevice(
[in] WDFDEVICE Device
);
Parâmetros
[in] Device
Um identificador para um objeto de dispositivo de estrutura.
Retornar valor
WdfDeviceWdmGetAttachedDevice retorna um ponteiro para uma estrutura de DEVICE_OBJECT do WDM. Se o identificador de objeto especificado representar um PDO (objeto de dispositivo físico), o método retornará NULL.
Um bug marcar ocorrerá se o driver fornecer um identificador de objeto inválido.
Comentários
O ponteiro que o método WdfDeviceWdmGetAttachedDevice retorna é válido até que o objeto do dispositivo de estrutura seja excluído. Se o driver fornecer uma função EvtCleanupCallback para o objeto de dispositivo de estrutura, o ponteiro será válido até que a função de retorno de chamada retorne.
Exemplos
O exemplo de código a seguir cria uma mensagem de rastreamento que contém ponteiros para os objetos do dispositivo WDM que representam o PDO, o FDO e o dispositivo mais baixo de um 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 | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Cabeçalho | wdfdevice.h (inclua Wdf.h) |
Biblioteca | Wdf01000.sys (consulte Controle de versão da biblioteca de estrutura.) |
IRQL | <= DISPATCH_LEVEL |
Regras de conformidade de DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |