【Windows】 更新プログラム適用時のエラー解決法



今月10日、Microsoftは Windows XP ~ 7 / Server 2003 ~ 2008 R2 を
対象とする修正プログラムの公開を始めました。

今回の修正プログラムを適用するときは、
通常より時間がかかる場合があります。

それは置いといて・・・

Windows Update で更新プログラムを適用中に、
エラーをはいて更新がストップすることがあります。

今回は、僕が実際に経験した以下のエラーと解決法を紹介します。
・643 ・80070011







・エラーコード:643
   これは.NET Frameworkの修正パッチを適用している時に起こることが多いようです。
   僕も.NET Frameworkの更新時にこのエラーが出ました。

   ・解決法
      1、修正プログラムが.NET Frameworkのどのバージョンを対象にしているか調べます。
       Windows Update の項目の欄に、「.NET Framework 4.0」等とあるはずなので、
       この数字を覚えておきます。(例ではバージョンは4.0になります)

      2、Microsoftのホームページから、対象となるバージョンの
       .NET FrameworkのインストーラをDLしてきます。
       → http://p.tl/TKlS (.NET Framework 4.0 のインストーラの場合)

      3、ダウンロードが終了したら、インストーラを実行して
       「修正」を選択します。
       (修正には時間がかかる場合があります)

      4、修正が終了したら、再起動を促されますが今回は「後で再起動」を選択します。

      あとはWindows Updateで、.NET Frameworkの修正パッチを適用してみてください。
      僕はこの方法で、エラー643は解決できました(・ω・`)




・エラーコード:80070011
   これはProgram Filesフォルダや、更新の対象となるプログラムのフォルダを
   junctionしている場合に発生します。

   ・解決法
      ※レジストリを変更します。全て自己責任でお願いします。
      1、レジストリエディタを起動します。
       (Windowsキー + R で、「名前を指定して実行」に regedit と入力しEnter)

      2、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
       を開きます。

      3、エディタ右側の欄の「ProgramFilesDir」をダブルクリックします。

      4、値のデータをjunction先に指定します。
       (一部のプログラムのみをjunctionしていて、修正パッチがエラーをはいた場合は
        該当プログラムが保存されているフォルダを指定します。
        なお、この場合は修正パッチ適用後に元の値に戻す必要があります)

      5、「OK」を押して閉じます。

      64bit環境の方で、Program Files (x86)もjunctionしている場合は
      3に戻り、「ProgramFilesDir (x86)」もjunction先に書き換えてください。

      6、修正パッチを適用します。

      7、適用後、4で()内に該当した方はもう一度エディタを開き
       「ProgramFilesDir」(環境によっては(x86)の方も)を元の値に戻します。

      僕はIEのみをjunctionしていて、修正パッチがIE対象だったので
      エディタの方はIEのjunction先フォルダを指定しました。
      もちろん、32bit/64bit両方をね(・ω・`)
関連記事