Windows 10で面倒になった「Windows Update」のコントロールを取り戻す方法はあるのか?山市良のうぃんどうず日記(197)

Windows 10になってWindows Updateはコントロールが難しくなりました。Windows Updateのコントロールを取り戻す方法の一つに「Windows Update Agent API(WUA API)」を利用したスクリプト化があります。しかし、Windows 10で導入された新たな更新サービスの影響なのか、Windows 8.1以前と同じようにはいかないことも……。

» 2020年12月23日 05時00分 公開
[山市良テクニカルライター]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「山市良のうぃんどうず日記」のインデックス

山市良のうぃんどうず日記

「WUA API」でWindows Updateのコントロールを取り戻せ!

 2020年最後となる本連載のシメは、2020年(も)いろいろと問題を起こしてきた「Windows Update」についてです。以下の回で紹介したように、「Windows 10 バージョン2004(May 2020 Update)」や「Windows 10 バージョン20H2(October 2020 Update)」は、Windows Updateが従来とは異なる挙動を示すようになり、戸惑うユーザーは多かったと思います。

 手動更新や更新プログラムのインストールの可否を選択可能だった「Windows 8.1」とは異なり、「Windows 10」になってWindows Updateをコントロールするすべが大きく制限されてしまいました。これは「Windows Server 2016」以降も同様です。

 Windows 10のWindows Updateには、機能更新プログラムというWindows 10のバージョンアップグレードも加わり、年に2回、更新のために長い時間を取られることになります。場合によっては、機能更新プログラムの問題の影響を受け、ロールバックやバックアップからの復元のためにさらに時間を取られることになります。

 Windows Updateのコントロールを自分の手に取り戻す方法の一つに、「Windows Update Agent API(WUA API)」を利用したスクリプトによる更新プログラムのインストールがあります。以下のMicrosoftの公式ドキュメントに、少なくとも「Windows XP」および「Windows Server 2003」以降、最新バージョンのWindows/Windows Serverまで利用できるサンプルスクリプトがあります。

 このサンプルスクリプトは利用可能な更新プログラムを検出すると「Y/N」で答える必要がありますが、少しカスタマイズすれば完全に自動化することができます。筆者の個人ブログに、カスタマイズしたものを掲載しているので参考にしてください(画面1)。

画面1 画面1 WUA APIのサンプルスクリプトをカスタマイズした筆者の更新スクリプト

 Windows 10 バージョン1709からバージョン1909までは、PowerShell用の「WindowsUpdateProvider」モジュールが提供する便利なコマンドレット(「Start-WUScan」「Install-WUUpdates」「Get-WUIsPendingRemoot」など)が利用できました。しかし、本連載第183回で指摘したように、残念ながらこの機能はWindows 10 バージョン2004で廃止されました。

 そこで筆者が10年以上前に書いたスクリプトを、もう一度見直すことにしました。真の目的は「Cリリース」とも呼ばれる「オプションの更新プログラム」(2020年7月からは「累積更新プログラムのプレビュー」と呼びます)を拾わない方法を探ることでしたが、その目的を果たすことはできず、いつの間にか仕様が変わっていたことを知ることになりました。

 なお、2020年7月以降、Windows 10 バージョン1803以前およびWindows Server 2006以前に対して「累積更新プログラムのプレビュー」が提供されることはなくなりました。今回の検証はWindows 10 バージョン1809以降およびWindows Server 2019以降を対象としたものになります。Windows 10 バージョン1803以前およびWindows Server 2006以前は、もう「累積更新プログラムのプレビュー」を心配する必要はありません。

Windows Serverの「Sconfig」は推奨の更新を検索できない?

 Windows Serverは、Server Coreインストール向けの「Sconfig」ユーティリティーが用意されており(デスクトップエクスペリエンスでも利用可能)、「6)更新プログラムのダウンロードとインストール」メニューはWUA APIのサンプルスクリプトとほとんど同じコードで書かれた「C:\windows\system32\ja-jp\WUA_SearchDownloadInstall.vbs」を実行します。

Copyright © ITmedia, Inc. All Rights Reserved.

「Windows 7」サポート終了 対策ナビ

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。