WindowsXPのサポート終了も近づいてきたということで、最後の足掻きでFixをあてまくることを決意。
しかし、久しぶりにWindows Updateをやろうと思ったらダウンロードに失敗するんですけどー!
まずは原因を調べなくてはなりません。
とりあえず、更新プログラムのインストール履歴を確認します。
確認方法は下記のページでご確認を。
Windows XP で Microsoft Update や Windows Update の更新プログラムが正しくインストールされたかどうかを確認するには?
確認したら表示されているエラーコードを元に調べ尽くす。
早い話、それだけのことなんですよね。
エラーコードを元に調べて、ある機能が正常に機能していないということが判明。
機能していないのは
バック グラウンド インテリジェント転送サービス (BITS:Background Intelligent Transfer Service)
Windowsのサービスのひとつで、バックグラウンドでファイルの送受信を行うのが仕事。
Updateの更新プログラムが自動更新する際に機能しているのだそうです。
これが機能していないことでWindows Updateも機能しないと。
だったら、この機能を眠りから覚ましてやろうじゃございませんか。
まずはサービスを確認。
———————————————————————————-
[コントロールパネル]-[管理ツール]-[サービス]
または [ファイル名から実行]で「services.msc」と入力してOK:サービスを起動
[Background Intelligent Transfer Service]を探してサービスを開始する
———————————————————————————-
…?
……??
ない?サービスがない!!
そもそもサービスがないんじゃ起こすこともできないじゃないのよ!
ということで、失敗から成功までの軌跡を覚え書きってことで書いておきます。
どなたかのお役に立てればこれ幸い也。
====================================================
※以下の作業中レジストリを扱う箇所がありますので事前にレジストリのバックアップをとっておくことをおすすめします
※実施環境はWindows XP ServicePack3の適用済みです
====================================================
ワタシの環境では更新履歴で「0x80246008」というエラーコードが出てきました。
これを元に拾ったヒントがこちら
マイクロソフト コミュニティ:BITSがサービスに表示されません(Updateエラー0x80246008)
マイクロソフト コミュニティ:Windows Updateでインストールに失敗します。エラーコード:0x80246008ですが、BTISが開始できない事が原因のようです。
この2つでかなり行ったり来たりしてしまったので、時系列で整理してみようと思います。
———————————————————————————-
レジストリ エディターを起動
[ファイル名から実行]で「regedit」と入力してOK
次のフォルダへ移動する
HKEY_Local_Machine\Software\Microsoft\WindowsNT\CurrentVersion\SvcHost
右側のボックスから[netsvcs]をダブルクリック
表示されたボックスの中から「BITS」を探す
あればそのまま[OK]/なければ「BITS」と入力して[OK]
↓
レジストリ エディターを終了
[ファイル]-レジストリ エディターの終了
または
ウィンドウの閉じるボタンをクリック
↓
パソコンを再起動
レジストリ エディターを起動
次のフォルダへ移動する
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
[BITS]を右クリック→[新規]をポイントし[DWORD値]をクリック
UseLmCompat と入力→[Enter]
右側のウィンドウで[UseLmCompat]を右クリック→[修正]をクリック
[値のデータ]ボックスに「0」と入力→[OK]
↓
レジストリ エディタを終了してパソコンを再起動
コマンド プロンプトを起動
[スタート]→[アクセサリ]→コマンド プロンプト
または
[スタート]→[ファイル名を指定して実行]→名前のところに「cmd」と入力して[OK]
C:\Windows>
↑ここは使っているパソコンによって表示が変わりますがそのままで大丈夫です
regsvr32 qmgr.dll
と入力して[Enter](メッセージボックスが出たら[OK]をクリック)
regsvr32 qmgrprxy.dll
と入力して[Enter](メッセージボックスが出たら[OK]をクリック)
↓
コマンド プロンプトを終了
exitと入力して[Enter](→画面が自動的に閉じる)
または
ウィンドウの閉じるボタンをクリック
↓
パソコンを再起動
コマンドプロンプトを起動
%windir%\System32\rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 %windir%\inf\qmgr.inf
と改行なしで入力して[Enter]
インストールがスタートします
WindowsXPのインストールCDを要求される場合があります
→メディアがあればそれを利用しましょう
→メディアがない時は参照から[C:\Windows\ServicePackFiles\i386]のフォルダを開き「qmgr.inf」をクリック
→インストール再開(メッセージボックスが出たら[OK]をクリック)
↓
コマンドプロンプトを終了しパソコンを再起動
(BITS を手動で開始)
サービスを起動
「Background Intelligent Transfer Service」をダブルクリック
「サービスの状態」の[開始]をクリック
→開始されない場合は【A】を実行
【A】
コマンドプロンプトを起動
Reg add HKLM\SYSTEM\CurrentControlSet\Services\bits\Parameters /v ServiceDll /t REG_EXPAND_SZ /d “%systemroot%\system32\qmgr.dll” /f
と入力して[Enter]→メッセージが出たら[OK]
コマンドプロンプトを終了しパソコンを再起動
再度BITS を手動で開始
→開始されない場合は【B】を実行
【B】
コマンドプロンプトを起動
Reg add HKLM\SYSTEM\CurrentControlSet\Control\BackupRestore\FilesNotToBackup
と入力して[Enter]→メッセージが出たら[OK]
コマンドプロンプトを終了しパソコンを再起動
→開始されない場合は【C】を実行
【C】
C:\Documents and Settings\All Users\Application Data\Microsoft\Network\Downloaderフォルダーを削除
再度BITSを手動で開始
———————————————————————————-
BITSが開始できたら試しにWindows Updateのカスタム機能で1つか2つくらい更新プログラムをインストールしてみましょう。
ワタシの場合は【B】までの処理でWindows Updateが正常に動作し始めました。
念のために下記のFixをダウンロード→インストールして最新版に更新
Background Intelligent Transfer Service (BITS) 2.0 と WinHTTP 5.1 用更新プログラム (KB842773)
※WindowsXP SP3がインストールされている場合は実行すると「最新版です」と表示され終了します
BITSを自動で開始するには
BITSを開始するときに[スタートアップの種類] ボックスで[自動] をクリックし[OK]
次回起動時から自動的に開始されます
遠回りしたり行ったり来たりで結構パニクったこともあり、インストール成功したときは「おっしゃー!」ってな感じでした。
っていうか、もうFixあてる前に全てやりきった感があって、そこからが本番だということを忘れそうになるわな。エヘヘ。
とりあえず1台はこれでクリア。
でも、もう1台あるんだよね、WindowsXPマシンは。
こちらはさらに面倒なことになるんですが、それはまた改めて。
|