Função WdfUsbTargetDeviceWdmGetConfigurationHandle (wdfusb.h)
[Aplica-se somente ao KMDF]
O método WdfUsbTargetDeviceWdmGetConfigurationHandle retorna o identificador do tipo USBD_CONFIGURATION_HANDLE associado à configuração atual de um dispositivo USB especificado.
Sintaxe
USBD_CONFIGURATION_HANDLE WdfUsbTargetDeviceWdmGetConfigurationHandle(
[in] WDFUSBDEVICE UsbDevice
);
Parâmetros
[in] UsbDevice
Um identificador para um objeto de dispositivo USB que foi obtido de uma chamada anterior para WdfUsbTargetDeviceCreateWithParameters.
Retornar valor
Se o driver tiver selecionado uma configuração para o dispositivo, WdfUsbTargetDeviceWdmGetConfigurationHandle retornará o identificador do tipo USBD_CONFIGURATION_HANDLE do dispositivo. Caso contrário, o método retornará NULL.
Um bug marcar ocorrerá se o driver fornecer um identificador de objeto inválido.
Comentários
Um driver baseado em estrutura precisa obter um identificador do tipo USBD_CONFIGURATION_HANDLE somente se ele criar um URB que contenha uma estrutura _URB_SELECT_INTERFACE .
O driver pode chamar WdfUsbTargetDeviceWdmGetConfigurationHandle depois de chamar WdfUsbTargetDeviceSelectConfig. O identificador tipo USBD_CONFIGURATION_HANDLE que WdfUsbTargetDeviceWdmGetConfigurationHandle retorna é válido até que o driver chame WdfUsbTargetDeviceSelectConfig novamente ou o objeto de dispositivo USB seja excluído. Se o driver fornecer uma função EvtCleanupCallback para o objeto de dispositivo USB e se o objeto for excluído antes que o driver chame WdfUsbTargetDeviceSelectConfig novamente, o identificador será válido até que a função EvtCleanupCallback do objeto retorne.
Para obter mais informações sobre o método WdfUsbTargetDeviceWdmGetConfigurationHandle e destinos de E/S USB, consulte Destinos de E/S USB.
Exemplos
O exemplo de código a seguir obtém um identificador para a configuração atual de um dispositivo USB especificado.
USBD_CONFIGURATION_HANDLE deviceConfigHdl;
deviceConfigHdl = WdfUsbTargetDeviceWdmGetConfigurationHandle(UsbDevice);
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Cabeçalho | wdfusb.h (inclua Wdfusb.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), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf) |