Suppression du pilote WPDUSB.SYS pour les appareils portables Windows

Plateformes affectées

Clients - Windows 7
Serveurs - Windows Server 2008 R2

Impact sur les fonctionnalités

Gravité - Faible
Fréquence - Faible

Description

Microsoft a remplacé le composant en mode noyau de la pile de pilotes USB Windows Vista (WPDUSB.SYS) pour les appareils portables Windows (WPD) par le pilote de WINUSB.SYS générique. La communication avec le pilote de WPDUSB.SYS d’origine s’effectue via des codes IOCTL (Contrôle d’E/S privé) ; la prise en charge de ceux-ci a également été supprimée.

Tout consommateur de ces codes IOCTL aurait été responsable de l’interprétation et de la mise en œuvre correctes du protocole MTP (Media Transfer Protocol). Windows Vista ne prenait pas en charge l’utilisation de ces codes IOCTL par des applications tierces.

Manifestation d’impact

Toute application qui dépendait de la disponibilité de ces codes IOCTL privés n’aurait plus accès aux appareils MTP connectés par USB.

Limitation des risques

Les utilisateurs d’une application qui dépend des codes IOCTL privés doivent utiliser une autre application (ou une version mise à jour de l’application) pour accéder à l’appareil MTP connecté à USB.

Solution

Les applications doivent utiliser l’API Windows Portable Devices (WPD) pour rechercher et interagir avec n’importe quel appareil WPD. Bien qu’un pourcentage important d’appareils WPD implémentent MTP pour la communication avec le PC, WPD n’est pas limité aux appareils MTP uniquement. En outre, lorsque l’accès direct à l’appareil via les IOCTL privés aurait limité l’application à la communication uniquement avec des appareils connectés par USB, l’utilisation de l’API WPD étend la liste des options de connectivité à d’autres protocoles de communication (par exemple, Wi-Fi). Dans les rares cas où l’application doit prendre en charge MTP, l’API WPD fournit un mécanisme de passage pour les commandes MTP brutes.

Tirer parti des fonctionnalités

L’API WPD est prise en charge dans Windows XP (via le Kit de développement logiciel (SDK) au format Windows, Windows Vista et Windows 7. L’implémentation windows 7 de WPD ajoute la prise en charge de MTP via Bluetooth.

Appareils portables Windows