Windows 10 : corriger le pilote USB générique 10.0.19041.4355 défaillant (pnputil, GPO, blocage Windows Update)

Après une mise à jour de Windows 10, le pilote « Generic USB 10.0.19041.4355 » peut rendre certains périphériques USB inutilisables. Ce guide détaille des procédures concrètes pour reprendre la main, installer un pilote stable et empêcher Windows Update de réimposer le mauvais paquet.

Sommaire

Problème : mise à jour de Windows et pilote USB générique défaillant

Vue d’ensemble de la question

  • À la suite d’une mise à jour automatique, la version du pilote Generic USB 10.0.19041.4355 ne pilote plus correctement certains équipements (claviers et souris spécifiques, interfaces audio USB, programmateurs, dongles industriels, etc.).
  • Les outils Windows usuels (retour arrière du pilote, choix manuel d’un pilote antérieur, désinstallation/réinstallation, suppression de la mise à jour, restauration système) restent sans effet :
    • L’option Rétablir le pilote est grisée.
    • Aucun point de restauration n’est disponible.
    • Les correctifs concernés ne peuvent pas être désinstallés (intégrés dans un service‑pack cumulatif).
  • Après une réinstallation propre, Windows Update réapplique immédiatement le pilote fautif, ce qui décourage toute tentative classique et peut pousser à envisager un abandon de Windows.

Symptômes observés typiques

  • Périphérique listé comme USB Device not recognized, Unknown USB Device, Code 10 ou Code 43 dans le Gestionnaire de périphériques.
  • Déconnexions aléatoires lors des transferts (copie vers un disque USB, interface audio craquante, lecteur de carte instable).
  • Le même périphérique fonctionne immédiatement sur une distribution Linux ou sur un autre PC resté avec un pilote USB plus ancien.

Solutions réellement testées et résultats

Méthode testéeProcédureRésultat
Rétrograder le pilote via Gestionnaire de périphériquesRMB → Propriétés → Pilote → RétablirOption indisponible
Sélectionner manuellement un pilote antérieurMettre à jour le pilote → Choisir parmi une listePilote fautif réinstallé, échec
Désinstaller le périphérique + suppression du piloteUninstall → RedémarrageWindows réinstalle le même pilote
Désinstaller la mise à jour KB problématiqueParamètres → Windows Update → HistoriqueImpossible (service‑pack verrouillé)
Créer/utiliser un point de restaurationrstrui.exeAucun point disponible
Switch complet vers LinuxSauvegarde données → ReformatageProblème résolu (périphériques reconnus immédiatement)

Pourquoi le bouton « Rétablir le pilote » est grisé ?

Windows n’affiche ce bouton actif que si une version antérieure du même pilote a été réellement installée et archivée dans le magasin de pilotes. Lorsqu’un pilote est injecté par un cumul « service‑pack », il remplace l’existant sans conserver d’instantané exploitable. De plus, l’algorithme de classement PnP privilégie souvent la signature et la date déclarée dans l’INF : même si vous forcez un pilote plus ancien, Windows Update peut le supplanter dès le redémarrage.

Plan d’action recommandé, étape par étape

Le plus important est d’empêcher Windows de remettre le mauvais pilote, puis d’installer explicitement la version connue comme fonctionnelle. Suivez l’ordre ci‑dessous.

ÉtapeActionButCommandes / Emplacement
1Couper Internet (Ethernet/Wi‑Fi)Empêcher Windows Update de se déclencher pendant l’opérationCentre Réseau → désactiver l’interface
2Identifier l’ID matériel du périphérique USBServira à bloquer précisément ce matérieldevmgmt.msc → clic droit → Propriétés → DétailsID matériel
3Bloquer la mise à jour de pilotes par Windows Update (globalement)Éviter que Windows réinstalle des pilotes via Windows UpdateStratégie : Configuration ordinateur → Modèles d’administration → Windows UpdateNe pas inclure les pilotes avec les mises à jour Windows
ou Registre :
reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate ^ /v ExcludeWUDriversInQualityUpdate /t REG_DWORD /d 1 /f
4Empêcher l’installation sur l’ID matériel fautifVerrou local spécifique au périphériqueStratégie : Configuration ordinateur → Modèles d’administration → Système → Installation de périphériques → Empêcher l’installation des périphériques correspondant à ces ID → Ajouter vos USB\VID_xxxx&PID_yyyy
5Désinstaller le périphérique et purger le mauvais INF si présentRetirer le périphérique et son pilote défaillant du magasinGestionnaire de périphériques → désinstaller en cochant « Supprimer le logiciel du pilote »
Optionnel : lister et supprimer l’INF concerné :
pnputil /enum-drivers | more pnputil /delete-driver oemXX.inf /uninstall /force
6Installer manuellement la bonne version du piloteForcer le pilote stable sans passer par Windows UpdateDepuis un .INF/.CAB connu :
pnputil /add-driver C:\Pilotes\USB\MonPilote.inf /install
7Masquer la mise à jour de pilote responsableÉviter sa réapparition lors du retour en ligneOutil Microsoft Show or Hide Updates (wushowhide.diagcab) → masquer l’ID de mise à jour
8Redémarrer puis reconnecter InternetValider l’installation et tester le périphériqueVérifier dans devmgmt.msc la version/date du pilote et l’absence d’alerte

Astuce : si vous n’avez pas de stratégie de groupe (Windows 10 Home), préférez la clé de registre ExcludeWUDriversInQualityUpdate ci‑dessus et le masquage via wushowhide.diagcab. Le blocage par ID matériel reste possible via le Registre (HKLM\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions) mais demande rigueur : testez d’abord sur un seul ID.

Pistes complémentaires utiles (non encore tentées)

  1. Catalogue Microsoft Update
    Téléchargez une version antérieure du pilote USB (ou un pilote de contrôleur USB Intel/AMD/ASMedia/Renesas) au format .cab, puis installez explicitement :
    pnputil /add-driver <chemin>\<pilote>.inf /install Cette commande inscrit le pilote dans le magasin et l’applique immédiatement.
  2. Bloquer la ré‑installation automatique du pilote défectueux
    • Masquez l’update de pilote avec wushowhide.diagcab.
    • Ou appliquez la Stratégie de groupe : Système → Installation de périphériques → « Empêcher l’installation des périphériques correspondant à ces ID ». Entrez les Hardware IDs du périphérique.
  3. Réparer les composants Windows Update
    DISM /Online /Cleanup-Image /RestoreHealth sfc /scannow Puis redémarrez. Utile si le magasin de composants ou les catalogues de pilotes sont corrompus.
  4. Pilote du fabricant du contrôleur
    Si votre carte mère/PC embarque un contrôleur USB Intel, AMD, ASMedia, Renesas, etc., installez leur package officiel : il remplace le pilote générique Microsoft (ex. fichiers usbxhci.sys, usbhub3.sys, winusb.sys) par une implémentation optimisée.
  5. Attendre un patch cumulatif ultérieur
    Microsoft publie souvent un correctif dans un Patch Tuesday suivant. En attendant, congelez votre pilote (méthodes 1 + 2) ou utilisez Linux en solution transitoire pour vos périphériques critiques.

Procédures détaillées

Repérer l’ID matériel d’un périphérique USB

  1. Ouvrez Gestionnaire de périphériques (devmgmt.msc).
  2. Dépliez Contrôleurs de bus USB ou la catégorie du périphérique (Audio, Interfaces…), puis double‑cliquez l’élément en erreur.
  3. Onglet Détails → liste déroulante ID matériel. Copiez les lignes du type USB\VID_1234&PID_5678 (gardez l’ID le plus spécifique).

Masquer une mise à jour de pilote avec wushowhide

  1. Exécutez wushowhide.diagcab.
  2. Choisissez Hide updates, cochez le pilote USB incriminé (souvent libellé Microsoft – USB – 10.0.19041.4355).
  3. Validez. L’update ne sera plus proposée, même après recherche de mises à jour.

Appliquer les stratégies de groupe locales

Pour un PC en édition Pro/Enterprise :

  1. Ouvrez gpedit.msc.
  2. Configuration ordinateurModèles d’administrationWindows Update → activez Ne pas inclure les pilotes avec les mises à jour Windows.
  3. Configuration ordinateurModèles d’administrationSystèmeInstallation de périphériques → activez Empêcher l’installation des périphériques correspondant à ces ID et ajoutez vos identifiants matériels.
  4. Forcez l’actualisation des stratégies : gpupdate /force

Désactiver les mises à jour de pilotes via Registre

Sur toutes éditions, vous pouvez empêcher Windows Update d’inclure des pilotes :

reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate ^
 /v ExcludeWUDriversInQualityUpdate /t REG_DWORD /d 1 /f

Installer ou rétrograder proprement un pilote USB avec pnputil

La commande pnputil gère le magasin de pilotes Windows.

:: 1) Lister les pilotes du magasin (repérez l'oemXX.inf problématique)
pnputil /enum-drivers > C:\Temp\drivers.txt

:: 2) Désinstaller/retirer l'INF fautif si nécessaire (optionnel et prudent)
pnputil /delete-driver oemXX.inf /uninstall /force

:: 3) Ajouter et installer la version stable (fichier .inf)
pnputil /add-driver C:\Pilotes\USB\stable\MonPilote.inf /install

:: 4) Redémarrer
shutdown /r /t 5 

Bonne pratique : coupez le réseau avant l’étape 2/3, puis appliquez le masquage de l’update (wushowhide) avant de vous reconnecter.

Audit rapide en PowerShell

# Lister les périphériques USB et leur statut
Get-PnpDevice -Class USB | Sort-Object Status, FriendlyName | Format-Table -Auto

# Lister les drivers USB installés

Get-WindowsDriver -Online | Where-Object {$_.OriginalFileName -match "usb"} |
Select-Object Driver, ProviderName, Date, Version, OriginalFileName | Format-Table -Auto 

Réparer l’intégrité des composants

Si la signature du pilote ou le catalogue est incohérent, un nettoyage système peut aider :

DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow

Contrôles post‑correction

  • Dans Gestionnaire de périphériques, le périphérique n’affiche plus d’icône d’alerte.
  • Onglet PiloteFournisseur/Version/Date correspondent bien à la version installée manuellement (et non 10.0.19041.4355).
  • Le périphérique fonctionne durablement après mise en veille/réveil et redémarrages.
  • Une recherche manuelle de mises à jour n’impose pas de nouveau le pilote masqué.

Cas particuliers et mises en garde

  • Port, câble, hub : testez un port USB différent et un câble certifié. Les ports en façade et certains hubs non alimentés aggravent les symptômes.
  • Gestion d’alimentation : dans Options d’alimentationParamètres USB, désactivez éventuellement la suspension sélective. Dans USB Root HubGestion de l’alimentation, décochez « Autoriser l’ordinateur à éteindre… » pour les périphériques critiques.
  • Machines en domaine/Intune : assurez-vous que la politique « Ne pas inclure les pilotes… » n’est pas contredite par une stratégie de l’organisation. Documentez l’ID matériel bloqué.
  • Purge de l’INF : la suppression agressive d’oemXX.inf peut rompre d’autres périphériques. Notez toujours le nom exact avant toute suppression et créez un point de restauration.

Recommandation globale

Pour un usage professionnel critique, verrouillez les mises à jour de pilotes jusqu’à validation en pré‑prod :

  1. Basculer Windows Update en mode « Notifier pour téléchargement » ou utiliser WSUS.
  2. Réaliser une image système avant chaque Patch Tuesday.
  3. Conserver un boîtier USB‑SATA ou une clé Linux « live » pour garantir l’accès aux données lorsque Windows refuse un périphérique.

Ces précautions minimisent les interruptions de service et évitent une migration forcée vers un autre OS.

Checklist rapide imprimable

  • 🛑 Couper Internet
  • 🔎 Noter l’ID matériel (USB\VID_xxxx&PID_yyyy)
  • 🧱 Activer « Ne pas inclure les pilotes » (GPO ou Registre)
  • 🚫 Bloquer l’installation pour l’ID matériel
  • 🧹 Désinstaller le périphérique + purge éventuelle de l’INF fautif
  • ⬇️ pnputil /add-driver ... /install du pilote stable
  • 🙈 Masquer l’update via wushowhide.diagcab
  • 🔁 Redémarrer, reconnecter, tester

FAQ

Q : Puis‑je empêcher Windows d’installer tout pilote ?
R : Oui, via la stratégie « Ne pas inclure les pilotes avec les mises à jour Windows ». Pour un blocage chirurgical, utilisez en plus le filtrage par ID matériel.

Q : Pourquoi la sélection manuelle d’un pilote dans le Gestionnaire de périphériques ne tient pas ?
R : Lors du redémarrage ou d’une recherche de mises à jour, Windows Update réévalue et peut imposer la version la plus récente signée selon son classement. D’où l’importance du double verrou : politique + masquage.

Q : Est‑ce risqué de supprimer un oemXX.inf ?
R : Oui si vous ciblez le mauvais. Listez d’abord pnputil /enum-drivers, sauvegardez l’inventaire, et n’effacez que ce qui est strictement nécessaire.

Q : Un package constructeur (Intel/AMD/ASMedia/Renesas) est‑il préférable ?
R : Souvent oui pour des chipsets précis, car il ajuste minutieusement l’alimentation, la compatibilité et la bande passante, là où le pilote générique reste volontairement conservateur.

Annexe : repères utiles

  • Fichiers/INF fréquents (indicatif) : usbxhci.inf/usbxhci.sys (hôte xHCI), usbhub3.inf/usbhub3.sys (hub USB 3), winusb.inf/winusb.sys (WinUSB), usbccgp.inf (périphériques composites).
  • Journaux système : Observateur d’événements → Journaux des applications et services → Microsoft → Windows → Kernel‑PnP et DriverFrameworks‑UserMode pour diagnostiquer les erreurs d’énumération.
  • Bonnes pratiques : créez un point de restauration (ou une image) avant toute opération, étiquetez les versions testées, documentez l’ID matériel et la version qui fonctionne.

En résumé : le cœur du correctif consiste à couper toute ré‑imposition automatique (GPO/Registre + masquage), purger l’INF problématique si besoin, puis installer manuellement la version stable via pnputil. Une fois fixée, gardez cette configuration verrouillée jusqu’au correctif officiel.

Sommaire