Computer >> Máy Tính >  >> Hệ thống >> máy chủ Windows

Làm thế nào để Kiểm tra Phiên bản .NET Framework được cài đặt trên Windows?

Trên Windows, bạn có thể cài đặt và chạy nhiều phiên bản .NET Framework cùng một lúc. Khi phát triển hoặc triển khai một ứng dụng mới dựa trên thư viện .NET, đôi khi bạn cần biết trước phiên bản và gói dịch vụ của .Net Framework đã được cài đặt trên máy tính hoặc máy chủ của người dùng. Bạn có thể lấy danh sách các phiên bản .NET Framework được cài đặt trên máy tính của mình theo một số cách.

Kiểm tra Phiên bản .NET Framework qua Sổ đăng ký Windows

Khi bạn cài đặt hoặc cập nhật bất kỳ phiên bản nào của .NET Framework, các thay đổi sẽ được ghi vào sổ đăng ký Windows.

Chạy Registry Editor (regedit.exe ) và đi tới khóa đăng ký HKLM \ SOFTWARE \ Microsoft \ NET Framework Setup \ NDP . Khóa reg này chứa thông tin về tất cả các phiên bản .NET trên máy tính. Mở rộng bất kỳ khóa con nào và chú ý đến các tham số sau (đối với .Net 4.x, bạn cần mở rộng Đầy đủ khóa con):

  • Cài đặt - cờ cài đặt (nếu bằng 1 thì phiên bản .Net này đã được cài đặt trên máy tính);
  • Đường dẫn Cài đặt - thư mục nơi phiên bản .Net này được cài đặt;
  • Phát hành - Số phát hành .NET;
  • Phiên bản - số phiên bản đầy đủ của .Net Framework.

Làm thế nào để Kiểm tra Phiên bản .NET Framework được cài đặt trên Windows?

Mẹo . Đối với .NET 4.0 và mới hơn, nếu khóa con Full bị thiếu, điều đó có nghĩa là phiên bản Framework này chưa được cài đặt trên máy tính.

Trong ví dụ này, bạn có thể thấy rằng .NET Framework v2.0.50727, 3.0, 3.5 và 7.0 (bản phát hành 460805) đã được cài đặt.

Xin lưu ý rằng trong hệ điều hành máy chủ bắt đầu từ Windows Server 2012, tất cả các phiên bản .Net cơ bản (3.5 và 4.5) đều được cài đặt dưới dạng các tính năng của Windows (Cài đặt .NET Framework 3.5 trên Windows Server và Windows 10) và các phiên bản nhỏ (4.5.1, 4.5.2, v.v.) được cài đặt dưới dạng các bản cập nhật riêng biệt thông qua Windows Update hoặc WSUS.

Sử dụng bảng sau, bạn có thể ánh xạ số phát hành với phiên bản .NET Framework (dành cho .NET 4.5 và mới hơn).

Số phát hành Phiên bản .NET Framework 378389.NET Framework 4.5378675NET Framework 4.5.1 trên Windows 8.1 và Windows Server 2012 R2378758.NET Framework 4.5.1 trên Windows 8, Windows 7 SP1, Windows Vista SP2379893.NET Framework 4.5.2393295.NET Framework 4.6 trên Windows 10393297.NET Framework 4.6394254.NET Framework 4.6.1 trên Windows 10 1511394271.NET Framework 4.6.1394802.NET Framework 4.6.2 trên Windows 10 1607394806.NET Framework 4.6.2460798.NET Framework 4.7 trên Windows 10 1703460805.NET Framework 4.7461308.NET Framework 4.7 .1 trên Windows 10 1709461310.NET Framework 4.7.1461808.NET Framework 4.7.2 trên Windows 10 1803461814.NET Framework 4.7.2528372.NET Framework 4.8 trên Windows 10 2004, 20H2 và 21H1528040.NET Framework 4.8 trên Windows 10 1903 và 1909528449.NET Framework 4.8 trên Windows Server 2022 và Windows 11528049.NET Framework 4.8 (các phiên bản Window khác) .NET Framework 4.8 là phiên bản mới nhất hiện có của .NET Framework.

Làm cách nào để Kiểm tra Phiên bản .NET Framework bằng PowerShell?

Bạn có thể nhận thông tin về các phiên bản đã cài đặt và bản phát hành của NET Framework trên máy tính của mình bằng PowerShell. Cách dễ nhất để lấy thông tin này trực tiếp từ sổ đăng ký là sử dụng Get-ChildItemGet-ItemProperty lệnh ghép ngắn (thêm về quản lý các mục đăng ký với PowerShell).

Để hiển thị danh sách tất cả các phiên bản .Net Framework trên máy tính, hãy chạy lệnh:

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

Làm thế nào để Kiểm tra Phiên bản .NET Framework được cài đặt trên Windows?

Phiên bản .Net 2.0, 3.0, 3.5 và 4.7 được cài đặt trên máy tính này.

Bắt đầu với .Net v4.0, phiên bản Framework mới hơn sẽ ghi đè (thay thế) phiên bản cũ hơn. Nếu .NET Framework 4.7 đã được cài đặt trên máy tính thì khi cài đặt .NET Framework 4.8, phiên bản cũ sẽ bị thay thế.

Bạn chỉ có thể hiển thị số phát hành cho (phiên bản .Net 4.x):

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

Làm thế nào để Kiểm tra Phiên bản .NET Framework được cài đặt trên Windows?

Theo bảng, số 528449 tương ứng với .Net Framework 4.8 trên Windows 11.

Liệt kê các phiên bản .NET đã cài đặt trên máy tính từ xa

Bạn có thể lấy từ xa danh sách các phiên bản .Net Framework được cài đặt trên các máy tính trong mạng của mình bằng PowerShell.

Đây là một tập lệnh PowerShell nhỏ truy vấn danh sách máy tính từ tệp văn bản và kiểm tra từ xa các phiên bản .Net Framework đã cài đặt. Lệnh ghép ngắn WinRM Invoke-Command được sử dụng để chạy các lệnh trên máy tính từ xa.

Function GetNetFrameworkVersion {
Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -recurse |
Get-ItemProperty -name Version,Release -EA 0 |
Where { $_.PSChildName -match '^(?![SW])\p{L}'} |
Select PSChildName, Version, Release, @{
name="Product"
expression={
switch -regex ($_.Release) {
"378389" { [Version]"4.5" }
"378675|378758" { [Version]"4.5.1" }
"379893" { [Version]"4.5.2" }
"393295|393297" { [Version]"4.6" }
"394254|394271" { [Version]"4.6.1" }
"394802|394806" { [Version]"4.6.2" }
"460798|460805" { [Version]"4.7" }
"461308|461310" { [Version]"4.7.1" }
"461808|461814" { [Version]"4.7.2" }
"528040|528049|528449|528372" { [Version]"4.8" }
{$_ -gt 528449} { [Version]"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

Tập lệnh hiển thị một bảng đồ họa (thông qua Out-GridView) với danh sách các phiên bản .Net Framework được cài đặt trên máy tính từ xa.

Làm thế nào để Kiểm tra Phiên bản .NET Framework được cài đặt trên Windows?

Bạn cũng có thể đặt danh sách các máy tính để kiểm tra phiên bản .NET như sau:

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

Hoặc bạn có thể lấy danh sách các máy tính trong miền bằng lệnh ghép ngắn Get-ADComputer (từ mô-đun Active Directory cho Windows PowerShell). Lệnh sau sẽ chọn tất cả các máy chủ Windows Server đang hoạt động trong miền:

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

Làm thế nào để Tìm ra Phiên bản .NET Framework với CMD?

Tất cả các phiên bản .NET Framework đều được cài đặt vào các thư mục Windows sau:

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

Bạn chỉ cần mở thư mục đó và xem danh sách các phiên bản .NET đã cài đặt. Mỗi phiên bản có một thư mục riêng với v và số phiên bản làm tên thư mục. Bạn có thể liệt kê các phiên bản đã cài đặt của .NET Framework từ dấu nhắc lệnh:

dir %WINDIR%\Microsoft.Net\Framework\v* /O:-N /B

Làm thế nào để Kiểm tra Phiên bản .NET Framework được cài đặt trên Windows?

Lệnh này sẽ liệt kê tất cả các phiên bản đã cài đặt ngoại trừ .NET 4.5, vì Framework 4.5+ được cài đặt vào thư mục con v4.0.xxxxx.