Wie kann ich die .NET Framework-Version überprüfen, die unter Windows installiert ist?

Unter Windows können Sie mehrere Versionen von .NET Framework gleichzeitig installieren und ausführen. Wenn Sie eine neue Anwendung entwickeln oder bereitstellen, die auf .NET-Bibliotheken basiert, müssen Sie manchmal im Voraus wissen, welche Versionen und Service Packs von .Net Framework bereits auf dem Computer oder Server des Benutzers installiert sind. Sie können eine Liste der auf Ihrem Computer installierten .NET Framework-Versionen auf verschiedene Arten abrufen.

Überprüfen der .NET Framework-Version über die Windows-Registrierung

Wenn Sie eine beliebige Version von .NET Framework installieren oder aktualisieren, werden die Änderungen in die Windows-Registrierung geschrieben.

Führen Sie den Registrierungseditor aus (regedit.exe) und gehen Sie zu Registrierungsschlüssel HKLM \SOFTWARE\Microsoft\NET Framework Setup\NDP. Dieser Registrierungsschlüssel enthält Informationen zu allen Versionen von .NET auf dem Computer. Erweitern Sie einen beliebigen Unterschlüssel und beachten Sie die folgenden Parameter (für .Net 4.x Sie müssen den vollständigen Unterschlüssel erweitern):

  • Install – Installation Flag (wenn gleich 1, dann diese Version von .Net auf dem Computer installiert ist);
  • Installationspfad — das Verzeichnis, in dem diese .Net—Version installiert ist;
  • Release — .NET-Versionsnummer;
  • Version – die vollständige Versionsnummer von .Net Framework.

 .Net Versionsnummer und Release in der Registry

Tipp. Wenn für .NET 4.0 und neuer der vollständige Unterschlüssel fehlt, bedeutet dies, dass diese Version des Frameworks nicht auf dem Computer installiert ist.

In diesem Beispiel sehen Sie, dass .NET Framework v2.0.50727, 3.0, 3.5 und 7.0 (Release 460805) installiert sind.

Bitte beachten Sie, dass in Serverbetriebssystemen ab Windows Server 2012 alle grundlegenden .Net-Versionen (3.5 und 4.5) als Windows-Features (Installation von .NET Framework 3.5 unter Windows Server und Windows 10) und kleinere (4.5.1, 4.5.2 usw.) installiert sind.) werden als separate Updates über Windows Update oder WSUS installiert.

Anhand der folgenden Tabelle können Sie die Versionsnummer der Version von .NET Framework (für .NET 4.5 und neuer) zuordnen.

Veröffentlichungsnummer .NET Framework-Version
378389 .NET Framework 4.5
378675 NET Framework 4.5.1 unter Windows 8.1 und Windows Server 2012 R2
378758 .NET Framework 4.5.1 unter Windows 8, Windows 7 SP1, Windows Vista SP2
379893 .NET Framework 4.5.2
393295 .NET Framework 4.6 unter Windows 10
393297 .NET Framework 4.6
394254 .NET Framework 4.6.1 unter Windows 10 1511
394271 .NET Framework 4.6.1
394802 .NET Framework 4.6.2 unter Windows 10 1607
394806 .NET Framework 4.6.2
460798 .NET Framework 4.7 unter Windows 10 1703
460805 .NET Framework 4.7
461308 .NET Framework 4.7.1 unter Windows 10 1709
461310 .NET Framework 4.7.1
461808 .NET Framework 4.7.2 unter Windows 10 1803
461814 .NET Framework 4.7.2
528372 .NET Framework 4.8 unter Windows 10 2004, 20H2 und 21H1
528040 .NET Framework 4.8 unter Windows 10 1903 und 1909
528449 .NET Framework 4.8 unter Windows Server 2022 und Windows 11
528049 .NET Framework 4.8 (andere Fensterversionen)

.NET Framework 4.8 ist die neueste verfügbare Version von .NET Framework.

So überprüfen Sie die .NET Framework-Version mit PowerShell?

Sie können Informationen über installierte Versionen und Releases von NET Framework auf Ihrem Computer mithilfe von PowerShell abrufen. Der einfachste Weg, diese Informationen direkt aus der Registrierung abzurufen, ist die Verwendung der Cmdlets Get-ChildItem und Get-ItemProperty (weitere Informationen zum Verwalten von Registrierungseinträgen mit PowerShell).

