Большинство современных приложений Windows требуют наличия установленного .NET Framework . Например, в Windows 11/10 и Windows Server 2022/2019 по умолчанию уже установлена версия NET Framework 4.8. Однако некоторые старые приложения требуют наличия установленного . NET Framework 3.5 , 2.0 или даже 1.0.

В этой статье мы рассмотрим, как установить .NET 3.5 в Windows 11/10 и Windows Server 2022/2019/2016.

Установка .NET Framework 3.5 в Windows 11 и 10

Проверьте, что .NET Framework 3.5 (включает в себя .NET 2.0 и 3.0) не установлен на вашем компьютере. Для этого, откройте консоль PowerShell с правами администратора и выполните команду:

Get-WindowsCapability -Online -Name NetFx3~~~~

Get-WindowsCapability NetFx3 не установлен в Windows 11

В нашем случае .NET 3.5 не установлен ( State=NotPresent ).

В Windows 10/11 вы можете установить .Net Framework из панели Turn Windows Features on or off :

  1. Выполните команду optionalfeatures.exe ;
  2. В списке компонентов выберите .NET Framework 3.5 (includes .NET 2.0 and 3.0) , нажмите ОК; Установка .Net Fframework 3.5 через панель управления Windows 11
  3. Если на вашем компьютере есть доступ в Интернет, в следующем окне выберите Let Windows Update download the files for you ;
  4. win10 онлайн установки .net 3.5
  5. Windows скачает и установить последнюю версию компонента .NET Framework 3.5 с серверов Microsoft Update. загрузка net framework из интернета
Также вы можете установить .NET Framework 3.5 из командной строки:

  • С помощью DISM: DISM /online /Enable-Feature /FeatureName:"NetFx3"
  • Из PowerShell: Enable-WindowsOptionalFeature -Online -FeatureName "NetFx3"

Если ваш компьютер не подключен к интернету или находится в изолированной сети, то при установке .NET 3.5 появится ошибка:

Windows couldn’t complete the requested changes._x000D_The changes couldn’t be completed. Please reboot your computer and try again._x000D_Error code: 0x8024402C

0x8024402C ошибка установк net 3.5 в windows

В этом случае вы можете вручную установить компоненты NET 3.5 с вашего установочного образа (диска) Windows. Для этого вам понадобится установочная USB флешка или файл с ISO образом вашей версии Windows ( как проверить версию Windows в ISO образе ):

  1. Подключите ваш носитель с ставочным образом Windows к компьютеру. В моем случае у меня есть файл Windows11-22h2.iso. Щелкните по файлы и выберите Mount, чтобы смонтировать образ в виртуальный DVD привод (или воспользуйтесь командой PowerShell: Mount-DiskImage -ImagePath "C:distrWindows11-22h2.iso" ); смонтировать iso файл в windows
  2. В моем случае виртуальному приводу с образом была назначена буква диска E: (мы будем использовать эту букву в следующих командах);
  3. Чтобы установить .Net 3.5 из файлов компонентов на установочном диске выполните команду:
    DISM /online /enable-feature /featurename:NetFX3 /All /Source:E:sourcessxs /LimitAccess
    Или (аналогичная PowerShell команда):
    Add-WindowsCapability -Online -Name NetFx3~~~~ -Source E:SourcesSxS

Add-WindowsCapability netfx3 установка из PowerShell

Чтобы проверить, что .NET Framework успешно установлен, выполните команду:

Get-WindowsCapability -Online -Name NetFx3~~~~

Name         : NetFX3~~~~_x000D_State        : Installed_x000D_DisplayName  : .NET Framework 3.5 (includes .NET 2.0 and 3.0)_x000D_Description  : .NET Framework 3.5 (includes .NET 2.0 and 3.0)_x000D_DownloadSize : 72822163_x000D_InstallSize  : 496836410

проверить что netfx3 установлен в Windows

Выведите список версий .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 framework в windows

[/alert]

Как установить .NET 3.5 в Windows Server 2022/2019/2016?

В Windows Server 2022,2019,2016 и 2012 R2 вы можете установить NET Framefork 3.5 несколькими способам:

  • ерез Server Manager (Add roles and features -> Features -> .NET Framework 3.5 Features -> .NET Framework 3.5 (includes .NET 2.0 and 3.0 );
  • С помощью DISM: DISM /Online /Enable-Feature /FeatureName:NetFx3 /All
  • С помощью PowerShell: Install-WindowsFeature NET-Framework-Core

При этом установочные файлы .NET 3.5 для вашей версии Windows Server будут загружены с серверов Windows Update. Чтобы сработал этот метод установки нужно убедиться:

  1. Ваш Windows Server должен иметь прямой доступ в Интернет . Настройки прокси-сервера и файервола не должны ограничивать доступ к серверам Windows Update.
  2. Хост не должен быть настроен на получения обновлений с локального WSUS сервера (проверьте настройки обновлений Windows в групповых политиках или напрямую в реестре);
    Проверьте значение параметра UseWUServer в реестре:
    Get-ItemProperty -Path "HKLM:SOFTWAREPoliciesMicrosoftWindowsWindowsUpdateAU" -Name "UseWUServer" | select -ExpandProperty UseWUServer Если значение параметра равно 1 , значить ваш хост будет пытаться получить обновления с локального WSUS сервера. В этом случае при установке .NET 3.5 появится ошибка 0x800F0954 . Измените значение параметра на 0 или удалите его, чтобы подключиться напрямую к серверам обновлений Windows Update.

Если ваш сервер имеет доступ в Интернет, но настроен на получение обновлений со WSUS, при устапновке NET Framework появится ошибка 0x800f081f .

Решение : установить .Net 3.5 онлайн с серверов Microsoft и игнорировать локальный WSUS:

  • Экспортируйте в reg файл текущие настройки Windows Update в ветке HKLMSoftwarePoliciesMicrosoftWindowsWindowsUpdate ( reg export HKLMSoftwarePoliciesMicrosoftWindowsWindowsUpdate c:WindowsUpdateRegFile.reg )
  • Удалите данную ветку ( Remove-Item -Path HKLM:SoftwarePoliciesMicrosoftWindowsWindowsUpdate -Recurse ) и перезапустите службу: net stop wuauserv & net start wuauserv
  • Запустите установку .Net из Интернета: DISM /Online /Enable-Feature /FeatureName:NetFx3 /All
  • После окончания установки верните настройки WU, импортировав reg файл ( Reg import c:WindowsUpdateRegFile.reg ) и еще раз перезапустите службу Windows Update

Если с вашего сервера нет прямого доступа в Интернет , то при попытке установить .NET 3.5 в Windows Server через консоль Server Manager появится ошибка 0x800F081F ( The source files could not be found ), 0x800F0950, 0 x8024402 c, 0x800F0906 или 0x800F0907 (в зависимости от версии Windows Server).

.net3.5 ошибка установки 0x800f081f The source files could not be found

Хотя .NET Framework 3.5 присутствует в списке компонентов Windows Server 2022/2019/2016/2012R2, на самом деле его бинарные файлы в хранилище компонентов Windows отсутствуют (концепция Features on Demand ). Это сделано, чтобы уменьшить размер образа операционной системы на диске. Вы можете проверить наличие.NET Framework 3.5 в локальном хранилище компонентов Windows Server с помощью команды:

Get-WindowsFeature *Framework*

windows server 2019 status компонента NET-Framework-Core в хранилище Removed

Как вы видите статус компонента NET-Framework-Core Removed .

Для установки NET-Framework-Core вам потребуется дистрибутив с вашей версией Windows Server в виде ISO файла, или в распакованном виде в сетевой папке. Смонтируйте ISO образ с дистрибутивом в отдельный виртуальный диск (например, диск D:).

Теперь вы можете установить .Net Framework 3.5 с помощью графической консоли Server Manager:

Установить компонент .Net 3.5 можно из графической консоли Server Manager. Для этого выберите компонент .Net Framework 3.5 Features, но, перед тем, как нажать кнопку Install , нажмите небольшую ссылку внизу мастера — Specify an alternative source path .

  1. Для этого выберите компонент .Net Framework5 Features. Перед тем, как нажать кнопку Install , нажмите на ссылку Specify an alternative source path внизу; Specify an alternative source path
  2. Укажите путь к хранилищу компонентов (SXS) дистрибутива Windows Server. Если вы смонтировали дистрибутив в виртуальный привод, это может быть путь D:sourcessxs . Также это может быть сетевая папка, куда вы предварительно скопировали дистрибутив (например, \server1distrws2022sourcessxs ). Нажмите ОК. D:sourcessxs

Гораздо проще установить компонент Net Framework 3.5 Features из командной строки или консоли PowerShell, запущенной с правами администратора. Просто выполните команду:

Dism.exe /online /enable-feature /featurename:NetFX3 /All /Source:D:sourcessxs /LimitAccess

Dism.exe /online /enable-feature /featurename:NetFX3 /All /Source:D:sourcessxs /LimitAccess

Где D: — диск с вашим дистрибутивом Windows Server.

Параметр LimitAccess запрещает DISM подключение к серверам обновлений для получения установочных файлов компонентов. Используются только файлы в указанном каталоге.

Если вы хотите установить компонент Windows Server с помощью PowerShell, воспользуйтесь командой Add-WindowsFeature :

Add-WindowsFeature NET-Framework-Core -Source d:sourcessxs

После завершения установки компонента, перезагрузка сервера не требуется.

Также вы можете вручную скопировать 2 cab файла microsoft-windows-netfx3... из каталога sourcessxs вашего дистрибутива. В этом случае для установки .Net 3.5 достаточно выоплнить команду:

dism /online /Add-Package /PackagePath:C:installnet35microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab.

Настройка параметров офлайн установка .Net 3.5 помощью GPO

С помощью групповой политики Specify settings for optional component installation and component repair (находится в разделе GPO Computer Configuration -> Administrative Templates -> System ) можно настроить особые параметры установки компонентов Windows из локального источника или Windows Update даже при использовании WSUS.

На отдельностоящем компьютере вы можете включить этот параметр политики с помощью редактора локальной GPO (gpedit.msc) . В среде Active Directory вы можете создать политику для всех компьютеров/серверов с помощью консоли GPMC .

Здесь можно указать, что при установки или восстановлении компонентов Windows необходимо всегда загружать файлы из Интернета с серверов Windows Update вместо локального WSUS (опция Download repair content and optional features directly from Windows Update instead of Windows Server Update Services — WSUS ).

Также можно указать путь к каталогу с компонентами Windows Server (или wim файлу), который нужно использовать при офлайн установке (указывается в параметр Alternate source file path ). Вы можете указать:

    • Путь к сетевой папке в UNC формате ( \serverdistrws2016sxs ) (здесь можно указать несколько UNC путей через точки с запятой: \srv1ws22sxs;\fs01ws22sxs;\fs3sxs
  • Также допустимо указывать WIM файл в качестве источника: WIM:\srv1distrws2016install.wim:2 (в этом случае 2 – это индекс образа вашей редакции Windows Server в WIM файле. Список доступных редакций в файле можно вывести так: DISM /Get-WimInfo /WimFile:"\serverdistrws2016install.wim" )

gpo: -Specify intranet Microsoft update service location

Для разных версий Windows Server нужно использовать разные источники с каталогом SXS. Если в вашей сети есть несколько версии Windows Server, нужно создать отдельные GPO с разными UNC путями к сетевой папке с SXS. Чтобы GPO применялась только к хостам с определенными версиями Windows Server, можно использовать WMI фильтры групповых политик .
EnglishRussianUkrainian