Windows पर, आप एक ही समय में .NET Framework के कई संस्करण इंस्टॉल और चला सकते हैं। .NET लाइब्रेरीज पर आधारित एक नया एप्लिकेशन विकसित या डिप्लॉय करते समय, कभी-कभी आपको पहले से जानने की आवश्यकता होती है कि उपयोगकर्ता के कंप्यूटर या सर्वर पर .Net Framework के कौन से संस्करण और सर्विस पैक पहले से इंस्टॉल हैं। आप अपने कंप्यूटर पर इंस्टॉल .NET Framework संस्करणों की सूची कई तरीकों से प्राप्त कर सकते हैं।
Windows रजिस्ट्री के माध्यम से .NET Framework संस्करण की जांच
जब आप .NET Framework के किसी भी संस्करण को इंस्टॉल या अपडेट करते हैं, तो परिवर्तन Windows रजिस्ट्री में लिखे जाते हैं।
रजिस्ट्री एडिटर (regedit.exe) चलाएं और रजिस्ट्री कुंजी HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP पर जाएं। यह रजिस्ट्री कुंजी कंप्यूटर पर .NET के सभी संस्करणों के बारे में जानकारी रखती है। किसी भी सबकी को विस्तारित करें और निम्न पैरामीटर्स पर ध्यान दें (.Net 4.x के लिए आपको Full सबकी विस्तारित करने की आवश्यकता है):
- Install — इंस्टॉलेशन फ्लैग (यदि 1 के बराबर है, तो .Net का यह संस्करण कंप्यूटर पर इंस्टॉल है);
- Install Path — वह डायरेक्टरी जहां .Net का यह संस्करण इंस्टॉल है;
- Release — .NET रिलीज नंबर;
- Version — .Net Framework का पूर्ण संस्करण नंबर।
टिप. .NET 4.0 और नए के लिए, यदि Full सबकी गायब है, तो इसका मतलब है कि Framework का यह संस्करण कंप्यूटर पर इंस्टॉल नहीं है।
इस उदाहरण में, आप देख सकते हैं कि .NET Framework v2.0.50727, 3.0, 3.5, और 7.0 (रिलीज 460805) इंस्टॉल हैं।
कृपया ध्यान दें कि Windows Server 2012 से शुरू होने वाले सर्वर ऑपरेटिंग सिस्टम में, सभी बुनियादी .Net संस्करण (3.5 और 4.5) Windows फीचर्स के रूप में इंस्टॉल होते हैं (Windows Server और Windows 10 पर .NET Framework 3.5 इंस्टॉल करना), और मामूली वाले (4.5.1, 4.5.2, आदि) Windows Update या WSUS के माध्यम से अलग अपडेट्स के रूप में इंस्टॉल होते हैं।
निम्न तालिका का उपयोग करके, आप रिलीज नंबर को .NET Framework के संस्करण में मैप कर सकते हैं (.NET 4.5 और नए के लिए)।
| Release Number | .NET Framework version |
|---|---|
| 378389 | .NET Framework 4.5 |
| 378675 | NET Framework 4.5.1 on Windows 8.1 and Windows Server 2012 R2 |
| 378758 | .NET Framework 4.5.1 on Windows 8, Windows 7 SP1, Windows Vista SP2 |
| 379893 | .NET Framework 4.5.2 |
| 393295 | .NET Framework 4.6 on Windows 10 |
| 393297 | .NET Framework 4.6 |
| 394254 | .NET Framework 4.6.1 on Windows 10 1511 |
| 394271 | .NET Framework 4.6.1 |
| 394802 | .NET Framework 4.6.2 on Windows 10 1607 |
| 394806 | .NET Framework 4.6.2 |
| 460798 | .NET Framework 4.7 on Windows 10 1703 |
| 460805 | .NET Framework 4.7 |
| 461308 | .NET Framework 4.7.1 on Windows 10 1709 |
| 461310 | .NET Framework 4.7.1 |
| 461808 | .NET Framework 4.7.2 on Windows 10 1803 |
| 461814 | .NET Framework 4.7.2 |
| 528372 | .NET Framework 4.8 on Windows 10 2004, 20H2, and 21H1 |
| 528040 | .NET Framework 4.8 on Windows 10 1903 and 1909 |
| 528449 | .NET Framework 4.8 on Windows Server 2022 and Windows 11 |
| 528049 | .NET Framework 4.8 (other Window versions) |
.NET Framework 4.8 .NET Framework का नवीनतम उपलब्ध संस्करण है।
PowerShell के साथ .NET Framework संस्करण की जांच कैसे करें?
आप PowerShell का उपयोग करके अपने कंप्यूटर पर NET Framework के इंस्टॉल संस्करणों और रिलीज के बारे में जानकारी प्राप्त कर सकते हैं। रजिस्ट्री से सीधे यह जानकारी प्राप्त करने का सबसे आसान तरीका 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 Windows 11 पर .Net Framework 4.8 से मेल खाता है।
रिमोट कंप्यूटर्स पर इंस्टॉल .NET संस्करणों की सूची
आप PowerShell का उपयोग करके अपने नेटवर्क पर कंप्यूटर्स पर इंस्टॉल .Net Framework संस्करणों की सूची रिमोट रूप से प्राप्त कर सकते हैं।
यहाँ एक छोटा 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")
या आप Active Directory के लिए Windows PowerShell मॉड्यूल से Get-ADComputer cmdlet का उपयोग करके डोमेन कंप्यूटर्स की सूची प्राप्त कर सकते हैं। निम्न कमांड डोमेन में सभी सक्रिय Windows Server होस्ट्स का चयन करेगी:
$servers= Get-ADComputer -Filter 'operatingsystem -like "*Windows server*" -and enabled -eq "true"'
CMD के साथ .NET Framework संस्करण कैसे पता करें?
.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.xxxxx सबडायरेक्टरी में इंस्टॉल होता है।