Um eine Liste aller Versionen von .Net Framework auf einem Computer anzuzeigen, führen Sie den Befehl:

Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -Recurse | Get-ItemProperty -Name version -EA 0 | Where { $_.PSChildName -Match '^(?!S)\p{L}'} | Select PSChildName, version

 ermitteln Sie die Net Framework-Version mit Powershell

.Net-Versionen 2.0, 3.0, 3.5 und 4.7 sind auf diesem Computer installiert.

Ab .Net v4.0 überschreibt (ersetzt) die neuere Framework-Version die ältere Version. Wenn .NET Framework 4.7 auf dem Computer installiert wurde, wird bei der Installation von .NET Framework 4.8 die alte Version ersetzt.

Sie können nur die Versionsnummer für (.Net 4.x Versionen):

(Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release).Release

 überprüfen Sie die Net Framework-Nummer mit Powershell

Gemäß der Tabelle entspricht die Nummer 528449 dem .Net Framework 4.8 unter Windows 11.

Liste installiert .NET-Versionen auf Remotecomputern

Mithilfe von PowerShell können Sie eine Liste der .Net Framework-Versionen abrufen, die auf Computern in Ihrem Netzwerk installiert sind.

Hier ist ein kleines PowerShell-Skript, das eine Liste von Computern aus einer Textdatei abfragt und remote nach installierten Versionen von .Net Framework sucht. Das WinRM-Cmdlet Invoke-Command wird zum Ausführen von Befehlen auf Remotecomputern verwendet.

Function GetNetFrameworkVersion {
Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -recurse |
Get-ItemProperty -name Version,Release -EA 0 |
Where { $_.PSChildName -match '^(?!)\p{L}'} |
Select PSChildName, Version, Release, @{
name="Product"
expression={
switch -regex ($_.Release) {
"378389" { "4.5" }
"378675|378758" { "4.5.1" }
"379893" { "4.5.2" }
"393295|393297" { "4.6" }
"394254|394271" { "4.6.1" }
"394802|394806" { "4.6.2" }
"460798|460805" { "4.7" }
"461308|461310" { "4.7.1" }
"461808|461814" { "4.7.2" }
"528040|528049|528449|528372" { "4.8" }
{$_ -gt 528449} { "unidentified version (> 4.8)" }
}
}
}
}
$result=@()
$servers= Get-Content C:\Scripts\my_servers.txt
foreach ($server in $servers)
{
$result+=Invoke-Command -ComputerName $server -ScriptBlock $function:GetNetFrameworkVersion
}
$result| select PSComputerName,@{name = ".NET Framework"; expression = {$_.PSChildName}},Product,Version,Release| Out-GridView

Das Skript zeigt eine grafische Tabelle (über Out-GridView) mit einer Liste der auf Remotecomputern installierten .Net Framework-Versionen an.

 PowerShell-Skript zum Abrufen der .NET Framework-Version von Remotecomputern

Sie können auch eine Liste der Computer festlegen, auf denen die .NET-Version wie folgt überprüft werden soll:

$servers= @("comp1","comp2","comp3","comp4")

Sie können auch eine Liste der Domänencomputer mit dem Cmdlet Get-ADComputer (aus dem Modul Active Directory für Windows PowerShell) abrufen. Mit dem folgenden Befehl werden alle aktiven Windows Server-Hosts in der Domäne ausgewählt:

$servers= Get-ADComputer -Filter 'operatingsystem -like "*Windows server*" -and enabled -eq "true"'

Wie finde ich die .NET Framework-Version mit CMD heraus?

Alle Versionen der .NET Framework werden in den folgenden Windows-Ordnern installiert:

  • %SystemRoot%\Microsoft.NET\Framework
  • %SystemRoot%\Microsoft.NET\Framework64

Sie können diesen Ordner einfach öffnen und eine Liste der installierten .NET-Versionen anzeigen. Jede Version hat ein eigenes Verzeichnis mit einem v und einer Versionsnummer als Ordnernamen. Sie können die installierten Versionen von .NET Framework über die Eingabeaufforderung auflisten:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.