コンピュータのメンテナンス
 Computer >> コンピューター >  >> トラブルシューティング >> コンピュータのメンテナンス

Windows Updateエラー0x80070057の原因と解決方法を完全解説

Windowsエラー0x80070057は、Windows XPの時代から存在する有名なエラーコードの一つです。多くのシステム管理者を悩ませてきたこのエラーは、さまざまなシステムエラーに伴って発生します。

とはいえ、決して修正が難しいエラーではありません。この記事では、具体的な対処法をわかりやすくご紹介します。

Windowsエラーコード0x80070057とは何か?

0x80070057というエラーコードは、Windowsがストレージ関連の問題に遭遇したことを意味します。ハードディスクやSSDの空き容量不足でファイルのダウンロードやコピーができなかった可能性があります。また、ファイルシステムの非互換性、ハードディスクの破損、その他ストレージに関連する問題を示している場合もあります。

「不明なエラー」「パラメータが無効です」「サービスが実行されていません」

エラー0x80070057と共に表示されるメッセージは、更新サービスのどの部分でエラーが発生したかによって異なりますが、一般的には「不明なエラー」「指定されていないパラメータが検出されました」「必要なサービスが実行されていません」などのバリエーションです。

その後、更新サービスや実行中の作業は中断され、元の状態に戻されてしまいます。

特に2016年のWindows 10 Anniversary Update(Windows 10 Build 1607)では、このエラーに関する報告が多数寄せられました。このエラーは通常Windows Updateプロセスに関連しているため、多くのユーザーが不満を抱くことになりました。

更新プロセスが未完了のまま中断されてシステムが一時的に動作しなくなったり、単純にWindows 10 Build 1507(Threshold 1)へ強制的に戻されたりしたケースもありました。残念ながら、このエラーは現在でも発生し続けています。

エラー0x80070057は通常、以下のような状況で発生します。

  • ファイルのバックアップを実行しようとした際に、データの破損がある
  • Windowsオペレーティングシステムをインストールしようとした際に、システム予約済みパーティションが破損している
  • 破損したレジストリやポリシーエントリがWindows Updateプロセスを妨げている
  • 更新プログラムのインストール中に問題が発生し、システムが後で再試行しようとしている

いずれも厄介な問題ですが、すべて解決可能です。

エラーコード0x80070057を修正する11の一般的な方法

エラーコード0x80070057の厄介な点は、何が原因なのか正確に把握できないことが多いことです。Windows Update中に発生したのであれば、ストレージ容量不足である可能性が高いですが、それはあくまで推測にすぎません。

ここからは、簡単な対処法から順番に、あらゆる修正手段をご紹介していきます。特定のエラーメッセージが表示されている場合は、後半の該当セクションも確認してみてください。

1. ドライブの空き容量を確保する

エラー0x80070057は、更新ファイルのサイズが非常に大きいため、Windows Updateとともに発生することがよくあります。さらに、Windowsがシステム全体のアップデートを行う際には、旧バージョンを「Windows.old」というフォルダに保存します。これには数ギガバイト以上のストレージ容量が必要になることもあります。

こうした状況でWindows Updateが失敗することが多いのです。ただし、このエラーが表示されるのはこの時だけではありません。

システムドライブの空き容量を確認するには、Win + Eキーを押してエクスプローラーを起動し、「PC」を開きます。空き容量が少ないようであれば、ドライブを右クリックして「プロパティ > ディスククリーンアップ > システムファイル」を選択します。

削除できる項目、特に「ごみ箱」と「Windows Update Cleanup」にチェックを入れ、「OK」をクリックして「ファイルの削除」で確定します。復元用にWindows Updateファイルを残しておきたい場合は、「システムファイル」のステップをスキップして、ディスククリーンアップから始めても構いません。

それでもエラーが発生する場合は、Windowsのストレージ領域をさらに空けるか、以下の解決策に進んでください。

2. Windowsの日付と時刻を同期する

Windowsの時計がずれていると、エラーコード0x80070057を含むさまざまな問題が発生する可能性があります。あまり一般的な原因ではありませんが、修正は比較的容易です。

まず、タスクバー右端の時刻をクリックして日付と時刻を確認します。正しく表示されていればこのステップは不要ですが、実際の時刻・日付と一致していない場合は、タスクバーを右クリックして「日付/時刻の調整」を選択します。以下のオプションを有効にすることをおすすめします。

  • 時刻を自動的に設定する
  • タイムゾーンを自動的に設定する
  • 夏時間を自動的に調整する

設定後、「今すぐ同期」をクリックしておきましょう。Windowsの時刻が繰り返しずれる場合は、より深刻な問題があるかもしれません。

3. Windows Updateを確認する

エラーコード0x80070057がWindows Updateとは無関係に表示された場合、保留中の更新プログラムが原因である可能性があります。Win + Iキーを押して設定を開き、「Update & Security(更新とセキュリティ)」から「更新プログラムのチェック」をクリックします。保留中の更新プログラムをインストールしてから、再度試してみてください。

4. Chkdskを実行する

Chkdskは、破損したファイルを素早く検出・修復できる最も手軽なツールです。このWindows標準ツールはハードドライブ全体をスキャンし、ハードウェアの不具合も特定できます。

Chkdskを実行するには、Win + Eキーでエクスプローラーを起動し、「PC」を開いてシステムドライブを右クリックし、「プロパティ」を選択します。

次に「ツール」タブに切り替えて「チェック」をクリックし、「ドライブのスキャン」を選択します。スキャンはバックグラウンドで実行されます。問題が見つかった場合は対処方法を選択できます。修復を実行してシステムを再起動することをおすすめします。

5. システムファイルチェッカーを使用する

Windowsには、システム内の破損ファイルをスキャンできる「システムファイルチェッカー(SFC)」という組み込みツールがあります。このツールは予期しない破損を検出して修復し、システムを正常な動作状態に戻すことができます。

スタートメニューを右クリックして「コマンドプロンプト(管理者)」または「Windows PowerShell(管理者)」を選択し、昇格されたコマンドプロンプトを開きます。次のコマンドを実行してください。

sfc /scannow

このコマンドには時間がかかることがあります。検証が100%完了するまで、コマンドプロンプトウィンドウを閉じないでください。完了すると、以下のいずれかのメッセージが表示されます。

  • Windows Resource Protection did not find any integrity violations. 破損したファイルは見つかりませんでした。別の解決策を試す必要があります。
  • Windows Resource Protection could not perform the requested operation. セーフモードで再起動してから、コマンドを再実行してください。
  • Windows Resource Protection found corrupt files and successfully repaired them. 修復内容の詳細はCBS.Log(%WinDir%\Logs\CBS\CBS.log)に記録されています。
  • Windows Resource Protection found corrupt files but was unable to fix some of them. 一部の破損ファイルを手動で修復する必要があります。以下の手順で破損ファイルを特定し、正常なコピーと置き換えてください。

最後の2つのメッセージが表示された場合は、システムファイルチェッカーのログを確認しましょう。特に最後のメッセージが表示された場合は重要です。

まず、スタートメニューを右クリックして「コマンドプロンプト(管理者)」または「Windows PowerShell(管理者)」を選択し、次のコマンドを実行します。

findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log >"%userprofile%\Desktop\sfcdetails.txt"

これにより、ログの詳細がデスクトップ上のテキストファイルにコピーされます。Windowsのインストールが新しい場合、ログには問題がないはずです。

しかし、SFCプロセスで自動的に置き換えられなかった破損ファイルがある場合は、以下のようなエントリが見つかります(Microsoftサポートドキュメントからの抜粋)。

2007-01-12 12:10:42, Info CSI 00000008 [SR] Cannot repair member file [l:34{17}]"Accessibility.dll" of Accessibility, Version = 6.0.6000.16386...

続いて、コマンドプロンプトを使って破損ファイルを正常なコピーと置き換えます。まず、昇格されたコマンドプロンプトを開きます。

破損したファイルの所有権を取得する必要があります。以下のコマンドの pathandfilename の部分は、前のステップで作成したsfcdetails.txtに記載されている情報に置き換えてください。

takeown /f pathandfilename

次に、管理者に破損ファイルへのフルアクセス権を付与します。

icacls pathandfilename /grant administrators:F

最後に、以下のコマンドで破損したシステムファイルを正常なコピーと置き換えます。

copy sourcefile destinationfile

例えば、同じOS(同じバージョン・ビルド)が稼働する別のシステムからUSBメモリ経由で正常なシステムファイルをコピーした場合、コマンドは以下のようになります。

copy f:\usbstick\jscript.dll c:\windows\system32\jscript.dll

6. DISMコマンドを実行する

上記の手動置き換えが難しい場合や、置き換えるべきファイルが多すぎる場合は、DISMコマンドを利用できます。

DISM(Deployment Image Servicing and Management)は、システムファイルの健全性をダウンロードして復元するために使用できるコマンドです。昇格されたコマンドプロンプトまたはPowerShellから、以下のコマンドを入力します。

DISM /Online /Cleanup-Image /RestoreHealth

システムの状態や破損の程度によっては、このコマンドの完了までに時間がかかることがあります。進捗が20%で止まって見えることが知られています。

そのような場合は、しばらく待ちましょう。自動的に処理が再開されるはずです。完了後、ファイルが置き換えられたかどうかを確認します。置き換えられていた場合はコンピュータを再起動し、sfc /scannowコマンドを再度実行してください。今度は破損ファイルが正常に置き換えられるはずです。

7. グループポリシーによる干渉を修正する

Windows 10の登場当初、多くのユーザーがMicrosoftによる強制的なWindows Updateの仕組みに反発し、Pro版ユーザーの中にはグループポリシー設定を変更して更新システムを無効化する人がいました。

しかし、このポリシーへの干渉こそが、Windows Updateプロセスの問題の原因となっている可能性があります。

Win + Rキーで「ファイル名を指定して実行」を開き、「gpedit.msc」と入力してEnterキーを押します。次のパスに従ってください。「コンピューターの構成 > 管理用テンプレート > Windowsコンポーネント > Windows Update > 自動更新を構成する > 未構成」。

システムを再起動すると、更新が完了する可能性があります。

8. Windows Updateリポジトリをリセットする

場合によっては、Windows Updateリポジトリをリセットすることで問題が解消されることがあります。これはやや長いプロセスなので、この記事では詳細を省略します。

代わりに、Microsoftサポートの公式ドキュメントに全プロセスが詳しく説明されていますので、そちらを参照して試してみてください。

9. Windows Updateトラブルシューティングツール

Windows Updateトラブルシューティングツールは、グループポリシーやその他のシステム設定の影響を受けるため、このエラーに対してどれほど有効かは不明です。

しかし、どうしても更新を完了できない場合は、ダウンロードして試してみる価値があります。

Microsoftの公式ページからWindows Updateトラブルシューティングツールをダウンロードし、実行してください。

「Windows Update」を選択し、「詳細」から「管理者として実行」を選びます。これによりトラブルシューティングツールが管理者権限で実行され、より広範囲の問題を検出・解決できるようになります。「次へ」を押します。

トラブルシューティングツールが自動的にシステムをスキャンし、Windows Updateに影響する問題を探します。問題が見つかった場合は、自動修復のチェックボックスを外さない限り、自動的に修復が試みられます。

10. システムの復元、リセット、またはドライブのフォーマットを行う

これはほぼ最終手段です。前回の復元ポイント以降の変更が失われたり、リセットやフォーマット後はシステムを一からセットアップし直したりする必要があるためです。しかし、Windowsやソフトウェアに起因する問題であれば、確実に解決できます。Windows 10を初期化する方法に関する記事では、影響の少ないものから順にすべての選択肢を紹介しています。システムを初期化する前に、必ずバックアップを作成してください。

11. 新しいドライブに投資する

すべての方法が失敗した場合、問題はハードウェアにある可能性があります。最後に試せるのは、システムドライブを新しいSSDに交換することです。

エラーコード0x80070057の具体的なメッセージとその対処法

エラーコード0x80070057と共に具体的な説明文が表示された場合は、以下の個別の解決策が役立つかもしれません。

1. 「後でもう一度お試しください」

Anniversary Update以降、一部のWindows 10ユーザーが以下のWindows Updateエラーメッセージを目にしています。

更新プログラムのインストール中にいくつかの問題が発生しましたが、後でもう一度お試しください。このメッセージが繰り返し表示される場合は、Webで情報を検索するかサポートに問い合わせてください。(0x80070057)

この問題を緩和するための方法がいくつかあります。

SoftwareDistributionフォルダの名前を変更する

Win + Rキーで「ファイル名を指定して実行」を開き、「%SystemRoot%」と入力してEnterキーを押します。下にスクロールして「SoftwareDistribution」フォルダを見つけ、名前を「SoftwareDistribution.old」に変更します。その後コンピュータを再起動し、更新を試みてください。

Windowsレジストリを変更する

それでも解決しない場合は、Windowsレジストリを変更します。Win + Rキーで「ファイル名を指定して実行」を開き、「regedit」と入力してEnterキーを押します。

以下のレジストリエントリが自分の環境と一致していることを確認してください。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX]
"IsConvergedUpdateStackEnabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings]
"UxOption"=dword:00000000

必要に応じて値を変更し、システムを再起動してアップグレードを試みます。

2. 「パラメータが間違っています」

このケースでは、Windowsの内蔵サービスを使ったバックアッププロセスが開始されますが、途中で失敗し、以下のメッセージが生成されます。

内部エラーが発生しました: パラメータが間違っています (0x80070057)

Win + Rキーで「ファイル名を指定して実行」を開き、「regedit」と入力してEnterキーを押します。次のレジストリキーを見つけてください。

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\SystemCertificates

SystemCertificates」を右クリックし、「新規 > DWORD (32ビット) 値」を作成します。名前を「CopyFileBufferedSynchronousIo」とし、「」を「1」に設定します。「OK」を押してシステムを再起動すると、バックアップが完了するはずです。

小数点記号を変更する

コントロールパネル > 時計と言語、および地域」に移動します。「地域」の下の「日付、時刻、または数値の形式の変更」を選択します。新しいパネルが開くので、「追加設定」を選択します。「小数点記号」オプションの横にピリオド(.)が設定されていることを確認し、「適用」、「OK」を押します。

他に選択肢はある?

Microsoftの無料ツール「SetupDiag」も、Windows Updateエラーの分析と修正に役立ちます。また、Yamicsoft Windows 8 ManagerでWindows Updateの問題が解決したという報告もあります。

筆者自身はこの方法を試したことがないため、予期しない副作用の可能性も考慮し、慎重に進めることをおすすめします。ご注意ください。

これでWindows Updateエラー0x80070057に対処できる

これで、あなたのシステムは正常に更新されているはずです。さらに、今後同様のWindows Updateの問題が発生した際にも適切に対処できるようになったでしょう。Microsoftが強制的な更新の仕組みを続ける限り、一般ユーザーに悪影響が出た場合、このシステムは厳しく精査されることになります。

  1. Windows 10の更新エラー0x80070652を解決する方法を徹底解説

    Windows 10のパソコンで「0x80070652」というエラーコードが表示されてお困りではありませんか?このエラーは「ERROR_INSTALL_ALREADY_RUNNING(インストールがすでに実行中です)」というメッセージとともに表示されることがあります。このエラーは、以前のWindows 10のインストールが正常に完了しなかった場合によく発生します。Windows 10の更新プログラムのインストール処理が途中で止まってしまうと、このエラーメッセージが表示されるのです。とはいえ、このエラーが表示されても心配はいりません。適切な手順を踏めば解決できる問題です。ここでは、エラー0x80

  2. Windows Updateの0x80070057エラーを解決する10の方法【完全ガイド】

    Windowsは、その豊富な機能により世界で最も利用されているオペレーティングシステムです。Microsoftは定期的なアップデートによってパフォーマンスの向上やバグ・エラーの修正を行っていますが、アップデートのインストール中にWindows Updateエラー0x80070057が発生し、更新が完了できないケースがあります。このエラーは、破損したファイルやプログラム、悪意のあるソフトウェア(マルウェア)などが原因で起こることがあります。 本記事では、0x80070057エラーの主な原因と、初心者でも実践できる具体的な解決策を順番にご紹介します。 Windows Updateエラー0x8007