Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Эта статья связана с .NET Framework. Чтобы определить, какие пакеты SDK и среды выполнения .NET Core и .NET 5+ установлены, см. сведения о том, как проверить, установлен ли .NET.
На компьютере можно установить и запустить несколько версий .NET Framework.
- Если вы хотите проверить версии на своем компьютере, проще всего использовать Панель управления>Программы и компоненты>, или в Параметры в разделе Приложения>Установленные приложения. Вы также можете использовать эти средства, поддерживаемые сообществом.
- Если вы разработчик приложения, возможно, вам потребуется знать, какие версии .NET Framework устанавливаются на компьютере пользователя приложения.
Реестр содержит список версий .NET Framework, установленных на компьютере. Вы также можете запросить
RuntimeInformation.FrameworkDescriptionсвойство. - Чтобы найти версию CLR, которая версионируется отдельно, см. раздел «Поиск версий CLR».
Платформа .NET Framework состоит из двух основных компонентов, которые используются отдельно:
- Набор сборок, которые представляют собой коллекции типов и ресурсов, которые предоставляют функциональные возможности для приложений. Платформа .NET Framework и сборки используют одинаковый номер версии. Например, версии .NET Framework включают 4.5, 4.6.1 и 4.7.2.
- Общая среда выполнения (CLR), которая управляет и выполняет код вашего приложения. Одна версия среды CLR обычно поддерживает несколько версий .NET Framework. Например, CLR версии 4.0.30319.xxxxx, где xxxxx меньше 42000, поддерживает .NET Framework версии 4–4.5.2. Версия среды CLR больше или равна 4.0.30319.42000 поддерживает версии .NET Framework, начиная с .NET Framework 4.6.
Подсказка
Сведения об обнаружении установленных обновлений для каждой версии .NET Framework см. в разделе "Практическое руководство. Определение установленных обновлений .NET Framework".
Средства, поддерживаемые сообществом
Средства, поддерживаемые сообществом, помогают определить, какие версии .NET Framework установлены:
Свойство RuntimeInformation.FrameworkDescription
Для программного запроса, на какой версии .NET работает ваше приложение, можно использовать свойство RuntimeInformation.FrameworkDescription. Если приложение работает в .NET Framework, выходные данные будут похожи на:
.NET Framework 4.8.4250.0
По сравнению с тем, если приложение работает в .NET Core или .NET 5+, выходные данные будут похожи на:
.NET Core 3.1.9
.NET 5.0.0
Registry
Реестр можно использовать для определения установленной версии .NET Framework. Ключи отличаются для .NET Framework 1.0-4.0 и .NET Framework 4.5+. Для проверки реестра можно использовать редактор реестра, PowerShell или код.
.NET Framework 4.5 и более поздних версий
Версия .NET Framework (4.5 и более поздней версии), установленная на компьютере, указана в реестре в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full. Если отсутствует Full подраздел, платформа .NET Framework 4.5 или более поздней версии не установлена.
Замечание
Подраздел установки NET Framework в пути реестра не начинается с периода.
Значение REG_DWORD Release в реестре представляет установленную версию .NET Framework.
| Версия .NET Framework | Значение выпуска |
|---|---|
| .NET Framework 4.5 | Все операционные системы Windows: 378389 |
| .NET Framework 4.5.1 | В Windows 8.1 и Windows Server 2012 R2: 378675 Во всех других операционных системах Windows: 378758 |
| .NET Framework 4.5.2 | Все операционные системы Windows: 379893 |
| .NET Framework 4.6 | В Windows 10: 393295 Во всех других операционных системах Windows: 393297 |
| .NET Framework 4.6.1 | В системах с ноябрьским обновлением Windows 10: 394254 Во всех других операционных системах Windows (включая Windows 10): 394271 |
| .NET Framework 4.6.2 | В юбилейном обновлении Windows 10 и Windows Server 2016: 394802 Во всех других операционных системах Windows (включая другие операционные системы Windows 10): 394806 |
| .NET Framework 4.7 | В Windows 10 Creators Update: 460798 Во всех других операционных системах Windows (включая другие операционные системы Windows 10): 460805 |
| .NET Framework 4.7.1 | В Windows 10 Fall Creators Update и Windows Server версии 1709: 461308 Во всех других операционных системах Windows (включая другие операционные системы Windows 10): 461310 |
| .NET Framework 4.7.2. | Обновление Windows 10 апреля 2018 года и Windows Server версии 1803: 461808 Во всех операционных системах Windows, кроме Windows 10 с обновлением April 2018 Update и Windows Server версии 1803: 461814 |
| .NET Framework 4.8 | Обновление Windows 10 мая 2019 г. и Windows 10 ноября 2019 г.: 528040 Обновление Windows 10 мая 2020 г., обновление за октябрь 2020 г., обновление за май 2021 г., обновление за ноябрь 2021 г. и обновление 2022 г.: 528372 В Windows 11 и Windows Server 2022: 528449 Во всех других операционных системах Windows (включая другие операционные системы Windows 10): 528049 |
| платформа .NET Framework 4.8.1 | Обновление Windows 11 2025: 533509 В обновлении Windows 11 2022 и обновлении Windows 11 2023: 533320 Все остальные операционные системы Windows: 533325 |
Минимальная версия
Чтобы определить, присутствует ли минимальная версия .NET Framework, проверьте значение выпуска REG_DWORD, которое больше или равно соответствующему значению, указанному в следующей таблице. Например, если приложение работает на .NET Framework 4.8 или более поздней версии, проверьте значение REG_DWORD Release, которое не менее 528040.
| Версия .NET Framework | Минимальное значение |
|---|---|
| .NET Framework 4.5 | 378389 |
| .NET Framework 4.5.1 | 378675 |
| .NET Framework 4.5.2 | 379893 |
| .NET Framework 4.6 | 393295 |
| .NET Framework 4.6.1 | 394254 |
| .NET Framework 4.6.2 | 394802 |
| .NET Framework 4.7 | 460798 |
| .NET Framework 4.7.1 | 461308 |
| .NET Framework 4.7.2. | 461808 |
| .NET Framework 4.8 | 528040 |
| платформа .NET Framework 4.8.1 | 533320 |
Использование редактора реестра
В меню "Пуск " выберите "Выполнить", введите regedit и нажмите кнопку "ОК".
(Для выполнения regedit необходимо иметь административные учетные данные.)
В редакторе реестра откройте следующий подраздел: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full. Если подкаталог Full отсутствует, значит, у вас не установлен .NET Framework версии 4.5 или более поздней.
Проверьте запись REG_DWORD с именем Release. Если он существует, у вас установлена платформа .NET Framework 4.5 или более поздней версии. Его значение соответствует определенной версии .NET Framework. На следующем рисунке, например, значение записи выпуска равно 528040, что является ключом выпуска для .NET Framework 4.8.
Использование PowerShell для проверки минимальной версии
Используйте команды PowerShell, чтобы проверить значение записи Release подраздела HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full.
В следующих примерах проверяется значение записи Release, чтобы определить, установлен ли .NET Framework 4.6.2 или новее. Этот код возвращает True, если он установлен, и False в противном случае.
(Get-ItemPropertyValue -LiteralPath 'HKLM:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release) -ge 394802
Запрос реестра с помощью кода
Используйте методы RegistryKey.OpenBaseKey и RegistryKey.OpenSubKey для доступа к подразделу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full в реестре Windows.
Это важно
Если запущенное приложение имеет 32-разрядную версию и работает в 64-разрядной версии Windows, пути к реестру будут отличаться от перечисленных выше. 32-разрядный реестр доступен в подразделе HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ . Например, подраздел реестра для .NET Framework 4.5 — HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v4\Full.
Проверьте значение REG_DWORD Release, чтобы определить установленную версию. Чтобы быть совместимым с будущими версиями, проверьте, чтобы значение было больше или равно значению, указанному в таблице версий .NET Framework.
В следующем примере проверяется значение записи Release в реестре, чтобы определить установленные версии .NET Framework 4.5-4.8.1.
Подсказка
Добавьте директиву using Microsoft.Win32 или Imports Microsoft.Win32 в верхней части файла кода, если это еще не сделано.
const string subkey = @"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\";
using (RegistryKey baseKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32))
using (RegistryKey ndpKey = baseKey.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 baseKey As RegistryKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32),
ndpKey As RegistryKey = baseKey.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
Select Case releaseKey
Case >= 533320 : Return "4.8.1 or later"
Case >= 528040 : Return "4.8"
Case >= 461808 : Return "4.7.2"
Case >= 461308 : Return "4.7.1"
Case >= 460798 : Return "4.7"
Case >= 394802 : Return "4.6.2"
Case >= 394254 : Return "4.6.1"
Case >= 393295 : Return "4.6"
Case >= 379893 : Return "4.5.2"
Case >= 378675 : Return "4.5.1"
Case >= 378389 : Return "4.5"
Case Else
Return "No 4.5 or later version detected"
End Select
End Function
В примере отображаются следующие выходные данные:
.NET Framework Version: 4.6.1
Запрос реестра с помощью PowerShell
В следующем примере PowerShell используется для проверки значения записи выпуска в реестре для поиска версий .NET Framework 4.5-4.8.1, установленных:
$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.'
}
Этот пример соответствует рекомендуемой практике проверки версии:
- Он проверяет, больше или равно ли значение записи выпуска значению значений известных выпусков.
- Он проверяет порядок от последней версии до самой ранней версии.
.NET Framework 1.0-4.0
Каждая версия .NET Framework от 1.1 до 4.0 указана в виде подраздела в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP. В следующей таблице приведен путь к каждой версии .NET Framework. Для большинства версий существует значение 1 REG_DWORD, указывающее, что эта версия установлена. В этих подразделах также есть значение REG_SZ Version, содержащее строку версии.
Замечание
Подраздел установки NET Framework в пути реестра не начинается с периода.
| Версия платформы | Подраздел системного реестра | Ценность |
|---|---|---|
| 1.0 | HKLM\Software\Microsoft\. NETFramework\Policy\v1.0\3705 |
Установить REG_SZ равно 1 |
| 1.1 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322 |
Устанавливать REG_DWORD равно 1 |
| 2.0 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 |
Установить REG_DWORD равно 1 |
| 3.0 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.0\Setup |
InstallSuccess REG_DWORD равно 1 |
| 3.5 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.5 |
Устанавливать REG_DWORD равно 1 |
| Профиль клиента 4.0 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Client |
Установить REG_DWORD равно 1 |
| Полный профиль 4.0 | HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full |
Установить REG_DWORD равно 1 |
Это важно
Если запущенное приложение имеет 32-разрядную версию и работает в 64-разрядной версии Windows, пути к реестру будут отличаться от перечисленных выше. 32-разрядный реестр доступен в подразделе HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ . Например, подраздел реестра для .NET Framework 3.5: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.5.
Обратите внимание, что путь реестра к подразделу .NET Framework 1.0 отличается от других.
Использование редактора реестра (более ранние версии платформы)
В меню "Пуск " выберите "Выполнить", введите regedit и нажмите кнопку "ОК".
Для выполнения regedit необходимо иметь административные учетные данные.
Откройте подраздел, соответствующий версии, которую требуется проверить. Используйте таблицу в разделе .NET Framework 1.0-4.0 .
На следующем рисунке показан подключ и его значение Версия для .NET Framework 3.5.
Запрос реестра с помощью кода (более ранних версий платформы)
Microsoft.Win32.RegistryKey Используйте класс для доступа к подразделу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP в реестре Windows.
Это важно
Если запущенное приложение имеет 32-разрядную версию и работает в 64-разрядной версии Windows, пути к реестру будут отличаться от перечисленных выше. 32-разрядный реестр доступен в подразделе HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ . Например, подраздел реестра для .NET Framework 3.5 это HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.5.
Следующий пример находит установленные версии .NET Framework 1-4:
// Open the registry key for the .NET Framework entry. Dispose this object when done.
RegistryKey ndpKey =
RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32)
.OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\");
foreach (string 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.
string name = versionKey.GetValue("Version", "").ToString();
// Get the service pack (SP) number.
string sp = versionKey.GetValue("SP", "").ToString();
// Get the installation flag.
string 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))
{
versionKey.Dispose();
continue;
}
// Iterate through the subkeys of the version subkey.
foreach (string subKeyName in versionKey.GetSubKeyNames())
{
RegistryKey subKey = versionKey.OpenSubKey(subKeyName);
name = subKey.GetValue("Version", "").ToString();
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}");
}
// Clean up the subkey object.
subKey.Dispose();
}
versionKey.Dispose();
}
}
ndpKey.Dispose();
' Open the registry key for the .NET Framework entry. Dispose this object when done.
Dim 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 = versionKey.GetValue("Version", "").ToString()
' 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
' Install = 1 means the version is installed.
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
versionKey.Dispose()
Continue For
End If
' Iterate through the subkeys of the version subkey.
For Each subKeyName In versionKey.GetSubKeyNames()
Dim subKey As RegistryKey = versionKey.OpenSubKey(subKeyName)
name = subKey.GetValue("Version", "").ToString()
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
' Clean up the subkey object.
subKey.Dispose()
Next
versionKey.Dispose()
End If
Next
ndpKey.Dispose()
В примере отображаются выходные данные, аналогичные следующему:
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
Запрос реестра с помощью PowerShell (более ранних версий платформы)
В следующем примере PowerShell используется для проверки значения записи Release в реестре, чтобы найти установленные версии .NET Framework с версий 1 по 4.
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-ItemProperty -Path "Registry::$_").Version) }
if ($name -and ($_.Property -contains 'SP')) { $sp = $((Get-ItemProperty -Path "Registry::$_").SP) }
if ($_.Property -contains 'Install') { $install = $((Get-ItemProperty -Path "Registry::$_").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
Версия среды CLR .NET Framework, установленной с .NET Framework, определяется отдельно. Существует два способа обнаружения версии среды CLR .NET Framework:
Средство Clrver.exe
Используйте инструмент CLR Version (Clrver.exe) для определения установленных версий CLR на компьютере. Откройте командную строку разработчика Visual Studio или Visual Studio Developer PowerShell и введите clrver.
Образец вывода:
Versions installed on the machine:
v2.0.50727
v4.0.30319
Свойство Environment.Version
Это важно
Для .NET Framework 4.5 и более поздних версий не используйте Environment.Version свойство для обнаружения версии среды CLR. Вместо этого выполните запрос к реестру, как описано в .NET Framework 4.5 и более поздних версиях.
Запросите свойство Environment.Version, чтобы получить объект Version.
Возвращаемый
System.Versionобъект определяет версию среды выполнения, которая в настоящее время выполняет код. Он не возвращает версии сборок или другие версии среды выполнения, которые могли быть установлены на компьютере.Для .NET Framework версии 4, 4.5, 4.5.1 и 4.5.2 строковое представление возвращаемого Version объекта имеет форму 4.0.30319.xxxxx, где xxxxx меньше 42000. Для .NET Framework 4.6 и более поздних версий он имеет форму 4.0.30319.42000.
После того как у вас есть объект Version , выполните запрос следующим образом:
- Для основного идентификатора выпуска (например, 4 для версии 4.0) используйте Version.Major свойство.
- Для дополнительного идентификатора выпуска (например, 0 для версии 4.0) используйте Version.Minor свойство.
- Для всей строки версии (например, 4.0.30319.18010) используйте Version.ToString метод. Этот метод возвращает одно значение, которое отражает версию среды выполнения, выполняющей код. Он не возвращает версии сборки или другие версии среды выполнения, которые могут быть установлены на компьютере.
В следующем примере свойство Environment.Version используется для получения сведений о версии CLR.
Console.WriteLine($"Version: {Environment.Version}");
Console.WriteLine($"Version: {Environment.Version}")
В примере отображаются выходные данные, аналогичные следующему:
Version: 4.0.30319.18010