Windows Updateで1台エラーを出すPCが発生したので、試したこととその結果のご報告です。
結論を言うと、どうにもならなかったので、OS再インストールで完了。
エラー:0x80073712の発生
OSインストール(Windows10)を実施した旧式ThinkPad、キッティングを完了してしばらく稼働していたのですが、気がついた時にはWindows Updateが失敗するようになっていました。
エラー画面は、
このようになっています。メッセージを記載。
--------------------------------------------------------------
一部の更新ファイルが見つからないか、更新ファイルに問題があります。後で更新プログラムの再ダウンロードを試みます。
エラー コード: (0x80073712)
--------------------------------------------------------------
エラー内容
「エラー コード: (0x80073712)」と記載があり、システムファイルの矛盾やコンポーネントのファイル破損などが要因として挙げられます。
システムドライブ(SSD)の空き容量は半分以上あるし、ディスクエラーもないことは確認して、ハードウェアの問題がない前提でトラブルシューティングを開始します。
まずはMicrosoftのサイトからトラブルシューティングツールをダウンロードし実行してみたものの、解決せず「未解決」で処理を終了しました。
次の対処に進んでみます。
dism.exeの実行
原因がシステムファイルの不整合に起因しているのでdismコマンドでシステムファイルの不整合を確認し、修正を試みます。
実行したコマンドは、
Dism.exe /Online /Cleanup-image /Restorehealth
早速実行してみました。(管理者で実行したコマンドプロンプトで実行)
序盤で「エラー:2」で終了してしまいます。うーん。
エラーになったので繰り返し実行してみたのですが、同じ進捗箇所で同じエラーとなって終了してしまいます。
sfc.exeの実行
修復コマンドも実行してみます。(これも管理者で実行したコマンドプロンプトで実行)
実行するコマンドは
sfc /scannow
これを実行すると、
「検証 0% が完了しました。
Windows リソース保護は要求された操作を実行できませんでした。」
と完了してしまいます。
修復できないのかなぁ…。
Windows Updateフォルダの初期化
思い切ってWindows Updateで使用されているフォルダを初期化して動作に改善があるかどうか確認してみました。
エラーに
「一部の更新ファイルが見つからないか、更新ファイルに問題があります。」
と記載があったので、ダウンロードした更新プログラムのファイルに問題があったとしたら、そのファイルが初期化されることで更新プログラムのインストール動作がリセットされるかなと。
さっそく準備を。
サービス(services.msc)を開いて、
まずは、wuauserv(表示名:Windows Update)を停止。
次に、
BITS(表示名:Background Intelligent Transfer Service)を停止。
サービスを停止した状態で、次のフォルダ操作ができるようになります。
次にWindowsフォルダのSoftwareDistributionフォルダをリネームします。(リネームすることでフォルダが存在しなかったことにします。)
リネーム後は以下のように、
末尾に.oldを付けて認識しないようにしました。
このあと、サービスを再起動してWindows Updateを試行するのですが、いったんこの状態でOS再起動をしてさっぱりと最初からやってみることにします。
再起動、そしてエラー再現
再起動後に、再びWindows Updateを試行してみます。
SoftwareDistributionフォルダをリネームすることで、初期化されてしまった関係から、初回のWindows Updateのようにかなり時間はかかりましたが、無事に更新プログラムの適用が動き出しました。
この後、エラーが出なくなったと、思ったら、9%のところでやっぱり冒頭のエラー(エラー コード: 0x80073712)になってしまいました。
諦めてOS再インストール
結論:諦めて、OS再インストール。
結局、どうやっても復旧せず、年の瀬であまり時間も取れなかったこともあって、OS再インストール、キッティング手順を再度やり直すことで、無事Windows Updateが正常に動作するようになりました。
エラーの回復は結局できなかったのですが、別のエラーコードが発生した場合でもdismコマンドとsfcコマンドの辺りは同じように実行することになりそうなので、一応失敗した記録を残しておくことにしました。
追記:
今回の対象PCではSSD故障だった可能性も出てきました。あの後OS再インストールのために内蔵ストレージを別の(正常チェック済の)SSDに交換してOS再インストールを実施し、正常に動作するようになりました。