Как известно, Windows 10 отличается набором компонентов от предыдущих версий операционных систем Windows. Зачастую требуется их включить или выключить, чтобы они не потребляли системные ресурсы, да и просто не мешали. В этой статье мы рассмотрим как это сделать быстрее и эффективнее.

Начнем с того, что существует два основных способа работы с компонентами (они еще называются features) — утилита DISM и командлеты Powershell. И то и другое встроено в Windows 10, в отличие от Windows 7, где dism можно было добавить или установив пакет Windows ADK, или руками скопировав dism.exe с другого компьютера.

Сразу отмечу, что утилиту dism и среду powershell для работы с системой необходимо запускать от имени администратора, даже если ваш аккаунт уже находится в группе локальных админов. Итак, вы или находите cmd или windows powershell в меню и, кликнув правой кнопкой мышки, выбираете «Запуск от имени администратора«.

В Windows 10 есть понятие Features и Capabilities. Первое — это привычные нам компоненты, которые можно найти в Панели управления -> Программы и компоненты -> Включение и отключение компонентов Windows. То есть это встраиваемые модули, которые выполняют определенный сервисный функционал.

Capabilities — это дополнительные возможности, которые расширяют возможности интерфейса и увеличивают удобство пользователя. Среди них — Language packs, наборы шрифтов. Да, Microsoft удалил часть нестандартных шрифтов, которые теперь вынесены в опциональные компоненты. Скачать эти компоненты можно в виде ISO файла с сайта Volume Licensing Service Center или напрямую через Internet и графический интерфейс Windows. Такую концепцию Microsoft назвала Features on Demand (FOD). Их в более ранних версия Windows не было.

Работаем с Windows Features

Итак, список установленных компонентов можно посмотреть командой 

Dism /online /Get-Features

Вот как в Powershell можно получить список всех компонентов командлетами Get-WindowsFeature (для Windows Server) или Get-WindowsOptionalFeature (Windows 10):

Чтобы получить список отключенных компонентов, введите:

Get-WindowsOptionalFeature -Online | ? state -eq 'disabled' | select featurename

Этот список также можно вывести в файл (для windows Server):

Get-WindowsFeature | Where-Object {$_.Installed -match “True”} | Select-Object -Property Name | Out-File C:\Temp\WindowsFeatures.txt

Посмотрев список названий и их состояние, можно использовать эти названия для того, чтобы компоненты включить или выключить:

Dism /online /Enable-Feature /FeatureName:TFTP /All

ключ /All позволяет включить также все дочерние компоненты;

Установка компонентов через Powershell выполняется командой Enable-WindowsOptionalFeature.

Enable-WindowsOptionalFeature -Online -FeatureName RSATClient-Roles-AD-Powershell

Параметр -All включает все дочерние компоненты.

Dism /online /Disable-Feature /FeatureName:TFTP

Аналогично, через Powershell это можно сделать командой Disable-Windowsoptionalfeature -online -featureName [feature name].

Обратите внимание, некоторые фичи имеют разные названия в Windows 7 и Windows 10. Например, RSAT в Windows 7 — это RemoteServerAdministrationTools, а в Windows 10 — RSATclient.

Управление Features on Demand (FOD)

Если вы устанавливаете их через графический интерфейс, то вам необходимо пройти “System –> App & features –> Manage optional features” и нажать знак + напротив необходимых компонентов.

Чтобы сделать это автоматизированно через командную строку, наберите чтобы получить список доступных компонентов:

DISM.EXE /Online /Get-Capabilities

или на Powershell:

Get-WindowsCapability -Online

Как и прежде, запомните название необходимых вам компонентов, чтобы включить их командой (на примере .Net Framework 3):

DISM.EXE /Online /Add-Capability /CapabilityName:NetFx3~~~~

или на Powershell:

Add-WindowsCapability –Online -Name NetFx3~~~~

Если же у вас нет доступа в Интернет, то есть выход. Итак, вы скачиваете ISO образ диска с FOD компонентами с сайта Volume Licensing Service Center. Файлы будут разные для разных релизов Windows 10 — 1511, 1607, 1703, 1709. Важно помнить, что компоненты одного релиза не подходят к другому. Если вы сделаете in-place upgrade (установка одного релиза поверх другого через обновление), то несовместимые установленные компоненты будут удалены без вашего желания! Да, Microsoft удаляет то, что считает несовместимым при обновлении.

Так вот, ISO файл содержит набор неизвестных и сложных для понимания файлов с расширением cab. Вот чудесный файлик на сайта Microsoft, который обясняет назначение каждого файла. Итак, существуют следующие типы FOD:

  • Microsoft-Windows-LanguageFeatures-Basic — проверка правописания для различных языков и раскладок клавиатуры;
  • Microsoft-Windows-LanguageFeatures-Fonts — национальные шрифты, например, азиатские
  • Microsoft-Windows-LanguageFeatures-OCR — средства для распознавания шрифтов
  • Microsoft-Windows-LanguageFeatures-Handwriting — средства для распознавания рукописного ввода
  • Microsoft-Windows-LanguageFeatures-TextToSpeech — средства преобразования текста в голос, используемые подсказчиком Cortana
  • Microsoft-Windows-LanguageFeatures-Speech — распознавание голоса
  • Microsoft-Windows-InternationalFeatures — пакеты национальных настроек, например, для Тайваня

Итак, для добавления таких FOD компонентов, используйте команды вида (замените имя компонента):

Dism /Online /Add-Capability /CapabilityName:Language.Basic~~~en-US~0.0.1.0

Для удаления FOD:

Dism /Online /Remove-Capability /CapabilityName:Language.Basic~~~en-US~0.0.1.0

Установка и переустановка пакетов языков (Language Interface Packs, LIP)

Язык интерфейса Windows можно поменять, установив так называемые LIP. ранее они назывались MUI (Multi user interface). Файлы LIP выглядят так: Microsoft-Windows-Client-Language-Pack_x64_es-es.cab для испанского языка. Выглядеть установка будет примерно так:

Dism /Add-Package /online /PackagePath:"C:\Languages\Microsoft-Windows-Client-Language-Pack_x64_fr-fr.cab"

А удаление так:

Dism /Remove-Package /online /PackageName:Microsoft-Windows-Client-LanguagePack-Package~31bf3856ad364e35~amd64~en-US~10.0.10120.0

В следующей статье мы поговорим как с помощью DISM и Powershell управлять так называемыми Modern-приложениями AppX.

[Посещений: 22 233, из них сегодня: 1]

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