共用方式為


IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS IOCTL (usbioctl.h)

用戶端驅動程式會傳送此要求來擷取傳輸特性。

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入/輸出緩衝區

AssociatedIrp.SystemBuffer 成員是呼叫端配置 USB_TRANSPORT_CHARACTERISTICS 結構的指標。 在輸入時,將 Version 設定為 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 的 USB 用戶端驅動程式 (MA-USB)

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously