MB 身分識別型解決方案詳細資料
組態需求
必須維護跨轉換Windows 8函式的順序。 例如,如果 MBIM 是 Windows-8-Configuration 中的第三個函式,它也應該是 IHV-NCM-2.0-Configuration 中的第三個函式。
Windows-7-Configuration
Windows-7-Configuration 應該是 morphing 裝置中的第一個設定。 此設定應該具有大量儲存功能作為其中一個函式。 Windows 8不會選取此設定。 在 Windows 7 和舊版 Windows 中,Windows-7-Configuration 是選取的預設組態。 此設定可用來公開 USB 大量儲存函式,其中 IHV 放置其驅動程式套件,可讓使用者安裝 IHV 的驅動程式。
Windows-8-Configuration
Windows-7-Configuration 會將 MBIM 函式公開為載入 MBCD 的其中一個函式。 在 Windows 8中,此組態的值會用於傳回至 USBCCGP 的 subCompatibleID 值。 USBCCGP 會在載入時選取此設定。 Windows-8-Configuration 應該是 Configuration 2、3 或 4。 Windows-8-Configuration 不支援其他設定。 此設定也會公開大量儲存函式作為第一個函式,以允許使用者安裝 IHV 的驅動程式套件。
IHV-NCM-2.0-Configuration
IHV-NCM-2.0-Configuration 會公開 IHV 特定函式以及 MBIM 和大量儲存函式。 Windows 不會設定或使用此組態。 使用者安裝之後的 IHV 軟體可以轉換成此設定。 請注意,此設定中的函式順序應該與 Windows-8-Configuration 中的相同。 雖然可以將額外的函式新增至 Windows-8-Configuration,但現有的函式應該以相同的順序保留。
IHV-NCM-1.0-Configuration
IHV-NCM-1.0-Configuration 會公開 IHV 特定函式以及 NCM 1.0 和大量儲存函式。 Windows 8未設定或使用此組態。 此設定只有在使用者安裝 IHV 軟體之後,才會在 Windows 7 和舊版 Windows 中使用。 IHV 軟體會將 morphing 裝置從 Windows-7-Configuration 轉換成此設定。
相容的識別碼
相容的識別碼是裝置用來指出驅動程式載入喜好設定的 8 個字元或較小的字串。 裝置可以使用 Microsoft OS 描述元來定義相容的識別碼。 相容和子相容的識別碼會套用至個別函式。 每個組態都可以有一組不同的相容識別碼,其對應至該組態內的函式集。 雖然相容和子相容的識別碼適用于個別函式,但未選取任何組態時,型態裝置可以有單一相容識別碼。 此相容和子相容的識別碼會以邏輯方式套用至整個型態裝置。
載入 USBCCGP
在Windows 8中,需要 USBCCGP 驅動程式,才能在型態裝置上自動選取 Windows-8-Configuration。
若要載入 USBCCGP 驅動程式,當未在型態裝置上選取任何組態時,型轉裝置必須報告下列相容且不相容的識別碼:
- 如果變形裝置使用 IAD 將介面分組為函式,則相容的識別碼應該回報為 「ALTRCFG」,而子相容性識別碼則為 Windows-8-Configuration 的數目。
- 如果型轉裝置使用 WCM UFD 將介面分組為函式,則相容識別碼應該回報為 「WMCALTR」,而子相容性識別碼則為 Windows-8-Configuration 的數目。
例如,如果 Windows-8-Configuration 是 Configuration 3,則這兩種情況下的子相容性識別碼會是 「3」。
Morphing 相容的識別碼
在 USB 裝置列舉期間,USBHUB 會在未在型態裝置上選取任何組態時,查詢相容識別碼的變形裝置。 型態裝置應該會傳回用來載入 USBCCGP 的相容和子相容性識別碼,如 MB 身分識別型解決方案概觀中所述。
在 USBHUB 載入 USBCCGP 之後,USBCCGP 會選取稍早報告的子相容性識別碼所指出的組態。 然後,USBCCGP 會重新查詢相容和子相容的識別碼。 此時,型態裝置應該會針對目前選取的組態傳回相容且不相容的識別碼。 因此,在 USBCCGP 載入並選取特定組態之後,變形裝置必須改變所報告的相容和子相容識別碼。 設定選取之後,型態裝置不得報告用來載入 USBCCGP 的相容和子相容性識別碼。
USBHUB 會在列舉期間從裝置查詢 Microsoft OS 描述元。
裝置會傳回處於未設定狀態的 CompatId。 此 CompatId 可用來載入 USBCCGP。
USBCCGP 會選取在不相容識別碼中報告的組態。
裝置會根據新的設定來改變其 Microsoft OS 描述元。 Microsoft OS 描述元的 USBCCGP 查詢。
裝置不會傳回任何 CompatID。 根據類別/子類別/通訊協定,USBCCGP 會載入 USBSTOR 和 MBCD。