Где находится net framework в windows 7
Перейти к содержимому

Где находится net framework в windows 7

  • автор:

Microsoft .NET Framework 4.8 автономный установщик для Windows

Microsoft .NET Framework 4.8 — это высоко-совместимое обновление на месте для .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 и 4.7.2.

Автономный пакет можно использовать в ситуациях, когда установщик не может быть использован из-за отсутствия подключения к Интернету. Этот пакет больше, чем онлайн установщик, и не включает языковые пакеты. Рекомендуется использовать онлайн установщик вместо автономного установщика для оптимальной производительности и требований к пропускной способности.

При установке этого пакета на операционную систему устанавливаются следующие пакеты или обновления:

  • В Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1), обновление для .NET Framework 4.8 (KB4503548) отображается как установленный продукт в разделе Программы и компоненты панели управления.
  • В Windows Server 2012 обновление для Microsoft Windows (KB4486081) отображается в разделе Установленные обновления на панели управления. В Windows RT 8.1, Windows 8.1 и Windows Server 2012 R2 обновление для Microsoft Windows (KB4486105) отображается в разделе Установленные обновления на панели управления.
  • В Windows RT 8.1, Windows 8.1 и Windows Server 2012 R2 обновление для Microsoft Windows (KB4486105) отображается в разделе Установленные обновления на панели управления.
  • В Windows 10 Anniversary Update (версия 1607), Windows 10 Creators Update (версия 1703) и Windows Server 2016 Обновление для Microsoft Windows (KB4486129) отображается в разделе Установленные обновления на панели управления.
  • В Windows 10 Falls Creator’s Update версия 1709, Windows 10 Обновление от апреля 2018 года (Версия 1803), Windows 10 Обновление от октября 2018 года (версия 1809) и Windows Server 2019, оно указано как обновление для Microsoft Windows (KB4486153) под установленными обновлениями в панели управления.

Сведения о загрузке

На сайте загрузок .NET можно загрузить указанные ниже файлы:

Для Windows RT 8.1

Дополнительные сведения о загрузке файлов поддержки Майкрософт см . в разделе Как получить файлы поддержки Майкрософт из веб-служб.

Заявление о поиске вирусов: Корпорация Майкрософт проверила этот файл на отсутствие вирусов Майкрософт использует самую свежую версию антивирусного программного обеспечения, которая доступна на момент размещения файла. Файл хранится на защищенных серверах, что предотвращает его несанкционированное изменение.

Проблемы, которые устраняет это обновление

В этом обновлении исправлены следующие проблемы в .NET Framework 4.8.

  • Исправлена ошибка инициализации System.Web.Caching при использовании ASP.NET кэша на машинах без IIS.

Формы Windows:

  • Исправлена возможность выбора редактирования текста поля ComboBox с помощью мыши вниз+move.
  • Исправлена проблема с взаимодействием между управлением пользователем WPF и хостингом приложения WinForms при обработке ввода клавиатуры.
  • Исправлена проблема с объявлением экранным диктором/NVDA о расширении и свертывании ComboBox PropertyGrid.
  • Исправлена проблема с визуализацией «. » кнопки управления PropertyGrid в режиме HC, чтобы нарисовать фон кнопки и контрастные точки.
  • Исправлена утечка маркера во время создания приложения «Окно» в Приложениях WPF, которые проявляются для Per Monitor DPI V2 Awareness. Эта утечка может привести к посторонней GC. Сбор вызовов, которые могут повлиять на производительность в сценариях создания окон.
  • Исправлена регрессия, вызванная исправлением ошибки, включающая привязку с недвусмысленностью DataContext на пути связывания.

Дополнительная информация

Дополнительную информацию о .NET Framework 4.8 см. в статье Известные проблемы .NET Framework 4.8.

Эта версия .NET Framework работает параллельно с .NET Framework 3.5 SP1 и более ранними версиями, но она выполняет обновление на месте для .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 и 4.7.2.

Параметры командной строки для этого обновления

Дополнительные сведения о различных параметрах командной строки, поддерживаемых этим обновлением, см. в разделе «Параметры командной строки» в руководстве по развертыванию .NET Framework для разработчиков.

Требование перезагрузки

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

Относится к

Microsoft .NET Framework 4.8 (автономный установщик) поддерживается следующими операционными системами:

  • Windows 10 версии 1809
  • Windows 10 версии 1803
  • Windows 10 версии 1709
  • Windows 10 версии 1703
  • Windows 10 версии 1607
  • Windows 8.1
  • Windows 7 с пакетом обновления 1 (SP1)
  • Windows Server 2019
  • Windows Server версия 1803
  • Windows Server, версия 1809
  • Windows Server 2016
  • Windows Server 2012 R2.
  • Windows Server 2012;
  • Windows Server 2008 R2 с пакетом обновления 1 (SP1)

Какие версии .NET Framework необходимо устанавливать в Windows 7 и где их скачать?

Версия 1.0 практически не используется, в состав ОС не входит.

Версия 1.1 используется редко, в состав ОС не входит. Устанавливать только при необходимости (при запуске приложения возникает ошибка, и в системных требованиях этой программы значится .NET Framework 1.1).

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

Установка .NET Framework 1.1 и SP1 в ручном режиме

  1. Создаём папку DotNet в корне диска «С» (C:\DotNet).
  2. Скачиваем .NET Framework 1.1 (dotnetfx.exe) и SP1 (NDP1.1sp1-KB867460-X86.exe), сохраняем их в созданную папку.
  3. Запускаем командную строку (cmd.exe) с правами администратора.
  4. Последовательно вводим следующие команды и подтверждаем выполнение каждой из них клавишей «Enter«:
cd /d C:\DotNet
dotnetfx.exe /c:"msiexec.exe /a netfx.msi targetdir=C:\DotNet"

Отвечаем положительно на вопросы в диалоговых окнах и продолжаем ввод команд:

NDP1.1sp1-KB867460-X86.exe /xp:C:\DotNet\netfxsp.msp
msiexec.exe /a c:\DotNet\netfx.msi /p c:\DotNet\netfxsp.msp
netfx.msi

.NET Framework 2.0 — 3.5.1

Версия 3.5.1 включена в Windows 7 (Пуск —> Панель управления —> Программы и компоненты —> Включение и отключение компонентов Windows).

*

Следующие компоненты считаются частью .NET Framework 3.5 с пакетом обновления 1 (SP1):

  • Платформа .NET Framework 2.0 с SP1 и SP2.
  • Платформа .NET Framework 3.0 с SP1 и SP2.
  • Платформа .NET Framework 3.5 с SP1.

.NET Framework 4.0

Версия 4 (клиентская часть) доступна для загрузки через Центр обновления Windows (Пуск —> Панель управления —> Центр обновления Windows).

Профиль Microsoft .NET Framework 4 Client Profile предоставляет ограниченный набор функций платформы .NET Framework 4. Он разработан для выполнения клиентских приложений и обеспечения быстрого развёртывания технологий Windows Presentation Foundation (WPF) и Windows Forms. Распространяется в виде рекомендуемого обновления KB982670.

Полная версия .NET Framework 4.0 предназначена в первую очередь для разработчиков ПО.

Проверка наличия установленных версий

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

*

Или в следующем разделе системного реестра:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP

*

Автор: Morpheus • Иcточник: www.oszone.net • Опубликована: 15.09.2010
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER

  • Упрощаем запуск приложений в Windows от имени администратора без отключения UAC
  • Сброс пароля администратора Windows 7, Windows 8, Windows 10, Windows 11 без использования дополнительных программ

Теги: Windows 7, .NET Framework, Morpheus.

Оценить статью:

Комментарии посетителей
17.09.2010/16:18 Admiral

Morpheus замечательная заметка.
Ещё про VC++ Runtime Libraries не плохо бы добавить (изменив название статьи) или отдельной.
http://forum.oszone.net/thread-183811.html
По поводу FW 1.X хотелось бы подчеркнуть, что особого смысла ставить и в других версиях Виндовс, нет, если там уже установлены 2-3.5SP1

Aaron Stebner
Most applications that were created for the .NET Framework 1.0 or 1.1 will automatically use the .NET Framework 2.0 instead if it is installed on the system. In most cases, that means you do not need to keep the .NET Framework 1.0 or 1.1 installed on your system if you already have the .NET Framework 2.0 installed.
>>

В этой связи особое положение занимает FW 4.0 в ХР: ведь вполне возможно что с помощью манифест файлов, софт 2.0 -3.5 SP1 удастца заставить работать без установки последних. Хотя это очень мало вероятно (иначе представители MS об этом сообщили, как в своё время поступили с 1.х).
Вижу произведена установка клиентского профиля FW4.0. Присутствует ли в папке %SYSTEMROOT%\Microsoft.NET\Framework\v4.0.30319 такие екзешники csc.exe, ilasm.exe, jsc.exe, MSBuild.exe, ngen.exe, vbc.exe?
Особо интересует первый и последний.
Сам ставил не клиентский профиль 4.0, а полный, и в ХР.

17.09.2010/16:56 Morpheus

Admiral,
csc.exe — есть
ilasm.exe — нет
jsc.exe — есть
MSBuild.exe — нет
ngen.exe — есть
vbc.exe — есть
Про добавить VC++ Runtime Libraries я думал, но дальше дело не пошло почему-то 🙂 Видимо потому, что вопросов на форуме про FW гора, а про VC++ спрашивают редко. Позже добавлю.

17.09.2010/17:09 Admiral

Morpheus БОЛЬШОЕ спасибо за ответ.
Самые важные файлы есть.
Та да, софта значит использующего его выпускается и/или используется мало.
Вот ссылки на последние
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=a7b7a05e-6de6-4d3a-a423-37bf0912db84 Microsoft Visual C++ 2010 Redistributable Package (x86)
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=bd512d9e-43c8-4655-81bf-9350143d5867 Microsoft Visual C++ 2010 Redistributable Package (x64)
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=1a2df53a-d8f4-4bfe-be35-152c5d3d0f82 Microsoft Visual C++ 2010 Redistributable Package (ia64)

17.09.2010/18:27 Morpheus

Admiral, спасибо!
Очень хочу увидеть компьютер на ia64, с запущенной там Windows 7 и с программой на VC++ :))

12.04.2015/23:28 AinuraSagi

Morpheus, здравствуйте. Следовало вашей инструкции по установке вручную, но все равно выходит ошибка «Не удалось получить доступ к службе установщика Windows Installer. Возможно не установлен Windows Installer. Затем после ввода строки «NDP1.1sp1-KB867460-X86.exe /xp:C:\DotNet\netfxsp.msp» пишет не является внутренней или внешней командой и после «msiexec.exe /a c:\DotNet\netfx.msi /p c:\DotNet\netfxsp.msp» выходит ошибка «Невозможно открыть этот установочный пакет.Проверьте, что пакет существует и к нему есть доступ, или обратитесь к поставщику программы» Обратитесь за помощью в службу поддержки» . Все файлы я скачала, и сохранила в папку DotNet. Подскажите плиз что еще можно сделать для установки .NetFramework

12.07.2015/17:17 Kuprijan

Здравствуйте, нужно знать, где на диске с WinXP находится установочник NET Framework. Интересует потому, что в центре загрузок MS вы хрен скачаете NET 1.0 RUS — ДА РУССКИЙ NET 1.0 СУЩЕСТВУЕТ — не даром ведь на всё том же сайте есть русский SP3 для него, но самого пакета нет. НО НА РУССКОМ ДИСКЕ С SP1 ОН ЕСТЬ — только вот я не знаю где он расположен.

Как удалить net framework, правильно и без остатка

Как удалить net framework

Настройка серверов windows и linux

Добрый день уважаемые читатели или гости блога Pyatilistnik.org. Сегодня я хочу рассмотреть вот такой вопрос, как удалить net framework, правильно и без мусора, коего остается после этой процедуры. Когда вам может потребоваться данный опыт, все очень просто у вас может быть старая программа или игра, которая в своей работе использует компоненты net framework 3,5 или 4.0, а вот уже при установке более новых версий либо полная неработоспособность, либо же постоянные глюки. Давайте покажу правильную последовательность действий. Показывать я буду как на серверных операционных системах, по типу Windows Server 2012 R2, так и на десктопных, Windows 7, 8.1, 10.

Можно ли удалять net framework

Конечно да, кроме конечно той версии, которая идет в операционной системе Windows по умолчанию, так например, в Windows 7, это версия 3,5, для восьмерки это уже 4 версия и так далее. Поэтому при необходимости, удалять не то, что можно, но и нужно, особенно если от этого зависит работа ПО или сервиса.

Как полностью удалить net framework с компьютера

Отключение net framework 3.5

Win и R и далее ввести control panel

как удалить net framework 3.5

Теперь для удобства сделаем крупное отображение значков и выберем пункт «Программы и компоненты»

удалить net framework 3.5 windows 7

В левом углу, вы увидите пункт «Включить или отключить компоненты Windows»

отключение компонентов Windows

Снимаем галку на против «.NET Framework 3.5 (Включает .NET 2.0 и 3.0)». У вас начнется процесс его «удаления», он останется в системе как отключенный компонент. Возможно вас попросят о перезагрузке.

отключаем фремверк 3,5

Удаление пакета Framework версий 4.0-4.5

В отличии от 4,7 данный пакет легко находится среди списка всех установленных программ, вот вам пример Windows 7, где в списке «Удаление или изменение программ» вы легко сможете найти его и деинсталлировать с помощью соответствующих кнопок.

удалить net framework 4

У вас откроется дополнительное окно с мастером по обслуживанию, выбираем пункт «Удалить .NET Framework 4.5.1 с этого компьютера»

delete-net-framework-3.5

С помощью утилиты NET Framework Cleanup Tool

Если нужно красиво и быстро удалить net framework, то можно воспользоваться бесплатной утилитой NET Framework Cleanup Tool от компании Microsoft.

Скачать можно с у меня, скопировав ссылку и вставив в браузере (https://cloud.mail.ru/public/2diW/487rAGLy2)

Запускаете, я буду удалять net framework в Windows 8.1. На первом шаге, вам нужно согласиться с запуском утилиты.

запуск net framework cleanup

Соглашаемся с лицензионным соглашением, нажимая «Yes».

удаляем фремверк net framework cleanup

Все у вас в итоге появится скромное окно с выбором удаляемой версии .NET Framework, после чего нажимаем «Cleanup Now»

Выбор удаляемой версии

Чем хорошо, утилита, так же чистит и папки и ключи реестра.

Тихий режим работы

.NET Framework Cleanup Tool поддерживает работу в «тихом» режиме, при котором пользователю не выводится никаких сообщений. Для этого необходимо запустить программу со следующими параметрами.

cleanup_tool.exe /q:a /c:"cleanup.exe /p "

Например для удаления .NET Framework 1.1 нужно выполнить следующий код.

cleanup_tool.exe /q:a /c:"cleanup.exe /p .NET Framework 1.1"

Однако даже в тихом режиме не удастся удалить версии .Net, являющиеся компонентом операционной системы.

Автоматический режим работы

.NET Framework Cleanup Tool может работать в автоматическом режиме, в котором пользователю выводится окно с прогресс-баром удаления. Никакого взаимодействия с пользователем при этом не требуется. Для работы в автоматическом режиме программу нужно выполнить со следующими параметрами.

cleanup_tool.exe /q:a /c:"cleanup.exe /p /u"

То есть для удаления того же .NET Framework 1.1 строка будет выглядеть так.

cleanup_tool.exe /q:a /c:"cleanup.exe /p .NET Framework 1.1 /u"
Коды возврата
  • 0 — Удаление завершено успешно
  • 3010 — Удаление прошло успешно и требуется перезагрузка для завершения процесса
  • 1 — Программе требуются права администратора
  • 2 — Файл cleanup.ini не был найден в папке вместе с cleanup.exe
  • 3 — Невозможно удалить данную версию, поскольку она является компонентом системы
  • 4 — Указанного наименования версии нет в файле cleanup.ini
  • 100 — Удаление было запущено, но потерпело неудачу
  • 1602 — Удаление было отменено.

Удаление NET Framework в Windows Server

удалить компонент в Windows Server 2012 r2

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

Популярные Похожие записи:
  • Как удалить Internet Explorer (IE) из Windows Server и Windows 10Как удалить Internet Explorer (IE) из Windows Server и Windows 10
  • Автозагрузка в windows server 2012-2016
  • Directum ошибка поддержки безопасных каналов
  • Как скрыть программу в списке установленных, за минуту
  • Как скачать Windows 11, за минутуКак скачать Windows 11, за минуту
  • Не идет печать на принтер, как исправитьНе идет печать на принтер, как исправить

Сен 26, 2023 19:40 Автор — Сёмин Иван

7 Responses to Как удалить net framework, правильно и без остатка

Огромное спасибо!
Александр Петрович :

Спасибо за статью.
И за возможность скачать у Вас .NET Framework Cleanup Tool. Ни у кого и нигде не видел предупреждений — и «попал»: на стареньком ноуте (Win XP) не ставились некоторые проги для восстановления флешек. Пришлось думать об удалении и переустановке .NET Framework 4.0.Но эта версия отображалась для удаления только в Revo Uninstaller. Однако, удаление там НИЧЕГО НЕ ИЗМЕНИЛО: папка с версией 4.0 так и осталась по пути C:\WINDOWS\Microsoft.NET\Framework, хотя теперь (для удаления) 4.0 не отображалась вообще нигде! Помогла только ваша статья и .NET Framework Cleanup Tool

Добрый день.
Почему при удалении .NET Framework 4.5 с сервера 2012R2,
автоматом система хочет удалить Windows PowerShell 4.0, графические средства управления и инфраструктура, Графическая оболочка сервера, Службы удаленных рабочих столов ?

Иван Семин :

Просто данный компонент может быть их частью, но вообще странное. Я бы на вашем месте при наличии возможности сделать снапшот посмотрел бы, что было

Есть топ приложение сразу говорю это не реклама. Она может снисти приложение если даже оно не видное не показываемое в списках. удаляет папки, и чистит за собой реестары короче вот название IObit Uninstaller .Net я на изи удалил с помощью её))) Не то что там ваши топ способы

Пытаюсь удалить Net Framrwork только ради того, чтобы установить на свою виндовс 10 версию4.0. только ради видеоредакторов, например Sony Vegas Pro 13. Нигде не могу найти способ решения проблемы, советуют лишь менять Врэймворк на более старую версию. Запускаю сони вегас, он вроде как начинает грузиться, но когда пишет Инициализация проводника, просто отключается. Все способы перепробовал уже.
Сделал всё так, как вы описали. Но при установке версии4.0 пишет, что на компе уже стоит более новая версия. Моя проблема не устранена. Подскажите что к чему

Иван Семин :
Возможно оно у вас есть в виде KB обновления

Добавить комментарий

Поиск по сайту

Подписка на youtube канал

Выберите рубрику

Active directory, GPO, CA Android Apple ASUS, Sony VAIO CentOS Cisco, Mikrotik Debian, FreeBSD DNS Exchange, Power Shell HP/3Com Hyper-V IBM IIS и FTP, web и seo Juniper Lenovo, intel, EMC, Dell Microsoft Office Microsoft SQL server, Oracle Microsoft System Center NetApp Network, Телефония News Raid, LSI, Adaptec Supermicro Ubuntu Utilities Veeam Backup & Replication, Windows Server Backup Vmware, VirtualBox Windows 7 Windows 8/8.1 Windows 10, Windows 11 Windows 2008/2008 R2 Windows 2012/2012 R2 Windows Server 2016, Windows Server 2019, Windows Server 2022 WordPress, 1C Битрикс Безопасность, Kali СХД Сертификация перед сном

Подписка не Telegram

Подписка на телеграм канал pyatilistnikorg

Последние записи

  • Get-ADGroup: Управление группами Active Directory
  • Get-ADUser и примеры использования
  • Ошибка: There is a problem loading the Widget resources
  • Как запустить скрипт PowerShell на удаленном компьютере через SCCM
  • Служба 1С отображается абракадаброй

Практическое руководство. Определение установленных версий платформы .NET Framework

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

Эта статья относится к .NET Framework. Чтобы определить, какие пакеты SDK и среды выполнения .NET Core и .NET 5+ установлены, см. раздел Как проверить, что .NET уже установлен.

Платформа .NET Framework состоит из двух основных компонентов, версии которым присваиваются отдельно:

  • набор сборок, которые являются коллекциями типов и ресурсов, обеспечивающих функции приложений (.NET Framework и сборкам назначается один номер версии); Например, версии .NET Framework включают в себя 4.5, 4.6.1 и 4.7.2.
  • среда CLR, которая выполняет код приложения и управляет им. Одна версия среды CLR обычно поддерживает несколько версий .NET Framework. Например, CLR версии 4.0.30319.xxxxx, где xxxxx меньше 42000, поддерживает .NET Framework версий с 4 по 4.5.2. Версия CLR не менее 4.0.30319.42000 поддерживает версии .NET Framework начиная с .NET Framework 4.6.

Средства, поддерживаемые сообществом, помогают определить, какие версии .NET Framework установлены:

  • https://github.com/jmalarcon/DotNetVersions Программа командной строки .NET Framework 2.0.
  • https://github.com/EliteLoser/DotNetVersionLister Модуль PowerShell 2.0.

Сведения об обнаружении установленных обновлений для каждой версии платформа .NET Framework см. в разделе «Практическое руководство. Определение установленных обновлений платформа .NET Framework».

Определение реализации и версии .NET, в которой работает приложение

Для запроса реализации и версии .NET, в которой работает ваше приложение, можно использовать свойство RuntimeInformation.FrameworkDescription. Если приложение работает в .NET Framework, выходные данные будут выглядеть примерно так:

.NET Framework 4.8.4250.0 

Если же приложение работает в .NET Core или .NET 5+, выходные данные будут выглядеть следующим образом:

.NET Core 3.1.9 .NET 5.0.0 

Обнаружение .NET Framework 4.5 и более поздних версий

Версия платформа .NET Framework (4.5 и более поздних версий) установлена на компьютере в реестре по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full. Если отсутствует подраздел Full, то .NET Framework 4.5 или более поздней версии не установлен.

Подраздел NET Framework Setup в пути реестра не начинается с точки.

Значение Release REG_DWORD в реестре представляет установленную версию .NET Framework.

Версия платформы .NET Framework Значение Release
.NET Framework 4.5 Все операционные системы Windows: 378389
.NET Framework 4.5.1 В Windows 8.1 и Windows Server 2012 R2: 378675
Во всех других операционных системах Windows: 378758
.NET Framework 4.5.2 Все операционные системы Windows: 379893
.NET Framework 4.6 В Windows 10: 393295
Во всех других операционных системах Windows: 393297
.NET Framework 4.6.1 В системах обновления Windows 10 ноября: 394254
Во всех других операционных системах Windows (включая Windows 10): 394271
.NET Framework 4.6.2 В юбилейном обновлении Windows 10 и Windows Server 2016: 394802
Во всех других операционных системах Windows (включая другие операционные системы Windows 10): 394806
.NET Framework 4.7 В Windows 10 Creators Update: 460798
Во всех других операционных системах Windows (включая другие операционные системы Windows 10): 460805
.NET Framework 4.7.1 В Windows 10 Fall Creators Update и Windows Server версии 1709: 461308
Во всех других операционных системах Windows (включая другие операционные системы Windows 10): 461310
.NET Framework 4.7.2. Обновление Windows 10 апреля 2018 г. и Windows Server версии 1803: 461808
Во всех операционных системах Windows, отличных от Windows 10 апреля 2018 г. с обновлением и Windows Server версии 1803: 461814
.NET Framework 4.8 В обновление Windows 10 за май 2019 г. и Windows 10 ноября 2019 г. с обновлением: 528040
Обновление Windows 10 мая 2020 г., обновление за октябрь 2020 г., обновление за май 2021 г., обновление за ноябрь 2021 г. и обновление 2022 г.: 528372
В Windows 11 и Windows Server 2022: 528449
Во всех других операционных системах Windows (включая другие операционные системы Windows 10): 528049
платформа .NET Framework 4.8.1 Обновление Windows 11 2022 и Windows 11 2023: 533320
Все остальные операционные системы Windows: 533325

Минимальная версия

Чтобы определить, присутствует ли минимальная версия .NET Framework, проверьте значение Release REG_DWORD, которое больше или равно соответствующему значению, указанному в следующей таблице. Например, если приложение работает в .NET Framework 4.8 или более поздней версии, проверьте, является ли значение REG_DWORD Releaseбольшим или равным 528040.

Версия платформы .NET Framework Минимальное значение
.NET Framework 4.5 378389
.NET Framework 4.5.1 378675
.NET Framework 4.5.2 379893
.NET Framework 4.6 393295
.NET Framework 4.6.1 394254
.NET Framework 4.6.2 394802
.NET Framework 4.7 460798
.NET Framework 4.7.1 461308
.NET Framework 4.7.2. 461808
.NET Framework 4.8 528040
платформа .NET Framework 4.8.1 533320

Использование редактора реестра

Registry entry for .NET Framework 4.5

  1. В меню Пуск выберите Выполнить, введите regedit и нажмите кнопку ОК. (Для запуска программы regedit необходимы учетные данные администратора.)
  2. В редакторе реестра откройте следующий подраздел: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full. Если подраздел Full отсутствует, платформа .NET Framework 4.5 или более поздней версии не установлена.
  3. Проверьте значение REG_DWORD с именем Release. Если оно имеется, платформа .NET Framework 4.5 или более поздней версии установлена. Это значение соответствует определенной версии .NET Framework. Например, на приведенном ниже рисунке значение параметра Release равно 528040, что является разделом выпуска для .NET Framework 4.8.

Использование PowerShell для проверки минимальной версии

Используйте команды PowerShell для проверки значения параметра Release в подразделе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full.

В приведенных ниже примерах значение Release проверяется с целью определить, установлена ли версия 4.6.2 или более поздняя версия .NET Framework. Код возвращает значение True , если одна из таких версий установлена, и False в противном случае.

(Get-ItemPropertyValue -LiteralPath 'HKLM:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release) -ge 394802 

Отправка запросов в реестр с помощью кода

  1. Используйте методы RegistryKey.OpenBaseKey и RegistryKey.OpenSubKey для доступа к подразделу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full в реестре Windows.

Важно! Если вы используете 32-разрядное приложение в 64-разрядной версии Windows, пути реестра будут отличаться от указанных ранее. 64-разрядный реестр доступен в подразделе HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ . Например, подраздел реестра для платформа .NET Framework 4.5 имеет значение HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v4\Full.

В следующем примере проверка значение записи выпуска в реестре для поиска версий платформа .NET Framework 4.5-4.8.1, установленных.

Добавьте директиву using Microsoft.Win32 или Imports Microsoft.Win32 в начало файла кода, если вы еще этого не сделали.

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: "); > 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 >= 533320) return "4.8.1 or later"; if (releaseKey >= 528040) return "4.8"; if (releaseKey >= 461808) return "4.7.2"; 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"; > 
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 Then Console.WriteLine($".NET Framework Version: ") Else Console.WriteLine(".NET Framework Version 4.5 or later is not detected.") End If End Using End Sub ' Checking the version using >= enables forward compatibility. Private Function CheckFor45PlusVersion(releaseKey As Integer) As String If releaseKey >= 533320 Then Return "4.8.1 or later" ElseIf releaseKey >= 528040 Then Return "4.8" ElseIf releaseKey >= 461808 Then Return "4.7.2" ElseIf releaseKey >= 461308 Then Return "4.7.1" ElseIf releaseKey >= 460798 Then Return "4.7" ElseIf releaseKey >= 394802 Then Return "4.6.2" ElseIf releaseKey >= 394254 Then Return "4.6.1" ElseIf releaseKey >= 393295 Then Return "4.6" ElseIf releaseKey >= 379893 Then Return "4.5.2" ElseIf releaseKey >= 378675 Then Return "4.5.1" ElseIf 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 

Этот пример выводит данные, подобные следующим:

.NET Framework Version: 4.6.1 

Запрос реестра с помощью кода PowerShell

В следующем примере PowerShell используется для проверка значение записи выпуска в реестре для поиска версий платформа .NET Framework 4.5-4.8.1, установленных:

$release = Get-ItemPropertyValue -LiteralPath 'HKLM:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release switch ($release) < < $_ -ge 533320 > < $version = '4.8.1 or later'; break > < $_ -ge 528040 > < $version = '4.8'; break > < $_ -ge 461808 > < $version = '4.7.2'; break > < $_ -ge 461308 > < $version = '4.7.1'; break > < $_ -ge 460798 > < $version = '4.7'; break > < $_ -ge 394802 > < $version = '4.6.2'; break > < $_ -ge 394254 > < $version = '4.6.1'; break > < $_ -ge 393295 > < $version = '4.6'; break > < $_ -ge 379893 > < $version = '4.5.2'; break > < $_ -ge 378675 > < $version = '4.5.1'; break > < $_ -ge 378389 > < $version = '4.5'; break >default < $version = $null; break >> if ($version) < Write-Host -Object ".NET Framework Version: $version" >else

В этом примере применяются рекомендации для проверки версии:

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

Обнаружение .NET Framework с 1.0 по 4.0

Каждая версия платформа .NET Framework от 1.1 до 4.0 указана как подраздел в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP. В следующей таблице перечислены пути к каждой версии .NET Framework. Для большинства версий существует значение REG_DWORD Install, равное 1 , чтобы указать, что эта версия установлена. В этих подразделах также имеется значение REG_SZ Version, содержащее строку версии.

Подраздел NET Framework Setup в пути реестра не начинается с точки.

Версия платформы Подраздел реестра Значение
1.0 HKLM\Software\Microsoft\. NETFramework\Policy\v1.0\3705 REG_SZ Install равно 1
1,1 HKLM\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322 REG_DWORD Install равно 1
2.0 HKLM\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 REG_DWORD Install равно 1
3.0 HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.0\Setup Значение REG_DWORD InstallSuccess равно 1
3.5 HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.5 REG_DWORD Install равно 1
Клиентский профиль 4.0 HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Client REG_DWORD Install равно 1
Полный профиль 4.0 HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full REG_DWORD Install равно 1

Если вы используете 32-разрядное приложение в 64-разрядной версии Windows, пути реестра будут отличаться от указанных ранее. 64-разрядный реестр доступен в подразделе HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ . Например, подраздел реестра для платформа .NET Framework 3.5 — HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.5.

Обратите внимание, что путь реестра к подразделу .NET Framework 1.0 отличается от остальных.

Использование редактора реестра (более ранние версии платформы)

The registry entry for .NET Framework 3.5.

  1. В меню Пуск выберите Выполнить, введите regedit и нажмите кнопку ОК. Для запуска программы regedit необходимы учетные данные администратора.
  2. Откройте подраздел, соответствующий версии, которую необходимо проверить. Используйте таблицу в разделе Обнаружение .NET Framework с 1.0 по 4.0. На приведенном ниже рисунке показан подраздел для версии .NET Framework 3.5 вместе со значением Version.

Запрос реестра с помощью кода (более ранние версии платформы)

Microsoft.Win32.RegistryKey Используйте класс для доступа к подразделу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP в реестре Windows.

Если вы используете 32-разрядное приложение в 64-разрядной версии Windows, пути реестра будут отличаться от указанных ранее. 64-разрядный реестр доступен в подразделе HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ . Например, подраздел реестра для платформа .NET Framework 3.5 — HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.5.

В следующем примере ищутся установленные версии .NET Framework 1–4:

// Open 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. var install = versionKey.GetValue("Install", "").ToString(); if (string.IsNullOrEmpty(install)) < // No install info; it must be in a child subkey. Console.WriteLine($""); > else if (install == "1") < // Install = 1 means the version is installed. if (!string.IsNullOrEmpty(sp)) < Console.WriteLine($" SP"); > else < Console.WriteLine($""); > > if (!string.IsNullOrEmpty(name)) < continue; >// else print out info from subkeys. // Iterate through the subkeys of the version subkey. 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($" "); > else if (install == "1") < if (!string.IsNullOrEmpty(sp)) < Console.WriteLine($"  SP"); > else < Console.WriteLine($" "); > > > > > > 
' 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($" ") ElseIf install = "1" Then If Not String.IsNullOrEmpty(sp) Then Console.WriteLine($"  SP") Else Console.WriteLine($" ") 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($" ") ElseIf install = "1" Then If Not String.IsNullOrEmpty(sp) Then Console.WriteLine($"  SP") Else Console.WriteLine($" ") End If End If Next End If Next End Using 

В этом примере отобразятся выходные данные, аналогичные следующим:

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 

Запрос реестра с помощью PowerShell (более ранних версий платформы)

В следующем примере PowerShell используется для проверка значения записи выпуска в реестре для поиска версий платформа .NET Framework 1-4, установленных:

Get-ChildItem -Path 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' | Where-Object < ($_.PSChildName -ne "v4") -and ($_.PSChildName -like 'v*') >| ForEach-Object < $name = $_.Version $sp = $_.SP $install = $_.Install if (-not $install) < Write-Host -Object "$($_.PSChildName) $($name)" >elseif ($install -eq '1') < if (-not $sp) < Write-Host -Object "$($_.PSChildName) $($name)" >else < Write-Host -Object "$($_.PSChildName) $($name) SP$($sp)" >> if (-not $name) < $parentName = $_.PSChildName Get-ChildItem -LiteralPath $_.PSPath | Where-Object < if ($_.Property -contains 'Version') < $name = Get-ItemPropertyValue -Path $_.PSPath -Name Version >if ($name -and ($_.Property -contains 'SP')) < $sp = Get-ItemPropertyValue -Path $_.PSPath -Name SP >if ($_.Property -contains 'Install') < $install = Get-ItemPropertyValue -Path $_.PSPath -Name Install >if (-not $install) < Write-Host -Object " $($parentName) $($name)" >elseif ($install -eq '1') < if (-not $sp) < Write-Host -Object " $($_.PSChildName) $($name)" >else < Write-Host -Object " $($_.PSChildName) $($name) SP$($sp)" >> > > > 

Поиск версий CLR

.NET Framework CLR, установленный с .NET Framework, имеет отдельную версию. Есть два способа определить версию среды выполнения .NET Framework CLR:

    Инструмент Clrver.exe Для определения версий среды CLR, установленных на компьютере, можно использовать средство CLR Version (Clrver.exe). Откройте Командную строку разработчика или PowerShell для разработчиков в Visual Studio и введите clrver . Образец вывода:

Versions installed on the machine: v2.0.50727 v4.0.30319 

Важно! Для .NET Framework 4.5 и более поздних версий не следует использовать свойство Environment.Version для определения версии среды CLR. Вместо этого выполните запрос к реестру, как описано в разделе Обнаружение .NET Framework 4.5 и более поздних версий.

  1. Выполните запрос к свойству Environment.Version, чтобы получить объект Version. Возвращенный объект System.Version указывает версию среды выполнения, в которой в настоящее время выполняется код. Он не содержит версий сборок или других версий среды выполнения, которые установлены на компьютере. Для платформы .NET Framework версий 4, 4.5, 4.5.1 и 4.5.2 возвращаемый объект Version имеет строковое представление 4.0.30319.xxxxx, где xxxxx меньше 42000. Для .NET Framework 4.6 и более поздних версий оно имеет форму 4.0.30319.42000.
  2. Получив объект Version, выполните к нему запрос:
    • Чтобы получить идентификатор основного выпуска (например, 4 в случае версии 4.0), используйте свойство Version.Major.
    • Чтобы получить идентификатор дополнительной версии (например, 0 в случае версии 4.0), используйте свойство Version.Minor.
    • Чтобы получить всю строку версии (например, 4.0.30319.18010), используйте метод Version.ToString. Он возвращает одно значение, соответствующее версии среды выполнения, в которой выполняется код. Он не возвращает версий сборок или других версий среды выполнения, которые установлены на компьютере.

В следующем примере свойство Environment.Version используется для получения сведений о версии среды CLR:

Console.WriteLine($"Version: "); 
Console.WriteLine($"Version: ") 

В этом примере отобразятся выходные данные, аналогичные следующим:

Version: 4.0.30319.18010 

См. также

  • Практическое руководство. Определение установленных обновлений платформа .NET Framework
  • Устранение неполадок. Определение версий и пакетов обновления платформа .NET Framework
  • Установка .NET Framework для разработчиков
  • Версии и зависимости платформы .NET Framework

Совместная работа с нами на GitHub

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *