L’erreur 0x800f081f pendant l’installation de .NET Framework 3.5 signifie que Windows ne trouve pas les fichiers sources du composant. Microsoft la documente sous le code CBS_E_SOURCE_MISSING : la source du package est introuvable, généralement parce que la machine passe par un serveur WSUS ou parce que le magasin de composants est abîmé.
Points clés
- Code officiel : 0x800f081f = CBS_E_SOURCE_MISSING, « source du package ou du fichier introuvable, ResolveSource() a échoué ».
- .NET Framework 3.5 est une fonctionnalité à la demande : ses fichiers ne sont pas sur le disque, Windows va les chercher sur Windows Update ou sur un média d’installation.
- La commande qui règle la majorité des cas :
DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /Source:D:\sources\sxs /LimitAccess. - En entreprise, le blocage vient presque toujours de la stratégie de groupe qui force la source de réparation vers WSUS.
- Le même code apparaît sur Windows Update quand le magasin de composants est corrompu : le traitement est alors DISM /RestoreHealth puis sfc.
Le scénario est toujours le même. Un logiciel métier ancien réclame .NET 3.5, la boîte de dialogue propose « Télécharger et installer cette fonctionnalité », et l’installation s’arrête net sur un code hexadécimal. Rien n’indique à l’écran que le problème est une question de source de fichiers.

Pourquoi .NET Framework 3.5 échoue là où les autres composants passent
Windows 10 et Windows 11 sont livrés avec .NET Framework 4.x. Les applications écrites pour les versions 1.1 à 3.5 ne tournent pas dessus, d’où la nécessité d’activer séparément la version 3.5, qui date de 2008. Microsoft recommande d’ailleurs de chercher d’abord une version plus récente du logiciel concerné avant d’installer ce composant.
Techniquement, .NET 3.5 est une fonctionnalité à la demande. Sa charge utile a été retirée de l’image pour gagner de la place. Quand vous cochez la case dans « Activer ou désactiver des fonctionnalités Windows », Windows doit récupérer les fichiers ailleurs. Si ce chemin est coupé, vous obtenez 0x800f081f. Le code ne dit pas que l’installation a échoué : il dit que la source manque.
Solution 1 : installer depuis le média d’installation avec DISM
C’est la méthode la plus fiable, et celle que Microsoft documente pour le déploiement. Il faut une ISO ou une clé d’installation de la même version de Windows que celle installée.
- Téléchargez l’ISO officielle correspondant à votre version, ou insérez la clé d’installation.
- Montez l’ISO (clic droit, Monter) et notez la lettre de lecteur attribuée, par exemple D:.
- Ouvrez une invite de commandes en administrateur.
- Exécutez :
DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /Source:D:\sources\sxs /LimitAccess
Le commutateur /All active les fonctionnalités parentes nécessaires. /LimitAccess interdit à DISM de retourner interroger Windows Update, ce qui évite qu’il rebascule sur la source défaillante. Le dossier sources\sxs doit exister sur le média, sinon la lettre de lecteur est mauvaise.
Point sensible : une ISO d’une version différente donne un échec ou une installation bancale. Vérifiez votre build avec winver avant de télécharger.
Solution 2 : contourner la stratégie de groupe qui pointe vers WSUS
Sur un poste géré, la stratégie « Spécifier les paramètres pour l’installation de composants facultatifs et la réparation de composants » redirige toutes les demandes de fichiers vers un serveur interne. Si le WSUS n’héberge pas la charge utile de NetFx3, la demande échoue en 0x800f081f, même avec une connexion Internet parfaite.
Deux façons de s’en sortir :
- Cocher dans cette stratégie l’option qui autorise le téléchargement direct depuis Windows Update au lieu du WSUS, puis
gpupdate /force. - Ou passer outre en désignant explicitement une source locale, comme en solution 1. Le paramètre
/Sourceavec/LimitAccessl’emporte sur la recherche réseau.
La stratégie se trouve dans Configuration ordinateur, Modèles d’administration, Système. Sur un poste personnel, elle est rarement configurée, ce qui rend cette piste inutile hors contexte d’entreprise.

Solution 3 : réparer le magasin de composants
Le même code sort aussi sur des mises à jour cumulatives ordinaires. Dans ce cas, Microsoft l’attribue à une altération du magasin de composants et prescrit deux commandes, dans une invite en administrateur :
Dism.exe /Online /Cleanup-Image /RestorehealthSfc.exe /Scannow- Redémarrer la machine.
Si DISM échoue lui aussi, il faut lui fournir une source hors ligne avec l’option /Source:WIM:D:\sources\install.wim:1 /LimitAccess. Le détail des variantes et la lecture des journaux sont dans notre guide DISM /RestoreHealth, et le cas voisin du magasin corrompu dans l’erreur 0x80073712.
Solution 4 : vérifier ce que raconte le journal CBS
Quand rien ne marche, le journal donne la réponse. Ouvrez C:\Windows\Logs\CBS\CBS.log, cherchez la dernière occurrence de « error » et remontez de quelques lignes. Le fichier ou le package manquant y est nommé.
Pour extraire rapidement les lignes utiles, dans une invite en administrateur : findstr /c:"0x800f081f" %windir%\Logs\CBS\CBS.log. Un message mentionnant un package de mise à jour cumulative indique que la charge utile de NetFx3 ne correspond plus au niveau de correctifs du système. C’est fréquent sur un poste très à jour installé depuis une ISO ancienne : dans ce cas, appliquez les mises à jour, redémarrez, puis relancez la commande DISM.
Solution 5 : nettoyer un blocage côté Windows Update
Une pile de maintenance grippée empêche toute installation de composant. Deux gestes suffisent souvent :
- Lancer l’utilitaire de résolution des problèmes Windows Update, dans Paramètres, Système, Résolution des problèmes.
- Arrêter les services
wuauservetbits, renommerC:\Windows\SoftwareDistributionenSoftwareDistribution.old, relancer les services.
Les codes voisins qui trahissent le même type de blocage sont traités séparément : 0x800f0922 et 0x80070002.
Quand ça ne vient pas de la source
Trois situations produisent le même code sans que la source soit en cause.
- Droits insuffisants sur des clés de registre. Le symptôme se rapproche alors de l’erreur 0x80070005, avec des refus d’accès dans le journal CBS.
- Antivirus tiers qui bloque l’écriture dans WinSxS. Désactivez la protection en temps réel le temps de la commande DISM, réactivez-la ensuite.
- Image Windows modifiée. Sur une installation issue d’une image « allégée » par un tiers, les composants supprimés ne reviennent pas. Une réinstallation propre est la seule sortie.
Vérifier que .NET 3.5 est bien actif
Après l’installation, ouvrez « Activer ou désactiver des fonctionnalités Windows » : la case .NET Framework 3.5 doit être cochée, avec ses deux sous-composants. En ligne de commande, DISM /Online /Get-FeatureInfo /FeatureName:NetFx3 renvoie l’état « Enabled ». Relancez ensuite l’application qui réclamait le composant, sans redémarrage préalable si l’installation s’est terminée sans demande explicite.
Questions fréquentes
Faut-il télécharger .NET Framework 3.5 depuis un site tiers ?
Non, jamais. Le composant est déjà dans Windows, il suffit de l’activer. Les fichiers proposés par des sites de téléchargement sont au mieux inutiles, au pire malveillants.
La commande DISM répond « impossible de trouver le fichier source », que faire ?
La lettre de lecteur ou le chemin est faux. Vérifiez que le dossier sources\sxs existe bien sur le média monté, et que l’ISO correspond à la version installée.
Est-ce que .NET Framework 3.5 est encore supporté ?
Il reste livré avec Windows en tant que fonctionnalité à la demande, mais il date de 2008. Microsoft conseille de chercher une version plus récente du logiciel qui l’exige avant de l’installer.
Le code 0x800f081f apparaît sur une mise à jour cumulative, est-ce le même problème ?
La cause documentée est alors une corruption du magasin de composants, pas une source manquante. Le traitement passe par DISM /RestoreHealth puis sfc /scannow, comme en solution 3.
Peut-on installer .NET 3.5 sans connexion Internet ?
Oui, c’est même le mode le plus sûr : la méthode DISM avec /Source et /LimitAccess n’utilise que le média local.
Photo d’en-tête : écran de mise à jour de Windows 10 version 22H2, Wikimedia Commons, domaine public. La capture montre une mise à jour classique, pas le message d’erreur lui-même.
Sources : Microsoft Learn, erreurs courantes de Windows Update · Microsoft Learn, installer .NET Framework 3.5 sur Windows · Microsoft Learn, déployer .NET Framework 3.5 avec DISM · Microsoft Learn, configurer une source de réparation Windows · Microsoft Learn, réparer une image Windows

Michel, dirigeant d’une PME informatique et formateur, expert en logiciels professionnels tels que CRM et ERP. Sa connaissance approfondie des outils de gestion d’entreprise lui permettant de conseiller et former efficacement d’autres sociétés à leur utilisation.





