Windowsの「機能の有効化または無効化」で項目が表示されないときの対処法

Windows の「Windows の機能の有効化または無効化」(optionalfeatures.exe)ウィンドウを開いたのに、リストがまっ白で何も表示されない/“機能を検出できません”と出る──そんなトラブルが Windows 10・11 で相次いで報告されています。
本記事では 原因と再現率の高い対処法を“10 ステップ”で図解。DISM やグループポリシーの操作画面をキャプチャ付きで順番に示すので、やるべき手順がひと目でわかります。社内 PC の .NET Framework 3.5 有効化や Hyper-V 検証でハマった開発者・情シス担当者はぜひブックマークしてください。


目次

症状の切り分け

症状確認ポイント主な原因候補
「Windows の機能」ダイアログが空白optionalfeatures.exe 直打ち/コントロールパネル経由どちらも同じWinSxS 破損・TrustedInstaller 停止
「オプション機能」設定画面に“何も表示されません”ms-settings:optionalfeatures URI を開くAppX キャッシュ破損、サービス停止
“このコンピューターで要求された変更を完了できませんでした”.NET 3.5/SMB1 などをオンにした直後選択肢が一瞬出たあと消える→コンポーネント不整合

図 1 空白の Windows 機能ダイアログ
(白いウィンドウに「コンポーネントを検出しています…」が残ったまま固まる)


症状が起こる 4 大原因

  1. Windows Modules Installer(TrustedInstaller)サービス停止
  2. WinSxS(コンポーネント ストア)の破損
  3. “Hide Windows Features” グループポリシーが有効
  4. AppX キャッシュ破損/設定アプリの移行(22H2→23H2)

対処フローチャート【図 2】

┌─Start
│
├─① 設定アプリ側で開ける? ──Yes→*A*  No→②
│
├─② TrustedInstaller 起動? ─Yes→③  No→サービス再起動
│
├─③ SFC / DISM 実行(完了?)─Yes→④  No→*B*
│
├─④ GPO / レジストリ確認 ──OK→⑤  NG→ポリシー変更
│
└─⑤ WinSxS 復旧→解決

A … 機能リストは表示されるが追加が失敗→DISM 修復へ
B … DISM 失敗(エラー 0x800f081f)→インプレースアップグレード


対処法 1:設定アプリ経由で再読込

  1. Win + I → システム → 一番下の オプション機能
  2. 「最近更新のあった機能を表示」ボタンをクリック
  3. 数秒後に一覧が再描画されるか確認
    23H2 以降は旧コントロールパネルから Settings に内部ルーティングが変わったため、キャッシュ再生成で直る例が多数あります。

対処法 2:Windows Modules Installer を再起動

Get-Service TrustedInstaller | Restart-Service -Force

GUI 手順

  1. services.msc → Windows Modules Installer
  2. スタートアップの種類を 手動(遅延開始) に設定
  3. 開始 をクリック

図 3 Services で TrustedInstaller を開始


対処法 3:SFC & DISM でコンポーネント ストア修復

sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth
  • DISM が エラー 0x800f081f を返す場合は ISO の install.wim を指定:
    DISM /Online /Cleanup-Image /RestoreHealth /Source:D:\sources\install.wim:1 /LimitAccess
  • 修復後は sfc /scannow を再度実行し整合性を確認。WindowsCentral の DISM ガイドでも推奨手順。

対処法 4:SoftwareDistribution & Catroot2 をリネーム

net stop wuauserv
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 catroot2.old
net start wuauserv

更新コンポーネントの差し替えで一覧が復活した事例あり。再起動後に確認してください。


対処法 5:グループポリシー/レジストリを無効化

  • gpedit.msc
    コンピューターの構成 → 管理用テンプレート → コントロール パネル → 設定ページの表示
    “Hide Windows Features” を 未構成 または 無効 に。
  • Home Edition はレジストリ
    HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Servicing
    UseWindowsUpdate が 1 なら 0 に変更

対処法 6:Windows Update Reset スクリプトを実行

GitHub で公開されている ResetWUEng.cmd(テキストリンク: https://github.com/ManoelCarneiro/Reset-Windows-Update-Tool)を管理者として実行し、Option 2 – Reset Components を選択。更新コンポーネントと WinSxS をワンパッケージでクリーンアップします。


対処法 7:WinSxS クリーンアップ & StartComponentCleanup

DISM /Online /Cleanup-Image /StartComponentCleanup
  • 10 GB 以上肥大化した WinSxS を整理
  • 再起動後 optionalfeatures.exe が 30 秒以上フリーズしなくなる例を確認

対処法 8:機能を PowerShell で直接有効化

リストが空白でも、機能自体は有効化できます。

Enable-WindowsOptionalFeature -Online -FeatureName "NetFX3" -All -Source D:\sources\sxs -NoRestart

結果が Restart Needed = No なら成功。MakeUseOf の記事でも回避策として紹介。


対処法 9:インプレース アップグレード(修復インストール)

Settings、WinSxS、サービスすべて修復できない場合の最終手段。

  1. https://www.microsoft.com/software-download/windows11 から Media Creation Tool を取得
  2. 「この PC を今すぐアップグレード」を実行
  3. 個人ファイルとアプリを保持 を選択 → 30 – 60 分待機
  4. 復旧後に optionalfeatures.exe を開き一覧表示を確認

TenForums でも「クリーンインストール不要で 100 % 直った」と多数報告。


対処法 10:レジストリで OptionalFeatures.exe を再登録

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\ms-settings\shell\open\command]
@="explorer.exe ms-settings:optionalfeatures"
"DelegateExecute"="{556FF0D6-A1EE-49E5-9FA4-90AE116AD744}"

設定 URI が壊れているレアケースに有効。適用後ログオフ。


「図でわかる」エラー別チェックポイント

図エラー画面原因対処法
4コンポーネント検索で止まるTrustedInstaller 停止対処法 2
5‘0x800f0954’WSUS/ポリシーで更新拒否対処法 5 + 8
6空白で ESC も効かずWinSxS 破損対処法 3 + 7

Tips – ダイアログが 60 秒以上応答しない時は Ctrl + Shift + Esc で OptionalFeatures プロセスを強制終了し、次の手順へ進んでください。


再発防止チェックリスト

  1. 月 1 回 SFC/DISM を自動実行(タスクスケジューラ)
  2. 更新クリーンアップ を Windows Update 後 1 週間以内に実施
  3. WSUS 環境では [修正プログラム] を最新に保ち、“Download repair content from Microsoft Update” を有効化
  4. 企業 GPO に Hide Windows Features を設定する場合はポリシー名と理由を必ずドキュメント化
  5. 検証用 VM のスナップショットを残し、WinSxS テストを定期リハーサル

まとめ:10 ステップで 99 % は復旧

  • TrustedInstaller 再起動 → SFC / DISM が黄金ルート
  • リスト空白が続く場合は ポリシー無効化→WinSxS クリーンアップ まで実施
  • コマンドが失敗したら インプレースアップグレード が最短
  • 最後に PowerShell 直接有効化 法を覚えておけば業務を止めない

Windows の内部コンポーネントは複雑ですが、手順を守れば自力で復旧可能です。ぜひ本記事の図解を参考に早期解決を図ってください。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次