IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS IOCTL(usbioctl.h)

클라이언트 드라이버는 전송 특성을 검색하기 위해 이 요청을 보냅니다.

주 코드

IRP_MJ_DEVICE_CONTROL

입력/출력 버퍼

AssociatedIrp.SystemBuffer 멤버는 호출자가 할당한 USB_TRANSPORT_CHARACTERISTICS 구조체에 대한 포인터입니다. 입력 시 버전을 USB_TRANSPORT_CHARACTERISTICS_VERSION_1 설정합니다. 출력 에서 버전은 USB_TRANSPORT_CHARACTERISTICS_VERSION_1 이하의 버전으로 다시 설정됩니다. 구조체의 나머지 멤버는 전송 정보로 채워집니다.

입력/출력 버퍼 길이

USB_TRANSPORT_CHARACTERISTICS 구조체의 크기입니다.

상태 블록

Irp->요청이 성공하면 IoStatus.Status 가 STATUS_SUCCESS 설정됩니다. 그렇지 않으면 NTSTATUS 코드로 적절한 오류 조건에 대한 상태입니다.

설명

이 요청은 스트리밍 알고리즘을 결정하는 전송 특성을 검색합니다. 예를 들어 디스플레이 드라이버는 대기 시간 및 대역폭 정보를 사용하여 코덱 선택을 결정할 수 있습니다.

이 정보를 항상 사용할 수 있는 것은 아닙니다. USB 드라이버 스택은 이러한 값을 노출하는 기본 전송에 따라 달라집니다. 따라서 클라이언트 드라이버에는 요청이 있는 경우 백업 메커니즘이 있어야 합니다.

클라이언트 드라이버가 항상 최신 정보를 알고자 하는 경우 드라이버는 전송 특성이 변경되면 알림을 등록하고, USB 드라이버 스택에 보류 중인 요청을 유지하고, 알림이 더 이상 필요하지 않을 때 등록을 취소해야 합니다. 드라이버는 이러한 IOCTL 요청을 전송하여 이러한 모든 작업을 수행할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10, 버전 1709
지원되는 최소 서버 Windows Server 2016
머리글 usbioctl.h
IRQL <=DISPATCH_LEVEL

추가 정보

드라이버에서 IOCTL 요청 만들기

Media-Agnostic(MA-USB)용 USB 클라이언트 드라이버

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously