Установка .Net Framework 3.5 на Windows 10


Собственно речь об установке .Net Framework 3.5 на корпоративные компьютеры Windows 10 с помощью SCCM.

Изначально .Net Framework 3.5 на Windows 10 отключен, а приложений его использующих ещё полно, и время от времени пользователям нужно установить этот пакет. Желательно удаленно и желательно в фоновом режиме.

Для этого потребуется ISO файл с Windows 10 нужной версии/редакции.

При тестировании выяснилась засада. Если групповыми политиками настроен WSUS, то большинство команд установки компонент будут делать запрос на WSUS, и результате получаем ошибку установки. В большинстве случаев рекомендуют временно отключить WSUS в реестре.

Оказывается не всё так плохо. Есть команда которая позволяет установить нужный компонент в фоне без обращений куда бы то ни было.

Там образом, берем диск ISO, находим файл microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab с нужным компонентом, копируем в папку, для которой создаем Application с командой:

dism /online /enable-feature /featurename:NetFX3 /all /Source:.\ /LimitAccess

Параметры All и LimitAccess отключают проверки и попытки обращения в Интернет.

Вместо параметра Enable-Feature можно использовать параметер Add-Package, особенно если требуется импортировать пакет в образ для разливки системы.

Лог установки C:\Windows\Logs\DISM\dism.log

Полезные ссылки:

1. https://blogs.technet.microsoft.com/mniehaus/2015/08/31/adding-features-including-net-3-5-to-windows-10/

2. https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/deploy-net-framework-35-by-using-deployment-image-servicing-and-management—dism

Вышли .NET Core 2.0 and .NET Standard 2.0


Стали доступны финальные версии .NET Core 2.0 and .NET Standard 2.0. Следом вышло обновление для Visual Studio 15.3, которое делает доступным использование NET Core 2.0.

Событие достаточно значимое. Стандартизация API вообще дело полезное, а тут глобальное обновление — заявлен скачок с 16к до 32к поддерживаемых интерфейсов от версии 1.6 до 2.0. Как видно за последний год проделана огромная работа. Теперь мы имеем ощутимо мощную плаформу для мультиплатформенной разработки.

И как я уже успел заметить существуют нюансы реализации. Например, некоторые интерфейсы реализованы частично и содержат заглушки. Поэтому надо всегда проверять, что там реализовано, благо исходные коды доступны на GitHub.

Другой аспект в том, что .Net Standard 2.0 это пока ~60% от интерфейсов .Net Framework. И мы уже ожидаем .Net Standard 2.1. Как развитие стандарта, так и его реализация это открытые проекты, и любой может принять в них участие на GitHub.

В проекте PowerShell Core мы уже перешли на .Net Core 2.0 RTM — вы можете скачать и установить PowerShell Core 6.0 Beta.6. За последние месяцы мы вычистили множество вынужденных «затычек» и теперь непосредственно используем .Net Core 2.0. Тем не менее из-за отсутствия поддержки некоторых интерфейсов в .Net Core 2.0, мы всё еще имеем заблокированные возможности (что работает в Windows PowerShell и не работает в PowerShell Core) и все возможные «затычки». Работа в этом направлении продолжается.