Как настроить смартфоны и ПК. Информационный портал
  • Главная
  • Windows 10
  • Какой нет фреймворк установлен. Как узнать версию net framework за минуту

Какой нет фреймворк установлен. Как узнать версию net framework за минуту

Доброго дня.

Не так уж и редко приходится сталкиваться с различными ошибками, связанными с пакетом Microsoft .NET Framework (чаще всего в играх, различных редакторах, программах для черчения, взять хотя бы тот же AutoCAD...).

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

Для справки. Вообще, .NET Framework - это специальный пакет, который призван совместить между собой различное ПО, написанное на разных языках программирования (так, чтобы все работало). По идее, можно сравнить его с кодеками. Естественно, если у вас на компьютере нет нужной версии (или она была повреждена) - то программа у вас не запустится.

А теперь, ближе к делу, разберу самое основное...

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

Способ №1

Необходимо открыть панель управления Windows по следующему пути: (прим. : установка и удаление программ) .

Важно!

Отмечу, что в ОС Windows 8 и 10 Microsoft .NET не указана в списке установленных программ (чтобы посмотреть версии, необходимо открыть ссылку в меню слева "Просмотр установленных обновлений").

В ОС Windows 10 нет возможности удаления.NET штатными средствами, однако, как правило возможна установка последней версии.NET (его обновление).

Способ №2

Для просмотра и решения проблем с.NET есть специальная утилита ".NET Version Detector" (доступна по ссылке: ) .

Она не требует установки. После запуска покажет список всех установленных версий, а также приведет ссылки на их загрузку (если вдруг чего-то не окажется - можно скачать и установить).

Можно ли не обновлять этот пакет, ведь я раньше не обновлял его и все работало?

Большинство пользователей и не вспоминает о нем (до поры до времени...). Дело в том, что в новых версиях Windows уже есть в комплекте (предустановлена в систему) определенная версия.NET и нет необходимости отдельно что-то скачивать или обновлять.

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

Однако, может стать так, что новая программа или игра потребует новый пакет.NET (или наоборот, захотите запустить что-то старое, которое потребует определенную версию.NET и никакую другую).

А дальше все просто: если нужной версии.NET не будет - то при запуске вы увидите ошибку (как на примере ниже). Кстати, часть ошибок может быть связана с "битой" версией.NET (именно поэтому, иногда рекомендуется обновлять это ПО).

Во-первых, сразу хочу посоветовать: не нужно скачивать все подряд версии и пытаться переустановить каждую (чуть ниже я отмечу, какие версии рекомендованы для разных ОС). Во-вторых, рекомендуется скачивать.NET только с официального сайта Microsoft (так сказать, не измененный установщик).

Способ №1. Чуть выше в статье я вам порекомендовал использовать утилиту ".NET Version Detector" - она не только покажет, какие версии пакета.NET у вас установлены в системе, но и даст ссылки на загрузку каждой из версии.

  • (для Windows XP);
  • (включает.NET 2.0, 3.0; для Windows XP, Vista);
  • (для Windows XP, Vista и 7);
  • (для Windows 7, 8 и 8.1);
  • (для Windows 7, 8, 8.1 и 10);
  • (для Windows 7, 8, 8.1 и 10).

Важно отметить , что версия.NET 4 (скажем) обновляет предыдущую версию.NET, поэтому для новых ОС Windows 8, 10 требуется установка (в 99,9% случаев) только последних версий.NET 4.

Дополнение!

Не могу не порекомендовать программу - даже если вам ненужно обновлять драйвера, все равно попробуйте воспользоваться ей. Дело в том, что она автоматически определяет недостающие компоненты в системе, которые могут сказаться на играх (.NET, Visual C++ и др. пакеты), и устанавливает их. Согласитесь, удобно!

Обратите внимание, все необходимое для игр (.NET, Visual C++ и др. пакеты) программа качает и ставит автоматически!

Можно ли удалить.NET Framework (или использовать другую версию)? Что для этого необходимо?

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

Собственно, нужно-то поставить "галочку" рядом с тем пакетом, который хотите задействовать и согласиться с изменениями (ОС Windows может потребоваться загрузить недостающие файлы - делает она это сама в авто-режиме (просто потребуется подключение к интернету) ).

В тех случаях, когда у вас вроде бы установлена нужная версия.NET, а игра (программа) все равно сыпет ошибками и "ругается" - можно попробовать удалить пакет.NET и установить его заново.

В ряде случаев, пакет можно удалить, если открыть список установленных программ (Панель управления\Программы\Программы и компоненты ). Удаление происходит точно также, как и любой другой программы (см. скрин ниже).

В отдельных случаях, может потребовать специальная утилита: NET Framework Cleanup Tool (ссылка на блог разработчика Microsoft - ).

Утилита не нуждается в установке. Запускать ее, кстати, необходимо от имени администратора (прим. : т.е. щелкнуть по исполняемому файлу правой кнопкой мышки и в контекстном меню выбрать "запуск от имени администратора") .

Вот, собственно, и все на сегодня.

Дополнения приветствуются...

Всем всего доброго.

В этой статье

На компьютере можно установить и запустить несколько версий платформы.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. Дополнительные сведения см. в

Microsoft .NET Framework представляет собой среду CLR и связанные файлы, необходимые для работы приложений, разработанных для платформы.NET Framework.
Платформа Microsoft .NET Framework - это новая модель программирования управляемого кода для операционной системы Windows.
Как только Вы установите.NET Framework, компонент моментально создаст все необходимые условия для работы программы. Таким образом данный компонент создаёт необходимые условия для работы Ваших программ.
.NET Framework может быть установлена в операционных системах Windows NT, 98, Me, 2000, XP, Server 2003, Vista, Server 2008 и 7, 8.
Я бы сказал, что.NET Framework это не кодеки, а альтернатива java - виртуальная машина, способная на разных платформах выполнять код, написанный под неё.
В отличии от явы код может не только интерпретироваться виртуальной машиной, но и транслироваться для выполнения непосредственно на железе (это даёт более высокое быстродействие).
Его применение не ограничивается только интернетом, обычный софт тоже пишется под.NET. Преимущество этого софта, что он будет выполнятся на любом компе и на любой операционке с поддержкой.NET, например на сотовых телефонах.
.NET Framework уже давно поставляется вместе с Windows. B Windows 7 стоит версия 3.5 и некоторые предыдущие, для совместимости. Cейчас актуальной является 4 версия.
В отличие от Windows 7, восьмерка поставляется с версией платформы 4.5, которая устанавливается автоматически в ходе установки операционной системы. Поэтому, если у вас установлена операционная система Windows 8, то никаких установщиков скачивать не нужно, всё уже установлено. Подробнее о платформе читайте на сайте MSDN .

Как определить какая версия.NetFramework установлена?

Существуют 3 простых метода определения версии.NET Framework установленной в Вашем компьютере:
Метод 1:
Используя Проводник Windows (Windows Explorer)
Используя Редактор реестра
Используя небольшую portable-утилиту.NET Version Detector Все версии Microsoft .NET Framework устанавливаются в следующую папку:

Где "%windir% " - корневая папка, в которую была установлена "Windows", т.е. C:\Windows\ .
Зайдите в меню Пуск->Выполнить и затем введите команду %windir%\Microsoft.NET\Framework\ Данную команду можно также ввести в адресную строку Проводника Windows (т.е. любой папки). Откроется папка, она показана на следующем скриншоте:


В этой папке Вы можете посмотреть какие версии у Вас установлены.
Метод 2: При помощи Редактора реестра.
Узнать какая версия.NET Framework установлена на Вашем компьютере также можно через Редактор реестра:

  1. Зайдите в меню Пуск->Выполнить и затем введите команду regedit и нажмите Enter .
    Откроется окно .
  2. Теперь ищем следующий ключ:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP
  3. В этом ключе, содержаться еще несколько разделов, каждый из которых отображает название и версию установленного в Вашей системе.NET Framework.


Метод 3:
Проверить наличие установленных версий.NET Framework очень просто с помощью .NET Version Detector


Список всех версийl Microsoft .NET Framework

Ниже приведен список всех выпущенных на данный момент версий.NET Framework:
  • .NET Framework 1.0
  • .NET Framework 1.1 (входит в состав операционной системы начиная с Windows Server 2003)
  • .NET Framework 2.0
  • .NET Framework 3.0 (входит в состав операционной системы начиная с Windows Vista и Server 2008)
  • .NET Framework 3.5 (входит в состав операционной системы начиная с Windows 7 и Server 2008 R2)
  • .NET Framework 4.0

Скачать Microsoft .NET Framework 1.0


Скачать Microsoft .NET Framework 1.1


Скачать Microsoft .NET Framework 2.0


(веб-установщик) (на время установки требуется подключение к интернету)

Пакет обновления 1 (SP1) Microsoft .NET Framework 3.5 (Полностью автономный установщик)

Скачать Microsoft .NET Framework 4.0


Скачать (веб-установщик) (на время установки требуется подключение к интернету) (Русс.)

В этой статье я расскажу о том, как можно определить версию.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

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

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

Лучшие статьи по теме