Windows 10 22H2 : Échec d’installation KB5041019 (.NET) et KB5040427 — erreurs 0xE0000100/0xE0000003, INF corrompu & NTFS — Guide de réparation

Les mises à jour KB5041019 (.NET 3.5/4.8/4.8.1) et KB5040427 (cumul mensuel Windows 10 22H2) échouent avec 0xE0000100/0xE0000003 ? Voici un guide complet et éprouvé pour diagnostiquer l’origine (INF corrompus, erreurs NTFS) et rétablir un Windows Update fiable, pas à pas.

Sommaire

Problème

Sur certains PC Windows 10 22H2, l’installation de KB5041019 (.NET) et du cumul mensuel KB5040427 bloque ou se termine par des codes 0xE0000100 ou 0xE0000003. Les redémarrages sont anormalement longs, parfois en boucle. Les journaux CBS.log et setupapi.dev.log pointent vers des INF endommagés/dupliqués et des incohérences NTFS détectées par Chkdsk.

Symptômes et messages typiques

  • Windows Update affiche « Échec de l’installation » sur KB5041019 et/ou KB5040427.
  • Codes d’erreur : 0xE0000100 (INF corrompu/manquant), 0xE0000003 (erreur générique de configuration/package).
  • Redémarrage prolongé après 30–100 % de configuration ; retour à l’état précédent.
  • Dans CBS.log : entrées « Failed to process INF », « CSI 000... Hash mismatch ».
  • Dans setupapi.dev.log : « Failed to install driver package ... oemXX.inf », « INF is invalid ».
  • Dans l’Observateur d’événements : Wininit/Chkdsk signalant des correctifs de MFT/Volume Bitmap.

Pourquoi cela arrive

Windows s’appuie sur des fichiers INF pour déployer pilotes et composants. Des INF dupliqués ou tronqués (souvent oem*.inf sous C:\Windows\INF) peuvent casser la chaîne d’installation (.NET, pilotes, LCU). Si, en parallèle, le système de fichiers NTFS présente des incohérences (MFT/Bitmap), l’écriture de packages échoue, aggravant le problème. Enfin, une instance Windows Installer désenregistrée ou un runtime .NET dégradé peut empêcher la finalisation de KB5041019.

Procédure de résolution validée

Les étapes suivantes ont permis d’installer les deux mises à jour sans erreur.

ÉtapeActionBut / résultat
1Collecte des journaux : cbs.log, setupapi.dev.log, contenu complet de C:\Windows\Logs\CBS, exécution du V2 Log Collector (BSOD/tenforums)Cerner les fichiers corrompus et les erreurs précises.
2Exécution de SFCFix.zip (utilitaire tiers)Réparation/suppression automatisée des INF croisés en double.
3Inspection manuelle : dir *.inf /s /a > C:\inf.txtVérifier la présence d’INF dupliqués ou incomplets.
4Réparation du système de fichiers : chkdsk C: /f /r hors ligneCorrection d’erreurs MFT/Volume Bitmap repérées par chkdsk /scan.
5Contrôle SMART avec CrystalDiskInfoConfirmer l’intégrité matérielle du disque ; aucun secteur défectueux détecté.
6Réenregistrement du service Windows Installer (msiexec /unregister puis /regserver ou via outil de réparation .NET/MSI)Résoudre les défaillances d’installation restantes.
7Outil de réparation du .NET Framework (Microsoft)Corriger spécifiquement l’échec de KB5041019.
8Relance de Windows UpdateLes deux mises à jour s’installent sans erreur.

Mode opératoire détaillé

Collecte et lecture des journaux

  1. Ouvrez PowerShell (Admin) et regroupez les traces : mkdir C:\WUFix\Logs -Force copy C:\Windows\Logs\CBS\* C:\WUFix\Logs\CBS\ copy C:\Windows\INF\setupapi.dev.log C:\WUFix\Logs\ wevtutil epl Application C:\WUFix\Logs\Application.evtx
  2. Filtrez rapidement le dernier rapport Chkdsk (Wininit) : Get-WinEvent -FilterHashtable @{LogName='Application'; ProviderName='Microsoft-Windows-Wininit'} | Select-Object -First 1 | Format-List -Property Message
  3. Dans setupapi.dev.log, recherchez « oem », « Failed », « invalid » ; notez les oemXX.inf incriminés.

Réparation automatique des INF (SFCFix)

SFCFix est un utilitaire tiers réputé qui automatise la remise en état d’INF et la correction de manifestes. Exécutez-le en tant qu’administrateur, laissez-le produire C:\SFCFix.txt puis redémarrez. Bonnes pratiques : vérifiez la source de l’outil, désactivez temporairement toute protection qui l’entraverait (sans rester désactivée), et lisez le journal généré pour confirmer les INF supprimés/recopiés.

Inspection manuelle et nettoyage ciblé

  1. Générez l’inventaire des INF : dir C:\Windows\INF\*.inf /s /a > C:\inf.txt
  2. Listez les pilotes du magasin : pnputil /enum-drivers > C:\drivers.txt
  3. Repérez les doublons manifestes (même Provider, Class, Driver Version, Original Name). Si un oemXX.inf est explicitement corrompu dans les logs, sauvegardez les pilotes puis supprimez uniquement celui marqué : pnputil /export-driver * C:\WUFix\DriversBackup pnputil /delete-driver oemXX.inf /force /uninstall Attention : n’effacez pas au hasard des INF critiques (stockage, réseau, chipset). Limitez-vous aux fichiers nommément fautifs dans setupapi.dev.log ou SFCFix.txt.

Réparation NTFS hors ligne

  1. Planifiez un contrôle complet : chkdsk C: /f /r
  2. Acceptez le message de planification au prochain démarrage et redémarrez.
  3. Après exécution, validez le rapport Wininit/Chkdsk : idéalement « 0 secteurs défectueux », « bitmap corrigée », « aucune perte d’intégrité ».

Vérification matérielle (SMART)

Avec CrystalDiskInfo (ou HD Sentinel, SeaTools…), confirmez un état « Correct ». Gardez un œil sur « Reallocated Sectors Count », « Current Pending Sector », « Uncorrectable Sector Count ». La présence de secteurs réalloués n’est pas forcément bloquante mais, si ces valeurs augmentent, envisagez un remplacement.

Réenregistrer Windows Installer

net stop msiserver
msiexec /unregister
msiexec /regserver
net start msiserver

Vous pouvez aussi vérifier l’état du service :

sc query msiserver
sc qc msiserver

Réparer le .NET Framework

L’outil officiel de réparation .NET corrige les composants 3.5/4.x et réinitialise le cache MSI. Exécutez-le en admin, sélectionnez « Appliquer les corrections », redémarrez si demandé, puis relancez Windows Update.

Nettoyer le cache Windows Update (si nécessaire)

net stop wuauserv bits cryptsvc
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 catroot2.old
net start cryptsvc
net start bits
net start wuauserv

Ensuite, lancez une détection :

UsoClient StartScan
UsoClient StartInstall

(Ces commandes peuvent ne pas afficher de retour ; patientez puis vérifiez l’historique des mises à jour.)

Vérifications et suivi

  • Consultez les rapports Chkdsk dans Observateur d’événements ▸ Application ▸ Wininit/Chkdsk pour confirmer « 0 secteurs défectueux ».
  • Reprogrammez chkdsk /r /v dans ~30 jours : si la corruption réapparaît, le disque est suspect.
  • Surveillez périodiquement le SMART (CrystalDiskInfo, HD Sentinel, SeaTools…).
  • Évitez les extinctions brutales (usage d’onduleur, fermeture correcte de Windows).

Contrôles post-réparation

Vérifiez que les mises à jour sont bien installées :

wmic qfe | find "KB5040427"
wmic qfe | find "KB5041019"

Ou, en PowerShell :

Get-HotFix | Where-Object {$_.HotFixID -match "KB5040427|KB5041019"} | Format-Table -Auto

Pour la pile de maintenance (SSU) et l’état du magasin :

DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth

Chemin de rattrapage si les erreurs persistent

  1. Restaurez la santé du magasin puis sfc /scannow : DISM /Online /Cleanup-Image /RestoreHealth sfc /scannow
  2. Installez manuellement la dernière SSU (pile de maintenance) avant le cumul mensuel.
  3. Réparation sur place : montez un ISO 22H2, exécutez Setup.exe, choisissez « Conserver fichiers et applications ». Cette opération remplace les composants endommagés sans réinstaller vos applis.

Décryptage des codes d’erreur

CodeSignification pratiquePistes prioritaires
0xE0000100INF corrompu/manquant ou signature invalide lors de l’application d’un package.Nettoyage des INF (setupapi.dev.log), SFCFix, pnputil, réparation .NET/MSI.
0xE0000003Erreur générique de configuration/driver ; souvent un effet domino d’un INF invalide.CHKDSK hors ligne, réinitialisation du cache WU, SSU, DISM/SFC.

Exemples d’indices dans les logs

CBS.log :

ERROR: Failed to process single phase execution. [HRESULT = 0xE0000100]
CSI    00000abc Hash mismatch: file \??\C:\Windows\INF\oem57.inf
CSI    00000abd Cannot repair member file ... source hash invalid

setupapi.dev.log :

!!!  flq: CopyFile: 'C:\Windows\INF\oem57.inf' failed. Error = 0x00000057
!!!  sto: Failed to apply INF package 'oem57.inf'. Error = 0xE0000100
     dvi: {Install Device - SWC\...}
     dvi:      INF is invalid (hash or catalog)

Bonnes pratiques et prévention

  • Point de restauration avant toute action lourde.
  • Export des pilotes (pnputil /export-driver *) avant nettoyage d’INF.
  • Alimentation stable (onduleur sur machines sensibles) pour éviter les corruptions soudaines.
  • Surveillance : tâche planifiée mensuelle pour Get-WinEvent (Wininit) et un snapshot SMART.

Automatiser l’enchaînement (script PowerShell)

Le script ci‑dessous orchestre les vérifications essentielles. Exécutez‑le en tant qu’administrateur ; lisez les commentaires et adaptez‑le à votre contexte.

# Fix-KB5041019-KB5040427.ps1
# 1) Collecte logs  2) DISM/SFC  3) Réenregistrement MSI  4) Reset WU  5) Détection WU

$ErrorActionPreference = 'Stop'
$root = 'C:\WUFix'
New-Item -ItemType Directory -Force -Path "$root\Logs" | Out-Null

# Collecte

Copy-Item -Path 'C:\Windows\Logs\CBS*' -Destination "$root\Logs\CBS" -Recurse -Force -ErrorAction SilentlyContinue
Copy-Item -Path 'C:\Windows\INF\setupapi.dev.log' -Destination "$root\Logs" -Force -ErrorAction SilentlyContinue
wevtutil epl Application "$root\Logs\Application.evtx"

# État magasin et réparation

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

# Réenregistrement MSI

Stop-Service msiserver -ErrorAction SilentlyContinue
Start-Process -FilePath "msiexec.exe" -ArgumentList "/unregister" -Wait
Start-Process -FilePath "msiexec.exe" -ArgumentList "/regserver" -Wait
Start-Service msiserver

# Reset Windows Update

Stop-Service wuauserv -Force
Stop-Service bits -Force
Stop-Service cryptsvc -Force
Rename-Item "C:\Windows\SoftwareDistribution" "C:\Windows\SoftwareDistribution.old" -ErrorAction SilentlyContinue
Rename-Item "C:\Windows\System32\catroot2" "C:\Windows\System32\catroot2.old" -ErrorAction SilentlyContinue
Start-Service cryptsvc
Start-Service bits
Start-Service wuauserv

# Détection

Start-Process -FilePath "UsoClient.exe" -ArgumentList "StartScan" -WindowStyle Hidden
Start-Process -FilePath "UsoClient.exe" -ArgumentList "StartInstall" -WindowStyle Hidden

Write-Host "Terminé. Vérifiez Paramètres > Mise à jour et sécurité > Historique." -ForegroundColor Green

Cas d’entreprise : réparer sans Internet

Si la machine n’a pas accès au réseau, restaurez les composants avec un ISO Windows 10 22H2 monté (lecteur D: ci‑dessous) :

dism /Get-WimInfo /WimFile:D:\sources\install.wim
dism /Online /Cleanup-Image /RestoreHealth /Source:wim:D:\sources\install.wim:1 /LimitAccess
sfc /scannow

Si le média contient install.esd à la place de .wim :

dism /Online /Cleanup-Image /RestoreHealth /Source:esd:D:\sources\install.esd:1 /LimitAccess

Après réparation, appliquez d’abord la SSU locale, puis le LCU correspondant (KB5040427), puis KB5041019.

Checklist express

  • INF en erreur identifiés dans setupapi.dev.log ? Oui → SFCFix + pnputil ciblé.
  • chkdsk corrige la MFT/Bitmap ? Oui → Refaire WU après redémarrage.
  • MSI/.NET réparés ? Oui → Relancer le scan WU.
  • Échec persistant ? DISM/SFC + SSU + réparation sur place.

Questions fréquentes

Faut‑il désactiver BitLocker ? Pour des mises à jour cumulatives, ce n’est généralement pas nécessaire. Sur certaines machines, suspendre temporairement la protection peut accélérer l’étape « Configuration des mises à jour » ; pensez à la réactiver ensuite.

Dois‑je supprimer tous les oem*.inf ? Non. Supprimez uniquement ceux explicitement défaillants dans les logs. Exportez d’abord vos pilotes (pnputil /export-driver *).

chkdsk /r est-il obligatoire ? Si chkdsk /scan ou Wininit signale des erreurs de MFT/Bitmap, oui : une réparation hors ligne est indispensable pour fiabiliser WU.

DISM et SFC dans quel ordre ? DISM /RestoreHealth d’abord (répare le magasin), puis SFC /scannow (répare les fichiers système).

Informations complémentaires utiles

  • 0xE0000100 signale généralement un fichier INF corrompu ou manquant.
  • Pour extraire rapidement le dernier rapport Chkdsk : Get-WinEvent -FilterHashtable @{LogName='Application'; ProviderName='Microsoft-Windows-Wininit'} | Select-Object -First 1 | Format-List -Property Message
  • Si les erreurs Windows Update reviennent malgré un disque sain :
    1. Exécuter DISM /Online /Cleanup-Image /RestoreHealth puis sfc /scannow.
    2. Installer manuellement la dernière pile de maintenance (SSU) avant les cumulatifs.
    3. En dernier recours, réaliser une réparation sur place (ISO 22H2 → Conserver fichiers et applis).

Tableau récapitulatif des commandes clés

CommandeObjectifSortie attendue/Interprétation
dir C:\Windows\INF\*.inf /s /a > C:\inf.txtInventorier les INFListe exhaustive, utile pour repérer des doublons
pnputil /enum-driversInventaire des pilotesIdentifie oemXX.inf problématiques
pnputil /delete-driver oemXX.inf /uninstall /forceSupprimer un INF fautifÀ utiliser seulement si ciblé par logs/SFCFix
chkdsk C: /f /rRéparer NTFS hors ligneCorrige MFT/Bitmap ; exige redémarrage
DISM /Online /Cleanup-Image /RestoreHealthRéparer le magasin de composantsDoit renvoyer « L’opération a réussi »
sfc /scannowRéparer fichiers système« Aucune violation d’intégrité » attendu
msiexec /unregister & msiexec /regserverRéenregistrer Windows InstallerStabilise l’installation de KB .NET
ren SoftwareDistribution *.oldRéinitialiser le cache WUForce un nouveau téléchargement des packages

Conclusion

Dans ce scénario, le cumul d’INF invalides et de petites corruptions NTFS brise la chaîne d’installation de KB5041019/KB5040427. La combinaison collecte de preuves → remise en état des INF → CHKDSK hors ligne → réparation .NET/MSI → remise à zéro de Windows Update restaure un système propre et apte à recevoir les mises à jour. Si l’instabilité revient malgré un disque sain, passez à la réparation sur place ; elle remet à neuf les composants Windows tout en conservant vos données et applications.

Sommaire