共用方式為


_URB_SELECT_CONFIGURATION結構 (usb.h)

用戶端驅動程式會使用 _URB_SELECT_CONFIGURATION 結構來選取 USB 裝置的設定。

語法

struct _URB_SELECT_CONFIGURATION {
  struct _URB_HEADER            Hdr;
  PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor;
  USBD_CONFIGURATION_HANDLE     ConfigurationHandle;
  USBD_INTERFACE_INFORMATION    Interface;
};

成員

Hdr

指定 URB 標頭資訊的 _URB_HEADER 結構的指標。 Hdr.Function 必須是URB_FUNCTION_SELECT_CONFIGURATION,而且 Hdr.Length 必須是整個 URB 的大小。 驅動程式可以使用 usbdlib.h 中定義的GET_SELECT_CONFIGURATION_REQUEST_SIZE巨集來取得 URB 的大小。

ConfigurationDescriptor

初始化之 USB 組態描述元的指標,識別要用於裝置上的組態。 如果此成員 NULL,裝置將會設定為未設定的狀態。

ConfigurationHandle

包含句柄,用來從主機控制器驅動程式傳回時存取此組態。 USB 用戶端驅動程式必須將此成員視為不透明。

Interface

指定 USBD_INTERFACE_INFORMATION 結構的可變長度陣列,每個數位都會描述所選取組態所支援的介面。

將要求傳送至主機控制器驅動程式之前,驅動程式可以藉由設定該介面的 USBD_INTERFACE_INFORMATION 結構成員,為這個數位中包含的一或多個介面選取替代設定。

從主控制器驅動程式傳回時,此成員包含 USBD_INTERFACE_INFORMATION 結構,其中包含描述該介面內端點功能和格式的數據。

言論

URB_FUNCTION_SELECT_CONFIGURATION URB 是由一個 _URB_SELECT_CONFIGURATION 結構所組成,後面接著一連串可變長度的 USBD_INTERFACE_INFORMATION 結構陣列,每個元素在數位中用於組態中的每個唯一介面編號。 用戶端驅動程式必須配置足夠的記憶體,以包含所選介面中每個端點的一個 USBD_PIPE_INFORMATION 結構。

驅動程式可以使用 USBD_CreateConfigurationRequestEx 服務例程來配置 URB。

屬於此結構但此處未描述的其他成員,應視為不透明,並視為保留供系統使用。

要求

要求 價值
標頭 usb.h (包括 Usb.h)

另請參閱

URB

USB 結構

USBD_CreateConfigurationRequestEx

USBD_INTERFACE_INFORMATION

USBD_PIPE_INFORMATION

_URB_HEADER