Windowsには、デフォルトでは有効化されていない機能や必要に応じて追加できるオンデマンド機能があります。
たとえば、Proエディションで利用できるHyper-V機能はデフォルトでは無効化されており、必要に応じて有効化する必要があります。また、以前のWindowsに標準搭載されていたワードパッドやVBScriptは、現在はオンデマンド機能となっており、必要に応じて追加する形になっています。
そこでここでは、Windows 11でデフォルトでは有効化されていない機能を有効化する方法や、オンデマンド機能を追加/削除する方法を解説します。
目次
Windowsの設定からの手順
有効化されていない機能やオンデマンド機能を追加するときは、Windowsの設定画面から有効化や追加するのが一般で、手順は次のとおりです。
まず、Windowsの設定画面から「システム」>「オプション機能」を選択します。
Windowsの機能の有効化/無効化
Windowsの機能を有効化/無効化したいときは「関連設定」にある「Windowsのその他の機能」をクリックします。
「Windowsの機能」画面が表示されるので、該当の機能にチェックを入れることで有効化でき、無効化したいときはチェックを外します。
なお、有効化/無効化する機能によっては、設定を反映するためにWindowsの再起動が必要になる場合があります。
オンデマンド機能の追加/削除
オンデマンド機能を追加するときは「オプション機能を追加する」の「機能を表示」から、該当の機能を選択して追加することができます。
追加したオンデマンド機能は、その下の「追加された機能」に一覧表示されており、不要な機能は一覧から削除することができます。
コマンド操作での手順
多数のマシンで、機能の有効化/無効化やオンデマンド機能の追加/削除を行うときは、1台ずつWindowsの設定画面から操作するのは非効率なので、WindowsコマンドやPowerShellを使ってコマンドで操作するのがおすすめです。
Windowsの機能の有効化/無効化
Windowsコマンドの場合
Windowsコマンドで機能の有効化/無効化を行うときは、まず該当機能の名前を確認するために、管理者としてコマンドプロンプト(ターミナル)を起動して、以下のコマンドを実行して機能の一覧を出力します。
> dism /Online /Get-Features
次に、表示された機能一覧から、有効化(無効化)したい機能の名前を確認し、名前を指定してコマンドを実行します。たとえば「Telnetクライアント」を有効化(無効化)するときは、以下のようにコマンドを実行します。
機能を有効化する場合:
> dism /Online /Enable-Feature:TelnetClient
機能を無効化する場合:
> dism /Online /Disable-Feature:TelnetClient
PowerShellの場合
PowerShellで機能を有効化/無効化する場合は、まず機能の一覧を出力し対象機能の名前を確認します。
PowerShellでで機能の有効化/無効化を行うときも、まず該当機能の名前を確認するために、管理者としてPowerShell(ターミナル)を起動して、以下のコマンドを実行して機能の一覧を出力します。
PS> Get-WindowsOptionalFeature -Online
次に、表示された機能一覧から、有効化(無効化)したい機能の名前を確認し、名前を指定してコマンドを実行します。たとえば「Telnetクライアント」を有効化(無効化)するときは、以下のようにコマンドを実行します。
機能を有効化する場合:
PS> Enable-WindowsOptionalFeature -Online -FeatureName TelnetClient
機能を無効化する場合:
PS> Disable-WindowsOptionalFeature -Online -FeatureName TelnetClient
なお、一部の機能は、有効化/無効化した際に再起動を促すメッセージが表示されます。
オンデマンド機能の追加/削除
Windowsコマンドの場合
Windowsコマンドでオンデマンド機能の追加/削除を行うときは、まず該当機能のIDを確認するために、管理者としてコマンドプロンプト(ターミナル)を起動して、以下のコマンドを実行して機能の一覧を出力します。
> dism /Online /Get-Capabilities
次に、表示されたオンデマンド機能一覧から、追加(削除)したい機能のIDを確認し、IDを指定してコマンドを実行します。たとえば「OpenSSHクライアント」を追加(削除)するときは、以下のようにコマンドを実行します。
機能を追加する場合:
> dism /Online /Add-Capability /CapabilityName:OpenSSH.Client~~~~0.0.1.0
機能を削除する場合:
> dism /Online /Remove-Capability /CapabilityName:OpenSSH.Client~~~~0.0.1.0
PowerShellの場合
PowerShellでオンデマンド機能を追加/削除する場合も、まず該当機能のIDを確認するために、管理者としてPowerShell(ターミナル)を起動して、以下のコマンドを実行してオンデマンド機能の一覧を出力します。
PS> Get-WindowsCapability -Online
次に、表示されたオンデマンド機能の一覧から、追加(削除)したい機能のIDを確認し、IDを指定してコマンドを実行します。たとえば「OpenSSHクライアント」を追加(削除)するときは、以下のようにコマンドを実行します。
機能を追加する場合:
> Add-WindowsCapability -Online -Name "OpenSSH.Client~~~~0.0.1.0"
機能を削除する場合:
> Remove-WindowsCapability -Online -Name "OpenSSH.Client~~~~0.0.1.0"
なお、一部の機能は、追加/削除した際に再起動を促すメッセージが表示されます。
あとがき
複数のWindowsマシンで機能を有効化/無効化したり、オンデマンド機能を追加/削除したいときは、処理内容を記述したバッチファイルやPowerShellスクリプトファイルを用意して、対象のマシン上で実行することで作業効率をアップできるでしょう。ご活用あれ。