IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS IOCTL (usbioctl.h)
O driver cliente envia essa solicitação para recuperar as características de transporte.
Código principal
Buffer de entrada/saída
O membro AssociatedIrp.SystemBuffer é um ponteiro para uma estrutura de USB_TRANSPORT_CHARACTERISTICS alocada pelo chamador. Na entrada, defina de versão como USB_TRANSPORT_CHARACTERISTICS_VERSION_1. Na saída versão é redefinida para uma versão menor ou igual a USB_TRANSPORT_CHARACTERISTICS_VERSION_1; os membros restantes da estrutura estão cheios de informações de transporte.
Comprimento do buffer de entrada/saída
O tamanho da estrutura USB_TRANSPORT_CHARACTERISTICS.
Bloco de status
Irp->IoStatus.Status será definido como STATUS_SUCCESS se a solicitação for bem-sucedida. Caso contrário, status à condição de erro apropriada como um código de NTSTATUS.
Observações
Essa solicitação recupera as características de transporte para decidir sobre um algoritmo para streaming. Por exemplo, um driver de exibição pode usar as informações de latência e largura de banda para decidir sua seleção de codec.
Essas informações podem não estar sempre disponíveis. A pilha de driver USB depende do transporte subjacente para expor esses valores. Portanto, o driver cliente deve ter um mecanismo de backup para esses casos em que a solicitação.
Se o driver cliente estiver interessado em saber as informações mais recentes o tempo todo, o driver deverá se registrar para notificação quando as características de transporte forem alteradas, manter uma solicitação pendente com a pilha do driver USB e cancelar o registro quando a notificação não for mais necessária. O driver pode realizar todas essas tarefas enviando essas solicitações IOCTL.
- IOCTL_USB_REGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE
- IOCTL_USB_NOTIFY_ON_TRANSPORT_CHARACTERISTICS_CHANGE
- IOCTL_USB_UNREGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 10, versão 1709 |
servidor com suporte mínimo | Windows Server 2016 |
cabeçalho | usbioctl.h |
IRQL | <=DISPATCH_LEVEL |
Consulte também
criar solicitações IOCTL em drivers
drivers de cliente USB para Media-Agnostic (MA-USB)
WdfIoTargetSendInternalIoctlOthersSynchronously