Útmutató: Annak meghatározása, hogy mely .NET-keretrendszer verziók vannak telepítve
Feljegyzés
Ez a cikk a .NET-keretrendszer vonatkozik. Annak megállapításához, hogy mely .NET Core és .NET 5+ SDK-k és futtatókörnyezetek vannak telepítve, olvassa el a .NET telepítésének ellenőrzéséhez.
A .NET-keretrendszer több verzióját is telepítheti és futtathatja a számítógépen.
- Ha a saját számítógépén szeretné ellenőrizni a verziókat, a legegyszerűbb módszer a Vezérlőpult> Program programok>és szolgáltatások, vagy a telepített alkalmazások> alkalmazásainak Gépház. Ezeket a közösségi fenntartású eszközöket is használhatja.
- Ha Ön alkalmazásfejlesztő, előfordulhat, hogy tudnia kell, hogy mely .NET-keretrendszer verziók vannak telepítve az alkalmazásfelhasználó számítógépén. A beállításjegyzék tartalmazza a számítógépre telepített .NET-keretrendszer verzióinak listáját. A tulajdonságot
RuntimeInformation.FrameworkDescription
is lekérdezheti. - A külön verziójú CLR-verzió megkereséséhez lásd : CLR-verziók keresése.
.NET-keretrendszer két fő összetevőből áll, amelyek külön verziószámozottak:
- Szerelvények készlete, amelyek olyan típusok és erőforrások gyűjteményei, amelyek biztosítják az alkalmazások funkcióit. .NET-keretrendszer és a szerelvények azonos verziószámmal rendelkeznek. .NET-keretrendszer verzió például a 4.5, a 4.6.1 és a 4.7.2.
- A közös nyelvi futtatókörnyezet (CLR), amely kezeli és végrehajtja az alkalmazás kódját. Egy CLR-verzió általában több .NET-keretrendszer verziót támogat. Például a CLR 4.0.30319-es verziója.xxxxx ahol az xxxxx kisebb, mint 42000, támogatja .NET-keretrendszer 4–4.5.2-s verziót. A 4.0.30319.42000-esnél nagyobb vagy azzal egyenlő CLR-verzió támogatja .NET-keretrendszer verziót a .NET-keretrendszer 4.6-os verziótól kezdve.
Tipp.
Az egyes .NET-keretrendszer-verziók telepített frissítéseinek észleléséről további információt a következő témakörben talál: Útmutató: A telepített .NET-keretrendszer frissítések meghatározása.
Közösség által karbantartott eszközök
A közösség által fenntartott eszközök segítenek megállapítani, hogy mely .NET-keretrendszer verziók vannak telepítve:
RuntimeInformation.FrameworkDescription
Tulajdonság
Ha programozott módon szeretné lekérdezni, hogy az alkalmazás melyik .NET-verzión fut, használhatja a tulajdonságot RuntimeInformation.FrameworkDescription . Ha az alkalmazás .NET-keretrendszer fut, a kimenet a következőhöz hasonló lesz:
.NET Framework 4.8.4250.0
Összehasonlításképpen, ha az alkalmazás .NET Core-on vagy .NET 5+-on fut, a kimenet a következőhöz hasonló lesz:
.NET Core 3.1.9
.NET 5.0.0
Beállításjegyzék
A beállításjegyzék használatával észlelheti, hogy melyik .NET-keretrendszer verzió van telepítve. A kulcsok különböznek az 1.0-4.0 .NET-keretrendszer és a 4.5+.NET-keretrendszer. A beállításjegyzék ellenőrzéséhez használhatja a Beállításszerkesztőt, a PowerShellt vagy a kódot.
.NET-keretrendszer 4.5-ös és újabb verziók
A számítógépen telepített .NET-keretrendszer (4.5-ös vagy újabb) verziója a beállításjegyzékben szerepel a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full címen. Ha a Teljes alkulcs hiányzik, akkor a .NET-keretrendszer 4.5-ös vagy újabb verzió nincs telepítve.
Feljegyzés
A beállításjegyzék elérési útjának NET-keretrendszer telepítő alkulcsa nem ponttal kezdődik.
A beállításjegyzék kiadási REG_DWORD értéke a telepített .NET-keretrendszer verzióját jelöli.
.NET-keretrendszer verziója | A kiadás értéke |
---|---|
.NET-keretrendszer 4.5 | Minden Windows operációs rendszer: 378389 |
.NET-keretrendszer 4.5.1 | Windows 8.1 és Windows Server 2012 R2 rendszeren: 378675 Minden más Windows operációs rendszeren: 378758 |
.NET-keretrendszer 4.5.2 | Minden Windows operációs rendszer: 379893 |
.NET-keretrendszer 4.6 | Windows 10-en: 393295 Minden más Windows operációs rendszeren: 393297 |
.NET-keretrendszer 4.6.1-es verziója | Windows 10 novemberi frissítési rendszereken: 394254 Minden más Windows operációs rendszeren (beleértve a Windows 10-et is): 394271 |
.NET-keretrendszer 4.6.2 | Windows 10 évfordulós frissítés és Windows Server 2016: 394802 Minden más Windows operációs rendszeren (beleértve a Többi Windows 10 operációs rendszert is): 394806 |
.NET-keretrendszer 4.7 | Windows 10 alkotói frissítés: 460798 Minden más Windows operációs rendszeren (beleértve a Többi Windows 10 operációs rendszert is): 460805 |
.NET-keretrendszer 4.7.1 | Windows 10 Fall Creators Update és Windows Server 1709-es verzió: 461308 Minden más Windows operációs rendszeren (beleértve a Többi Windows 10 operációs rendszert is): 461310 |
.NET-keretrendszer 4.7.2 | Windows 10 2018. április 10-i frissítés és Windows Server 1803-es verzió: 461808 A Windows 10 2018. április 10-i frissítéstől és Windows Servertől eltérő windowsos operációs rendszereken az 1803-es verzió: 461814 |
.NET-keretrendszer 4.8 | Windows 10 2019. májusi frissítése és Windows 10 2019. novemberi frissítés: 528040 Windows 10 2020. májusi frissítés, 2020. októberi frissítés, 2021. májusi frissítés, 2021. novemberi frissítés és 2022- frissítés: 528372 Windows 11 és Windows Server 2022 rendszeren: 528449 Minden más Windows operációs rendszeren (beleértve a többi Windows 10 operációs rendszert is): 528049 |
.NET-keretrendszer 4.8.1 | Windows 11 2022 Update és Windows 11 2023 Update: 533320 Minden más Windows operációs rendszer: 533325 |
Minimális verzió
Annak megállapításához, hogy a .NET-keretrendszer minimális verziója létezik-e, keressen egy kiadási REG_DWORD értéket, amely nagyobb vagy egyenlő az alábbi táblázatban felsorolt megfelelő értékkel. Ha például az alkalmazás a .NET-keretrendszer 4.8-at vagy újabb verziót használja, tesztelje az 528040-es vagy annál nagyobb kiadási REG_DWORD értéket.
.NET-keretrendszer verziója | Minimális érték |
---|---|
.NET-keretrendszer 4.5 | 378389 |
.NET-keretrendszer 4.5.1 | 378675 |
.NET-keretrendszer 4.5.2 | 379893 |
.NET-keretrendszer 4.6 | 393295 |
.NET-keretrendszer 4.6.1-es verziója | 394254 |
.NET-keretrendszer 4.6.2 | 394802 |
.NET-keretrendszer 4.7 | 460798 |
.NET-keretrendszer 4.7.1 | 461308 |
.NET-keretrendszer 4.7.2 | 461808 |
.NET-keretrendszer 4.8 | 528040 |
.NET-keretrendszer 4.8.1 | 533320 |
Beállításszerkesztő használata
A Start menüben válassza a Futtatás lehetőséget, írja be a regedit parancsot, majd kattintson az OK gombra.
(A regedit futtatásához rendszergazdai hitelesítő adatokkal kell rendelkeznie.)
A Beállításszerkesztőben nyissa meg a következő alkulcsot: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full. Ha a Teljes alkulcs nincs telepítve, akkor nincs telepítve a .NET-keretrendszer 4.5-ös vagy újabb verziója.
Keressen egy Kiadás nevű REG_DWORD bejegyzést. Ha létezik, akkor a .NET-keretrendszer 4.5-ös vagy újabb verziója van telepítve. Értéke a .NET-keretrendszer egy adott verziójának felel meg. Az alábbi ábrán például a kiadási bejegyzés értéke 528040, amely a 4.8-.NET-keretrendszer kiadási kulcsa.
A PowerShell használata a minimális verzió ellenőrzéséhez
A PowerShell-parancsokkal ellenőrizze a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Teljes alkulcs kiadási bejegyzésének értékét.
Az alábbi példák a kiadási bejegyzés értékét ellenőrzik annak megállapításához, hogy .NET-keretrendszer 4.6.2-es vagy újabb verzió van-e telepítve. Ez a kód akkor ad True
vissza, ha telepítve van, és False
egyébként is.
(Get-ItemPropertyValue -LiteralPath 'HKLM:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release) -ge 394802
A beállításjegyzék lekérdezése kóddal
Használja a RegistryKey.OpenBaseKeyRegistryKey.OpenSubKey HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full alkulcsot a Windows beállításjegyzékben.
Fontos
Ha a futó alkalmazás 32 bites, és 64 bites Windows rendszerben fut, a beállításjegyzék elérési útjai eltérnek a korábban felsoroltaktól. A 64 bites beállításjegyzék a HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ alkulcsban érhető el. A 4.5-ös .NET-keretrendszer beállításkulcsa például HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v4\Full.
A telepített verzió meghatározásához ellenőrizze a Kiadás REG_DWORD értékét. Ha tovább kompatibilis szeretne lenni, ellenőrizze, hogy a .NET-keretrendszer verziótáblában szereplő értéknél nagyobb vagy egyenlő érték van-e.
Az alábbi példa a beállításjegyzék kiadási bejegyzésének értékét ellenőrzi a telepített .NET-keretrendszer 4.5-4.8.1-es verzióinak megkereséséhez.
Tipp.
Ha még nem tette meg, adja hozzá az irányelvet using Microsoft.Win32
vagy Imports Microsoft.Win32
a kódfájl tetején.
const string subkey = @"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\";
using (var ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(subkey))
{
if (ndpKey != null && ndpKey.GetValue("Release") != null)
{
Console.WriteLine($".NET Framework Version: {CheckFor45PlusVersion((int)ndpKey.GetValue("Release"))}");
}
else
{
Console.WriteLine(".NET Framework Version 4.5 or later is not detected.");
}
}
// Checking the version using >= enables forward compatibility.
string CheckFor45PlusVersion(int releaseKey)
{
if (releaseKey >= 533320)
return "4.8.1 or later";
if (releaseKey >= 528040)
return "4.8";
if (releaseKey >= 461808)
return "4.7.2";
if (releaseKey >= 461308)
return "4.7.1";
if (releaseKey >= 460798)
return "4.7";
if (releaseKey >= 394802)
return "4.6.2";
if (releaseKey >= 394254)
return "4.6.1";
if (releaseKey >= 393295)
return "4.6";
if (releaseKey >= 379893)
return "4.5.2";
if (releaseKey >= 378675)
return "4.5.1";
if (releaseKey >= 378389)
return "4.5";
// This code should never execute. A non-null release key should mean
// that 4.5 or later is installed.
return "No 4.5 or later version detected";
}
Private Sub Get45PlusFromRegistry()
Const subkey As String = "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\"
Using ndpKey As RegistryKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(subkey)
If ndpKey IsNot Nothing AndAlso ndpKey.GetValue("Release") IsNot Nothing Then
Console.WriteLine($".NET Framework Version: {CheckFor45PlusVersion(ndpKey.GetValue("Release"))}")
Else
Console.WriteLine(".NET Framework Version 4.5 or later is not detected.")
End If
End Using
End Sub
' Checking the version using >= enables forward compatibility.
Private Function CheckFor45PlusVersion(releaseKey As Integer) As String
If releaseKey >= 533320 Then
Return "4.8.1 or later"
ElseIf releaseKey >= 528040 Then
Return "4.8"
ElseIf releaseKey >= 461808 Then
Return "4.7.2"
ElseIf releaseKey >= 461308 Then
Return "4.7.1"
ElseIf releaseKey >= 460798 Then
Return "4.7"
ElseIf releaseKey >= 394802 Then
Return "4.6.2"
ElseIf releaseKey >= 394254 Then
Return "4.6.1"
ElseIf releaseKey >= 393295 Then
Return "4.6"
ElseIf releaseKey >= 379893 Then
Return "4.5.2"
ElseIf releaseKey >= 378675 Then
Return "4.5.1"
ElseIf releaseKey >= 378389 Then
Return "4.5"
End If
' This code should never execute. A non-null release key should mean
' that 4.5 or later is installed.
Return "No 4.5 or later version detected"
End Function
A példa a következőhöz hasonló kimenetet jelenít meg:
.NET Framework Version: 4.6.1
A beállításjegyzék lekérdezése a PowerShell használatával
Az alábbi példa a PowerShell használatával ellenőrzi a beállításjegyzék kiadási bejegyzésének értékét a telepített .NET-keretrendszer 4.5-4.8.1-es verzióinak megkereséséhez:
$release = Get-ItemPropertyValue -LiteralPath 'HKLM:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release
switch ($release) {
{ $_ -ge 533320 } { $version = '4.8.1 or later'; break }
{ $_ -ge 528040 } { $version = '4.8'; break }
{ $_ -ge 461808 } { $version = '4.7.2'; break }
{ $_ -ge 461308 } { $version = '4.7.1'; break }
{ $_ -ge 460798 } { $version = '4.7'; break }
{ $_ -ge 394802 } { $version = '4.6.2'; break }
{ $_ -ge 394254 } { $version = '4.6.1'; break }
{ $_ -ge 393295 } { $version = '4.6'; break }
{ $_ -ge 379893 } { $version = '4.5.2'; break }
{ $_ -ge 378675 } { $version = '4.5.1'; break }
{ $_ -ge 378389 } { $version = '4.5'; break }
default { $version = $null; break }
}
if ($version) {
Write-Host -Object ".NET Framework Version: $version"
} else {
Write-Host -Object '.NET Framework Version 4.5 or later is not detected.'
}
Ez a példa a verzióellenőrzés ajánlott gyakorlatát követi:
- Ellenőrzi, hogy a kiadási bejegyzés értéke nagyobb vagy egyenlő-e az ismert kiadási kulcsok értékével.
- A legújabb verziótól a legkorábbi verzióig ellenőrzi a sorrendet.
.NET-keretrendszer 1.0-4.0
Az .NET-keretrendszer 1.1-től 4.0-s verzióig minden verziója alkulcsként szerepel a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP webhelyen. Az alábbi táblázat az egyes .NET-keretrendszer verziók elérési útját sorolja fel. A legtöbb verzió esetében a Telepítés REG_DWORD értéke 1
jelzi, hogy a verzió telepítve van. Ezekben az alkulcsokban van egy Verzió REG_SZ érték is, amely verziósztringet tartalmaz.
Feljegyzés
A beállításjegyzék elérési útjának NET-keretrendszer telepítő alkulcsa nem ponttal kezdődik.
Keretrendszer verziója | Beállításjegyzék-alkulcs | Érték |
---|---|---|
1,0 | HKLM\Software\Microsoft\. NETFramework\Policy\v1.0\3705 | A REG_SZ telepítése egyenlő 1 |
1,1 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322 | Egyenlő REG_DWORD telepítése1 |
2,0 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 | Egyenlő REG_DWORD telepítése1 |
3,0 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.0\Setup | InstallSuccess REG_DWORD egyenlő 1 |
3,5 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.5 | Egyenlő REG_DWORD telepítése1 |
4.0 Ügyfélprofil | HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Client | Egyenlő REG_DWORD telepítése1 |
4.0 Teljes profil | HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full | Egyenlő REG_DWORD telepítése1 |
Fontos
Ha a futó alkalmazás 32 bites, és 64 bites Windows rendszerben fut, a beállításjegyzék elérési útjai eltérnek a korábban felsoroltaktól. A 64 bites beállításjegyzék a HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ alkulcsban érhető el. A 3.5-ös .NET-keretrendszer beállításkulcsa például HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.5.
Figyelje meg, hogy az .NET-keretrendszer 1.0 alkulcs beállításjegyzékbeli elérési útja eltér a többitől.
Beállításszerkesztő használata (régebbi keretrendszerverziók)
A Start menüben válassza a Futtatás lehetőséget, írja be a regedit parancsot, majd kattintson az OK gombra.
A regedit futtatásához rendszergazdai hitelesítő adatokkal kell rendelkeznie.
Nyissa meg az ellenőrizni kívánt verziónak megfelelő alkulcsot. Használja a táblázatot az .NET-keretrendszer 1.0-4.0 szakaszban.
Az alábbi ábra a 3.5-ös .NET-keretrendszer alkulcsát és verzióértékét mutatja.
A beállításjegyzék lekérdezése kóddal (régebbi keretrendszerverziók)
Microsoft.Win32.RegistryKey Az osztály használatával lépjen a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP alkulcshoz a Windows beállításjegyzékében.
Fontos
Ha a futó alkalmazás 32 bites, és 64 bites Windows rendszerben fut, a beállításjegyzék elérési útjai eltérnek a korábban felsoroltaktól. A 64 bites beállításjegyzék a HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ alkulcsban érhető el. A 3.5-ös .NET-keretrendszer beállításkulcsa például HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.5.
Az alábbi példa az .NET-keretrendszer 1-4 telepített verzióit találja:
// Open the registry key for the .NET Framework entry.
using (RegistryKey ndpKey =
RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).
OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\"))
{
foreach (var versionKeyName in ndpKey.GetSubKeyNames())
{
// Skip .NET Framework 4.5 version information.
if (versionKeyName == "v4")
{
continue;
}
if (versionKeyName.StartsWith("v"))
{
RegistryKey versionKey = ndpKey.OpenSubKey(versionKeyName);
// Get the .NET Framework version value.
var name = (string)versionKey.GetValue("Version", "");
// Get the service pack (SP) number.
var sp = versionKey.GetValue("SP", "").ToString();
// Get the installation flag.
var install = versionKey.GetValue("Install", "").ToString();
if (string.IsNullOrEmpty(install))
{
// No install info; it must be in a child subkey.
Console.WriteLine($"{versionKeyName} {name}");
}
else if (install == "1")
{
// Install = 1 means the version is installed.
if (!string.IsNullOrEmpty(sp))
{
Console.WriteLine($"{versionKeyName} {name} SP{sp}");
}
else
{
Console.WriteLine($"{versionKeyName} {name}");
}
}
if (!string.IsNullOrEmpty(name))
{
continue;
}
// else print out info from subkeys...
// Iterate through the subkeys of the version subkey.
foreach (var subKeyName in versionKey.GetSubKeyNames())
{
RegistryKey subKey = versionKey.OpenSubKey(subKeyName);
name = (string)subKey.GetValue("Version", "");
if (!string.IsNullOrEmpty(name))
sp = subKey.GetValue("SP", "").ToString();
install = subKey.GetValue("Install", "").ToString();
if (string.IsNullOrEmpty(install))
{
// No install info; it must be later.
Console.WriteLine($" {versionKeyName} {name}");
}
else if (install == "1")
{
if (!string.IsNullOrEmpty(sp))
{
Console.WriteLine($" {subKeyName} {name} SP{sp}");
}
else
{
Console.WriteLine($" {subKeyName} {name}");
}
}
}
}
}
}
' Opens the registry key for the .NET Framework entry.
Using ndpKey As RegistryKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).
OpenSubKey("SOFTWARE\Microsoft\NET Framework Setup\NDP\")
For Each versionKeyName In ndpKey.GetSubKeyNames()
' Skip .NET Framework 4.5 and later.
If versionKeyName = "v4" Then Continue For
If versionKeyName.StartsWith("v") Then
Dim versionKey As RegistryKey = ndpKey.OpenSubKey(versionKeyName)
' Get the .NET Framework version value.
Dim name = DirectCast(versionKey.GetValue("Version", ""), String)
' Get the service pack (SP) number.
Dim sp = versionKey.GetValue("SP", "").ToString()
Dim install = versionKey.GetValue("Install", "").ToString()
If String.IsNullOrEmpty(install) Then
' No install info; it must be in a child subkey.
Console.WriteLine($"{versionKeyName} {name}")
ElseIf install = "1" Then
If Not String.IsNullOrEmpty(sp) Then
Console.WriteLine($"{versionKeyName} {name} SP{sp}")
Else
Console.WriteLine($"{versionKeyName} {name}")
End If
End If
If Not String.IsNullOrEmpty(name) Then
Continue For
End If
For Each subKeyName In versionKey.GetSubKeyNames()
Dim subKey As RegistryKey = versionKey.OpenSubKey(subKeyName)
name = DirectCast(subKey.GetValue("Version", ""), String)
If Not String.IsNullOrEmpty(name) Then
sp = subKey.GetValue("SP", "").ToString()
End If
install = subKey.GetValue("Install", "").ToString()
If String.IsNullOrEmpty(install) Then
' No install info; it must be later.
Console.WriteLine($" {versionKeyName} {name}")
ElseIf install = "1" Then
If Not String.IsNullOrEmpty(sp) Then
Console.WriteLine($" {subKeyName} {name} SP{sp}")
Else
Console.WriteLine($" {subKeyName} {name}")
End If
End If
Next
End If
Next
End Using
A példa a következőhöz hasonló kimenetet jelenít meg:
v2.0.50727 2.0.50727.4927 SP2
v3.0 3.0.30729.4926 SP2
v3.5 3.5.30729.4926 SP1
v4.0
Client 4.0.0.0
A beállításjegyzék lekérdezése a PowerShell használatával (régebbi keretrendszerverziók)
Az alábbi példa a PowerShell használatával ellenőrzi a beállításjegyzék kiadási bejegyzésének értékét a telepített .NET-keretrendszer 1-4-es verziójának megkereséséhez:
Get-ChildItem -Path 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' |
Where-Object { ($_.PSChildName -ne "v4") -and ($_.PSChildName -like 'v*') } |
ForEach-Object {
$name = $_.Version
$sp = $_.SP
$install = $_.Install
if (-not $install) {
Write-Host -Object "$($_.PSChildName) $($name)"
}
elseif ($install -eq '1') {
if (-not $sp) {
Write-Host -Object "$($_.PSChildName) $($name)"
}
else {
Write-Host -Object "$($_.PSChildName) $($name) SP$($sp)"
}
}
if (-not $name) {
$parentName = $_.PSChildName
Get-ChildItem -LiteralPath $_.PSPath |
Where-Object {
if ($_.Property -contains 'Version') { $name = Get-ItemPropertyValue -Path $_.PSPath -Name Version }
if ($name -and ($_.Property -contains 'SP')) { $sp = Get-ItemPropertyValue -Path $_.PSPath -Name SP }
if ($_.Property -contains 'Install') { $install = Get-ItemPropertyValue -Path $_.PSPath -Name Install }
if (-not $install) {
Write-Host -Object " $($parentName) $($name)"
}
elseif ($install -eq '1') {
if (-not $sp) {
Write-Host -Object " $($_.PSChildName) $($name)"
}
else {
Write-Host -Object " $($_.PSChildName) $($name) SP$($sp)"
}
}
}
}
}
CLR-verziók keresése
A .NET-keretrendszer telepített .NET-keretrendszer CLR külön verziójú. A .NET-keretrendszer CLR kétféleképpen észlelhető:
Az Clrver.exe eszköz
A CLR Verzió eszközével (Clrver.exe) meghatározhatja, hogy a CLR mely verziói vannak telepítve a számítógépen. Nyissa meg a Visual Studio fejlesztői parancssorát vagy a Visual Studio Developer PowerShellt , és írja be clrver
.
Példa a kimenetre:
Versions installed on the machine:
v2.0.50727
v4.0.30319
A Environment.Version
tulajdonság
Fontos
A .NET-keretrendszer 4.5-ös és újabb verziói esetén ne használja a Environment.Version tulajdonságot a CLR verziójának észlelésére. Ehelyett kérdezze le a beállításjegyzéket a .NET-keretrendszer 4.5-ös és újabb verzióiban leírtak szerint.
A tulajdonság lekérdezése Environment.Version objektum Version lekéréséhez.
A visszaadott
System.Version
objektum azonosítja annak a futtatókörnyezetnek a verzióját, amely jelenleg futtatja a kódot. Nem adja vissza a számítógépre telepített szerelvényverziókat vagy a futtatókörnyezet más verzióit.A .NET-keretrendszer 4.5-ös, 4.5.1-s és 4.5.2-s verziói esetében a visszaadott Version objektum sztringképe 4.0.30319 formátumú.xxxxx, ahol az xxxxx kisebb, mint 42000. A .NET-keretrendszer 4.6-os és újabb verziói esetében a 4.0.30319.42000-ás formátumú.
Miután létrehozta a Verzió objektumot, a következőképpen kérdezheti le:
- A fő kiadási azonosítóhoz (például a 4.0-s verzióhoz) használja a tulajdonságot Version.Major .
- Az alverzió kiadási azonosítójának (például 0 a 4.0-s verzióhoz) használja a tulajdonságot Version.Minor .
- A teljes verziós sztringhez (például 4.0.30319.18010) használja a metódust Version.ToString . Ez a metódus egyetlen értéket ad vissza, amely a kódot végrehajtó futtatókörnyezet verzióját tükrözi. Nem ad vissza szerelvényverziókat vagy a számítógépre esetleg telepített egyéb futtatókörnyezeti verziókat.
Az alábbi példa a tulajdonság használatával kéri le a Environment.Version CLR verzióadatait:
Console.WriteLine($"Version: {Environment.Version}");
Console.WriteLine($"Version: {Environment.Version}")
A példa a következőhöz hasonló kimenetet jelenít meg:
Version: 4.0.30319.18010
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: