Существует ли способ определить версию Платформы.NET из командной строки?

Для поиска и устранения неисправностей установки иногда я просто хочу быстрый ответ на то, какая версия.NET установлена.

Существует ли способ определить версию Платформы.NET в стандартной системе Windows кроме рассмотрения каталогов?

Примечание: Это не для машины разработки, просто out-of-the-box окна

Следующие работы, но я ищу более простой путь.

dir %WINDIR %\Microsoft. Net\Framework\v*

Directory of C:\Windows\Microsoft.Net\Framework

07/13/2009  07:20 PM    <DIR>          v1.0.3705
07/13/2009  07:20 PM    <DIR>          v1.1.4322
01/20/2010  01:16 PM    <DIR>          v2.0.50727
07/13/2009  09:37 PM    <DIR>          v3.0
01/20/2010  01:02 PM    <DIR>          v3.5
02/10/2010  03:20 AM    <DIR>          v4.0.21006

ОБНОВЛЕНИЕ: Не решение, но другой прохладный каталог отформатировало список

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

v4.0.21006
v3.5
v3.0
v2.0.50727
v1.1.4322
v1.0.3705
28
задан abatishchev 9 January 2014 в 22:23
поделиться

7 ответов

Основываясь на вашем обновлении, которое указывает на то, что вы хотите провести через это конечного пользователя, не разбирающегося в технике, я предлагаю обратиться к сайту Скотта Хансельмана http://www.smallestdotnet.com (используйте Internet Explorer), который использует строку агента пользователя, чтобы сказать вам, какой .NET Framework у вас установлен, и дает рекомендации по переходу на последнюю версию наиболее эффективным способом.

Старый ответ
С помощью PowerShell вы можете сделать это (хотя наличие PowerShell уже подразумевает как минимум .NET 2.0)

Get-ChildItem "$($Env:WinDir)\Microsoft.Net\Framework" -i mscorlib.dll -r |
    ForEach-Object { $_.VersionInfo.ProductVersion }

Я не знаю, есть ли сопоставимый способ получить информацию о версии в старом добром cmd.exe.

10
ответ дан 28 November 2019 в 03:34
поделиться

просто откройте командную строку VS2008 и введите clrver

9
ответ дан 28 November 2019 в 03:34
поделиться

РЕДАКТИРОВАТЬ : мой ответ не имеет отношения к вопросу OP (который был отредактирован после того, как я первоначально ответил).

Согласно MSDN вы также можете использовать реестр для проверки установленных версий.

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

0
ответ дан 28 November 2019 в 03:34
поделиться

Самый высокий номер версии из этого списка каталогов - это установленная версия.

Как видите, любая версия включает в себя все предыдущие версии, поэтому проверьте поддержку конкретной версии = проверьте эту конкретную директорию.

-2
ответ дан 28 November 2019 в 03:34
поделиться

На CodeProject опубликована статья, которая может делать именно это, плюс основанная на командной строке.

Надеюсь, это поможет.

0
ответ дан 28 November 2019 в 03:34
поделиться
reg query "HKLM\Software\Microsoft\NET Framework Setup\NDP" /s /v version | findstr /i version | sort /+26 /r

Верхняя запись - это последняя установленная версия фреймворка.

Примечание: Это не работает с v1.x фреймворком.

Обновление: Я пропустил комментарий о том, что вы ищете, что сказать отцу по телефону. Если это так, то команда выше, вероятно, не лучший подход для вас. Возможно, лучше просто попросить отца открыть проводник Windows и перевести его в папку .NET Framework, а затем сообщить вам цифры, которые там находятся.

22
ответ дан 28 November 2019 в 03:34
поделиться

Следующая программа определит, установлен ли .net framework 3.5 или нет... и если не установлен, то установит его. Просто запустите это в командной строке.

if exist "%WINDIR%\Microsoft.Net\Framework\v3.5" goto end start /wait .\Framework\dotnetfx.exe /q /norestart" :end 

Если вы хотите обнаружить другие версии, просто замените v3.5 на v2.0 или v1.0 в зависимости от ситуации. Далее, если .net не обнаружен, установка .net framework будет выполнена в тихом режиме, т.е. без пользовательского интерфейса или взаимодействия с пользователем.

0
ответ дан 28 November 2019 в 03:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: