ロジクールのマウスを購入しました。
しかし、デバイスドライバがインストールできません。
カスタマーサポートの方もお手上げ・・・。
それだけでなく、
Googleの日本語入力ソフト、
WindowsでLinuxの機能を使うCygwinなどなど・・・
が正常にインストールできません。
原因はWindows Vista Service Pack 1を導入していないからです。
しかし、更新プログラムの自動インストールは必ず失敗します。
マイクロソフトの公式サイトから手動でダウンロードすればいいと聞いたが、これも失敗・・・。
インストールが失敗した時に表示されるエラー画面が以下です。
------------------------------------------------------------
インストールは成功しませんでした
Service Pack のインストール中に内部エラーが発生しました
0x800B0100
------------------------------------------------------------
その解決方法が以下です。
「Windows Vista および Windows Server 2008 Service Pack
のインストールの問題のトラブルシューティング方法」
http://support.microsoft.com/kb/947366
・・・以下、補足で続きます。
問題が解決せず、残念ですが、現時点の内容をまとめたいと思います。
今回、表示されているエラーコードは以下のようなものでした。
コード | エラー | 説明(日本語) | 説明(英語) |
---|---|---|---|
0x8007000D | ERROR_INVALID_DATA | データが無効です。 | The data is invalid. |
0x800B0100 | TRUST_E_NOSIGNATURE | サブジェクトに署名がありませんでした。 | No signature was present in the subject. |
0x800B0001 | TRUST_E_PROVIDER_UNKNOWN | 信頼プロバイダが不明です。 | The specified trust provider is not known on this system. |
■ Windows Update/Microsoft Updateのトラブルを解消する(SoftwareDistributionフォルダを修復する方法) - @IT
http://www.atmarkit.co.jp/fwin2k/win2ktips/944rcvsoftdist/rcvsoftdist.html
にて、改善しているのではと思われます。
■ エラー コード 0x800B0100 が、Windows Update または Microsoft Update を使用して更新プログラムをインストールするときに表示される
http://support.microsoft.com/kb/956702/ja
Windows 2000、Windows XP、または Windows Server 2003 であれば、
ファイル名 | 説明 |
---|---|
Softpub.dll | Softpub Forwarder DLL |
Wintrust.dll | Microsoft Trust Verification APIs |
Initpki.dll | Microsoft Trust Installation and Setup |
Mssip32.dll | MSSIP32 Forwarder DLL |
を再登録することで改善するようですが、
Windows Vista 以降では、「システム更新準備ツール」を使うことが推奨されているようです。
■ Windows Vista、Windows Server 2008、Windows 7、および Windows Server 2008 R2 のシステム更新準備ツールについて
http://support.microsoft.com/kb/947821/ja
■ ダウンロード詳細 Windows Vista 用のシステム更新準備ツール (KB947821) [2012 年 2 月]
http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=b4d90b06-c27d-4483-bc1f-04d43fa7b293
Windows6.0-KB947821-v19-x86.msu
このツールはバージョンが頻繁に上がっており、v19 が最新版のようです。
また、ツールの実行時に問題があった場合は、以下のログファイルに内容が記録されるようです。
の場合に発生するようです。
■ Windows Update エラー 800B0001
http://windows.microsoft.com/ja-JP/windows7/Windows-Update-error-800B0001
が原因であれば、
■ プログラムや更新プログラムをインストールできない
http://support.microsoft.com/kb/822798/ja
方法 2: Catroot2 フォルダーの名前を変更する
にて改善するかと思います。
が原因であれば、
■ プログラムや更新プログラムをインストールできない
http://support.microsoft.com/kb/822798/ja
方法 3: Cryptographic Services に関連付けられている DLL ファイルを再登録する
が対応方法となるかと思いますが、Windows Vista では KB の内容に誤り(再登録するコンポーネントのファイル名に誤り)がある為、完全には復旧しないようです。
ファイル名 | 存在の有無 |
---|---|
softpub.dll | 存在する |
wintrust.dll | 存在する |
Vista 以降では存在しない | |
dssenh.dll | 存在する |
rsaenh.dll | 存在する |
Vista 以降では存在しない | |
Vista 以降では存在しない | |
Vista 以降では存在しない | |
mssip32.dll | 存在する |
cryptdlg.dll | 存在する |
このような差異が発生しているのは、Windows Vista 以降で暗号化 API に仕様変更が入っている為と思われます。
(暗号化 API が「Crypto API」→「CNG(Crypto Next Generation)」に変更されている為)
■ Windows Vista の CNG API を使用して暗号化を行う
http://msdn.microsoft.com/ja-jp/magazine/cc163389.aspx
■ Using the Cryptography Configuration Features of CNG (Windows)
http://msdn.microsoft.com/ja-jp/library/bb204780.aspx
// File : EnumCngProvider.cs // Compile : // C:\> SET PATH=C:\Windows\Microsoft.NET\Framework\v2.0.50727;%PATH% [Enter] // C:\> csc EnumCngProvider.cs [Enter] // Usage : EnumCngProvider.exe [Enter] using System; using System.Collections.Generic; using System.Data; using System.Runtime.InteropServices; class EnumCngProvider { [DllImport("Bcrypt.dll", SetLastError = true)] public static extern uint BCryptEnumRegisteredProviders( ref int pcbBuffer, ref IntPtr ppBuffer ); [DllImport("Bcrypt.dll", SetLastError = true)] public static extern uint BCryptFreeBuffer( IntPtr pvBuffer ); [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)] public class CRYPT_PROVIDERS { public int cProviders; public IntPtr rgpszProviders; } public static List<string> GetCngProviders() { int cbBuffer = 0; IntPtr pBuffer = IntPtr.Zero; List<string> providers; EnumCngProvider.CRYPT_PROVIDERS cngProviders = new EnumCngProvider.CRYPT_PROVIDERS(); uint status = EnumCngProvider.BCryptEnumRegisteredProviders(ref cbBuffer, ref pBuffer); if ( status == 0 ) { if (pBuffer != IntPtr.Zero) { providers = new List<string>(); Marshal.PtrToStructure(pBuffer, cngProviders); IntPtr[] rgpszProviders = new IntPtr[cngProviders.cProviders]; Marshal.Copy(cngProviders.rgpszProviders, rgpszProviders, 0, cngProviders.cProviders); for (int i = 0; i < cngProviders.cProviders; i++) { providers.Add(Marshal.PtrToStringUni(rgpszProviders[i])); } EnumCngProvider.BCryptFreeBuffer(pBuffer); return providers; } } return null; } static void Main() { List<string> stringList = GetCngProviders(); foreach (string s in stringList) { Console.WriteLine(s); } } }
暗号化プロバイダ名 | ファイル名 |
---|---|
Microsoft Primitive Provider | bcrypt.dll |
Microsoft Smart Card Key Storage Provider | scksp.dll |
Microsoft Software Key Storage Provider | ncrypt.dll |
Microsoft SSL Protocol Provider | ncrypt.dll |
上記の暗号化プロバイダが一覧に表示されない場合は、暗号化プロバイダが正しく登録されていない可能性があります。
一覧に表示するが機能しないというケースであれば、DLL の依存関係に問題がある可能性があります。
その場合は、以下のツールにて、足りない DLL が無いか調査することが可能です。
■ Dependency Walker (depends.exe) Home Page
http://www.dependencywalker.com/
セキュリティプログラムをすべてアンインストールして
コンピューターを再起動してから Service Pack を再インストールしてみてはどうでしょう?
解決方法 1:
「Windows Update を使用して Service Pack をインストールするのではなく、
Service Pack のスタンドアロン パッケージをインストールする」
Windows Vista Service Pack 1 (5 言語用スタンドアロン版) (KB936330)
http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=b0c7136d-5ebb-413b-89c9-cb3d06d12674
解決方法 2:
「システム更新準備ツールを実行する」
システム更新準備ツール (KB947821) [2009 年 4 月]
Windows6.0-KB947821-v4-x86.msu
http://www.microsoft.com/downloads/ja-jp/details.aspx?familyid=0435684b-8d12-4028-9cb0-b2903257f1fd&displaylang=ja-nec
解決方法 3:
「実行中のアプリケーションをすべて終了または無効にし、
コンピューターを再起動してから Service Pack をインストールする」
解決方法 4:
「セキュリティプログラムをすべてアンインストールし、
コンピューターを再起動してから Service Pack をインストールする」
セキュリティプログラムでアンインストールしたもの:
ダウンロード詳細 Microsoft XML Core Services 4.0 Service Pack 2 の更新プログラム
(KB973688)
http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=00BCDF28-2299-4150-964D-88A601E25229
[MS06-071] Microsoft XML コア サービス 4.0 用のセキュリティ更新プログラム
(KB927978)
http://support.microsoft.com/kb/927978/ja#appliesto
ダウンロード詳細 MSXML 4.0 Service Pack 2 のセキュリティ更新プログラム
(KB954430)
http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=96A4413C-5261-4F69-83D0-932C430ABD14
解決方法1〜4を全て丁寧に試していく!
が・・・・駄目っ・・・・・!
他にもいろいろ方法はありますが、
「システムの復元」は過去にシステムの復元ポイントを意図的に切っていたので、
過去のシステムに戻れない!
「クリーンインストール」はCDを紛失したので、これも駄目っ・・・・!
「セーフモード」から起動すると、解決方法1、2がうまくいく場合があると
続きです。
マイクロソフトの公式フォーラムで聞いたが、これも駄目!
参考:
マイクロソフトの公式フォーラム
http://answers.microsoft.com/ja-jp/windows/forum/windows_vista?auth=1
・・・・もう駄目なことは分かっています。
しかし、それでも一縷の望みをこの人力検索はてなに賭けたいと思い、投稿してみました。
もし、この絶望的状況を回復する方法を知ってらっしゃる奇特な方がいらっしゃいましたら、
即決で500ptをプレゼントしたいと思います。
ログファイルを調査すれば、もう少し、原因究明の糸口が見つかるかも知れません。
インストールログが以下の場所に記録されるようです。
■ Service Packのインストール・ログを記録/確認する - @IT
http://www.atmarkit.co.jp/fwin2k/win2ktips/1021splog/splog.html
> %windir%\Logs\CBS
ダメ元ということでしたら、参考まで。。。
インストールすることを オススメします。
エラー コード「0x800B0100」の場合であれば、以下の情報が参考になるかもしれません。
■ エラー コード 0x800B0100 が、Windows Update または Microsoft Update を使用して更新プログラムをインストールするときに表示される
http://support.microsoft.com/kb/956702/ja
以下のコンポーネントを再登録することで改善するかもしれません。
> regsvr32 Softpub.dll /s
> regsvr32 Wintrust.dll /s
> regsvr32 Initpki.dll /s
> regsvr32 Mssip32.dll /s
まず、最初の回答から。
> %windir%\Logs\CBS の件ですが、
CBS.logが見つかりました。
どこからどこまでが該当するログか分からないので、適当に抜き出してみました。
-------------------------------------------------------------------------------------------------------------------
2012-05-10 07:32:47, Info CBS Read out cached package applicability for package: Package_for_KB953155~31bf3856ad364e35~x86~~6.0.1.4, ApplicableState: 7, CurrentState:7
2012-05-10 07:32:47, Info CBS Session: 30223923:2831579407 finalized. Reboot required: no
2012-05-10 07:32:47, Info CBS Session: 30223923:2834626127 initialized.
2012-05-10 07:32:47, Info CBS Read out cached package applicability for package: VistaSP1-KB936330~31bf3856ad364e35~x86~~6.0.0.18000, ApplicableState: 7, CurrentState:0
2012-05-10 07:32:47, Info CBS Session: 30223923:2834626127 finalized. Reboot required: no
2012-05-10 07:32:47, Info CBS Session: 30223923:2836950197 initialized.
-------------------------------------------------------------------------------------------------------------------
この下から3段目の「KB936330」で検索をかけてみましたが、
アメリカのマイクロソフト公式フォーラムでも
更新準備ツールを使えとか、クリーンインストールしろ、とか
日本版と大差ない答えでした。(全部は確認していませんが)
http://answers.microsoft.com/en-us/Search/Search?SearchTerm=KB936330&CurrentScope.ForumName=Windows&CurrentScope.Filter=&askingquestion=false
「添付の画像のエラーコードと質問文のエラーコードが異なるようですが、表示されるのはどちらでしょうか?」
すみません。僕の表記ミスです。
添付画像の方が正しいです。
一応、
エラー コード「0x800B0100」のFix itツールと更新準備ツールとコンポーネントの再登録も試しましたが、
3つとも駄目でした・・・。
(もちろんコンポーネントの再登録後、再起動してからService Packのインストールを試みました)
で、
エラーコード: 0x8007000D ですが、これも同じような回答ばかりでした。
(これも全部は確認してませんが。)
Error code 0x8007000d data invalid when tried to install Service Pack - Microsoft Answers http://answers.microsoft.com/en-us/windows/forum/windows_other-windows_update/error-code-0x8007000d-data-invalid-when-tried-to/fb4ec7b5-3646-4eae-b92b-eccc86901289
Service Pack 1 install error 0x8007000D - Microsoft Answers
http://answers.microsoft.com/en-us/windows/forum/windows_other-windows_update/service-pack-1-install-error-0x8007000d/022fda5a-b8e8-47e0-b0c1-df88c1a3a60e
オプション コンポーネントのセットアップ ログ診断ツール
http://technet.microsoft.com/ja-jp/library/cc732334(v=ws.10).aspx#BKMK_1
ところで、ログというのは2種類あるようです。
「WindowsUpdate.log」と「CBS.log」です。
上記によると、「FATAL」という文字を探し、0x800#####の末尾を16進数から10進数へ変換し、
http://msdn.microsoft.com/en-us/library/ms681381.aspx から該当するエラーコードを検索してください、
ということらしいですが、どうもWindows Vista Service Pack 1とは関係無いっぽいんですよね・・・。
(いくつかFATALの0x800#####を検索してみましたが、ちょっと分からず・・・。)
この「FATAL」という文字は「WindowsUpdate.log」から見つかりました。
(見せてほしいということであれば、投稿しますが、たくさんあり過ぎて僕もどれかよいのか分かりませんが・・・)
そこで、
「WindowsUpdate.log」の「Windows Vista Service Pack 1」辺りのログをのせてみます。
-------------------------------------------------------------------------------------------------------------------
2012-05-09 12:05:51:651 1068 11b8 DnldMgr ** START ** DnldMgr: Downloading updates [CallerId = AutomaticUpdates]
2012-05-09 12:05:51:651 1068 11b8 DnldMgr *********
2012-05-09 12:05:51:651 1068 11b8 DnldMgr * Call ID = {C7712573-62D5-437F-925D-A59F46AAFBE1}
2012-05-09 12:05:51:651 1068 11b8 DnldMgr * Priority = 1, Interactive = 0, Owner is system = 1, Explicit proxy = 0, Proxy session id = -1, ServiceId = {7971F918-A847-4430-9279-4A52D1EFE18D}
2012-05-09 12:05:51:651 1068 11b8 DnldMgr * Updates to download = 1
2012-05-09 12:05:51:651 1068 11b8 Agent * Title = Windows Vista Service Pack 1 (KB936330)
2012-05-09 12:05:51:651 1068 11b8 Agent * UpdateId = {66F16258-9D3B-4353-8765-E55E803151D0}.107
2012-05-09 12:05:51:651 1068 11b8 Agent * Bundles 2 updates:
2012-05-09 12:05:51:651 1068 11b8 Agent * {106ED2F3-51E8-4B09-9A11-17F463AA467F}.107
2012-05-09 12:05:51:651 1068 11b8 Agent * {C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A}.107
2012-05-09 12:05:51:652 1068 11b8 DnldMgr *********** DnldMgr: Regulation Refresh [Svc: {7971F918-A847-4430-9279-4A52D1EFE18D}] ***********
2012-05-09 12:05:51:652 1068 11b8 DnldMgr * Regulation call complete. 0x00000000
2012-05-09 12:05:51:660 1068 11b8 DnldMgr *********** DnldMgr: New download job [UpdateId = {106ED2F3-51E8-4B09-9A11-17F463AA467F}.107] ***********
2012-05-09 12:05:51:660 1068 11b8 DnldMgr Regulation: {7971F918-A847-4430-9279-4A52D1EFE18D} - Update 106ED2F3-51E8-4B09-9A11-17F463AA467F is "Priority" regulated and can NOT download. Sequence 9699 vs AcceptRate 0.
2012-05-09 12:05:51:660 1068 11b8 DnldMgr * Update is not allowed to download due to regulation.
2012-05-09 12:05:51:661 1068 11b8 DnldMgr *********** DnldMgr: New download job [UpdateId = {C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A}.107] ***********
2012-05-09 12:05:51:661 1068 11b8 DnldMgr Regulation: {7971F918-A847-4430-9279-4A52D1EFE18D} - Update C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A is "Priority" regulated and can NOT download. Sequence 9699 vs AcceptRate 0.
2012-05-09 12:05:51:661 1068 11b8 DnldMgr * Update is not allowed to download due to regulation.
2012-05-09 12:05:51:661 1068 11b8 DnldMgr Regulation: {7971F918-A847-4430-9279-4A52D1EFE18D} - Update 106ED2F3-51E8-4B09-9A11-17F463AA467F is "Priority" regulated and can NOT download. Sequence 9699 vs AcceptRate 0.
2012-05-09 12:05:51:661 1068 11b8 DnldMgr Regulation: {7971F918-A847-4430-9279-4A52D1EFE18D} - Update C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A is "Priority" regulated and can NOT download. Sequence 9699 vs AcceptRate 0.
2012-05-09 12:05:51:661 1068 11b8 DnldMgr Regulation: {7971F918-A847-4430-9279-4A52D1EFE18D} - Update 106ED2F3-51E8-4B09-9A11-17F463AA467F is "Priority" regulated and can NOT download. Sequence 9699 vs AcceptRate 0.
2012-05-09 12:05:51:661 1068 11b8 DnldMgr Regulation: {7971F918-A847-4430-9279-4A52D1EFE18D} - Update C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A is "Priority" regulated and can NOT download. Sequence 9699 vs AcceptRate 0.
2012-05-09 12:05:51:661 1068 11b8 Agent *********
2012-05-09 12:05:51:661 1068 11b8 Agent ** END ** Agent: Downloading updates [CallerId = AutomaticUpdates]
-------------------------------------------------------------------------------------------------------------------
また、いろいろ試行錯誤してみます・・・。
たくさんあり過ぎて分からないと言いましたが、エラーコードはどれも同じでした。
大事なのは、この辺りでしょうか。
Handler FATAL: Error source is 106.
(中略)
DnldMgr Error 0x800b0100 occurred while downloading update; notifying dependent calls.
エラーコード「0x800b0100」の末尾「0100」を16進数から10進数に直すと、「256」ですが、
http://msdn.microsoft.com/en-us/library/ms681382.aspx では見つからない?
「Handler FATAL: Error source is 106.」で適当に検索した結果。
http://social.technet.microsoft.com/forums/en-US/itprovistasp/thread/1dd9856b-1fd8-46d9-89ef-39b610e8cf18/
http://blogs.technet.com/b/brad_rutkowski/archive/2008/07/03/windows-update-fails-with-8000ffff-e-unexpected.aspx
もうわけがわからないよ!(QB)
だんだん深みにハマってきました・・・。
「WindowsUpdate.log」の「FATAL」がある箇所を抜き出しました。
-------------------------------------------------------------------------------------------------------------------
2012-05-04 10:46:03:771 1048 1718 DnldMgr ** START ** DnldMgr: Downloading updates [CallerId = AutomaticUpdates]
2012-05-04 10:46:03:771 1048 1718 DnldMgr *********
2012-05-04 10:46:03:771 1048 1718 DnldMgr * Call ID = {F58D34E1-4393-41B5-BBFB-E3E6209D65AC}
2012-05-04 10:46:03:771 1048 1718 DnldMgr * Priority = 1, Interactive = 0, Owner is system = 1, Explicit proxy = 0, Proxy session id = -1, ServiceId = {7971F918-A847-4430-9279-4A52D1EFE18D}
2012-05-04 10:46:03:771 1048 1718 DnldMgr * Updates to download = 1
2012-05-04 10:46:03:771 1048 1718 Agent * Title = Windows Vista Service Pack 1 (KB936330)
2012-05-04 10:46:03:771 1048 1718 Agent * UpdateId = {66F16258-9D3B-4353-8765-E55E803151D0}.107
2012-05-04 10:46:03:771 1048 1718 Agent * Bundles 2 updates:
2012-05-04 10:46:03:771 1048 1718 Agent * {106ED2F3-51E8-4B09-9A11-17F463AA467F}.107
2012-05-04 10:46:03:771 1048 1718 Agent * {C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A}.107
2012-05-04 10:46:03:772 1048 1718 DnldMgr *********** DnldMgr: Regulation Refresh [Svc: {7971F918-A847-4430-9279-4A52D1EFE18D}] ***********
2012-05-04 10:46:03:772 1048 1718 DnldMgr * Regulation call complete. 0x00000000
2012-05-04 10:46:03:880 1048 1718 DnldMgr *********** DnldMgr: New download job [UpdateId = {106ED2F3-51E8-4B09-9A11-17F463AA467F}.107] ***********
2012-05-04 10:46:03:993 1048 1718 DnldMgr * All files for update were already downloaded and are valid.
2012-05-04 10:46:03:993 1048 1718 DnldMgr *********** DnldMgr: New download job [UpdateId = {C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A}.107] ***********
2012-05-04 10:46:03:994 1048 1718 DnldMgr * Queueing update for download handler request generation.
2012-05-04 10:46:03:994 1048 1718 DnldMgr Generating download request for update {C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A}.107
2012-05-04 10:46:04:723 1048 1718 Handler Generating request for CBS update C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A in sandbox C:\Windows\SoftwareDistribution\Download\c452caabaad248a66aa697d8c8545eb1
2012-05-04 10:46:04:779 1048 1718 Handler Selected payload type is ptExpress
2012-05-04 10:46:05:226 1048 1718 Handler UH: DpxRestoreJob returned 0x80070002
2012-05-04 10:46:05:226 1048 1718 Handler Detected download state is dsHavePackage
2012-05-04 10:49:05:622 1048 1bec DnldMgr BITS job {6AA255B8-446B-4658-B289-8F1DE68B0F2E} completed successfully
2012-05-04 10:49:06:028 1048 1bec Misc Validating signature for C:\Windows\SoftwareDistribution\Download\1c324927aa8fcdbc464b27a3ec9cb1b2\66fad2329f2c64b1532b3dbc70a7c6c73d6ee23e:
2012-05-04 10:49:06:369 1048 1bec Misc Microsoft signed: Yes
2012-05-04 10:49:06:404 1048 1bec DnldMgr Download job bytes total = 17548280, bytes transferred = 17548280
2012-05-04 10:49:06:405 1048 1bec DnldMgr *********** DnldMgr: New download job [UpdateId = {1D83B745-FE81-4068-AC4B-BA64D8B89AFA}.100] ***********
2012-05-04 10:49:06:657 1048 1bec DnldMgr * All files for update were already downloaded and are valid.
2012-05-04 10:49:06:672 1048 1bec DnldMgr *********** DnldMgr: New download job [UpdateId = {C3E99F5D-2F9C-42BE-93E2-ACFA9E16852A}.107] ***********
2012-05-04 10:49:06:672 1048 18a8 AU >>## RESUMED ## AU: Download update [UpdateId = {757DD716-B31B-4132-9A9F-14D81071463A}, succeeded]
2012-05-04 10:49:20:293 1048 1cd4 Handler FATAL: CBS called Error with 0x800b0100,
2012-05-04 10:49:20:294 1048 1718 Handler FATAL: UH: 0x800b0100: Async stage operation failed in CUHCbsHandler::StageCbsPackage
2012-05-04 10:49:20:507 1048 1718 Handler FATAL: Request generation for CBS update complete with hr=0x800b0100 and pfResetSandbox=0
2012-05-04 10:49:20:507 1048 1718 Handler FATAL: Error source is 106.
2012-05-04 10:49:20:507 1048 1718 DnldMgr FATAL: DM:CAgentDownloadManager::GenerateAllDownloadRequests: GenerateDownloadRequest failed with 0x800b0100.
2012-05-04 10:49:20:507 1048 1718 DnldMgr Error 0x800b0100 occurred while downloading update; notifying dependent calls.
2012-05-04 10:49:36:584 1048 1718 Agent *********
2012-05-04 10:49:36:584 1048 1718 Agent ** END ** Agent: Downloading updates [CallerId = AutomaticUpdates]
-------------------------------------------------------------------------------------------------------------------
> TRUST_E_NOSIGNATURE
>
> サブジェクトに署名がありませんでした。
> (No signature was present in the subject.)
ということみたいですね。
このエラーは「システム更新準備ツール」で修正される可能性があるようですが、
うまくいかないということですので、恐らく、修正に失敗して、以下のログが出力されているのではないかと思います。
■ Windows Vista、Windows Server 2008、Windows 7、および Windows Server 2008 R2 のシステム更新準備ツールについて
http://support.microsoft.com/kb/947821
> システム更新準備ツールによりログ ファイルが作成され、検出または修正された問題がそこに記録されます。
> このログ ファイルは以下の場所に作成されます。
>
> %SYSTEMROOT%\Logs\CBS\CheckSUR.log
> %SYSTEMROOT%\Logs\CBS\CheckSUR.persist.log
ダメかもしれないですが、
「SoftwareDistributionフォルダ」を再作成すると解消するケースがあるようです。
(ダウンロードファイルの破損や、カタログデータベースの破損に原因がある場合、再作成することで解消できるケースがあるようです。)
<参考情報>
■ Windows Update/Microsoft Updateのトラブルを解消する(SoftwareDistributionフォルダを修復する方法) - @IT
http://www.atmarkit.co.jp/fwin2k/win2ktips/944rcvsoftdist/rcvsoftdist.html
■ プログラムや更新プログラムをインストールできない
http://support.microsoft.com/kb/822798/ja
ちなみに、以下の質問者の方は、カタログデータベース(catroot, catroot2)を再作成することで解消できているようです。
■ windows updates wont download - Microsoft Answers
http://answers.microsoft.com/en-us/windows/forum/windows_other-windows_update/windows-updates-wont-download/e46448bd-332c-45fc-bd67-d4d684dd1103
返事が遅れましてすみません。((^^))。
とりあえず以下のURLの解決方法1〜11全てを試していこうと思います。
■ プログラムや更新プログラムをインストールできない
http://support.microsoft.com/kb/822798/ja
今のところ、SoftwareDistributionフォルダを修復して、
再度手動で、Windows Vista Service Pack 1 (5 言語用スタンドアロン版) (KB936330)
をダウンロードしようとしましたが、うまくいきませんでした。
ところで、Windows Updateの自動更新プログラムからはService Pack 1がダウンロードされてこないんですけど、
これは何か理由があるのでしょうか>
また、明日結果の返事をします。
すみません。ウソ書いてました。
> ■ プログラムや更新プログラムをインストールできない
> http://support.microsoft.com/kb/822798/ja
の「方法 2: Catroot2 フォルダーの名前を変更する」を見て気が付きましたが、
再作成されるのは『catroot2』のみで『catroot』は再作成されないようです。
> [重要]: CatRoot フォルダーの名前は変更しないでください。
> CatRoot2 フォルダーは Windows によって自動的に再作成されますが、
> CatRoot フォルダーは名前を変更すると再作成されません。
お間違いの無いよう、ご注意願います。
はい。分かっていますよ。大丈夫です。
http://support.microsoft.com/kb/822798/ja
の件ですが、方法 3、6、7、8、11:以外は全て試しました。
方法 3:はモジュールの読み込みに失敗したからです。
方法 6:は「プロセスはファイルにアクセスできません。別のプロセスが使用中です。」と表示され、Process Monitorというのを使えばよいらしいですが、もう諦めました…。
方法 7:はやり方がよく分からなかったからです。
方法 8:も同様です。
方法 11:はたぶん関係ないのでは、と判断したからです。
うーん・・・うまくいきませんね・・・。
どのモジュールでしょうか。
失敗の原因は表示されませんでしたか?
・モジュールが見つからない
・アクセス権が無い
など。
<regsvr32 のエラーの例>
■ Regsvr32 の使用法とエラー メッセージについて
http://support.microsoft.com/kb/249873/ja
システムコンポーネントが正しく登録できていないようですので、
このあたりが解決すれば、もう少し前に進みそうな気がします。
「方法 10: ソフトウェア配布フォルダーを空にする」 を行なったら、別の問題が発生して手間取ってしまいました。
(これは今回とは別の問題になるので、機会があれば、新たに質問を投稿するかもしれません)
さて、
方法 3:はモジュールの読み込みに失敗した件ですが、
「regsvr32 /u initpki.dll」が読み込みに失敗し、
「モジュール ""%1"" の読み込みに失敗しました。
\n\nバイナリが指定されたパスに格納されていることを確認するか、
バイナリまたは依存 .DLL ファイルに問題がないかどうかを調べてください。」
と表示されます。
検索したら、いろいろ出てきますけど、結局どうすればいいんでしょうか?
> 「regsvr32 /u initpki.dll」が読み込みに失敗し、
:
> 検索したら、いろいろ出てきますけど、結局どうすればいいんでしょうか?
MS の KB に書かれている内容に誤りがある(情報が古い)ようですね。
Windows Vista に
・initpki.dll
・gpkcsp.dll
・sccbase.dll
・slbcsp.dll
というファイルは、そもそも存在しないようです。
以下は、Vista (SPなし) 環境にて WHERE コマンドを使って DLL パスを調査した結果になります。
-------------------------------------------------------------------
Microsoft Windows [Version 6.0.6000]
Copyright (c) 2006 Microsoft Corporation. All rights reserved.
C:\Windows\system32>cd\
C:\>where softpub.dll
C:\Windows\System32\softpub.dll
C:\>where wintrust.dll
C:\Windows\System32\wintrust.dll
C:\>where initpki.dll
情報: 与えられたパターンのファイルが見つかりませんでした。
C:\>where dssenh.dll
C:\Windows\System32\dssenh.dll
C:\>where rsaenh.dll
C:\Windows\System32\rsaenh.dll
C:\>where gpkcsp.dll
情報: 与えられたパターンのファイルが見つかりませんでした。
C:\>where sccbase.dll
情報: 与えられたパターンのファイルが見つかりませんでした。
C:\>where slbcsp.dll
情報: 与えられたパターンのファイルが見つかりませんでした。
C:\>where mssip32.dll
C:\Windows\System32\mssip32.dll
C:\>where cryptdlg.dll
C:\Windows\System32\cryptdlg.dll
C:\>
-------------------------------------------------------------------
(Windows 7 でも同様の結果でした。Vista 以降では、システムコンポーネントの構成に変更が入っているようです。)
存在しないコンポーネントは登録のしようが無いので上記ファイルのエラーは無視して頂いて構いません。
ただ、本来何を登録すべきかは、KB の情報からは分からないですね。。。
ちょっと、どうどう巡りになってきている感もありますが、
「システム更新準備ツール」の最新版を適用してみては如何でしょうか?
(v4 → v19 に更新されているようです。)
> 解決方法 2:
> 「システム更新準備ツールを実行する」
> システム更新準備ツール (KB947821) [2009 年 4 月]
> Windows6.0-KB947821-v4-x86.msu
> http://www.microsoft.com/downloads/ja-jp/details.aspx?familyid=0435684b-8d12-4028-9cb0-b2903257f1fd&displaylang=ja-nec
■ ダウンロード詳細 Windows Vista 用のシステム更新準備ツール (KB947821) [2012 年 2 月]
Windows6.0-KB947821-v19-x86.msu
http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=B4D90B06-C27D-4483-BC1F-04D43FA7B293
2012年2月版は、サポート要件 Vista SP2 となっていますが、
手持ちの Vista (SPなし) にて適用できることを確認しました。
以下のブログの方が上記の方法で解決しているようです。
<参考情報>
■ 続・Windows Vista SP2 で「サブジェクトに署名がありませんでした。」 - 取締役 平社員 ブログ (ベータ版)
http://d.hatena.ne.jp/TsuSUZUKI/20091003/1254576135
■ ダウンロード詳細 Windows Vista 用のシステム更新準備ツール (KB947821) [2012 年 2 月]
Windows6.0-KB947821-v19-x86.msu
をインストールし、再起動をかけ、Service Pack 1をインストールしようとしましたが、やはり失敗しました。
(余談ですが、「インストールに失敗しました」とすぐに表示されます。通常は20分くらいかかるのに…。)
あと、余談かもしれませんが、
「コントロールパネル」-「セキュリティ」-「Windows Update」の更新プログラムを確認しようとすると、
「このコンピュータで利用できる新しい更新プログラムを確認中にエラーが発生しました。
エラー: 800B0001 Windows Updateで不明なエラーが発生しました。」と表示され、
確認できないようになってしまいました。
修復するには、システム更新準備ツールを使えばよいらしいですが、堂々めぐりに陥っています・・・。
Windows Update エラー 800B0001
http://windows.microsoft.com/ja-JP/windows7/Windows-Update-error-800B0001
CBS.log、
や
オプション コンポーネントのセットアップ ログ診断ツール
http://technet.microsoft.com/ja-jp/library/cc732334(v=ws.10).aspx#BKMK_1
や
「WindowsUpdate.log」の「FATAL」の件
も
不明なままですし。
これで全ての施策を試したことになりますが、
もう解決策はありませんよね?
しかし、Windowsに表示されるエラーが実情を反映しているとは限らないこと、
DLLについて、など、いろいろと勉強になりました。^_^
このパソコンは10年使っていて、
デフラグを繰り返したり、CCCleanerなどを使う際にレジストリのバックアップを取らずに掃除したりなど、
かなり乱暴な使い方をしてきたので、このような事態も想定できうるものでした。
こんな面倒な質問に粘り強く答えてくれたcx20さんに感謝しています。
解決には至りませんでしたが、せめてものお礼にcx20さんに500ptを差し上げたいと思います。
お返事お待ちしています。