Lorsque les serveurs ou équipements réseau n’ont pas d’accès Internet, l’installation hors-ligne de .NET Framework est une opération fréquente et critique. Ce guide détaillé explique où obtenir les installeurs officiels, comment vérifier leur intégrité et signature, préparer les prérequis, lancer une installation silencieuse, consigner des logs et résoudre les erreurs les plus courantes. Les instructions s’adressent aux administrateurs qui doivent déployer de façon répétable et traçable dans des environnements de production.
Sources officielles et fichiers à privilégier
Téléchargez toujours les packages depuis le Microsoft Download Center ou le Microsoft Update Catalog. Les installeurs hors-ligne unifiés pour .NET Framework 4.8 et 4.8.1 incluent l’essentiel des composants et évitent les téléchargements additionnels pendant l’installation. Pour les environnements isolés, conservez une archive interne des installeurs signés par Microsoft. N’utilisez pas de sources tierces non vérifiées.
Vérification d’intégrité et signature
Après téléchargement, vérifiez systématiquement le checksum SHA256 et la signature Authenticode pour garantir que le binaire n’a pas été altéré. Exemple de commandes PowerShell :
Get-FileHash -Path "C:\\Packages\dp48-x86-x64-allos-enu.exe" -Algorithm SHA256
Comparez la valeur renvoyée au SHA256 indiqué par Microsoft. Pour vérifier la signature numérique :
Get-AuthenticodeSignature -FilePath "C:\\Packages\dp48-x86-x64-allos-enu.exe"
Ou utilisez l’outil signtool si vous avez installé le Windows SDK :
signtool verify /pa "C:\\Packages\dp48-x86-x64-allos-enu.exe"
Conservez les captures d’écran et les checksums dans votre dépôt d’artefacts pour audit et traçabilité.
Prérequis et compatibilités
Vérifiez la compatibilité de l’installeur avec la version exacte de Windows cible. .NET Framework 4.8 est pris en charge sur Windows 7 SP1 (avec mises à jour préalables), Windows 8.1 et plusieurs versions de Windows Server. .NET Framework 4.8.1 cible des builds Windows plus récentes. Certaines mises à jour Windows peuvent être requises. Consultez la documentation Microsoft pour la liste précise des builds et des correctifs prérequis.
Installation silencieuse et journalisation
Pour déploiement automatisé, utilisez les switches d’installation afin d’exécuter sans interface et de produire des logs. Les options courantes sont /quiet, /norestart et /log. Exemple d’installation hors-ligne silencieuse :
C:\\Packages\dp48-x86-x64-allos-enu.exe /quiet /norestart /log "C:\\Logs\\dotnet48_install.log"
En mode script ou via SCCM, Intune, WSUS ou GPO, intégrez cette commande pour homogénéiser les déploiements. Testez toujours sur une VM avant d’appliquer en production. Les fichiers de log produits contiennent des informations détaillées sur les étapes et les codes de retour.
Journaux et emplacements utiles pour le diagnostic
- C:\\Windows\\Logs\\CBS\\CBS.log pour les opérations du Component Based Servicing.
- %TEMP% pour les logs temporaires de l’installeur.
- Le fichier renseigné avec le paramètre /log lors du lancement de l’installeur.
- Observateur d’événements : Applications et Services Logs, puis Microsoft et Windows pour les sous-catégories liées à .NET et à l’installation.
Erreurs fréquentes et solutions
| Code | Symptôme | Action recommandée |
|---|---|---|
| 0x800f081f | Échec d’accès aux fichiers sources lors d’une réparation DISM ou d’une installation | Fournir une source valide via DISM : DISM /Online /Cleanup-Image /RestoreHealth /Source:wim:X:\\Sources\\install.wim:1 /LimitAccess. Vérifier le paramétrage WSUS si applicable. |
| 0x80070643 | Échec MSI ou erreur d’installation générique | Analyser le log MSI, réparer Windows Installer si nécessaire, redémarrer les services Windows Update et Background Intelligent Transfer Service, puis réessayer. |
| Autres codes HRESULT | Messages d’erreur cryptiques dans les logs | Rechercher le HRESULT exact dans la base de connaissances Microsoft, exécuter sfc /scannow, utiliser DISM pour réparer l’image système. |
Réparations d’image et commandes utiles
Pour corruption d’image Windows, privilégiez DISM et SFC :
Dism /Online /Cleanup-Image /RestoreHealthsfc /scannow
Si DISM a besoin d’une source locale :
Dism /Online /Cleanup-Image /RestoreHealth /Source:wim:X:\\Sources\\install.wim:1 /LimitAccess
Bonnes pratiques de déploiement et gouvernance
- Maintenez un dépôt interne des installeurs signés et des checksums pour audit.
- Testez chaque version de l’installeur sur des VM reproduisant fidèlement la production.
- Automatisez l’inventaire des versions .NET installées via PowerShell : Get-ChildItem HKLM:\\SOFTWARE\\Microsoft\\NET Framework Setup\\NDP -Recurse | Get-ItemProperty -Name Version,Release -ErrorAction SilentlyContinue
- Préparez un plan de rollback : snapshots, images ou scripts de restauration pour revenir à un état antérieur en cas de problème.
- Déployez via outils centralisés (SCCM, Intune, WSUS) pour meilleure traçabilité et gestion des redémarrages.
Notes sur la migration vers .NET moderne
.NET Framework 4.x demeure nécessaire pour de nombreuses applications legacy. Toutefois, planifiez la migration vers .NET moderne (Core et versions 5, 6, 7, 8) lorsque possible. Cela réduit la dépendance au framework système et facilite les déploiements conteneurisés. En attendant la migration, documentez vos procédures d’installation hors-ligne et conservez des images de référence prêtes à l’emploi.
En résumé : téléchargez uniquement depuis Microsoft, vérifiez SHA256 et signature Authenticode, préparez les prérequis Windows, utilisez les options /quiet /norestart /log pour un déploiement automatisé, analysez CBS.log et les logs d’installation pour diagnostiquer les erreurs, et utilisez DISM et sfc pour réparer une image système corrompue. Archivez checksums et journaux pour l’audit. En appliquant ces pratiques, l’installation hors-ligne de .NET devient répétable, sécurisée et adaptée aux contraintes d’un environnement isolé.



