0x80080005 でWindows Updateの更新できない (Windows 10)

PC
この記事は約9分で読めます。

Windows 10をAnniversary Updateに更新してから、いつの間にかWindows Updateを実行するとエラー 0x80080005 が出てWindows Updateを更新できなくなりました。Windows 10がインストールされているパソコンのうち、2台に同じ症状が出て、2台とも同じ方法でWindows Updateを更新できない問題が解消されたので、備忘録を兼ねて紹介します。

スポンサーリンク

はじめに

Windows 10をAnniversary Updateに更新してから、いつの間にかWindows Updateを実行するとエラー0x80080005が出て、Windows Updateを更新できなくなりました。

Anniversary Updateに更新した後、何の脈絡もなく突然、マウスが操作不能になってPCが動作しなくなり、リセットボタンによる再起動が増えました。

Windows ログ のシステムを確認すると、PCの動作が停止する直前にWindows Updateの自動更新がバックグラウンドで実行された形跡がありました(イベントID 7023)。

このため、Windows Updateを手動で行ってみると、エラー0x80080005が出て、Windows Updateを更新できないことに気付きました。

また、不思議なことに、Windows Updateの更新をエラーなく順調に続けている別のPCがあったので、Windows Updateの更新ファイルが新たに出ていることにも気付きました。

そこで、新たなWindows Updateの更新ファイルをインストールするべく、今回の問題を解決することにしました。

 

 

0x80080005 とは

エラーコード 0x80080005 について調べてみると、MicrosoftのTechNetで以下の内容を見つけました。

本エラー メッセージは Access is denied.:ファイルやレジストリのアクセス拒否が発生したことを意味しますが、純粋に Windows Update の機能が破損している場合以外に、以下のレジストリの設定値に起因する場合があります。

上記サイトによると、エラーメッセージは「Access is denied.:ファイルやレジストリのアクセス拒否が発生した」ことを意味するそうです。

また、Windows Updateの機能が破損している場合以外に、レジストリの設定値に原因があるようです。

レジストリの設定値の変更は、場合によってはパソコンが正常動作しなくなるなどの深刻な問題を引き起こす可能性があります。

そのため、十分な知識がない上で操作をすることは、お勧めできません。

今回のWindows Updateの更新時にエラー0x80080005が表示された問題ではレジストリを操作することなく解決できました。

レジストリを操作するのは、以下の方法を試しても解決できなかったときの最終手段と考えた方が良いかもしれません。

ちなみに、レジストリを操作する場合は、OSの再インストールをすることも考慮して、必要なデータやアプリなどは予めバックアップを取っておいた方が良いです。

 

0x80080005

 

ディスクのクリーンアップ

Windows Updateを行う場合、ハードディスクの空き領域が足りないと更新ファイルをダウンロードできず、Windows Updateの更新ができない場合があります。

また、空き領域があるにもかかわらず、Windows Updateの更新ができない場合もあります。

この原因として、Windows Updateでダウンロードされた更新ファイルのコピーがハードディスク内に保持され、度重なる更新によって数GBに膨れ上がり、Windows Updateが失敗するということが挙げられます。

なので、この保持された更新ファイルを削除する必要が出てきます。

更新ファイルを削除するには、「ディスクのクリーンアップ」→「システムファイルのクリーンアップ」→「Windows Updateのクリーンアップ」を実行します。

「Windows Updateのクリーンアップ」を実行する手順は以下の通りです。

1. ローカルディスクのプロパティを開く。

ローカルディスクのプロパティを開くには、ローカルディスクのアイコン上で右クリックを押します。

すると、メニューが表示されるので、そのメニューの一番下に表示される「プロパティ」をクリックします。

 

local_disk_property

 

2. ディスクのクリーンアップを開く

ローカルディスクのプロパティを開くと、「全般」タブが選択された状態で開きます。

「ディスクのクリーンアップ」は、「全般」タブにあるので、すぐに分かると思います。

「ディスクのクリーンアップ」をクリックします。

 

local_disk_property_window

3. システムファイルのクリーンアップを開く

「ディスクのクリーンアップ」を開くと、「削除するファイル」としていくつかの項目が一覧として表示されます。

この項目では、コピーされたWindows Updateの更新ファイルはまだ表示されません。

「システムファイルのクリーンアップ」では、この項目以外にWindowsのシステムに関係するより細かなファイルが削除できます。

なので、「システムファイルのクリーンアップ」をクリックします。

 

disk_cleanup_window

 

4. Windows Updateのクリーンアップ

「システムファイルのクリーンアップ」をクリックすると、削除するファイルに新たな項目が追加されます。

例えば、「Windows Updateのクリーンアップ」は、「システムファイルのクリーンアップ」を実行するまでは表示されていません。

今回は、Windows Updateを行った直後にディスクのクリーンアップを行っているのですが、既に「Windows Updateのクリーンアップ」が1.4GBになっています。

この容量が大きくなりすぎるとWindows Updateが実行できなくなるので、「Windows Updateのクリーンアップ」のチェックボックスにチェックを付け、「OK」をクリックして実行します。

 

windows_update_cleanup

 

さて、問題は、Windows Updateを行うとエラー0x80080005が出て更新できないということでした。

では、このディスクのクリーンアップを行って、今回の問題が解決できたかというと、残念ながら解決できませんでした…。

スポンサーリンク

 

Windowsイメージの修復

エラー0x80080005の問題を解決する方法として、Windowsイメージの修復が挙げられます。

実行手順は、以下のサイトを参考にしました。

 

 

1. コマンドプロンプト(管理者権限)の起動

Windowsイメージの修復をする場合、まず、コマンドプロンプトを起動します。

コマンドプロンプトを起動する場合、「管理者として実行」で起動する必要があります。

コマンドプロンプトを管理者として実行する方法として、コマンドプロンプトのアイコンを右クリックして表示されるメニューにある「管理者として実行」(赤枠)をクリックする方法が挙げられます。

別の方法としては、スタートメニュー(緑枠)を右クリックして表示されるメニューにある「コマンドプロンプト(管理者)」(青枠)をクリックする方法が挙げられます。

 

start_command_prompt
アイコンからの起動 スタートメニューからの起動

コマンドプロンプトを管理者で実行した場合、初期の選択フォルダが異なります。

 

 通常実行  管理者で実行
C:\Users\ユーザー名>          
C:\Windows\system32>         

コマンドプロンプトを通常実行で起動した場合、これから入力するコマンドを実行してもエラーになります。

割と長いコマンドなので、入力する前に確認しておきましょう。

2. DISM.EXEの実行

windowsイメージの修復には、dism.exeを実行します。

dismとは、以下の通りです。

展開イメージのサービスと管理 (DISM.exe) は、Windows イメージの処理と準備に使用できるコマンド ライン ツールです。

DISMとは

dismのコマンドを入力する場合、以下に示すように「 /」の前に半角スペースを入れることを忘れないようにしてください。

「/」の前に半角スペースがない場合、エラーが出ます。

C:\Windows\system32> dism /online /cleanup-image /restorehealth
 誤
C:\Windows\system32> dism/online/cleanup-image/restorehealth

参考サイトでは、dism.exeの実行前にWSReset.exe行っていますが、WSResetはWindowsストアやアプリが実行できない場合に行うので、今回は実行しませんでした。

また、dismの「restorehealth」の後に「startcomponentcleanup」を行っていますが、これも実行しませんでした。

3. SFC.EXEの実行

DISM.EXEを実行した後、次に「sfc /scannow」を行います。

「sfc /scannow」もDISM.EXEを実行する時と同様で、コマンドプロンプトを「管理者として実行」する必要があります。

しかし、dismを実行した後、コマンドプロンプトを終了せずにscannowを実行すれば問題ありません。

scannowも「/」の前に半角スペースを入れることを忘れないようにしてください。

C:\Windows\system32> sfc /scannow

 

 

最後に

参考サイトでは、dismやsfcを行った後のPowerShellで「Get-AppXPackage -AllUsers~」を行っています。

これは、以下のサイトを見ると、Windows 10のインストールファイルから必要なSystem Appを取り出して再インストールするそうです。

私もWindows 10にアップグレードした時、スタートメニューが動作しないということがありましたが、上記サイトのようなことはしませんでした。

アップグレード時期が無料アップグレードの終了直前で、既にWindows Updateで改善されていたからかもしれません。

いずれにせよ、今回はWSResetでWindowsストアのリセットも行わなかったので、「Get-AppXPackage -AllUsers~」を必要ないと思ったからです。

なので、私が行った手順は、dismでrestorehealthを行い、sfcでscannowを行うまでです。

ここまでの手順で結果はどうなったかというと、ちゃんとWindows Updateが出来るようになりました。

当施設の利用者さんの中にはWindows 10にアップグレードした人はいないので、今回のようなエラーを経験する人はいないと思います。

しかし、当施設の利用者さんではない知人から、Windows Updateの更新が出来ないという相談を受け、ディスクのクリーンアップやWindowsイメージの修復で更新が出来るようになったので、今後の参考になればと思います。

 

 

コメント

タイトルとURLをコピーしました