エラーの意味
まず、このエラーの意味は以下のいずれかである模様。
・前提条件となるモジュールが足りていないので失敗する
・WindowsUpdateにうまくアクセスできない
大抵は前者が原因となるだろう。では、足りていない前提条件となるモジュールとは何か? それはログを見て調べることとなる。
ログの場所
CBS.logを確認する。以下の場所に存在している。
ここにCBS.logが出力されているので確認する。
何度かWindowsUpdateを実行している場合は、CbsPersistほにゃららという過去のログになってる可能性もあるので注意。
不足モジュールを特定する
ログを開いたら、「CBS_E_STORE_CORRUPTION」で検索する。
「Store corruption, manifest missing for package: ほにゃらら~」といった文言の箇所が見えるだろう。
ここに記載されているのが不足ているモジュールである。KB番号があれば、それを控える。なければ、最下部の手順へ。
カタログサイトからダウンロードしてインストール
Microsoft Update カタログにアクセスする。
https://www.catalog.update.microsoft.com/
先ほどのKB番号を入れて検索。
ヒットしたモジュールのうち、環境にあったものを選択してダウンロードし、インストール。
インストール後、再度Windows Updateを行って通ることを願おう。
CBS.logにKB番号がない場合
CBS.logにKB番号がなくモジュール名の場合もある。
私の今回のケースでは「Microsoft-Windows-DirectoryServices-ADAM-Client-Package」が表示されていた。
このようになってくると中々解決が難しく、dismツールによるリカバリが必要な事になるようだ。
この時に必要なものは、OSのインストールディスク。
インストールディスクを用意した上で、管理者権限のコマンドプロンプトにて次を実行する。
Dism /Online /Cleanup-Image /RestoreHealth /Source:E:\sources\sxs /limitaccess
※Eドライブにインストールディスクが入っている想定
これでもうまくいかない場合は、中々文献がないので、OSのアップデートをかけてしまうなど、諦めて入れ替えてしまうような策を講じた方が早いかもしれない。