บน Windows คุณสามารถติดตั้งและเรียกใช้ .NET Framework ได้หลายเวอร์ชันพร้อมกัน เมื่อพัฒนาหรือปรับใช้แอปพลิเคชันใหม่โดยใช้ไลบรารี .NET บางครั้งคุณจำเป็นต้องทราบล่วงหน้าว่าเวอร์ชันและเซอร์วิสแพ็คของ .Net Framework ใดได้รับการติดตั้งไว้แล้วในคอมพิวเตอร์หรือเซิร์ฟเวอร์ของผู้ใช้ คุณสามารถรับรายการเวอร์ชัน .NET Framework ที่ติดตั้งบนคอมพิวเตอร์ของคุณได้หลายวิธี
การตรวจสอบเวอร์ชัน .NET Framework ผ่าน Windows Registry
เมื่อคุณติดตั้งหรืออัปเดต .NET Framework เวอร์ชันใดก็ตาม การเปลี่ยนแปลงจะถูกเขียนไปยังรีจิสทรีของ Windows
เรียกใช้ตัวแก้ไขรีจิสทรี (regedit.exe
) และไปที่รีจิสตรีคีย์ HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP . คีย์ reg นี้มีข้อมูลเกี่ยวกับ .NET ทุกเวอร์ชันบนคอมพิวเตอร์ ขยายคีย์ย่อยและให้ความสนใจกับพารามิเตอร์ต่อไปนี้ (สำหรับ .Net 4.x คุณต้องขยาย เต็ม คีย์ย่อย):
- ติดตั้ง — แฟล็กการติดตั้ง (หากเท่ากับ 1 แสดงว่า .Net เวอร์ชันนี้ถูกติดตั้งบนคอมพิวเตอร์)
- ติดตั้งเส้นทาง — ไดเร็กทอรีที่ติดตั้ง .Net เวอร์ชันนี้
- วางจำหน่าย — .NET หมายเลขรุ่น;
- เวอร์ชัน — หมายเลขเวอร์ชันเต็มของ .Net Framework
เคล็ดลับ . สำหรับ .NET 4.0 และใหม่กว่า หากไม่มีคีย์ย่อยแบบเต็ม แสดงว่าไม่ได้ติดตั้ง Framework เวอร์ชันนี้ไว้ในคอมพิวเตอร์
ในตัวอย่างนี้ คุณจะเห็นว่ามีการติดตั้ง .NET Framework v2.0.50727, 3.0, 3.5 และ 7.0 (รุ่น 460805)
โปรดทราบว่าในระบบปฏิบัติการเซิร์ฟเวอร์ที่เริ่มต้นจาก Windows Server 2012 เวอร์ชัน .Net พื้นฐานทั้งหมด (3.5 และ 4.5) จะได้รับการติดตั้งเป็นฟีเจอร์ของ Windows (การติดตั้ง .NET Framework 3.5 บน Windows Server และ Windows 10) และรุ่นรอง (4.5.1, 4.5.2 เป็นต้น) ได้รับการติดตั้งเป็นการอัปเดตแยกต่างหากผ่าน Windows Update หรือ WSUSเมื่อใช้ตารางต่อไปนี้ คุณสามารถจับคู่หมายเลขเผยแพร่กับเวอร์ชันของ .NET Framework (สำหรับ .NET 4.5 และใหม่กว่า)
หมายเลขประจำเครื่อง รุ่น .NET Framework 378389.NET Framework 4.5378675NET Framework 4.5.1 บน Windows 8.1 และ Windows Server 2012 R2378758.NET Framework 4.5.1 บน Windows 8, Windows 7 SP1, Windows Vista SP2379893.NET Framework 4.5.2393295.NET Framework 4.6 บน Windows 10393297.NET กรอบงาน 4.6394254.NET Framework 4.6.1 การบน Windows 10 1511394271.NET Framework 4.6.1394802.NET Framework 4.6.2 การบน Windows 10 1607394806.NET Framework 4.6.2460798.NET Framework 4.7 บน Windows 10 1703460805.NET Framework 4.7461308.NET Framework 4.7 .1 บน Windows 10 1709461310.NET Framework 4.7.1461808.NET Framework 4.7.2 บน Windows 10 1803461814.NET Framework 4.7.2528372.NET Framework 4.8 บน Windows 10 2004, 20H2 และ 21H1528040.NET Framework 4.8 บน Windows 10 1903 และ 1909528449.NET Framework 4.8 บน Windows Server 2022 และ Windows 11528049.NET Framework 4.8 (รุ่น Window อื่นๆ) .NET Framework 4.8 เป็นเวอร์ชันล่าสุดของ .NET Frameworkจะตรวจสอบเวอร์ชัน .NET Framework ด้วย PowerShell ได้อย่างไร
คุณสามารถรับข้อมูลเกี่ยวกับรุ่นที่ติดตั้งและรุ่นของ NET Framework บนคอมพิวเตอร์ของคุณโดยใช้ PowerShell วิธีที่ง่ายที่สุดในการรับข้อมูลนี้โดยตรงจากรีจิสทรีคือการใช้ Get-ChildItem
และ Get-ItemProperty
cmdlets (เพิ่มเติมเกี่ยวกับการจัดการรายการรีจิสตรีด้วย PowerShell)
หากต้องการแสดงรายการ .Net Framework ทุกรุ่นบนคอมพิวเตอร์ ให้เรียกใช้คำสั่ง:
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 เวอร์ชัน 2.0, 3.0, 3.5 และ 4.7 ได้รับการติดตั้งบนคอมพิวเตอร์เครื่องนี้
เริ่มต้นด้วย .Net v4.0 เวอร์ชัน Framework ที่ใหม่กว่าจะเขียนทับ (แทนที่) เวอร์ชันที่เก่ากว่า กล่าวคือ หากติดตั้ง .NET Framework 4.7 บนคอมพิวเตอร์ เมื่อติดตั้ง .NET Framework 4.8 เวอร์ชันเก่าจะถูกแทนที่คุณสามารถแสดงเฉพาะหมายเลขรุ่นสำหรับ (เวอร์ชัน .Net 4.x):
(Get-ItemProperty ‘HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full’ -Name Release).Release
ตามตาราง หมายเลข 528449 ตรงกับ .Net Framework 4.8 บน Windows 11
รายการรุ่น .NET ที่ติดตั้งบนคอมพิวเตอร์ระยะไกล
คุณสามารถรับรายการเวอร์ชัน .Net Framework ที่ติดตั้งบนคอมพิวเตอร์ในเครือข่ายของคุณจากระยะไกลได้โดยใช้ PowerShell
นี่คือสคริปต์ PowerShell ขนาดเล็กที่สอบถามรายการคอมพิวเตอร์จากไฟล์ข้อความ และตรวจสอบเวอร์ชันที่ติดตั้งของ .Net Framework จากระยะไกล WinRM Invoke-Command cmdlet ใช้เพื่อเรียกใช้คำสั่งบนคอมพิวเตอร์ระยะไกล
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
สคริปต์แสดงตารางกราฟิก (ผ่าน Out-GridView) พร้อมรายการเวอร์ชัน .Net Framework ที่ติดตั้งบนคอมพิวเตอร์ระยะไกล
คุณยังสามารถกำหนดรายการคอมพิวเตอร์ที่จะตรวจสอบเวอร์ชัน .NET ได้ดังนี้:
$servers= @("comp1","comp2","comp3","comp4")
หรือคุณสามารถรับรายการคอมพิวเตอร์โดเมนด้วย Get-ADComputer cmdlet (จากโมดูล Active Directory สำหรับ Windows PowerShell) คำสั่งต่อไปนี้จะเลือกโฮสต์ Windows Server ที่ใช้งานอยู่ทั้งหมดในโดเมน:
$servers= Get-ADComputer -Filter 'operatingsystem -like "*Windows server*" -and enabled -eq "true"'
จะค้นหาเวอร์ชัน .NET Framework ด้วย CMD ได้อย่างไร
.NET Framework ทุกเวอร์ชันได้รับการติดตั้งในโฟลเดอร์ Windows ต่อไปนี้:
%SystemRoot%\Microsoft.NET\Framework
%SystemRoot%\Microsoft.NET\Framework64
คุณสามารถเปิดโฟลเดอร์นั้นและดูรายการเวอร์ชัน .NET ที่ติดตั้งไว้ แต่ละเวอร์ชันมีไดเร็กทอรีแยกต่างหากที่มี v และหมายเลขเวอร์ชันเป็นชื่อโฟลเดอร์ คุณสามารถแสดงรายการ .NET Framework เวอร์ชันที่ติดตั้งได้จากพรอมต์คำสั่ง:
dir %WINDIR%\Microsoft.Net\Framework\v* /O:-N /B
คำสั่งนี้จะแสดงรายการเวอร์ชันที่ติดตั้งทั้งหมด ยกเว้น .NET 4.5 เนื่องจากมีการติดตั้ง Framework 4.5+ ลงในไดเร็กทอรีย่อย v4.0.xxxx