Windows – “現在サービスが実行されていないため、Windows Update で更新プログラムを確認できません”を解決する方法

Windows
この記事は約6分で読めます。
スポンサーリンク

Windowsパソコンで、何らかの原因でエラーとなり、Windows Updateの「更新プログラムの確認」が出来ないことがあります。

Windows Update

「更新プログラムの確認」をクリックしても…

更新プログラムを確認できません

“現在サービスが実行されていないため、Windows Update で更新プログラムを確認できません。このコンピューターの再起動が必要な可能性があります。”とだけ言われ、試しに再起動しても同じことの繰返しなので、とりあえず、MicrosoftサポートのFix itを行いますが、ほとんど解決に至りません。

Windows の更新に関する問題のトラブルシューティング - Microsoft サポート
Windows の更新に関する問題のトラブルシューティングを行う方法について説明します。 Windows の更新プログラムのインストールに関する一般的な質問と問題に対する回答を探します。

Fix it

「コントロールパネル」>「管理ツール」>「サービス」の[Background Intelligent Transfer Service]を確認し、[状態]が[開始]でなければ[開始]しても解決せず…。

管理ツール > サービス

こういった場合、原因の特定は困難ですが、とりあえずはエラーを回避して更新プログラムのダウンロードとインストールを実行することが優先されます。ほとんどの場合、Windows Update のキャッシュ情報をクリアすることで回避できます。コマンドを実行することでキャッシュのある[SoftwareDistribution]フォルダと[catroot2]フォルダがリネームされてクリアされます。
ただし、キャッシュをクリアすると、以下のような影響があります。

  • [更新履歴の表示] の情報がクリアされます。(更新プログラムの適用状態や今後の適用動作には全く影響ありません。また、更新プログラムのインストール状況は「コントロールパネル」>「プログラムと機能」の[インストールされた更新プログラム]で確認出来ます。)
  • 更新プログラムの「非表示」設定が解除されます。
  • 次回更新時にキャッシュされていた情報を再ダウンロードすることになるので、情報の取得に時間がかかることが予想されます。

下記コマンドラインをテキストエディタにコピペしてバッチファイルを作り(拡張子.batで保存)、「管理者として実行」することでキャッシュがクリアされます。
その後、PCを再起動すれば、エラーを回避して「更新プログラムの確認」が出来るようになります。

スポンサーリンク

Windows 7の場合

net stop wuauserv
net stop bits
cd %systemroot%
ren SoftwareDistribution SoftwareDistributionold
net start bits
net start wuauserv
net stop cryptsvc
cd %systemroot%\system32
ren catroot2 catroot2old
net start cryptsvc

Windows 10の場合

net stop usosvc
net stop dosvc
net stop wuauserv
net stop bits
cd %systemroot%
ren SoftwareDistribution SoftwareDistributionold
cd %ALLUSERSPROFILE%
del Microsoft\Network\Downloader\qmgr0.dat
del Microsoft\Network\Downloader\qmgr1.dat
net start bits
net start wuauserv
net stop cryptsvc
cd %systemroot%\system32
ren catroot2 catroot2old
net start cryptsvc
net start dosvc
net start usosvc

各コマンドの意味は下記の通りです。

Windows 7及び10

net stop wuauserv

[自動更新] または [Automatic Updates] または [Windows Update] サービスの停止。

net stop bits

[Background Intelligent Transfer Services] サービスを停止。

net start bits
cd %systemroot%

システムルートフォルダに移動。

ren SoftwareDistribution SoftwareDistributionold

[SoftwareDistribution]フォルダを[SoftwareDistributionold]にリネーム。

net start wuauserv

[自動更新] または [Automatic Updates] または [Windows Update] サービスを開始。

[Background Intelligent Transfer Services] サービスを開始。

net stop cryptsvc

[カタログ データベース]サービス、[保護ルート]サービス、[ルート証明書自動更新]サービス、[キー ]サービスを停止。

cd %systemroot%\system32

システムルートフォルダの[system32]フォルダに移動。

ren catroot2 catroot2old

[catroot2]フォルダ(「更新プログラムなどを確認する署名」を保管するフォルダ)を[catroot2old]にリネーム。

net start cryptsvc

[カタログ データベース]サービス、[保護ルート]サービス、[ルート証明書自動更新]サービス、[キー ]サービスを開始。

Windows 10のみ

net stop usosvc

[Update Orchestrator] サービスを停止。

net stop dosvc

[Delivery Optimization] サービスを停止。

cd %ALLUSERSPROFILE%

[ProgramData]フォルダに移動。

del Microsoft\Network\Downloader\qmgr0.dat
del Microsoft\Network\Downloader\qmgr1.dat

BITSのジョブを削除します。BITS(アイドル中のネットワーク回線の帯域幅を使用して、バックグラウンドで更新プログラムをダウンロードする機能)において、ダウンロードに失敗した更新プログラムが BITS キューに滞留している場合を想定し、上記のコマンドを順番に実行してキューから削除します。

net start dosvc

[Delivery Optimization] サービスを開始。

net start usosvc

[Update Orchestrator] サービスを開始。

以下を参考にさせていただきました。

Archived MSDN and TechNet Blogs
Additional resources for Windows Update - Windows Client
Describes details about to troubleshooting WSUS and resetting Windows Update components manually.
Windows
スポンサーリンク
スポンサーリンク
J.をフォローする
スポンサーリンク
アトリエJ.

コメント

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