Как проверить наличие framework. Как определить установленную версию Net Framework в ОС Windows

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

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

Посмотреть какие версии.NET Framework установлены были на компьютер можно в этой части реестра:

Внимание!!!

Будьте осторожны при работе в реестре. С помощью реестра можно вывести из строя операционную систему.

Для Windows XP:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\

1) Вызываем меню "Пуск".

4) Появится окно "Редактор реестра". В этом окне надо пройти по пути: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework.

5) В папке ".NETFramework" будут еще папки, имена которых и будут являться версиями Framework (кроме policy).

Для Windows Vista, 7, 8.x, 10:

1) Вызываем меню "Пуск".

2) Выбираем меню "Выполнить".

3) В окне "Запуск программы" вводим regedit. Нажимаем кнопку "ОК".

4) Появится окно "Контроль учетных записей пользователей". В этом окне нажимаем на кнопку "Да".

5) Появится окно "Редактор реестра". В этом окне надо пройти по пути: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework.

6) В папке ".NETFramework" будут еще папки, имена которых и будут являться версиями Framework. Имена этих папок будут начинаться с буквы
"v", а далее будут идти цифры. Например: V4.0.30319 или V2.0.50727.

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

Информация об установленных в системе версиях.Net хранится в реестре. Для ее получения надо открыть редактор реестра и перейти в раздел HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP, в котором перечислены все установленные в системе версии. Подробная информация хранится в разделах с именем версии, а для версий старше 4.0 — в подразделе Client или Full. Вот некоторые параметры:

Install — флаг установки версии;
Version — полный номер версии;
Install Path — директория установки;
Release — номер текущей версии.

Как правило, требуется узнать номер последней установленной версии. Выяснить это можно из параметра Release, например:

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 7\8 и Windows Server 2008\2012;
379893 — .Net Framework 4.5.2.

В качестве альтернативы редактору реестра можно воспользоваться консолью PowerShell. Доступ к реестру в PowerShell осуществляется с помощью провайдера, который позволяет просматривать ветки реестра как папки в файловой системе. Например, проверить содержимое ветки HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full можно командой:

dir ′HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full′

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

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

В ОС 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.