Как узнать, какие версии.NET Framework установлены на компьютер? NET Framework установлены на компьютере

В этой статье

На компьютере можно установить и запустить несколько версий платформы.NET Framework. Users can install and run multiple versions of the .NET Framework on their computers. При разработке или развертывании приложения могут потребоваться сведения о том, какие версии.NET Framework установлены на компьютере пользователя. When you develop or deploy your app, you might need to know which .NET Framework versions are installed on the user’s computer. Учтите, что платформа.NET Framework состоит из основных компонентов, версии которым присваиваются отдельно: Note that the .NET Framework consists of two main components, which are versioned separately:

    набор сборок, которые являются коллекциями типов и ресурсов, обеспечивающих функции приложений A set of assemblies, which are collections of types and resources that provide the functionality for your apps. (.NET Framework и сборкам назначается один номер версии); The .NET Framework and assemblies share the same version number.

    среда CLR, которая выполняет код приложения и управляет им. The common language runtime (CLR), which manages and executes your app"s code. CLR имеет собственный номер версии (см. раздел Версии и зависимости.NET Framework). The CLR is identified by its own version number (see Versions and Dependencies).

Чтобы получить точный список версий.NET Framework, установленных на компьютере, можно просмотреть реестр или отправить запрос в реестр с помощью кода: To get an accurate list of the .NET Framework versions installed on a computer, you can view the registry or query the registry in code:

Чтобы узнать версию среды CLR, можно использовать специальное средство или код: To find the CLR version, you can use a tool or code:

Примечание

Существует разница между версией.NET Framework и версией общеязыковой среды выполнения (CLR). There is a difference between the .NET Framework version and the common language runtime (CLR) version. Версия.NET Framework зависит от набора сборок, которые образуют библиотеку классов.NET Framework. The .NET Framework is versioned based on the set of assemblies that form the .NET Framework Class Library. Например, версии.NET Framework включают в себя 4.5, 4.6.1 и 4.7.2. For example, .NET Framework versions include 4.5, 4.6.1, and 4.7.2. Версия среды CLR зависит от среды выполнения, в которой выполняются приложения.NET Framework, где одна версия среды CLR обычно поддерживает несколько версий.NET Framework. The CLR is versioned based on the runtime on which .NET Framework applications execute, and a single CLR version typically supports multiple .NET Framework versions. CLR версии 4.30319.xxxxx поддерживает.NET Framework версии с 4 по 4.5.2, а среда CLR версии 4.30319.42000 поддерживает.NET Framework, начиная с версии 4.6. CLR version 4.30319.xxxxx supports .NET Framework versions 4 through 4.5.2; CLR version 4.30319.42000 supports .NET Framework versions starting with .NET Framework 4.6. Дополнительные сведения см. в описании свойства Environment.Version . For more information, see the Environment.Version property.

Сведения об определении установленных обновлений для каждой версии платформы.NET Framework см. в статье Практическое руководство. Определение установленных обновлений и исправлений безопасности платформы.NET Framework . For information about detecting the installed updates for each version of the .NET Framework, see How to: Determine Which .NET Framework Updates Are Installed . Сведения об установке.NET Framework см. в разделе Установка.NET Framework для разработчиков . For information about installing the .NET Framework, see Install the .NET Framework for developers .

Поиск в реестре.NET Framework версий 1–4 Find .NET Framework versions 1-4 in the registry

Поиск в реестре.NET Framework версии 4.5 и более поздних версий Find .NET Framework versions 4.5 and later in the registry

В следующей таблице перечислены минимальные значения параметра DWORD Release для каждой версии.NET Framework. The following table lists the minimum value of the Release DWORD for each .NET Framework version. Эти значения можно использовать следующим образом: You can use these values as follows:

    Чтобы определить наличие минимальной версии.NET Framework, проверьте, является ли значение DWORD Release , найденное в реестре, большим значения, указанного в таблице, или равным ему. To determine whether a minimum .NET Framework version is present, test whether the Release DWORD value found in the registry is greater than or equal to the value listed in the table. Например, если приложению требуется.NET Framework 4.7 или более поздней версии, необходимо проверить на наличие минимального значения раздела выпуска 460798. For example, if your application requires .NET Framework 4.7 or later, you would test for a minimum release key value of 460798.

    Чтобы протестировать на наличие нескольких версий, начните с последней версии.NET Framework, а затем протестируйте на каждую последующую более раннюю версию. To test for multiple versions, begin with the latest .NET Framework version, and then test for each successive earlier version.

В следующей таблице перечислены ключи только для выпущенных версий платформы.NET Framework. The following table lists the keys of released versions of the .NET Framework only. В ней не приводятся ключи предварительных версий или выпусков. It doesn"t list the keys of preview or pre-release versions.

Версия платформы.NET Framework .NET Framework Version Значение DWORD "Release" Value of the Release DWORD
.NET Framework 4,5 .NET Framework 4.5 378389 378389
.NET Framework 4.5.1 .NET Framework 4.5.1 378675 378675
.NET Framework 4.5.2 .NET Framework 4.5.2 379893 379893
.NET Framework 4.6 .NET Framework 4.6 393295 393295
.NET Framework 4.6.1 .NET Framework 4.6.1 394254 394254
.NET Framework 4.6.2 .NET Framework 4.6.2 394802 394802
.NET Framework 4.7 .NET Framework 4.7 460798 460798
.NET Framework 4.7.1 .NET Framework 4.7.1 461308 461308
.NET Framework 4.7.2 .NET Framework 4.7.2 461808 461808

Полную таблицу разделов выпуска.NET Framework для определенных версий операционной системы Windows см. в статье Разделы выпуска.NET Framework и версии операционной системы Windows . For a complete table of release keys for the .NET Framework for specific Windows operating system versions, see .NET Framework release keys and Windows operating system versions .

Поиск в реестре.NET Framework версий 1–4 с помощью кода Find .NET Framework versions 1-4 with code

    Используйте класс Microsoft.Win32.RegistryKey , чтобы получить доступ к подразделу Software\Microsoft\NET Framework Setup\NDP\ в ветви HKEY_LOCAL_MACHINE реестра Windows. Use the Microsoft.Win32.RegistryKey class to access the Software\Microsoft\NET Framework Setup\NDP\ subkey under HKEY_LOCAL_MACHINE branch in the Windows registry.

    В следующем коде показан пример этого запроса. The following code shows an example of this query.

    Примечание

    Этот код не показывает, как обнаружить.NET Framework 4.5 или более поздней версии. This code does not show how to detect .NET Framework 4.5 or later. Для обнаружения этих версий проверьте DWORD Release , как описано в предыдущем разделе. Check the Release DWORD to detect those versions, as described in the previous section. Для кода, обнаруживающего.NET Framework 4.5 или более поздние версии, см. следующий раздел в данной статье. For code that detects .NET Framework 4.5 or later versions, see the next section in this article.

    Using Microsoft.Win32; using System; public static class VersionTest { public static void Main() { GetVersionFromRegistry(); } private static void GetVersionFromRegistry() { // Opens 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, or an empty string if there is none. 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 (!(string.IsNullOrEmpty(sp)) && install == "1") { Console.WriteLine($"{versionKeyName} {name} SP{sp}"); } } if (! string.IsNullOrEmpty(name)) { continue; } 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 (!(string.IsNullOrEmpty(sp)) && install == "1") { Console.WriteLine($"{subKeyName} {name} SP{sp}"); } else if (install == "1") { Console.WriteLine($" {subKeyName} {name}"); } } } } } } } } // The example displays output similar to the following: // 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 Imports Microsoft.Win32 Public Module VersionTest Public Sub Main() GetVersionFromRegistry() End Sub Private Sub GetVersionFromRegistry() " 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}") Else If Not String.IsNullOrEmpty(sp) AndAlso install = "1" Then Console.WriteLine($"{versionKeyName} {name} SP{sp}") 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}") Else If Not String.IsNullOrEmpty(sp) AndAlso install = "1" Then Console.WriteLine($"{subKeyName} {name} SP{sp}") ElseIf install = "1" Then Console.WriteLine($" {subKeyName} {name}") End If End If Next End If Next End Using End Sub End Module " The example displays output similar to the following: " 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

Поиск в реестре.NET Framework 4.5 и более поздних версий с помощью кода Find .NET Framework versions 4.5 and later with code

В следующем примере в реестре проверяется значение Release , чтобы определить, установлена ли версия 4.5 или более поздняя версия.NET Framework. The following example checks the Release value in the registry to determine whether .NET Framework 4.5 or a later version is installed.

Using System; using Microsoft.Win32; public class GetDotNetVersion { public static void Main() { GetDotNetVersion.Get45PlusFromRegistry(); } private static void Get45PlusFromRegistry() { 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 >= 461808) return "4.7.2 or later"; 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"; } } } // This example displays output like the following: // .NET Framework Version: 4.6.1 Imports Microsoft.Win32 Public Module GetDotNetVersion Public Sub Main() Get45PlusFromRegistry() End Sub 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 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 >= will enable forward compatibility. Private Function CheckFor45PlusVersion(releaseKey As Integer) As String If releaseKey >= 461308 Then Return "4.7.1 or later" Else If releaseKey >= 460798 Then Return "4.7" Else If releaseKey >= 394802 Then Return "4.6.2" Else If releaseKey >= 394254 Then Return "4.6.1" Else If releaseKey >= 393295 Then Return "4.6" Else If releaseKey >= 379893 Then Return "4.5.2" Else If releaseKey >= 378675 Then Return "4.5.1" Else If 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 End Module " The example displays output like the following: " .NET Framework Version: 4.6.1

    Проверяется, имеет ли запись Release значение, большее или равное значению известных разделов выпуска. It checks whether the value of the Release entry is greater than or equal to the value of the known release keys.

    Проверка выполняется с самой последней до самой ранней версии. It checks in order from most recent version to earliest version.

Проверка наличия минимально необходимой версии.NET Framework (4.5 и более поздней версии) с помощью PowerShell Check for a minimum required .NET Framework version (4.5 and later) with PowerShell

В следующем примере проверяется значение ключевого слова Release , чтобы определить, установлена ли.NET Framework версии 4.6.2 или выше (True или False , если нет). The following example checks the value of the Release keyword to determine whether .NET Framework 4.6.2 or higher is installed (returning True if it is and False otherwise).

```PowerShell # PowerShell 5 Get-ChildItem "HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\" | Get-ItemPropertyValue -Name Release | Foreach-Object { $_ -ge 394802 } ``` ```PowerShell # PowerShell 4 (Get-ItemProperty "HKLM:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full").Release -gt 394802 ``` You can replace `394802` in the previous example with another value from the following table in the (#net_b) section to check for a different minimum required .NET Framework version.

Поиск текущей версии среды CLR с помощью Clrver.exe Find the current CLR version with Clrver.exe

Для определения версий среды CLR, установленных на компьютере, можно использовать инструмент CLR Version (Clrver.exe). Use the CLR Version Tool (Clrver.exe) to determine which versions of the common language runtime are installed on a computer.

Запустите командную строку разработчика Visual Studio и введите clrver . From a Developer Command Prompt for Visual Studio, enter clrver . Выходные данные этой команды выглядят примерно следующим образом: This command produces output similar to the following: property to retrieve a Version object that identifies the version of the runtime that is currently executing the code. Это свойство возвращает одно значение, отражающее версию среды выполнения, в которой в данный момент выполняется код. Оно не возвращает версии сборок или другие версии среды выполнения, которые могут быть установлены на компьютере. Можно использовать свойство Version.Major , чтобы получить идентификатор основного выпуска (например, "4" в случае версии 4.0), свойство Version.Minor , чтобы получить идентификатор дополнительной версии (например, "0" в случае версии 4.0), либо метод Version.ToString , чтобы получить всю строку версии (например, "4.0.30319.18010", как показано в следующем коде). This property returns a single value that reflects the version of the runtime that is currently executing the code; it does not return assembly versions or other versions of the runtime that may have been installed on the computer.You can use the Version.Major property to get the major release identifier (for example, "4" for version 4.0), the Version.Minor property to get the minor release identifier (for example, "0" for version 4.0), or the Version.ToString method to get the entire version string (for example, "4.0.30319.18010", as shown in the following code).

Для платформы.NET Framework версий 4, 4.5, 4.5.1 и 4.5.2 свойство Environment.Version возвращает объект Version , строковое представление которого имеет форму 4.0.30319.xxxxx . For the .NET Framework Versions 4, 4.5, 4.5.1, and 4.5.2, the Environment.Version property returns a Version object whose string representation has the form 4.0.30319.xxxxx . Для.NET Framework 4.6 и более поздних версий оно имеет форму 4.0.30319.42000 . For the .NET Framework 4.6 and later, it has the form 4.0.30319.42000 .

Для.NET Framework 4.5 и более поздней версии не рекомендуется использовать свойство Environment.Version , чтобы определить версии среды выполнения. For the .NET Framework 4.5 and later, we do not recommend using the Environment.Version property to detect the version of the runtime. Вместо этого рекомендуется отправить запрос в реестр, как описано в разделе выше в этой статье. Instead, we recommend that you query the registry, as described in the section earlier in this article.

В следующем примере свойство Environment.Version используется для получения сведений о версии среды выполнения: The following example used the Environment.Version property to retrieve runtime version information:

Using System; public class VersionTest { public static void Main() { Console.WriteLine($"Version: {Environment.Version}"); } } // The example displays output similar to the following:" // Version: 4.0.30319.18010 Imports Microsoft.Win32 Public Module VersionTest Public Sub Main() GetVersionFromEnvironment() End Sub Private Sub GetVersionFromEnvironment() Console.WriteLine($"Version: {Environment.Version}") End Sub End Module " The example displays output similiar to the following:" " Version: 4.0.30319.18010

См. также See also

  • Практическое руководство. Определение установленных обновлений и исправлений безопасности платформы.NET Framework How to: Determine Which .NET Framework Updates Are Installed
  • Установка.NET Framework для разработчиков Install the .NET Framework for developers
  • Версии и зависимости Versions and Dependencies

Обратная связь

Мы бы хотели узнать ваше мнение. Укажите, о чем вы хотите рассказать нам.

Наша система обратной связи основана на принципах работы с вопросами на GitHub. Дополнительные сведения см. в

В системе по умолчанию устанавливается множество различных компонентов, нужных для корректной работы большинства приложений. Бывают исключения, при которых приходится устанавливать сторонние средства. Одной из утилит, которая необходимо для правильной работы программ является net framework. Конечно, этот компонент иногда уже встроен в системы, но бывают исключения. В данной статье будет разобрано две темы — как узнать версию net framework и как этот компонент инсталлировать.

net framework как узнать версию на Windows 10

Этим вопросом интересуется много пользователей, начиная от новичков и закачивая опытными юзерами. Для начала необходимо понять, что это за компонент, версию которого нужно узнать.

.NET Framework – платформа от компании Microsoft, предназначенная ля выполнения различных приложения, написанных на разных языках программирования. Очень часто ее используют при создании программ и игр для Windows. Историю в целом о данной технологии можно посмотреть на википедии.

Как узнать версию net framework на Windows 10 и более ранних редакциях? Для решения данной проблемы мы воспользуемся инструментом.NET Version Detector, которую для того и создали, чтобы узнать версию net framework.

Загрузить утилиту можно с этого ресурса . Тут же скачается небольшой архив в 400 Кб. Его можно не распаковывать, а сразу запустить файл с названием «dotnet» .

Откроется окошко с лицензионным соглашением, где необходимо нажать ОК.

Сразу появляется окно, где в нижнем разделе вы увидите все версии этого ПО, установленного в системе. У меня установлена версия 4.0.30319, есть и другая полезная информация. Данные можно перепроверить, нажав кнопку «Refresh», либо скопировать при помощи кнопки «Copy».

Как узнать версию net framework с помощью редактора реестра

Известно, что все основные настройки Windows находятся в реестре. Любое установленное ПО вносит записи в системный реестр. Для начала нужно запустить реестр. Нажмём сочетание «Win+R» и введем команду regedit.

Теперь ищем такой раздел, следуя по каждой ветке в окне реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\«инсталлированная версия» .

Еще в правой части окна будет указан параметр Version , также указывающий на версию net framework.

Оба метода довольно простые, а значит и новичок справится. Но давайте перейдем к вопросу, связанному с установкой данного компонента.

Как установить.NET Framework

Как уже было сказано, эта платформа обычно уже предустановлена в Windows. Разработчики начали делать это, начиная с Windows 7. Конечно, бывают случаи, когда нужно установить более новую версию. Если включены автоматические обновления системы, то делать ничего не нужно, в противном случае перейдем к скачиванию и установке утилиты.

Итак, бывают случаи, когда нужна более новая версия платформы, а еще и более старая. Чтобы долго не заморачиваться снова воспользуемся утилитой.NET Version Detector. Проделаем следующие действия:

Кстати, если в утилите компонент выделен серым цветом, как у меня с версией 4.0, это значит, что платформа уже установлена.

Как удалить Net Framework

Системные компоненты очень часто повреждаются, из-за чего Windows работает нестабильно. В данном случае, Net Framework лучше удалить и заново установить.

  • Удаление производится утилитой от Майкрософт — Cleanup Utility . Установите ее и запустите.
  • Находим среди списка Net Framework нужной версии и удаляем.

Конечно, указанная утилита не единственная, чем можно очищать системные компоненты. Еще можно использовать Uninstall Tool, которая очищаем остатки файлов в системе и записи в реестре.

Важно! При установке Net Framework рекомендуется проводить инсталляцию от более старой редакции к более новой. Так не должно произойти каких-то конфликтов в работе программ.

Таким образом, мы выяснили, как узнать версию net framework, как установить платформу и удалить.

В ОС Windows одновременно может быть установлено несколько версий.NET Framework. При установке на компьютере нового приложения, разработанного на.Net, иногда нужно предварительно узнать какие версии и пакеты обновления.Net Framework уже установлены на компьютере пользователя или на сервере. Получить список установленных версий.NET Framework можно разными способами.

Выводим список установленных версий.NET Framework в командной строке

Все версии.NET Framework устанавливаются в каталоги:

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

Поэтому самый простой способ вывести список установленных версий.Net – открыть данную папку. Каждой версии соответствует отдельный каталог с символов v в начале и номером версии в качестве имени папки. Либо можно вывести список каталогов (версий) .NET Framework в командной строке так:

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

Команда выведет все установленные версии кроме 4.5, т.к. .NET Framework 4.5 устанавливается в подкаталог v4.0.xxxxx.

Информация об установленных версиях.NET Framework в реестре

При установке или обновлении любой версии.NET Framework в реестр записывается довольно много полезной информации.

Откройте редактор реестра и перейдите в раздел HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP. В данном разделе содержатся подраздел для каждой установленной в системе версии.NET. Нужная информация содержится в разделе с именем ветки (а для.Net 4.0 и выше в подразделах Client и Full). Нас интересуют следующие параметры реестра:

  • Install — флаг установки версии (если равен 1 – данная версия.Net установлена на компьютере);
  • Install Path — каталог, в который установлена данная версия.Net;
  • Release — номер текущего релиза.Net;
  • Version — полный номер версии.Net Framework.

К примеру, в данном примере видно, что на компьютере установлены.NET Framework v2.0.50727, 3.0, 3.5 и 4.0 (релиз 460805).

Примечание . Для.NET 4.0 и выше, если подраздел Full отсутствует, это значит, что данная версия Framework на компьютере не установлена.

С помощью следующей таблицы вы можете установить соответствие между номером релиза и версией.NET Framework 4.5 и выше.

Значение DWORD параметра Release Версия.NET Framework
378389 .NET Framework 4.5
378675 NET Framework 4.5.1 на Windows 8.1 / Windows Server 2012 R2
378758 .NET Framework 4.5.1 на Windows 8, Windows 7 SP1, Windows Vista SP2
379893 .NET Framework 4.5.2
393273 .NET Framework 4.6 на Windows 10
393297 .NET Framework 4.6
394254 .NET Framework 4.6.1 на Windows 10 November Update
394271 .NET Framework 4.6.1
394802 .NET Framework 4.6.2 на Windows 10 Anniversary Update
394806 .NET Framework 4.6.2
460798 .NET Framework 4.7 на Windows 10 Creators Update
460805 .NET Framework 4.7
461308 .NET Framework 4.7.1 на Windows 10 Fall Creators Update
461310 .NET Framework 4.7.1
461808 .NET Framework 4.7.2 на Windows 10 April 2018 Update
461814 .NET Framework 4.7.2

Проверка версии.Net Framework с помощью Powershell

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

Существует сторонняя бесплатная утилита Asoft .Net Version Detector , с помощью которой можно в наглядном и удобном виде получить список установленные версий.NET Framework. Утилита качается с сайта разработчика (http://www.asoft.be/prod_netver.html) и не требует установки. В красивом окошке утилита выведет все установленные на компьютере версии.NET, а также максимальную доступную версию на данный момент.

Довольно удобно, что прямо в программе можно перейти на страницу загрузки различный версий.NET Framework, где можно скачать нужный пакет.

В состав Microsoft Visual Studio входит отдельная утилита CLRver.exe , которая выводит отчет обо всех установленных версиях среды CLR на данном компьютере. Выполните команду CLRver.exe в командной строке и в консоли появится список установленных версии dotNet на компьютере.

Напоследок, в качестве полезной информации отметим, что в серверных ОС начиная с Windows Server 2012, все базовые версии.Net (3.5 и 4.5) является частью системы и устанавливаются в виде отдельного компонента ( , ), а минорные (4.5.1, 4.5.2 и т.д.) устанавливаются уже в виде обновлений через Windows Update или WSUS.

В этой статье я расскажу о том, как можно определить версию.Net Framework-а, установленного на вашей машине:

  1. при помощи файловой системы Windows
  2. при помощи специальной утилиты CLRver.exe
  3. в коде из вашего проекта
  4. как определить версию фреймворка определенной сборки.

Способ 1 — при помощи файловой системы

Итак, самый простой способ определить, установлен ли.Net Framework на вашу машину — открыть соответствующую директорию папки Windows.

Директории с Framework-ом расположены по адресам

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

К примеру, переходим в c:\Windows\Microsoft.NET\Framework. По этому пути вы найдете папки, начинающиеся с символа v и версией фреймворка:

На представленном выше скриншоте мы видим несколько директорий, удовлетворяющих вышеуказанному требованию. Фреймворки, в которых установлены различные версии CLR, вы можете распознать, заглянув в ту или иную директорию — внутри директории, содержащей CLR, помимо всего прочего должны лежать сборки.net, как показано на рисунке:

Способ 2 — при помощи специальной утилиты CLRver.exe

Запустить утилиту вы можете при помощи Comand Promt вашей Visual Studio. Для этого зайдите в Пуск->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio Comand Prompt.

Выполните команду CLRver.exe. В консоли будет выведен список версий CLR, установленных на вашей машине:

Способ 3 — в коде вашего проекта

Это довольно просто — достаточно вызвать свойство System.Enviroment.Version, вот пример с MSDN:

// Sample for the Environment.Version property using System; class Sample { public static void Main() { Console.WriteLine(); Console.WriteLine("Version: {0}", Environment.Version.ToString()); } }

Способ 4 как определить версию фреймворка определенной сборки при помощи Reflection

Вы можете программно узнать версию фреймворка, на котором написана та или иная сборка:

Using System; using System.Reflection; ... System.Reflection.Assembly.LoadFrom("C:\...\MyAssembly.dll").ImageRuntimeVersion

На сегодня все. Всем спасибо за внимание =)

Устанавливая различные игры и программы, в инструкции по инсталляции указана версия компонента Microsoft .NET Framework. Если его нет совсем или ПО не подходит, приложения не смогут правильно работать и будут наблюдаться различные ошибки. Чтобы этого не допустить, перед установкой новой программы, необходимо ознакомиться с информацией о версии.NET Framework на своем компьютере.

Панель управления

Посмотреть версию Microsoft .NET Framework, который установлен на компьютере, можно через «Панель управления» . Переходим в раздел «Удаление программы» , находим там Microsoft .NET Framework и смотрим какие цифры стоят в конце названия. Недостаток способа заключается в том, что список иногда отображается некорректно и не все установленные версии в нем видны.

Использование ASoft .NET Version Detector

Для того, чтобы увидеть все версии, можно воспользоваться специальной утилитой ASoft .NET Version Detector. Найти и скачать ее можно в интернете. Запустив инструмент, система сканируется в автоматическом режиме. После окончания проверки, в нижней части окна можем увидеть все версии Microsoft .NET Framework, которые мы устанавливали и подробную информацию. Чуть выше, серым шрифтом помечены версии, которых в компьютере нет, а былым выделяются все установленные.

Реестр

Если скачивать ничего не хочется, можем посмотреть вручную, через системный реестр. В строке поиска вводим команду «Regedit» . Откроется окно. Здесь, через поиск нам необходимо найти строку (ветку) нашего компонента — «HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP» . Нажав на него в дереве, откроется список папок, название, которых указывает на версию продукта. Более подробно можно посмотреть открыв оду из них. В правой части окна теперь видим список. Здесь поле «Install» со значением «1» , говорит о том, что ПО установлено. А в поле «Version» видна полная версия.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: