標準USB標識碼

為 USB 裝置產生的標識碼集取決於裝置是單一介面裝置還是多介面裝置。

Single-Interface USB 裝置

當插入新的 USB 裝置時,系統提供的 USB 中樞驅動程式會使用從裝置裝置 描述項擷取的資訊來撰寫下列裝置識別碼:

USB\VID_v (4) &PID_d (4) &REV_r (4)

其中:

中樞驅動程式會分別從裝置描述元idVendoridProductbcdDevice 字段擷取廠商和產品代碼。 這些是4位數的十六進位數位。

INF 模型區段也可以指定下列硬體識別碼:

USB\VID_v (4) &PID_d (4)

和下列相容的識別碼:

USB\CLASS_c (2) &SUBCLASS_s (2) &PROT_p (2)

USB\CLASS_c (2) &SUBCLASS_s (2)

USB\CLASS_c (2)

其中:

  • c (2) 是取自 裝置描述元的裝置類別程序代碼。

  • s (2) 是裝置子類別代碼。

  • p (2) 是通訊協定程式代碼。

裝置類別程式代碼、子類別代碼和通訊協定程序代碼是由裝置描述元bDeviceClass、bDeviceSubClassbDeviceProtocol 欄位決定。 這些是2位數的十六進位數位。

Multiple-Interface USB 裝置

具有多個介面的裝置稱為 複合 裝置。 從 Windows 2000 開始,當新的 USB 複合裝置 插入計算機時,USB 中樞驅動程式會建立實體裝置物件 (PDO) ,並通知作業系統其子裝置集已變更。 查詢與新 PDO 相關聯之硬體識別碼的中樞驅動程序之後,操作系統會搜尋適當的 INF 檔案,以尋找標識符的相符專案。 如果找到 USB\COMPOSITE 以外的相符專案,它會載入 INF 檔案中指出的驅動程式。 不過,如果找不到其他相符專案,操作系統會使用相容的標識碼 USB\COMPOSITE,它會載入USB一般父驅動程式。 泛型父驅動程序接著會建立個別的 PDO,並為複合裝置的每個介面產生一組個別的硬體識別碼。

每個介面都有下列形式的裝置識別碼:

USB\VID_v (4) &PID_d (4) &MI_z (2)

其中:

INF 模型區段也可以指定下列相容的識別碼:

USB\CLASS_d (2) &SUBCLASS_s (2) &PROT_p (2)

USB\CLASS_d (2) &SUBCLASS_s (2)

USB\CLASS_d (2)

USB\COMPOSITE

其中:

  • d (2) 是取自裝置描述元的裝置類別程序代碼。

  • s (2) 是子類別代碼。

  • p (2) 是通訊協定程式代碼。

裝置類別程式代碼、子類別代碼和通訊協定程式代碼分別由介面描述元bInterfaceClass、bInterfaceSubClassbInterfaceProtocol 欄位決定。 這些是2位數的十六進位數位。