pe Windows, puteți instala și rula mai multe versiuni ale.NET Framework în același timp. Când dezvoltați sau implementați o nouă aplicație bazată pe bibliotecile.net, uneori trebuie să știți în prealabil ce versiuni și pachete service Pack ale. Net Framework sunt deja instalate pe computerul sau serverul utilizatorului. Puteți obține o listă a versiunilor. NET Framework instalate pe computer în mai multe moduri.
verificarea .Versiunea Net Framework prin registrul Windows
când instalați sau actualizați orice versiune a.NET Framework, modificările sunt scrise în registrul Windows.
rulați editorul de registru (regedit.exe
) și accesați cheia de registry HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP. Această cheie reg conține informații despre toate versiunile de. net de pe computer. Extindeți orice subcheie și acordați atenție următorilor parametri (pentru.NET 4.x trebuie să extindeți subcheia completă):
- instalare-pavilion de instalare (dacă este egal cu 1, atunci această versiune a .Net este instalat pe computer);
- instalați calea — directorul în care este instalată această versiune.Net;
- Release—. net release number;
- Version — numărul complet al versiunii. Net Framework.
în acest exemplu, puteți vedea că.NET Framework v2.0.50727, 3.0, 3.5 și 7.0 (Versiunea 460805) sunt instalate.
folosind următorul tabel, puteți mapa numărul de lansare la versiunea.NET Framework (pentru. net 4.5 și mai noi).
Numărul De Eliberare | .Versiunea Net Framework |
378389 | . Net Framework 4.5 |
378675 | Net Framework 4.5.1 pe Windows 8.1 și Windows Server 2012 R2 |
378758 | . Net Framework 4.5.1 pe Windows 8, Windows 7 SP1, Windows Vista SP2 |
379893 | . Net Framework 4.5.2 |
393295 | . Net Framework 4.6 pe Windows 10 |
393297 | . Net Framework 4.6 |
394254 | . Net Framework 4.6.1 pe Windows 10 1511 |
394271 | . Net Framework 4.6.1 |
394802 | . Net Framework 4.6.2 pe Windows 10 1607 |
394806 | . Net Framework 4.6.2 |
460798 | . Net Framework 4.7 pe Windows 10 1703 |
460805 | . Net Framework 4.7 |
461308 | . Net Framework 4.7.1 pe Windows 10 1709 |
461310 | . Net Framework 4.7.1 |
461808 | . Net Framework 4.7.2 pe Windows 10 1803 |
461814 | . Net Framework 4.7.2 |
528372 | . Net Framework 4.8 pe Windows 10 2004, 20H2 și 21H1 |
528040 | . Net Framework 4.8 pe Windows 10 1903 și 1909 |
528449 | . Net Framework 4.8 pe Windows Server 2022 și Windows 11 |
528049 | . Net Framework 4.8 (alte versiuni de ferestre) |
cum să verificați .Versiunea NET Framework cu PowerShell?
puteți obține informații despre versiunile și versiunile instalate ale Net Framework pe computer utilizând PowerShell. Cel mai simplu mod de a obține aceste informații direct din registru este utilizând cmdleturile Get-ChildItem
și Get-ItemProperty
(mai multe despre gestionarea intrărilor de registry cu PowerShell).
pentru a afișa o listă a tuturor versiunilor. Net Framework pe un computer, executați comanda:
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
. Net versiunile 2.0, 3.0, 3.5 și 4.7 sunt instalate pe acest computer.
puteți afișa numai numărul de lansare pentru (. NET 4.versiuni x):
(Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release).Release
conform tabelului, numărul 528449 corespunde.Net Framework 4.8 pe Windows 11.
Lista Instalată .Versiuni NET pe computere la distanță
puteți obține de la distanță o listă a versiunilor.Net Framework instalate pe computerele din rețea utilizând PowerShell.
Iată un mic script PowerShell care interoghează o listă de computere dintr-un fișier text și verifică de la distanță versiunile instalate ale.Net Framework. Cmdlet-ul WinRM Invoke-Command este folosit pentru a rula comenzi pe computere la distanță.
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
scriptul afișează un tabel grafic (prin Out-GridView) cu o listă de versiuni.Net Framework instalate pe computere la distanță.
puteți seta, de asemenea, o listă de computere pe care să verificați versiunea. net după cum urmează:
$servers= @("comp1","comp2","comp3","comp4")
sau puteți obține o listă de computere de domeniu cu cmdletul Get-ADComputer (din modulul Active Directory Pentru Windows PowerShell). Următoarea comandă va selecta toate gazdele active Windows Server din domeniu:
$servers= Get-ADComputer -Filter 'operatingsystem -like "*Windows server*" -and enabled -eq "true"'
Cum de a afla versiunea. NET Framework cu CMD?
toate versiunile .Net Framework sunt instalate în următoarele foldere Windows:
%SystemRoot%\Microsoft.NET\Framework
%SystemRoot%\Microsoft.NET\Framework64
puteți deschide pur și simplu acel folder și puteți vedea o listă de versiuni.net instalate. Fiecare versiune are un director separat cu un v și un număr de versiune ca nume de folder. Puteți lista versiunile instalate ale. NET Framework din promptul de comandă: