Windows 10は、毎月の定例および随時提供される「品質更新プログラム」によるリビジョンの更新と、年に複数回(これまでは2回/年のペース)の「機能更新プログラム」によるビルド(バージョン)の更新が継続的に行われます。テストや動作検証のために、特定のWindows 10の環境を永久に維持したいという場合もあるはずです。今回は、そんなときに役に立つ、Windows 10を特定のバージョンに固定する方法を紹介します。


「Windows as a Service(サービスとしてのWindows)」という概念に基づいて提供されるWindows 10は、常に最低でも2つのバージョンがサポート対象になります。Homeを除くエディションは、既定の「Current Branch(CB)」から「Current Branch for Business(CBB)」に変更することで、機能更新プログラム(バージョン1511までの旧称は「機能アップグレード」)のインストールを延期して、新しいバージョンへのアップグレードを約4カ月遅らせることができます。

また、Windows 10 November Update以降は「Windows Update for Business」のポリシーを構成して、さらにアップグレードを延期することが可能です。しかし、Microsoft Updateから直接更新するように構成されている場合、いずれは自動的に最新バージョンにアップグレードされます。

2017年3月末時点では、次の3つのバージョンがサポートされます。

通称 / バージョン / ビルド番号.リビジョン番号 / CB向けリリース / CBB向けリリース
Windows 10初期リリース / 1507 / 10240.17319 / 2015年7月 / 2015年7月
Windows 10 November Update / 1511 / 10586.839 / 2015年11月 / 2016年4月
Windows 10 Anniversary Update / 1607 / 14393.969 / 2016年8月 / 2017年11月


間もなく「Windows 10 Creators Update(バージョン1703)」がCBに対してリリースされます。

一方、Windows 10初期リリース(バージョン1507)のサポートが「2017年5月」までに終了する予定です。Windows 10初期リリース(バージョン1507)のサポートは当初「2017年3月」に終了する予定でしたが、2017年2月初めに5月まで延長されることが発表されました。

Windows 10 Anniversary Update(バージョン1607)のCBB向けリリースから既に数カ月が経過しているため、2017年3月時点でWindows 10初期リリース(バージョン1507)やWindows 10 November Update(バージョン1511)を新規インストールまたはアップグレードインストールすると、初回(または早い段階)のWindows UpdateでWindows 10 Anniversary Update(バージョン1607)が検出され、アップグレードが始まってしまうでしょう(画面1)。

Windows 10 HomeはCBのみで提供されます。Windows 10 Pro、Enterprise、Educationは、既定はCBですが、CBBに変更可能です。この他、ボリュームライセンスを通じて、新機能が追加提供されない固定化バージョンである「Long Term Services Branch(LTSB)」があります。こちらは、これまで年に1回のペースで「Windows 10 Enterprise 2015 LTSB(ビルド10240版)」と「Windows 10 Enterprise 2016 LTSB(ビルド1607版)」がリリースされており、最低10年の長期にわたって品質更新プログラムのサポートが提供されます(2015 LTSBは2025年10月14日まで、2016 LTSBは2026年10月13日まで)。

●テスト、検証のためにWindows 10のバージョンを固定したい

重要なセキュリティ更新を含む品質更新プログラムを受け取るには、サポートされるWindows 10のバージョンを実行している必要があります。現時点では、これまでリリースされたWindows 10の3つのバージョン全てがサポート対象ですが、間もなく初期リリース(バージョン1507)のサポートが終了します。

しかし、場合によっては、サポート対象か否かに関係なく、特定のバージョンのWindows 10の環境を維持したいということがあるでしょう。例えば、アプリケーションのテストや互換性確認、トラブルシューティング、以前の動作仕様の確認などの目的のためにです。

前述のように、CBBやWindows Update for Businessで機能更新プログラムを延期したとしても、Microsoft Updateから更新プログラムを受信している限り(Windows Server Update Servicesなどで対象の更新プログラムをコントロールしていない限り)、いつかは機能更新プログラムによって新しいバージョンにアップグレードされます。機能更新プログラムを永久にブロックするには、公開されている「Show or hide updates」ツールの「Hide updates」機能を利用できます。

・コンピューターの問題の防止とトラブルシューティング:Show or hide updates(wushowhide.diagcab)

Windows Updateによって機能更新プログラムが検出、ダウンロードされる前に、このツールを実行して機能更新プログラムのダウンロードを事前にブロックできれば、それでOKです。しかし、機能更新プログラムが既にインストール対象として検出され、ダウンロードが始まってしまった場合は、ブロックするのは容易ではありません。「Show or hide updates」ツールでブロックしたとしても、既に検出されてしまったものは、引き続き試行されるでしょう。

既に検出されてしまった機能更新プログラムがインストールされないようにブロックするには、次の手順で操作します。

「設定」の「更新とセキュリティ」から「Windows Update」を開き、既に機能更新プログラムのダウンロードやインストールの準備が始まっている場合は、コマンドプロンプトを管理者として開き、次のコマンドラインを実行して、Windows Updateを強制的に停止します。うまく停止できない場合は、ネットワークを切断した状態でコンピュータを再起動するとよいでしょう。

net stop wuauserv
(またはnet stop "Windows Update")


「設定」の「更新とセキュリティ」から「Windows Update」を開き、Windows Updateが動作していないことを確認したら、「Show or hide updates」ツール(wushowhide.diagcab)を実行して、「Hide updates」を選択し、ブロックしたい機能更新プログラムを非表示にします。

機能更新プログラムを非表示にしたら、既に検出されてしまった更新プログラムをクリアするために、「C:\Windows\SoftwareDistribution」をリフレッシュします。それには、コマンドプロンプトを管理者として開いて、次のコマンドラインを実行します。

net stop wuauserv(またはnet stop "Windows Update")
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old(「アクセスが拒否されました」で失敗したら、net stopから再実行)
rd C:\Windows\SoftwareDistribution.old /S
shutdown /r /t 0




コンピュータを再起動後、Windows Updateを実行して、機能更新プログラムが検出されないことを確認します。なお、Windows 10のWindows Updateはいろいろと評価が分かれますが(多くは悪い方に)、累積的な更新プログラムが基本になっている点は多いに評価できると思っています。

Windows 10初期リリースの新規インストール後の初回(機能更新プログラムはブロック)のWindows Updateですが、最新の累積的な更新プログラムと、2つのセキュリティ更新プログラムの実質3つの更新プログラムだけで、最新のビルド(10240.17319)に更新できるのです。以前のバージョンのWindowsなら、サービスパック(SP)やInternet Explorerの新しいバージョン、そしてSP以降の膨大な数の更新プログラムをインストールするのに、果てしない時間を費やす必要がありました。

筆者はこの方法で、Windows 10初期リリースからWindows 10 November UpdateまたはWindows 10 Anniversary Updateへのアップグレード、およびWindows 10 November UpdateからWindows 10 Anniversary Updateへのアップグレードをブロックすることができました。

Windows 10 Creators Updateがリリースされた後は、Windows 10 Creators Updateの機能更新プログラムをブロックする必要もあります。現在のWindows 10バージョンでCBBに設定しておけば、Windows 10 Creators UpdateがCBB向けにリリースされるまでは「Show or hide updates」ツールを単純に実行するだけで、Windows 10 Creators Updateへのアップグレードを永久にブロックできるはずです。

●Windows 10初期リリースのリビジョン番号を確認するには?

ところで、Windows 10 November Update以降は「設定」の「システム」にある「バージョン情報」や「winver.exe」の出力に、「バージョン」(年月の形式、例:1511、1607)と「OSビルド」(ビルド番号.リビジョン番号の形式、例:10586.839、14393.969)が表示されるようになっています。これらの情報は、Windows 10初期リリースのUIには表示されません。Windows 10初期リリースの「winver.exe」は、バージョン情報として「バージョン10.0(ビルド10240)」を示します。

Windows 10初期リリースで、リビジョン番号までの詳細なバージョン情報を取得するには、レジストリキー「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion」の「CurrentBuild」と「UBR」の値を参照します。Windows 10 November Update以降の「winver.exe」はこれらの値を参照しており、Windows 10初期リリースにも存在します。

また、同様の情報は、「BuildLabEx」の値の文字列のプレフィックスから判断することもできます。ただし、「BuildLabEx」の値は常に正しいわけではないようなので注意してください。

 

 

【関連記事】

「Windows 10」最新プレビュー、ストア以外からのアプリを拒否する選択が可能に