Gewusst wie: Ermitteln der installierten .NET Framework-Sicherheitsupdates und -HotfixesHow to: Determine which .NET Framework security updates and hotfixes are installed

In diesem Artikel wird gezeigt, wie Sie die auf einem Computer installierten .NET Framework-Sicherheitsupdates und -Hotfixes ermitteln.This article shows you how to find out which .NET Framework security updates and hotfixes are installed on a computer.

Hinweis

Alle in diesem Artikel gezeigten Techniken erfordern ein Konto mit Administratorberechtigungen.All the techniques shown in this article require an account with administrative privileges.

So ermitteln Sie mithilfe der Registrierung die installierten UpdatesTo find installed updates using the registry

Die auf einem Computer installierten Sicherheitsupdates und Hotfixes für jede Version von .NET Framework werden in der Windows-Registrierung aufgeführt.The installed security updates and hotfixes for each version of the .NET Framework installed on a computer are listed in the Windows registry. Sie können diese Informationen mit dem Registrierungs-Editor (regedit.exe) anzeigen.You can use the Registry Editor (regedit.exe) program to view this information.

  1. Öffnen Sie das Programm regedit.exe.Open the program regedit.exe. Klicken Sie in Windows 8 und höheren Versionen mit der rechten Maustaste auf Start Windows-Lo, und klicken Sie dann auf Ausführen.In Windows 8 and later versions, right-click Start Windows logo, then select Run. Geben Sie im Feld Öffnen den Namen regedit.exe ein, und klicken Sie auf OK.In the Open box, enter regedit and select OK.

  2. Öffnen Sie im Registrierungs-Editor den folgenden Unterschlüssel:In the Registry Editor, open the following subkey:

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Updates

    Die installierten Updates werden unter Unterschlüsseln aufgeführt, die die für sie geltende .NET Framework-Version identifizieren.The installed updates are listed under subkeys that identify the .NET Framework version they apply to. Jedes Update wird durch eine Knowledge Base (KB)-Nummer identifiziert.Each update is identified by a Knowledge Base (KB) number.

Im Registrierungs-Editor werden die .NET Framework-Versionen und die installierten Updates für jede Version in verschiedenen Unterschlüsseln gespeichert.In the Registry Editor, the .NET Framework versions and installed updates for each version are stored in different subkeys. Informationen zum Ermitteln der installierten Versionsnummern finden Sie unter Gewusst wie: Bestimmen der installierten .NET Framework-Versionen.For information about detecting the installed version numbers, see How to: Determine which .NET Framework versions are installed.

So ermitteln Sie mithilfe einer Registrierungsabfrage im Code die installierten UpdatesTo find installed updates by querying the registry in code

Im folgenden Beispiel werden die auf einem Computer installierten .NET Framework-Sicherheitsupdates und -Hotfixes programmgesteuert ermittelt:The following example programmatically determines the .NET Framework security updates and hotfixes that are installed on a computer:

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

Das Beispiel erzeugt eine Ausgabe, die der folgenden ähnelt:The example produces an output that's similar to the following one:

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

So ermitteln Sie mithilfe einer Registrierungsabfrage in PowerShell die installierten UpdatesTo find installed updates by querying the registry in PowerShell

Im folgenden Beispiel werden die auf einem Computer installierten .NET Framework-Sicherheitsupdates und -Hotfixes mithilfe von PowerShell ermittelt:The following example shows how to determine the .NET Framework security updates and hotfixes that are installed on a computer using 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
       }
}

Das Beispiel erzeugt eine Ausgabe, die der folgenden ähnelt:The example produces an output that's similar to the following one:

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

Siehe auchSee also

Gewusst wie: Bestimmen der installierten .NET Framework-VersionenHow to: Determine which .NET Framework versions are installed
Installieren von.NET Framework für EntwicklerInstall the .NET Framework for developers
Versionen und AbhängigkeitenVersions and dependencies