Comment déterminer les correctifs logiciels et mises à jour de sécurité de .NET Framework installés
Cet article montre comment rechercher les correctifs logiciels et mises à jour de sécurité .NET Framework installés sur un ordinateur.
Historique des mises à jour
Pour voir les mises à jour .NET Framework qui sont installées sur votre propre ordinateur, dans Paramètres, accédez à Windows Update>Historique des mises à jour. Recherchez sous la section Mises à jour de qualité pour les mises à jour .NET Framework. Par exemple, il vous est possible de voir une mise à jour semblable à « Mise à jour cumulée 2023-11 pour .NET Framework 3.5 et 4.8.1 pour Windows 11, version 22H2 pour x64 (KB5032007) ».
Registre
Vous pouvez interroger le registre en utilisant Éditeur de registre, code ou PowerShell.
Remarque
Toutes les techniques de registre nécessitent un compte avec des privilèges administratifs.
Utiliser l’Éditeur du Registre
Les correctifs logiciels et mises à jour de sécurité installés pour chaque version du .NET Framework installée sur un ordinateur sont répertoriés dans le Registre Windows. Vous pouvez utiliser le programme Éditeur du Registre (regedit.exe) pour afficher ces informations.
Ouvrez le programme regedit.exe. Dans Windows 8 et les versions ultérieures, faites un clic droit sur Démarrer , puis sélectionnez Exécuter. Dans la zone Ouvrir, entrez regedit et sélectionnez OK.
Dans l'Éditeur du Registre, ouvrez la sous-clé suivante :
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Updates
Les mises à jour installées sont répertoriées sous les sous-clés qui identifient la version du .NET Framework auquel elles s'appliquent. Chaque mise à jour est identifiée par un numéro de Base de connaissances (KB).
Dans l'Éditeur du Registre, les versions du .NET Framework et les mises à jour installées pour chaque version sont stockées dans des sous-clés distinctes. Pour plus d’informations sur la détection des numéros des versions installées, consultez Guide pratique pour déterminer les versions du .NET Framework installées.
Requête utilisant du code
L’exemple suivant détermine par programmation les correctifs logiciels et mises à jour de sécurité .NET Framework installés sur un ordinateur :
using System;
using Microsoft.Win32;
public class GetUpdateHistory
{
public static void Main()
{
using (RegistryKey baseKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(@"SOFTWARE\Microsoft\Updates"))
{
foreach (string baseKeyName in baseKey.GetSubKeyNames())
{
if (baseKeyName.Contains(".NET Framework"))
{
using (RegistryKey updateKey = baseKey.OpenSubKey(baseKeyName))
{
Console.WriteLine(baseKeyName);
foreach (string kbKeyName in updateKey.GetSubKeyNames())
{
using (RegistryKey kbKey = updateKey.OpenSubKey(kbKeyName))
{
Console.WriteLine(" " + kbKeyName);
}
}
}
}
}
}
}
}
Imports Microsoft.Win32
Public Class GetUpdateHistory
Public Shared Sub Main()
Using baseKey As RegistryKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey("SOFTWARE\Microsoft\Updates")
For Each baseKeyName As String In baseKey.GetSubKeyNames()
If baseKeyName.Contains(".NET Framework") Then
Using updateKey As RegistryKey = baseKey.OpenSubKey(baseKeyName)
Console.WriteLine(baseKeyName)
For Each kbKeyName As String In updateKey.GetSubKeyNames()
Using kbKey As RegistryKey = updateKey.OpenSubKey(kbKeyName)
Console.WriteLine(" " & kbKeyName)
End Using
Next
End Using
End If
Next
End Using
End Sub
End Class
Cet exemple produit une sortie semblable à la suivante :
Microsoft .NET Framework 4 Client Profile
KB2468871
KB2468871v2
KB2478063
KB2533523
KB2544514
KB2600211
KB2600217
Microsoft .NET Framework 4 Extended
KB2468871
KB2468871v2
KB2478063
KB2533523
KB2544514
KB2600211
KB2600217
Requête utilisant PowerShell
L’exemple suivant montre comment déterminer les correctifs logiciels et mises à jour de sécurité .NET Framework installés sur un ordinateur à l’aide de PowerShell :
$DotNetVersions = Get-ChildItem HKLM:\SOFTWARE\WOW6432Node\Microsoft\Updates | Where-Object {$_.name -like
"*.NET Framework*"}
ForEach($Version in $DotNetVersions){
$Updates = Get-ChildItem $Version.PSPath
$Version.PSChildName
ForEach ($Update in $Updates){
$Update.PSChildName
}
}
Cet exemple produit une sortie semblable à la suivante :
Microsoft .NET Framework 4 Client Profile
KB2468871
KB2468871v2
KB2478063
KB2533523
KB2544514
KB2600211
KB2600217
Microsoft .NET Framework 4 Extended
KB2468871
KB2468871v2
KB2478063
KB2533523
KB2544514
KB2600211
KB2600217