架構將每個 USB 介面表示為框架 USB 介面物件。 當驅動程式建立 USB 裝置物件時,架構會為裝置的第一個 USB 組態中包含的每個 USB 介面建立 USB 介面物件。
大部分的 USB 裝置只有一個介面,而且介面只有一個替代設定。 這類裝置的驅動程式通常不需要使用架構 USB 介面物件所定義的物件方法。
如果您的驅動程式支援提供多個介面或替代設定的 USB 裝置,介面物件方法可讓驅動程式執行下列作業:
取得介面資訊。
選擇 USB 介面的其他設定。
#D0 取得介面資訊
在驅動程式呼叫 WdfUsbTargetDeviceCreateWithParameters 之後,它可以呼叫 WdfUsbTargetDeviceGetInterface,以取得架構 USB 介面物件的控制代碼,該物件代表裝置的其中一個 USB 介面。 然後,您的驅動程式可以呼叫USB介面物件定義的數種方法,以取得USB介面的相關信息。
您的驅動程式在呼叫 WdfUsbTargetDeviceCreateWithParameters 之後即可隨時呼叫下列方法:
WdfUsbInterfaceGetInterfaceNumber
傳回與 USB 介面對象相關聯的 USB 介面編號。
#B0 #A1 #A2 WdfUsbInterfaceGetDescriptor #A3 #C4
擷取與USB介面其中一個替代設定相關聯的USB介面描述元。
#B0 #A1 #A2 WdfUsbInterfaceGetNumEndpoints #A3 #C4
傳回與 USB 介面其中一個替代設定相關聯的端點數目。
#B0 #A1 #A2 WdfUsbInterfaceGetEndpointInformation #A3 #C4
擷取端點及其相關聯管道的相關信息。
您的驅動程式在呼叫 WdfUsbTargetDeviceSelectConfig 後可以呼叫以下方法:
具有已配置設定索引的 WdfUsbInterface
傳回索引值,識別目前為USB介面選取的替代設定。
#B0 #A1 #A2 WdfUsbInterfaceGetNumConfiguredPipes #A3 #C4
傳回為指定 USB 裝置介面設定的管道數目。
#B0 #A1 #A2 WdfUsbInterfaceGetConfiguredPipe #A3 #C4
傳回與指定 USB 設備介面和管道索引相關聯的框架管道物件的控制代碼。
為 USB 介面選擇另一種設定
在驅動程式呼叫 #B0 #A1 WdfUsbTargetDeviceCreateWithParameters #A2 #A3 之後,驅動程式可以呼叫 #B4 #A5 WdfUsbInterfaceGetNumSettings #A6 #C7,以取得 USB 介面支援的替代設定數目。
在驅動程式呼叫 #B0 #A1 WdfUsbTargetDeviceSelectConfig #A2 #C3 以選取 USB 裝置的組態之後,驅動程式可以呼叫 #B4 #A5 WdfUsbInterfaceSelectSetting #A6 #C7 來選取其中一個組態 USB 介面的替代設定。
裝置的替代設定必須連續編號,從零開始。
如需相關資訊,請參閱 #B0 如何在 USB 介面中選擇替代設定 #A1。