移除適用于 Windows 可攜式裝置的 WPDUSB.SYS 驅動程式
受影響的平臺
用戶端 - Windows 7
伺服器 - Windows Server 2008 R2
功能影響
嚴重性 - 低
頻率 - 低
描述
Microsoft 已使用一般WINUSB.SYS驅動程式取代 Windows Vista USB 驅動程式堆疊 (WPDUSB.SYS) (WPD) 的核心模式元件。 與原始WPDUSB.SYS驅動程式的通訊是透過私人 I/O 控制 (IOCTL) 代碼;也已移除這些支援。
這些 IOCTL 程式碼的任何取用者都必須負責適當解譯和實作媒體傳輸通訊協定 (MTP) 。 Windows Vista 不支援由協力廠商應用程式使用這些 IOCTL 代碼。
影響性外顯
任何相依于這些私人 IOCTL 代碼可用性的應用程式,都無法再存取 USB 連線的 MTP 裝置。
降低
相依于私人 IOCTL 代碼的應用程式使用者必須使用不同的應用程式 (或更新版本的應用程式) ,才能存取 USB 連線的 MTP 裝置。
解決方法
應用程式應該使用 Windows 可攜式裝置 (WPD) API 來尋找任何 WPD 裝置並與其互動。 雖然 WPD 裝置實作 MTP 來與電腦通訊,但 WPD 不限於 MTP 裝置。 此外,如果透過私人 IOCTL 直接存取裝置,將應用程式限制為只與 USB 連線的裝置通訊,使用 WPD API 會擴充其他通訊協定 (的連線選項清單,例如 Wi-Fi) 。 在應用程式必須是 MTP 感知的罕見情況下,WPD API 會提供原始 MTP 命令的傳遞機制。
利用功能
Windows XP (透過 Windows Format SDK) 、Windows Vista 和 Windows 7 支援 WPD API。 WPD 的 Windows 7 實作新增了透過藍牙的 MTP 支援。
其他資源的連結