Для чего нужен Microsoft.NET Framework, и где его скачать. Определение версии Net Framework

В системе по умолчанию устанавливается множество различных компонентов, нужных для корректной работы большинства приложений. Бывают исключения, при которых приходится устанавливать сторонние средства. Одной из утилит, которая необходимо для правильной работы программ является 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, как установить платформу и удалить.

В этой статье

На компьютере можно установить и запустить несколько версий платформы.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 в операционной системе Windows Server 2012 R2 и там мы даже решали ошибку инсталляции 0x800F0922 . Сегодня же я хочу вам показать, как узнать версию net framework за минуту в любой ОС Windows, будь то серверная редакция или обычная пользовательская, например, Windows 10.

Как узнать какая версия net framework установлена

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

Платформа.NET Framework - это технология, которая поддерживает создание и выполнение нового поколения приложений и веб-служб XML. Ее очень часто используют при создании игр, веб сайтов, например, на движке IIS сервера . Я покажу вам два простых метода, которые помогут вам понять актуальную версию у вас в операционной системе. Я буду показывать на своей любимой Windows 8.1.

Утилита.NET Version Detector

И так узнать установленный net framework мне поможет утилита.NET Version Detector. Скачать ее можно с официального сайта, по ссылке ниже.

http://www.asoft.be/prod_netver.html

В итоге у вас скачается небольшой zip-архив, распаковав который вы обнаружите portable версию данной утилиты, она будет весить около 850 кб. бухвально, через мгновение вы увидите установленные версии net framework в.NET Version Detector. В моем случае установлен фремверк версии 4.7.2114.0, на текущий момент самый последний. И заметьте ушло у меня на понимание этой информации, пара кликов.

Узнать версию net framework через реестр

Для любителей Windows, кто хочет понять откуда программы по типу представленной выше вытаскивают информацию, метод с реестром Windows . Открыть его можно через комбинацию клавиш Win и R и введя regedit.

Вам необходимо для просмотра версии перейти в куст:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\нужная версия

Обратите внимание на ключ "Version" в нем будет нужное значение. Если в ключе "Install" установлено значение 1, то компонент установлен.

В ОС 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. Это могут быть как утилиты, так и игры. И перед установкой программы, в том числе игровой, узнать версию NET Framework, как правило, бывает совсем нелишним.

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

Средства операционной системы

Эта методика подойдет опытным пользователям, знакомым со структурой ОС.

  • Открытая командная строка. Здесь список зарегистрированных в системе версий Net, вызывается командой "dir", представляя собой, по сути, простой список директорий, расположенный в системной папке. Полностью команда выглядит так:

Версия 4.5 в списке отображена не будет, поскольку ее файлы расположены в подпапке директории Framework.

  • Переход к месту хранения файлов. Способ, аналогичный предыдущему, рассчитанный на менее продвинутых пользователей, консольными командами Windows не владеющими.
  • Реестр. Этот способ более подходит именно для технических специалистов, поскольку в реестре при инсталляции любого приложения, в том числе и платформы.NET Framework, фиксируется масса важной информации. Для NET это: инсталляционный индекс (1 или 0); путь, по которому установлены файлы; номер версии; номер сборки.

Отыскать эту информацию можно в этой ветке реестра:

HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP

Для каждой из версий точный путь незначительно отличается, но узнать как версию Net Framework, так и всю остальную требуемую информацию опытному пользователю удастся без труда. При этом следует обратить внимание на версии 4.0 и старше, а именно - на блок Full: его отсутствие будет означать, что конкретная версия платформы в операционной системе не установлена.

Кроме того, для удобства пользователей была разработана таблица соответствия релизов и версий для платформ 4.5 и старше. Выглядит она так:

  • Инструмент администрирования Powershell позволяет взаимодействовать с реестром из командной строки. Выглядит вызов требуемой команды таким образом:

Как видно из приведенного выше изображения, процедура проверки версии платформы имеет свою специфику. Из-за сложности вводимой команды, обычному пользователю она не совсем понятна, поэтому и пользоваться этим способом, особого смысла нет.

Утилиты сторонних разработчиков

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

.Net Version Detector

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

CLRver.exe

Приложение CLRver.exe является частью пакета Visual Studio. Несмотря на то, что этот продукт создан Microsoft, в составе Windows он ожидаемо отсутствует, поскольку является полноценным инструментом разработки программного обеспечения. Соответственно, как узнать установленную версию Net Framework с помощью данного способа интересно будет лишь в среде девелопмента, простые же пользователи ОС от "Майкрософт" вряд ли им воспользуются. Относительным исключением можно считать некоторые серверные продукты компании, в которые CLRver интегрируется через службу обновлений либо является компонентом системы.

Получается, чтобы обычному пользователю узнать, какая версия Net Framework установлена, как правило, достаточно редактора реестра либо использования одной-двух специализированных утилит.

Похожие публикации