Windows 10からWindows 11へアップグレードしないという選択肢

Microsoftは多くのユーザーがWindows 10からWindows 11へ移行することを望んでいる。Windows 10からWindows 11へアップグレードするにはコンピュータや仮想環境が必要条件を満たしている必要がある。そのため、条件的にWindows 11へアップグレードできないユーザーもいるが、Microsoftの見立てでは2022年前半には多くのユーザーがWindows 11へのアップグレード通知を受け取ることになっている。

Windows 10からWindows 11へのアップグレードが行われる基準は不透明だが、個人ユースよりも、ビジネスユーザーのほうがWindows 10をそのまま使い続ける可能性が高いと見られている。Windows 10のサポートは2025年の終了が予定されている。このままサポートの延長が行われなかったとしても、あと4年間はアップデートが提供されるのだ。急いでアップデートを行って不具合が発生するよりも、確実に動作するWindows 10を使い続けるのも適切な判断だろう。

Microsoftはユーザーに対してWindows 11へのアップグレードを促してくるし、これを止める簡単な方法は提供されていない。しかし実のところ、アップグレードをとどめる方法自体は提供されている。レジストリを操作する必要があるため手間がかかるが、アップグレードを促してくるメッセージが面倒場合は、この方法を試してみよう。

レジストリエディタを使う方法

Windows 10のリリースバージョンは「Supported versions of Windows client | Microsoft Docs」に掲載されている。本稿執筆時点で、Windows 10に適応できるリリースバージョンは次のとおりだ。

  • 21H1
  • 20H2
  • 2004
  • 1909

長期サポートブランチでは、次のリリースバージョンも使用できる。

  • 1809
  • 1607
  • 1507 (RTM)

Windows 11へのアップグレードを止めたい場合、例えばWindows 10のリリースバージョンを「21H1に固定する」という設定をすればよい。具体的には、レジストリのHKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdateにTargetReleaseVersion、TargetReleaseVersionInfo、ProductVersionという値を作成して対象バージョンを指定しておけばよい。

設定する値の例は次のとおりだ。

項目 内容
パス HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ WindowsUpdate
TargetReleaseVersion 1 DWORD (32ビット)値
TargetReleaseVersionInfo 21H1 文字列値
ProductVersion Windows 10 文字列値
  • レジストリエディタで値を追加

    レジストリエディタで値を追加

TargetReleaseVersionInfoに指定する値は、作業する時点の最新リリースバージョンなどを指定すればよい。本稿執筆時点での最新リリースバージョンは21H1だが、そろそろ21H2がリリースされるだろうから、その場合は21H2を指定することになる(参考「Can I stop auto upgrade to Windows 11? - Microsoft Tech Community」。

グループポリシーエディタを使う方法

Windows 10 Proなどのエディションを使っている場合、レジストリエディタではなく、グループポリシーエディタを使っても同じ設定を行うことができる。

グループポリシーエディタを起動し、「ローカルコンピューターポリシー」→「コンピューターの構成」→「管理用テンプレート」→「Windowsコンポーネント」→「Windows Update」→「Windows Update for Business」を選択し、「ターゲット機能更新プログラムのバージョンを選択する」をダブルクリックする。

  • グループポリシーエディターでWindows Updateの「ターゲット機能更新プログラムのバージョンを選択する」をダブルクリック

    グループポリシーエディタでWindows Updateの「ターゲット機能更新プログラムのバージョンを選択する」をダブルクリック

最初は「未構成」になっていると思うので、これを「有効」に変更し、「どのWindows製品のバージョンから機能更新プログラムを受け取りますか? 例: Windows 10」と「機能更新プログラムのターゲットバージョン」に適切な値を設定する。執筆時点ではそれぞれ「Windows 10」と「21H1」を設定する(参考「Why don't old Windows 10 more than 2 years old, directly upgrade to the current build? - Microsoft Q&A」)。

  • 機能が「未構成」になっている

    機能が「未構成」になっている

  • 「有効」に変更し、プロダクト名とリリースバージョンを入力する

    「有効」に変更し、プロダクト名とリリースバージョンを入力する

設定内容を簡単にまとめると、次のようになる。

項目 内容
パス ローカルコンピューターポリシー / コンピューターの構成 / 管理用テンプレート / Windowsコンポーネント / Windows Update / Windows Update for Business
ターゲット機能更新プログラムのバージョンを選択する
状態 有効
どのWindows製品のバージョンから機能更新プログラムを受け取りますか? 例: Windows 10 Windows 10
機能更新プログラムのターゲットバージョン 21H1

レジストリエディタを使う方法はWindows 10 Homeでも利用できるので、基本的にはレジストリディタを使う方法を押さえておくとよい。

フィーチャーリリースごとに更新を忘れずに

この方法は「Windows 10からWindows 11へのアップグレードを停止する」という直接的な設定ではなく、「Windows 10を特定のリリースバージョンにとどめる」ための設定だ。その結果として、「Windows 10からWindows 11へのアップグレードを停止」させている。このため、Windows 10の新しいフィーチャーリリースが公開された場合は、設定を変更する必要がある。そうしないと、固定した古いフィーチャーリリースバージョンにとどまることになってしまう。

Windows 10のフィーチャーリリースバージョンは半年ごとに公開されているため、半年ごとに指定するリリースバージョンを書き換える必要がある。しかし、半年も経つと設定したことすら忘れる可能性が高い。この設定を行う場合、半年ごとに行う作業としてリリースバージョンの書き換えをスケジュールに加えておくなどして、作業の見落としを避けるようにしておくとよいと思う。