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

Большинство современных приложений 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.
The changes couldn’t be completed. Please reboot your computer and try again.
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:\distr\Windows11-22h2.iso" );смонтировать iso файл в windows
  2. В моем случае виртуальному приводу с образом была назначена буква диска E: (мы будем использовать эту букву в следующих командах);
  3. Чтобы установить .Net 3.5 из файлов компонентов на установочном диске выполните команду:
    DISM /online /enable-feature /featurename:NetFX3 /All /Source:E:\sources\sxs /LimitAccess
    Или (аналогичная PowerShell команда):
    Add-WindowsCapability -Online -Name NetFx3~~~~ -Source E:\Sources\SxS

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

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

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

Name         : NetFX3~~~~
State        : Installed
DisplayName  : .NET Framework 3.5 (includes .NET 2.0 and 3.0)
Description  : .NET Framework 3.5 (includes .NET 2.0 and 3.0)
DownloadSize : 72822163
InstallSize  : 496836410

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

Выведите список версий .NET Framework, которые установлены на вашем компьютере:

Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -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:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -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 в ветке HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate ( reg export HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate c:\WindowsUpdateRegFile.reg )
  • Удалите данную ветку ( Remove-Item -Path HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate -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, 0x8024402c, 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-CoreRemoved.

Для установки 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:\sources\sxs . Также это может быть сетевая папка, куда вы предварительно скопировали дистрибутив (например, \\server1\distr\ws2022\sources\sxs ). Нажмите ОК.D:\sources\sxs

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

Dism.exe /online /enable-feature /featurename:NetFX3 /All /Source:D:\sources\sxs /LimitAccess

Dism.exe /online /enable-feature /featurename:NetFX3 /All /Source:D:\sources\sxs /LimitAccess

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

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

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

Add-WindowsFeature NET-Framework-Core -Source d:\sources\sxs

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

 

 

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

dism /online /Add-Package /PackagePath:C:install\net35\microsoft-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 формате ( \\server\distr\ws2016\sxs ) (здесь можно указать несколько UNC путей через точки с запятой: \\srv1\ws22\sxs;\\fs01\ws22\sxs;\\fs3\sxs
  • Также допустимо указывать WIM файл в качестве источника: WIM:\\srv1\distr\ws2016\install.wim:2 (в этом случае 2 – это индекс образа вашей редакции Windows Server в WIM файле. Список доступных редакций в файле можно вывести так: DISM /Get-WimInfo /WimFile:"\\server\distr\ws2016\install.wim" )

gpo: -Specify intranet Microsoft update service location

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

Предыдущая статья Следующая статья


Комментариев: 43 Оставить комментарий

Оставить комментарий

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

Я не робот( Обязательно отметьте)