В Windows одновременно можно одновременно установить и запустить несколько версий .NET Framework. При разработке или развертывания нового приложения, основанного на библиотеках .NET, иногда нужно предварительно узнать какие версии и пакеты обновления .Net Framework уже установлены на компьютере пользователя или на сервере. Вы можете получить список версий .NET Framework, установленных на компьютере, несколькими способами.
Содержание:
- Информация об установленных версиях .NET Framework в реестре
- Как узнать версию .NET Framework с помощью PowerShell?
- Проверить версию .Net Framework на удаленных компьютерах
- Вывести версии .NET Framework в командной строке
Информация об установленных версиях .NET Framework в реестре
При установке или обновлении любой версии .NET Framework, изменения записываются в реестр Windows.
Откройте редактор реестра (regedit.exe) и перейдите в раздел HKLM SOFTWAREMicrosoftNET Framework SetupNDP. В этой ветке хранится информация обо всех версиях .NET на компьютере. Разверните любой раздел и обратите внимание на следующие параметры (для .Net 4.x нужно развернуть ветку Full):
- Install — флаг установки (если равен 1, значит данная версия .Net установлена на компьютере);
- Install Path — каталог, в который установлена данная версия .Net;
- Release — номер релиза .Net;
- Version — полный номер версии .Net Framework.
Примечание. Для .NET 4.0 и выше, если подраздел Full отсутствует, это значит, что данная версия Framework на компьютере не установлена.
К примеру, в данном примере видно, что на компьютере установлены .NET Framework v2.0.50727, 3.0, 3.5 и 4.7 (релиз 460805).
Обратите внимание, что в серверных ОС начиная с Windows Server 2012, все базовые версии .Net (3.5 и 4.5) является частью системы и устанавливаются в виде отдельного компонента (Установка .NET Framework 3.5 в Windows Server 2016, в Windows Server 2012 R2), а минорные (4.5.1, 4.5.2 и т.д.) устанавливаются уже в виде обновлений через Windows Update или WSUS.
С помощью следующей таблицы вы можете установить соответствие между номером релиза и версией .NET Framework (применимо к .NET 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 |
393295 | .NET Framework 4.6 на Windows 10 |
393297 | .NET Framework 4.6 |
394254 | .NET Framework 4.6.1 на Windows 10 1511 |
394271 | .NET Framework 4.6.1 |
394802 | .NET Framework 4.6.2 на Windows 10 1607 |
394806 | .NET Framework 4.6.2 |
460798 | .NET Framework 4.7 на Windows 10 1703 |
460805 | .NET Framework 4.7 |
461308 | .NET Framework 4.7.1 на Windows 10 1709 |
461310 | .NET Framework 4.7.1 |
461808 | .NET Framework 4.7.2 на Windows 10 1803 |
461814 | .NET Framework 4.7.2 |
528372 | .NET Framework 4.8 на Windows 10 2004, 20H2, и 21H1 |
528040 | .NET Framework 4.8 на Windows 10 1903 и 1909 |
528449 | .NET Framework 4.8 в Windows Server 2022 и Windows 11 |
528049 | .NET Framework 4.8 (остальные версии Window) |
.NET Framework 4.8 сегодня — самая последняя доступная версия .NET Framework.
Как узнать версию .NET Framework с помощью PowerShell?
Можно получить информацию об установленных версиях и релизах NET Framework на компьютере с помощью PowerShell. Проще всего получить эти данные напрямую из реестра с помощью командлетов
Get-ChildItem
и
Get-ItemProperty
(подробнее о работе с записями реестра из PowerShell).
Чтобы вывести таблицу по всем версиям .Net Framework на компьютере, выполните команду:
Get-ChildItem ‘HKLM:SOFTWAREMicrosoftNET Framework SetupNDP’ -Recurse | Get-ItemProperty -Name version -EA 0 | Where { $_.PSChildName -Match ‘^(?!S)p{L}’} | Select PSChildName, version
На этом компьютере установлены версии .Net 2.0, 3.0, 3.5 и 4.7.
Начиная с версии .Net v4.0 более новая версия Framework перезаписывает (заменяет) старую версию. Т.е. если на компьютере был установлен .NET Framework 4.7, то при установке .NET Framework 4.8, старая версия пропадет.
Можно вывести только номер релиза (для версий .Net 4.x):
(Get-ItemProperty ‘HKLM:SOFTWAREMicrosoftNET Framework SetupNDPv4Full’ -Name Release).Release
Согласно таблице, номер 528449 соответствует версии .Net Framework 4.8 в Windows 11.
Проверить версию .Net Framework на удаленных компьютерах
Вы можете удаленно получить список версий .Net Framework, установленных на компьютерах в вашей сети помощью PowerShell.
Ниже представлен небольшой PowerShell скрипт, который получает список компьютеров из текстового файла и проверяет на всех версию .Net Framework. Для запуска команд на удаленных компьютерах используется WinRM командлет Invoke-Command.
Function GetNetFramework {
Get-ChildItem 'HKLM:SOFTWAREMicrosoftNET Framework SetupNDP' -recurse |
Get-ItemProperty -name Version,Release -EA 0 |
Where { $_.PSChildName -match '^(?![SW])p{L}'} |
Select PSChildName, Version, Release, @{
name="Product"
expression={
switch -regex ($_.Release) {
"378389" { [Version]"4.5" }
"378675|378758" { [Version]"4.5.1" }
"379893" { [Version]"4.5.2" }
"393295|393297" { [Version]"4.6" }
"394254|394271" { [Version]"4.6.1" }
"394802|394806" { [Version]"4.6.2" }
"460798|460805" { [Version]"4.7" }
"461308|461310" { [Version]"4.7.1" }
"461808|461814" { [Version]"4.7.2" }
"528040|528049|528449|528372" { [Version]"4.8" }
{$_ -gt 528449} { [Version]"Undocumented version (> 4.8)" }
}
}
}
}
[email protected]()
$servers= Get-Content C:PSservers.txt
foreach ($server in $servers)
{
$result+=Invoke-Command -ComputerName $server -ScriptBlock $function:GetNetFramework
}
$result| select PSComputerName,@{name = ".NET Framework"; expression = {$_.PSChildName}},Product,Version,Release| Out-GridView
Скрипт выводит табличку (через Out-GridView) со списком версий .Net Framework, установленных на удаленных компьютерах.
Также вы можете задать список компьютеров, на которых нужно проверить .NET так:
$servers= @("pc1","pc2","pc3","pc4","pc5")
Или выбрать список компьютеров из домена с помощью командлета Get-ADComputer из модуля AD PowerShell. Следующая команда выберет все активные хосты Windows Server в домене:
$servers= Get-ADComputer -Filter 'operatingsystem -like "*Windows server*" -and enabled -eq "true"'
Вывести версии .NET Framework в командной строке
Все версии.NET Framework устанавливаются в следующие каталоги Windows:
-
%SystemRoot%Microsoft.NETFramework
-
%SystemRoot%Microsoft.NETFramework64
Вы можете просто открыть этот каталог и увидеть список установленных версий .NET. Каждой версии соответствует отдельный каталог с символом v и номером версии в качестве имени папки. Можно вывести список установленных версий .NET Framework из команды строки:
dir %WINDIR%Microsoft.NetFrameworkv* /O:-N /B
Команда выведет все установленные версии кроме 4.5, т.к. .NET Framework 4.5 устанавливается в подкаталог v4.0.xxxxx.
Как определить версию .Net Framework, установленную на компьютере
Каждая новая версия платформы .Net Framework несет в себе новые возможности, поэтому при развертывании нового приложения желательно точно знать, какие именно версии установлены на компьютере. Получить список версий .NET Framework можно несколькими путями.
Информация об установленных в системе версиях .Net хранится в реестре. Для ее получения надо открыть редактор реестра и перейти в раздел HKLMSOFTWAREMicrosoftNET Framework SetupNDP, в котором перечислены все установленные в системе версии. Подробная информация хранится в разделах с именем версии, а для версий старше 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 78 и Windows Server 20082012;
379893 — .Net Framework 4.5.2.
В качестве альтернативы редактору реестра можно воспользоваться консолью PowerShell. Доступ к реестру в PowerShell осуществляется с помощью провайдера, который позволяет просматривать ветки реестра как папки в файловой системе. Например, проверить содержимое ветки HKLMSOFTWAREMicrosoftNET Framework SetupNDPv4Full можно командой:
dir "HKLM:SOFTWAREMicrosoftNET Framework SetupNDPv4Full"
Также выяснить установленные версии .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 можно посмотреть на сайте MSDN.
Обновлено 04.10.2017
Добрый день уважаемые пользователи сайта pyatilistnik.org, не так давно я вам рассказывал, как устанавливать компонент 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_MACHINESOFTWAREMicrosoftNET Framework SetupNDPнужная версия
Обратите внимание на ключ «Version» в нем будет нужное значение. Если в ключе «Install» установлено значение 1, то компонент установлен.
Как видите этот метод слегка посложнее, так как может немного обескуражить начинающего пользователя, но подходит для закрытых сетей, где запускать и скачивать сторонний софт запрещено. Надеюсь вам помогла заметка узнать вашу текущую версионность у net framework.
В данной статье показаны действия, с помощью которых можно узнать установленные версии .NET Framework в операционной системе Windows.
.NET Framework — программный компонент операционных систем Windows, предоставляющий функциональные возможности для запуска приложений использующих архитектуру .NET.
В некоторых случаях пользователям операционных систем Windows необходимо узнать установленные на компьютере версии .NET Framework.
Узнать список установленных версий .NET Framework можно несколькими способами.
Как узнать версии .NET Framework используя VBScript
Используя Visual Basic скрипт можно узнать список установленных версий .NET Framework, на мой взгляд это самый простой способ.
Скачайте zip-архив по ссылке ниже.
Скачать DetermineNetframeworkVersion.vbs.
Извлеките скрипт из архива в любое место, например на рабочий стол и запустите его двойным кликом мыши.
В окне Контроль учетных записей нажмите кнопку Да.
Затем вы увидите всплывающее окно со списком установленных версий .NET Framework.
Как узнать версии .NET Framework используя редактор реестра
Запустите редактор реестра, для этого нажмите сочетание клавиш + R и в открывшемся окне Выполнить введите (скопируйте и вставьте) regedit и нажмите клавишу Enter ↵.
В окне редактора реестра, перейдите по следующему пути:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
ET Framework Setup
DP
Здесь мы увидим разделы с наименованием версий, пока нам нужны разделы с именами v2.0.50727, v3.0, v3.5.
Нажмите на любой из этих разделов, и в правой части окна вы увидите список параметров. Нам нужны только параметры Install, SP, Version.
Если параметр Install имеет значение 1, то это говорит о том что данная версия .NET Framework установлена.
Параметр SP указывает на номер установленного Service Pack.
Параметр Version содержит полный номер версии .NET Framework.
Все параметры для определения пакета .NET Framework версий 4.0 и выше находятся в подразделах Full и Client, раздела v4.
Подраздел Full отвечает за полную версию, которую чаще всего используют разработчики программ. Client больше подходит для рядовых пользователей.
Чтобы определить версию .NET Framework 4.0 и выше в операционной системе Windows, необходимо в редакторе реестра перейти по одной из следующей ветке:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
ET Framework Setup
DP\v4\Client
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
ET Framework Setup
DP\v4\Full
Теперь также смотрим значение параметра Install, если его значение равно 1, то это значит что данная версия .NET Framework установлена.
Обратите внимание на параметр Release, с помощью его значения можно точно узнать установленную версию .NET Framework 4.0 и выше.
Значения параметра Release приведены в таблице ниже.
Значение DWORD «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 8, Windows 7 с пакетом обновления 1 (SP1) или Windows Vista с пакетом обновления 2 (SP2) |
379893 | .NET Framework 4.5.2 |
В системах Windows 10: 393295. Во всех других версиях ОС: 393297 |
.NET Framework 4.6 |
В системах Windows 10 с ноябрьским обновлением: 394254. Во всех других версиях ОС: 394271 |
.NET Framework 4.6.1 |
В юбилейном обновлении Windows 10 Anniversary Update: 394802. Во всех других версиях ОС: 394806 |
.NET Framework 4.6.2 |
В обновлении Windows 10 Creators Update: 460798. Во всех других версиях ОС: 460805 |
.NET Framework 4.7 |
В Windows 10 Fall Creators Update: 461308. Во всех других версиях ОС: 461310 |
.NET Framework 4.7.1 |
461808 | .NET Framework 4.7.2 |
Также, на сайте компании Microsoft, можно посмотреть полный список значений реестра для соответствующей версии .NET Framework, для этого перейдите по этой ⇒ ссылке и по этой ⇒ ссылке
Такими способами можно быстро и точно определить установленные на компьютере версии .NET Framework.
Ну а если нужно установить .NET Framework, то для этого читайте следующие статьи:
Как установить .NET Framework 3.5 и 4.5 в Windows 10
Как установить .NET Framework 3.5 в Windows 10 используя Windows PowerShell
Как установить .NET Framework 3.5 в Windows 8.1
Содержание
Как определить установленные версии .NET Framework
В этой заметке рассмотрены разные способы определения установленных версий .NET Framework на ОС Windows и Windows Server.
Проверка в проводнике Windows
Проверка с помощью Проводника Windows (File Explorer) заключается в изучении содержимого каталога C:WindowsMicrosoft.NETFramework
.
В этом каталоге найдите подкаталог с самой большой версией, например v4.0.30319
.
В подкаталоге откройте свойства любой библиотеки с расширением *.dll и на вкладке «Подробно» версия будет указана в поле «Версия продукта». В нашем примере это версия 4.8.4084.0
.
Проверка в системном реестре
Информацию об установленных версиях .NET Framework из системного реестра Windows можно извлечь разными способами.
Запрос с помощью утилиты командной строки reg с опросом ключа реестра HKLMSOFTWAREMicrosoftNet Framework SetupNDP
:
reg query "HKLMSOFTWAREMicrosoftNet Framework SetupNDP" /s
Запрос с помощью командлетов PowerShell:
Get-ChildItem 'HKLM:SOFTWAREMicrosoftNET Framework SetupNDP' -Recurse ` | Get-ItemProperty -Name version -EA 0 ` | Where { $_.PSChildName -Match '^(?!S)p{L}'} ` | Select PSChildName, version
Проверено на следующих конфигурациях:
Версия ОС |
---|
Microsoft Windows 10 21H2 (19044) |
Автор первичной редакции:
Алексей Максимов
Время публикации: 10.11.2022 11:32
How do I find out which version of .NET is installed?
I’m looking for something as simple as java -version
that I can type at the command prompt and that tells me the current version(s) installed.
I better add that Visual Studio may not be installed — this is typically something that I want to know about a client machine.
Himanshu
31.2k30 gold badges110 silver badges132 bronze badges
asked Oct 14, 2009 at 10:22
3
There is an easier way to get the exact version .NET version installed on your machine from a cmd prompt. Just follow the following instructions;
-
Open the command prompt (i.e Windows + R → type «cmd»).
-
Type the following command, all on one line:
reg query "HKEY_LOCAL_MACHINESOFTWAREMicrosoftNET Framework SetupNDP"
(This will list all the .NET versions.)
-
If you want to check the latest .NET 4 version.
-
Type following instruction, on a single line:
reg query "HKEY_LOCAL_MACHINESOFTWAREMicrosoftNET Framework SetupNDPv4full" /v version
Please find the attached image below to see how it is shown.
shA.t
16.4k5 gold badges53 silver badges111 bronze badges
answered Mar 3, 2016 at 13:43
AnandShanbhagAnandShanbhag
6,1491 gold badge18 silver badges19 bronze badges
9
Just type any one of the below commands to give you the latest version in the first line.
1. CSC
2. GACUTIL /l ?
3. CLRVER
You can only run these from the Visual Studio Command prompt if you have Visual Studio installed, or else if you have the .NET framework SDK, then the SDK Command prompt.
4. wmic product get description | findstr /C:".NET Framework"
5. dir /b /ad /o-n %systemroot%Microsoft.NETFrameworkv?.*
The last command (5) will list out all the versions (except 4.5) of .NET installed, latest first.
You need to run the 4th command to see if .NET 4.5 is installed.
Another three options from the PowerShell command prompt is given below.
6. [environment]::Version
7. $PSVersionTable.CLRVersion
8. gci 'HKLM:SOFTWAREMicrosoftNET Framework SetupNDP' -recurse | gp -name Version,Release -EA 0 |
where { $_.PSChildName -match '^(?!S)p{L}'} | select PSChildName, Version, Release
The last command (8) will give you all versions, including .NET 4.5.
answered Oct 14, 2009 at 10:25
Binoj AntonyBinoj Antony
15.8k25 gold badges88 silver badges96 bronze badges
16
This answer is applicable to .NET Core only!
Typing dotnet --version
in your terminal of choice will print out the version of the .NET Core SDK in use.
Learn more about the dotnet
command here.
answered Jan 27, 2018 at 23:27
FelixAVerasFelixAVeras
8449 silver badges17 bronze badges
2
Before going to a command prompt, please follow these steps…
Go to «C:/Windows/Microsoft.NET/Framework» → Inside this folder, there will be folder(s) like (all or any):
- v1.0.3705
- v2.0.50727
- v3.5
- v4.0.30319
Your latest .NET version would be in the highest v number folder, so if «v4.0.30319» is available that would hold your latest .NET framework. However, the «v4.0.30319» does not mean that you have the .NET framework version 4.0. The «v4.0.30319» is your Visual C# compiler version, therefore, in order to find the .NET framework version do the following.
Go to a command prompt and follow this path:
C:WindowsMicrosoft.NETFrameworkv4.0.30319 (or whatever the highest v number folder)
C:WindowsMicrosoft.NETFrameworkv4.0.30319 > csc.exe
Output:
Microsoft (R) Visual C# Compiler version 4.0.30319.17929
for Microsoft (R) .NET Framework 4.5
Copyright (C) Microsoft Corporation. All rights reserved.
Example below:
Himanshu
31.2k30 gold badges110 silver badges132 bronze badges
answered Jan 23, 2013 at 14:46
3
.NET Version Detector is a GUI utility that displays which of the six(!) versions of the framework are installed.
answered Oct 14, 2009 at 10:32
Phil DevaneyPhil Devaney
17.4k6 gold badges40 silver badges31 bronze badges
0
For the version of the framework that is installed, it varies depending on which service packs and hotfixes you have installed. Take a look at this MSDN page for more details. It suggests looking in %systemroot%Microsoft.NETFramework
to get the version.
Environment.Version will programmatically give you the version of the CLR.
Note that this is the version of the CLR, and not necessarily the same as the latest version of the framework you have installed (.NET 3.0 and 3.5 both use v2 of the CLR).
answered Oct 14, 2009 at 10:26
adrianbanksadrianbanks
80.4k22 gold badges177 silver badges204 bronze badges
5
MSDN details it here very nicely on how to check it from registry:
To find .NET Framework versions by viewing the registry (.NET
Framework 1-4)
- On the Start menu, choose Run.
- In the Open box, enter regedit.exe.You must have administrative credentials to run regedit.exe.
In the Registry Editor, open the following subkey:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNET Framework SetupNDP
The installed versions are listed under the NDP subkey. The version
number is stored in the Version entry. For the .NET Framework 4 the
Version entry is under the Client or Full subkey (under NDP), or under
both subkeys.To find .NET Framework versions by viewing the registry (.NET
Framework 4.5 and later)
- On the Start menu, choose Run.
- In the Open box, enter regedit.exe. You must have administrative credentials to run regedit.exe.
In the Registry Editor, open the following subkey:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNET Framework SetupNDPv4Full
Note that the path to the Full subkey includes the subkey Net
Framework rather than .NET FrameworkCheck for a DWORD value named
Release
. The existence of the Release
DWORD indicates that the .NET Framework 4.5 or newer has been
installed on that computer.
Note: The last row in the above snapshot which got clipped reads On all other OS versions: 461310
. I tried my level best to avoid the information getting clipped while taking the screenshot but the table was way too big.
answered Dec 23, 2017 at 9:53
RBTRBT
23k21 gold badges155 silver badges232 bronze badges
Just type the following in the command line:
dir /b /ad /o-n %systemroot%Microsoft.NETFrameworkv?.*
Your dotnet version will be shown as the highest number.
answered Sep 14, 2017 at 16:21
1
open cmd prompt type:
dotnet --info
Eric Aya
69k35 gold badges179 silver badges250 bronze badges
answered Aug 17, 2021 at 13:27
Trakehner1Trakehner1
811 silver badge2 bronze badges
2
If you open a command prompt and type the following two commands, all framework versions that are installed on the current machine will be listed (each one is stored in a separate directory within this directory).
cd %systemroot%Microsoft.NETFramework
dir /A:D
answered Oct 14, 2009 at 10:55
Michael ArnellMichael Arnell
1,0081 gold badge9 silver badges16 bronze badges
1
If you do this fairly frequently (as I tend to do) you can create a shortcut on your desktop as follows:
- Right click on the desktop and select New → Shortcut.
- In the location field, paste this string:
powershell.exe -noexit -command "gci 'HKLM:SOFTWAREMicrosoftNET Framework SetupNDP' -recurse | gp -name Version,Release -EA 0 | where { $_.PSChildName -match '^(?!S)p{L}'} | select PSChildName, Version, Release"
(this is from Binoj Antony’s post). - Hit Next. Give the shortcut a name and Finish.
(NOTE: I am not sure if this works for 4.5, but I can confirm that it does work for 4.6, and versions prior to 4.5.)
answered May 3, 2016 at 22:57
kmotekmote
15.9k11 gold badges66 silver badges89 bronze badges
1
My god, so much mess to find version of installed .net framework?
Windows > Search > Visual Studio Installer > for installed version of VS, tap on More > Modify > Individual Components and see it there:
halfer
19.7k17 gold badges95 silver badges183 bronze badges
answered Jul 11, 2019 at 16:20
pixelpixel
8,90416 gold badges72 silver badges135 bronze badges
1
To just get the installed version(s) at the command line, I recommend using net-version.
- It’s just a single
binary. - It uses the guidelines provided my
Microsoft
to get version information. - It doesn’t require the SDK to be installed.
- Or the Visual Studio command prompt.
- It doesn’t require you to use regedit and hunt down registry keys
yourself. You can even pipe the output in a command line tool if
you need to.
Source code is available on github.com
Full disclosure: I created this tool myself out of frustration.
answered Oct 27, 2015 at 21:09
Dan EsparzaDan Esparza
27.8k28 gold badges101 silver badges126 bronze badges
2
Here is the Power Shell script which I used by taking the reference of:
https://stackoverflow.com/a/3495491/148657
$Lookup = @{
378389 = [version]'4.5'
378675 = [version]'4.5.1'
378758 = [version]'4.5.1'
379893 = [version]'4.5.2'
393295 = [version]'4.6'
393297 = [version]'4.6'
394254 = [version]'4.6.1'
394271 = [version]'4.6.1'
394802 = [version]'4.6.2'
394806 = [version]'4.6.2'
460798 = [version]'4.7'
460805 = [version]'4.7'
461308 = [version]'4.7.1'
461310 = [version]'4.7.1'
461808 = [version]'4.7.2'
461814 = [version]'4.7.2'
528040 = [version]'4.8'
528049 = [version]'4.8'
}
# For One True framework (latest .NET 4x), change the Where-Oject match
# to PSChildName -eq "Full":
Get-ChildItem 'HKLM:SOFTWAREMicrosoftNET Framework SetupNDP' -Recurse |
Get-ItemProperty -name Version, Release -EA 0 |
Where-Object { $_.PSChildName -match '^(?!S)p{L}'} |
Select-Object @{name = ".NET Framework"; expression = {$_.PSChildName}},
@{name = "Product"; expression = {$Lookup[$_.Release]}},
Version, Release
The above script makes use of the registry and gives us the Windows update number along with .Net Framework installed on a machine.
Reference: https://learn.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed#to-find-net-framework-versions-by-querying-the-registry-in-code-net-framework-45-and-later
Here are the results for the same when running that script on two different machines
- Where .NET 4.7.2 was already installed:
- Where .NET 4.7.2 was not installed:
answered Sep 25, 2019 at 18:16
RaghavRaghav
8,2566 gold badges78 silver badges104 bronze badges
It is exactly like java. Open up the terminal and execute following command
dotnet --version
answered Aug 26, 2022 at 5:30
ahmad razaahmad raza
1111 silver badge2 bronze badges
1
Try .NET Checker
by Scott Hanselman.
answered Jan 13, 2017 at 19:21
A.IA.I
1,4381 gold badge15 silver badges18 bronze badges
1
clrver
is an excellent one. Just execute it in the .NET prompt and it will list all available framework versions.
answered Jul 15, 2014 at 20:53
James PouloseJames Poulose
3,4012 gold badges33 silver badges35 bronze badges
3
If you’r developing some .Net app (for ex. web app), you can make 1 line of error code (like invoke wrong function name) and reload your page, the .Net version will be show
answered Apr 13, 2018 at 14:54
1
For anyone running Windows 10 1607 and looking for .net 4.7.
Disregard all of the above.
It’s not in the Registry, C:WindowsMicrosoft.NET folder or the Installed Programs list or the WMIC display of that same list.
Look for «installed updates» KB3186568.
answered Oct 3, 2017 at 8:36
skrieskrie
91 bronze badge
3
If you have installed visual studio on your machine,
Just go to Help > About Microsoft Visual Studio
You will see info about .NET version that IDE is using.
answered Sep 13, 2021 at 6:25
Run the following command on CMD:
- dotnet —list-sdks
It will display all installed versions of .net, as seen in image above. You can also run the following command below to see the .net version that is in use:
- dotnet —version
answered Dec 28, 2022 at 7:50
YongaJYongaJ
1791 silver badge10 bronze badges
Содержание
- Определяем установленную версию .NET Framework на компьютере
- Способ 1: ASoft .NET Version Detector
- Способ 2: Раздел «Программы и компоненты»
- Способ 3: Редактор реестра
- Способ 4: Скрипт для PowerShell
- Вопросы и ответы
Библиотеки .NET Framework активно используются различным программным обеспечением при запуске и инсталляции. На данный момент времени уже была выпущена масса версий этого системного компонента, каждая из которых имеет в себе определенные файлы. Иногда требуется узнать, присутствует ли на компьютере определенная версия .NET Framework, чтобы после этого установить недостающие элементы либо начать инсталляцию ПО. В определении интересующего параметра помогут несколько способов, о которых мы и хотим поговорить далее.
Практически все приведенные ниже методы не требуют использования дополнительного софта для определения версии необходимой библиотеки, однако нельзя не отметить и сторонние решения, которые могут пригодиться юзерам разных категорий. Поэтому мы предлагаем сначала ознакомиться со всеми вариантами, а уже потом выбрать понравившийся.
Способ 1: ASoft .NET Version Detector
Выше мы уже упомянули стороннее программное обеспечение, поэтому давайте сразу разберемся с ним. В качестве дополнительного решения будем использовать ASoft .NET Version Detector — бесплатное ПО для определения установленных на компьютере версий .NET Framework. Вся задача осуществляется буквально в несколько кликов:
Скачать ASoft .NET Version Detector с официального сайта
- Перейдите по указанной выше ссылке и на сайте нажмите на соответствующую кнопку для начала скачивания ASoft .NET Version Detector.
- По завершении скачивания запустите приложение из архива.
- Подтвердите правила лицензионного соглашения.
- В отдельных колонках будут отображаться все существующие версии рассматриваемого компонента и источники, из которых они были получены.
- При необходимости скачивания какой-либо из них нажмите на специально отведенную кнопку.
Хоть ASoft .NET Version Detector — бесплатное и удобное обеспечение, не у каждого пользователя есть желание или возможность скачать его. В таких случаях мы рекомендуем прибегать к стандартным инструментам операционной системы.
Способ 2: Раздел «Программы и компоненты»
Практически каждый пользователь операционной системы Windows хоть раз сталкивался с разделом «Программы и компоненты». Обычно туда заходят, чтобы удалить какое-либо ПО или проверить последние установленные обновления. В этот раз мы задействуем присутствующую там информацию для получения сведений о версии .NET Framework.
- Откройте «Пуск» и перейдите в «Панель управления».
- Среди всех значков отыщите «Программы и компоненты». Кликните по нему дважды ЛКМ, чтобы перейти.
- Опуститесь вниз по списку и отыщите NET.Framework. В конце строки указывается версия.
Если вдруг вы обнаружили, что там присутствует более одной строки и указаны разные версии, это значит, что на этом компьютере установлен весь перечень сборок и были добавлены все файлы этих библиотек.
Способ 3: Редактор реестра
Значения большинства системных параметров операционной системы хранятся в редакторе реестра в виде отдельных файлов определенных форматов. Юзеры, уже столкнувшиеся с данным меню, знают, что там достаточно сложно найти какое-либо необходимое сведение без применения специальных инструкций. Это касается и определения версии рассматриваемой библиотеки. Поэтому мы предлагаем ознакомиться со следующим руководством.
- Откройте утилиту «Выполнить», зажав комбинацию Win + R. В поле введите
regedit
и нажмите на клавишу Enter или виртуальную кнопку «ОК». - Перейдите по пути
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNET Framework SetupNDP
, где отыщите отдельные директории с версиями .NET Framework. - Выберите одну из них и раскройте каталог Client или Full. Там отыщите параметр Install. Если его значение 1, значит данная версия установлена на компьютере. 0 обозначает отсутствие компонента.
Далее мы еще вернемся с редактору реестра и покажем, как еще проще определить инсталлированную версию компонента даже без открытия этого меню.
Способ 4: Скрипт для PowerShell
Начинающие пользователи вряд ли слышали о PowerShell, однако многие опытные знакомы с этой оболочкой. Данная утилита представлена в виде командной строки, где используется специальный язык управления сценариями, позволяющий запускать самые разнообразные скрипты. В этот раз мы задействуем PowerShell для определения версии компонента, а сделаем это следующим образом:
- Откройте «Пуск» и через поиск найдите нужное приложение. Запустите его от имени администратора.
- Обладателям Windows 7 понадобится ввести команду
(Get-ItemProperty "HKLM:SOFTWAREMicrosoftNET Framework SetupNDPv4Full").Release -ge 394802
, а в Виндовс 10 —Get-ChildItem 'HKLM:SOFTWAREMicrosoftNET Framework SetupNDPv4Full' | Get-ItemPropertyValue -Name Release | Foreach-Object { $_ -ge 394802 }
. Затем потребуется нажать на клавишу Enter. Число 394802 обозначает поиск файла в редакторе реестра, о чем мы детальнее поговорим далее. - Если запрашиваемый компонент не найден, появится результат False.
- В случае успеха отобразится True, что означает — искомая версия установлена.
Упомянутый выше номер у каждой версии разный. На официальном сайте компании Microsoft присутствует детальное описание этой информации. Перейдите по указанной ниже ссылке, чтобы ознакомиться с ней. После во вводимой команде уже нужно будет поставить определенный номер.
Версии и зависимости платформы .NET Framework
В рамках сегодняшней статьи вы узнали о четырех доступных методах определения установленных на компьютере версий .NET Framework. Найденные сведения помогут определиться с тем, какие дополнительные библиотеки следует установить.
Подробнее: Как обновить .NET Framework
Еще статьи по данной теме:
Помогла ли Вам статья?
Microsoft .NET Framework является важной особенностью современной операционной системы Windows. Он предоставляет разработчикам готовую коллекцию кода, поддерживаемую Microsoft. В большинстве случаев вы не имеете прямого отношения к .NET Framework. Однако это не всегда так. Время от времени вам нужно знать конкретную версию .NET Framework, установленную в вашей системе.
Вот шесть способов узнать, какие версии .NET Framework установлены в вашей версии Windows.
Есть три метода, которые вы можете использовать, чтобы узнать версию .NET Framework для версий 4.5 и выше. «Но Гэвин, — слышу ты, говоришь, — я делаю это, чтобы выяснить, какая у меня версия, я не знаю, версия это 4.5 или нет».
Вы совершенно правы. Проверка версии .NET Framework занимает всего минуту. Вы можете быстро установить, есть ли у вас .NET Framework версии 4.5 или новее. Если вы этого не сделаете, вы можете смело предположить, что у вас установлена более ранняя версия или нет версии .NET Framework вообще (что весьма маловероятно).
1. Используйте редактор реестра, чтобы найти версию .NET Framework
Вы можете найти версии .NET Framework, установленные в вашей системе, в реестре. (В любом случае, что такое реестр Windows?)
- Нажмите Ctrl + R чтобы открыть Run, затем введите regedit.
- Когда откроется редактор реестра, найдите следующую запись:
HKEY_LOCAL_MACHINE ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ Microsoft NET Framework Setup NDP v4 - Под v4проверьте на Полный Если он есть, у вас есть .NET Framework версии 4.5 или выше.
- На правой панели проверьте наличие записи DWORD с именем Релиз, Если версия DWORD существует, у вас есть .NET Framework 4.5 или более поздняя версия.
- Данные Release DWORD содержат значение, относящееся к конкретной версии .NET Framework. Например, на рисунке ниже значение DWORD выпуска имеет значение 461814. Это означает, что в моей системе установлен .NET Framework 4.7.2. Проверьте в таблице ниже значение Release DWORD.
Вы можете сопоставить значение DWORD с таблицей значений ниже, чтобы узнать точную версию .NET Framework в вашей системе.
2. Используйте командную строку для поиска версии .NET Framework
Тип команда в строке поиска в меню «Пуск» щелкните правой кнопкой мыши на «Лучшее соответствие» и выберите Запустить от имени администратора,
Теперь скопируйте и вставьте следующую команду в командную строку:
запрос reg "HKLM SOFTWARE Microsoft Net Framework Setup NDP v4" / s
Команда выводит список установленных .NET Framework для версии 4. .NET Framework версии 4 и более поздних версий отображается как «v4.x.xxxxx».
3. Используйте PowerShell для поиска версии .Net Framework
Тип PowerShell в строке поиска в меню «Пуск» щелкните правой кнопкой мыши на «Лучший матч» и выберите Запустить от имени администратора,
Теперь вы можете использовать следующую команду для проверки значения DWORD .NET Framework Release:
Get-ChildItem 'HKLM: SOFTWARE Microsoft NET Framework Setup NDP v4 Full ' | Get-ItemPropertyValue -Name Release | Foreach-Object {$ _ -ge 394802}
Команда выше возвращает Правда если версия .NET Framework 4.6.2 или выше. Иначе возвращается Ложь, Вы можете использовать приведенную выше таблицу значений .NET Framework DWORD, чтобы поменять последние шесть цифр команды для другой версии. Посмотрите мой пример:
Первая команда подтверждает, что версия 4.6.2 присутствует. Второе подтверждает, что версия 4.7.2 присутствует. Тем не менее, третья команда проверяет версию 4.8, которую я еще не установил, поскольку обновление Windows 10 May не появилось в моей системе. Тем не менее вы получаете представление о том, как команда PowerShell работает с таблицей значений DWORD.
Найти более старую версию .NET Framework
Вы можете узнать, какие старые версии .NET Framework установлены в вашей системе, используя реестр. Редактор реестра содержит все ответы.
- Нажмите Ctrl + R чтобы открыть Run, затем введите смерзаться,
- Когда откроется редактор реестра, найдите следующую запись:
HKEY_LOCAL_MACHINE ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ Microsoft NET Framework Setup NDP - Проверьте файл NDP в реестре для каждой версии .NET Framework.
Проверьте версию .NET Framework с помощью стороннего инструмента
Существует несколько инструментов, которые можно использовать для автоматического поиска версии .NET Framework в вашей системе. Тем не менее, они не обновляются часто, поэтому знание ручного метода также удобно.
1. Raymondcc .NET Detector
Raymondcc .NET Detector — один из самых быстрых и простых в использовании инструментов обнаружения. Вы загружаете папку, распаковываете ее и запускаете исполняемый файл. При запуске программы отображается список версий .NET Framework. Черные версии установлены в вашей системе, а серые — нет. Если щелкнуть неактивную версию .NET Framework, программа перейдет к установщику.
Скачать: Raymondcc .NET Detector для Windows (бесплатно)
Пароль архива raymondcc
2. ASoft .NET Version Detector
ASoft .NET Version Detector работает очень похоже на Raymondcc .NET Detector. Как только вы загрузите и распакуете программу, запустите исполняемый файл. Программа показывает список установленных на данный момент версий .NET Framework. Он также предоставляет ссылки для загрузки тех версий, которых у вас нет.
Скачать: ASoft .NET Version Detector для Windows (бесплатно)
Простые методы проверки версии .NET Framework
Теперь вы знаете несколько простых способов проверить версию .NET Framework.
Не всегда необходимо проверять версию .NET Framework. Многие программы проверяют версию перед установкой и сообщают, есть ли программа. Другие установят необходимую версию перед началом установки, что избавит вас от необходимости поиска правильной версии и хлопот загрузки.
Тем не менее, всегда удобно знать, как найти версию .NET Framework вручную. Хотите узнать больше о .NET Framework? Вот почему вам это нужно и как вы устанавливаете его в Windows 10
Microsoft .NET Framework: зачем он нужен и как его установить в Windows
Microsoft .NET Framework: зачем он нужен и как его установить в Windows
Вам нужно либо установить, либо обновить его. Но знаете ли вы, что такое .NET Framework? Мы покажем вам, зачем вам это нужно, и как вы можете получить последнюю версию.
Прочитайте больше
,
Узнайте больше о: обслуживание компьютера, устранение неполадок, Windows Update.
Если ваш компьютер замедляется при подключении к Интернету, попробуйте это
Since you said you want to know if its actually installed, I think the best way (short of running version specific code), is to check the reassuringly named «Install» registry key. 0x1 means yes:
C:>reg query "HKLMSOFTWAREMicrosoftNET Framework SetupNDPv3.5"| findstr Install
Install REG_DWORD 0x1
InstallPath REG_SZ c:WINNTMicrosoft.NETFrameworkv3.5
This also happens to be the «Microsoft Recommended» official method.
WMI is another possibility, but seems impractical (Slow? Takes 2 min on my C2D, SSD). Maybe it works better on your server:
C:>wmic product where "Name like 'Microsoft .Net%'" get Name, Version
Name Version
Microsoft .NET Compact Framework 1.0 SP3 Developer 1.0.4292
Microsoft .NET Framework 3.0 Service Pack 2 3.2.30729
Microsoft .NET Framework 3.5 SP1 3.5.30729
Microsoft .NET Compact Framework 2.0 2.0.5238
Microsoft .NET Framework 4 Client Profile 4.0.30319
Microsoft .NET Framework 4 Multi-Targeting Pack 4.0.30319
Microsoft .NET Framework 2.0 Service Pack 2 2.2.30729
Microsoft .NET Framework 1.1 1.1.4322
Microsoft .NET Framework 4 Extended 4.0.30319
C:>wmic product where "name like 'Microsoft .N%' and version='3.5.30729'" get name
Name
Microsoft .NET Framework 3.5 SP1
Other than these I think the only way to be 100% sure is to actually run a simple console app compiled targeting your framework version. Personally, I consider this unnecessary and trust the registry method just fine.
Finally, you could set up an intranet test site which is reachable from your server and sniffs the User Agent to determine .NET versions. But that’s not a batch file solution of course. Also see doc here.