Bepalen welke .NET Framework-beveiligingsupdates en hotfixes zijn geïnstalleerd
In dit artikel leest u hoe u kunt achterhalen welke .NET Framework-beveiligingsupdates en hotfixes op een computer zijn geïnstalleerd.
Updategeschiedenis
Als u wilt zien welke .NET Framework-updates op uw eigen computer zijn geïnstalleerd, gaat u in Instellingen naar de geschiedenis van Windows Update Update>. Kijk onder de sectie Kwaliteitsupdates voor .NET Framework-updates. U ziet bijvoorbeeld een update die lijkt op '2023-11 Cumulatieve update voor .NET Framework 3.5 en 4.8.1 voor Windows 11, versie 22H2 voor x64 (KB5032007)'.
Register
U kunt een query uitvoeren op het register met behulp van registereditor, code of PowerShell.
Notitie
Voor alle registertechnieken is een account met beheerdersbevoegdheden vereist.
De register-editor gebruiken
De geïnstalleerde beveiligingsupdates en hotfixes voor elke versie van .NET Framework die op een computer zijn geïnstalleerd, worden vermeld in het Windows-register. U kunt het programma Registereditor (regedit.exe) gebruiken om deze informatie weer te geven.
Open het programma regedit.exe. Klik in Windows 8 en hoger met de rechtermuisknop op Start en selecteer Uitvoeren. Voer in het vak Openen regedit in en selecteer OK.
Open in de Register-editor de volgende subsleutel:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Updates
De geïnstalleerde updates worden vermeld onder subsleutels waarop de .NET Framework-versie wordt geïdentificeerd waarop ze van toepassing zijn. Elke update wordt geïdentificeerd met een Kb-nummer (Knowledge Base).
In de Register-editor worden de .NET Framework-versies en geïnstalleerde updates voor elke versie opgeslagen in verschillende subsleutels. Zie How to: Bepalen welke .NET Framework-versies zijn geïnstalleerd voor informatie over het detecteren van de geïnstalleerde versienummers.
Query's uitvoeren met behulp van code
Het volgende voorbeeld bepaalt programmatisch de .NET Framework-beveiligingsupdates en hotfixes die op een computer zijn geïnstalleerd:
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
In het voorbeeld wordt een uitvoer geproduceerd die vergelijkbaar is met de volgende uitvoer:
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
Query's uitvoeren met PowerShell
In het volgende voorbeeld ziet u hoe u de .NET Framework-beveiligingsupdates en hotfixes kunt bepalen die zijn geïnstalleerd op een computer met behulp van 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
}
}
In het voorbeeld wordt een uitvoer geproduceerd die vergelijkbaar is met de volgende uitvoer:
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