本文章介紹一個名為 USB 泛型父驅動程式的獨立驅動程式 (Usbccgp.sys),由 Microsoft 為複合裝置提供。
許多USB裝置都會公開多個USB介面。 這些裝置稱為 複合裝置。 Windows 作業系統包含 USB 總線驅動程式(Usbhub.sys)中的通用父層功能,可以將複合裝置的每個介面皆顯示為獨立裝置。 為了簡化和改進這項設施,它已被轉移到一個名為 的獨立驅動程式,該驅動程式為 的 USB 泛型父驅動程式(Usbccgp.sys)。 裝置廠商可以使用泛型父驅動程式,針對某些介面選擇性地使用 Microsoft 提供的驅動程式支援。
某些複合裝置的介面會獨立運作。 例如,具有電源按鈕的複合 USB 鍵盤可能具有鍵盤的一個介面,以及電源按鈕的另一個介面。 USB 泛型父驅動程式會將每個介面列舉為個別的裝置。 作業系統會載入 Microsoft 提供的鍵盤驅動程式來管理鍵盤介面。 它會載入 Microsoft 提供的電源鍵驅動程式來管理電源鍵介面。
如果原生 Windows 驅動程式不支援裝置的介面,裝置的廠商應該提供介面的驅動程式和資訊 (INF) 檔案。 INF 檔案應該具有符合介面裝置標識碼的 INF DDInstall 區段。 INF 檔案不得符合複合裝置本身的裝置識別碼。 此設定可防止載入泛型父驅動程式。 如需作業系統如何載入 USB 泛型父驅動程式的說明,請參閱 USB 複合裝置的列舉。
某些裝置會將介面分組成介面集合,這些集合會協同運作以執行功能。 當介面分組在介面集合中時,泛型父驅動程式會將每個集合視為裝置,而不是每個個別介面。 如需詳細資訊,請參閱 USB 複合裝置上介面集合列舉概觀。
Windows 載入複合裝置介面的用戶端驅動程式之後,通用父驅動程式會將來自用戶端驅動程式的資料流程進行多路復用。 它會將個別的互動合併成複合裝置的單一資料串流。 泛型父系是整個複合裝置及其所有介面的電源原則擁有者。 它也會管理同步處理和隨插即用要求。
如果 Microsoft 提供的驅動程式支援某些介面,但不支援其他介面,則泛型父驅動程式可以簡化複合硬體廠商的工作。 廠商只需要為不支援的介面提供驅動程式。 泛型父驅動程式可協助針對支援的介面使用 Microsoft 提供的驅動程式。
下列文章描述泛型父驅動程式的特性和功能: