STOP:c0000218 unknown Hard Error との戦い!! [自作PC]
※10/06/19 内容を一部修正いたしました。
どうして、うちの家族はオイラのパソコンを壊すのが得意なのでしょうか?
先日もVAIOを嫁が壊したばかりですが、先週の土曜日に事件はおきました。
今回は自作1号機(Pentium4 2.4GHz/WindowsXP-Pro)をムスメが壊したようです。
電源を入れても、起動途中にブルーバック画面になり、白抜きの文字で
STOP:c0000218 unknown Hard Error
unknown Hard Error
Beginning dump physical memory
Dumping physical memory to disk:* (*は数字)
って感じのメッセージで、再起動を繰り返すばかり。
ムスメ曰く : 「あたしは何にもやっていないよ!PCが勝手に壊れたんじゃない?」
でも、PCってのは、慣れた方はほとんど壊さず、慣れていない方が、突拍子も無い
使い方をして、破壊活動を行うもんです。
今回のムスメのテロ行為は、こんな具合でした。
① 中学校から帰ってきて、制服をその辺にぬぎ散らかす。
② お母ちゃんがいない事を確認すると、自作PC1号機に電源を入れる。
③ You Tubeでくだらないドラマを見る。
④ 眠くなったようで、適当にPCの電源を切る。
⑤ いそいそと昼寝をしに、床へ向かう。
文章にすると別にたわいも無い行動ですが、後で思えば、ここにヒントが隠されてました。
自作PC1号機を主に使用しているのは、あたしの嫁です。
PCがないと、ブログもかけないわ、ネット上のペットも世話できないわで、不満顔です。
オイラのノートPCで急場をしのごうとセットアップするも、
嫁曰く : 「ノートPCは非力だから、我慢ならないわ」
との事でした。
オイラ : 「はいはい、わかりましたよ。明日中には、なんとかしますよ」
とは言ったものの、最悪を考えると、Windowsの再インストールです。
こんなことをやったら、せっかくの日曜日がぱぁになっちまいます。
エラーコード c0000218 をネットで調べると、ピンとくる言葉がありました。
このエラーは、Windowsが終了時にレジストリの変更を行いますが、 HDDへのレジストリの書き戻しが終わる前に、Windowsがシャットダウン されてしまい、レジストリが破壊される。
こ、これです!!確かムスメは、一刻も早く昼寝をするために、PCのシャットダウン
を操作後、すぐにコンセントを引っこ抜いていました。
言い換えると、Windowsがきちんとシャットダウンする前に、電源供給を強制的に、
遮断してレジストリを破壊した可能性が高いのです。
まさにテロ行為そのものです。
って事は、PCを修理するためには、壊れてしまったレジストリを、正常に起動していた
時のレジストリに交換すれば良いのです。
やってやろうじゃありませんか!
具体的な作業は、マイクロソフトさんが公開している以下の文書の通りです。
(http://support.microsoft.com/kb/307545/ja)
んで、3~4時間をかけて、レジストリの修復を完了させ、
無事にXPを起動できるようになりました![[黒ハート]](http://blog.so-net.ne.jp/_images_e/136.gif)
この手の作業をしたのは数年ぶりなので、ちょっとした満足感も感じちゃいました。
でも、ムスメにはきちんとPCの取り扱いを指導しないといけないなぁ~~
と、心に誓うにょろぞうでした。
~*~*~*~*~*~*~*~*~*~*~*
以下は、具体的な作業をダラダラと書いてあるだけです。
お暇な方、もしくは、同じ境遇に遭遇している方だけどぞ![[あせあせ(飛び散る汗)]](http://blog.so-net.ne.jp/_images_e/162.gif)
【注意事項】
1. 実行するには、中級以上のPCの経験が必要ではないかなぁ~と思います。
2. GUI(グラフィカル)の作業だけではなく、CUI(コマンド)での作業が必要となります。
3. メーカー製PCの場合は、当作業は禁止だそうです。MicorosoftさんのHPより。
→内容を見るに、何の為に禁止にするのか、サパーリ分かりませんが・・・
※重要な訂正※ ・メーカ製PCの場合、c:\windows\repair\system が存在しない場合があります。 ・ファイル名の似たsystem.bakあるのですが、代用が効きません。 ・従いまして、当記事の修復作業はrepair\systemが存在するPCに限定いたします。 ・なお、HDDに物理的な不良がある場合は、本修復作業を行っても回復できません。
4. WindowsインストールCD、もしくは、Windows起動のFDが必須です。
→ メーカー製PCに付属の、リカバリーCDでは当作業はできません。
5. Adminstratorのパスワードを忘れてしまった人は作業ができません。
→ Windowsインストール時にご自分で入力したはずです。気合で思い出してください。
メーカー製PCの場合は、空白(何も入力してない)で作業が出来る事があります。
6. RAIDを組んだPCならば、予め、RAIDドライバのFDをご用意ください。
→ XPはRAIDドライバーを内蔵してません。Vistaは内蔵しているそうです。
7. 復元ポイントがまったく無いPCの場合は、本方法は適用できません。
→ 普通にPCを使っていれば、知らぬうちに復元ポイントが作成されています。
【作業環境】
・CPU : Intel Pentium 4 2.40GHz (Prescott)
・Memory : 1024MB
・HDD : Maxor 6Y080L0(80GB) × 2台
・RAID構成 : RAID1「ミラーリング」
・OS : Windows XP Professional 購入時SP1 その後 SP3適用済み
・MotherBoard : ASUS P4P800 Deluxe
・Chipset : Intel 865PE
・光学ドライブ類 : DVD-RWとFDD(フロッピー)有り
◆ 第一段階の作業
【概要】 取り敢えず、Windowsが起動できるようにする。
1. BIOSに入って、DVDドライブもしくはFDドライブの起動順序をHDDより前に設定します。
⇒ あえてBIOSの設定方法は詳細記載しませんでした。
BIOSの設定を自在に扱えない方は、この先の操作は厳しいと思い、
関所を作りました。
2. 光学ドライブに WindowsインストールCDを挿入し、コンピューターを起動します。
⇒ 以降の説明は、WindowsインストールCDを使った場合に限定させて下さい。
フロッピーの起動ディスクでも出来ないことは無いのですが、6枚にも分割した
FDを扱うのは面倒くさいです。
3. 黒画面に白抜き文字でCDからブートするかどうかの確認文が表示されるので、
キーボードの任意のキーを押下してください。
「Press any key to boot from CD・・・」
⇒ 任意のキーを押下します。
4. RAIDを組んでいるPCの場合は、Windows Setup画面の一番最初の画面下に
F6キーを押下するメッセージが出るので、すかさずF6キーを押下してください。
※ 手順4~8はRAIDを組んでいるPCの場合のみの手順です。
ですので、RAIDを組んでいない方は、手順9にジャンプしてくださ~い。
「Press F6 if you need to install a third party SCSI or RAID driver」
⇒ F6キーを押下します。
上記メッセージが表示されている時間は、極めて短時間ですので、F6キーに
指を乗せた状態で、メッセージを待つのが良いと思います。
5. ストレージデバイスを適用するかどうかの判断する画面になったら、
キーボードのSキーを押下します。
(RAIDを組んでいるPCの場合のみの手順)
「Setup could not determine the type of 中略 mass storage devices(s):」
「To specify additional SCSI 中略 strage device manufacturer,press S」
「S=Specify Additional Device」
⇒ Sキーを押下します。
6. サポートディスクを認識させる画面になったら、用意したRAIDドライバをFDDに差し込んで
Enterキーを押下してください。
(RAIDを組んでいるPCの場合のみの手順)
「Please insert the disk labeled Manufacturer 中略 Press ENTER when
ready」
⇒ RAIDのFDを差し込んだ後、Enterキーを押下します。
7. フロッピーに複数のドライバーを書き込んでいる場合は、狙いのドライバーを選んで
Enterキー押下します。
(RAIDを組んでいるPCの場合のみの手順)
⇒ 私の場合は、「VIA RAID Controller(WindowsXP)」を矢印キーで
選び、Enterキーを押下しました。
8. 選んだドライバーの確認及び更なるドライバーの適用追加画面が表示されたら、
Enterキーを押して、継続します。
(RAIDを組んでいるPCの場合のみの手順)
「Setup will load support for the following mass 後略」
「VIA RAID Controller(Windows XP)」 ← うちのPCの場合のみのコメントですね。
「If you do not have any device 中略 press ENTER.」
「Enter=Continue」
⇒ Enterキーを押下します。
9. セットアップ開始画面が表示されたら、Rキーを押して回復コンソールを起動します。
「セットアッププログラムのこの部分では、(後略)」
「インストール済みのWindowsXPを (中略) Rキーを押してください。」
「R=修復」
⇒ Rキーを押下します。
10. キーボードの種類を選択する画面になったら、半角全角キーを押してください。
「半角全角キー:106日本語キーボードの場合」
⇒ 半角/全角キーを押下します。
⇒ 更に、キーボードの確認画面が出るので、Yキーを押下してください。
11. 回復コンソールからアクセスするインストールを選択します。
「1: C:WINDOWS」
「どのWindowsインストールにログオンしますか?」
⇒ 通常はOSをひとつしかインストしていないので、「1」を入力してEnterします。
12. 次に、Administrator のパスワードを入力します。
⇒ Administrator のパスワードが空白の場合は、Enter キーを押すだけです。
Adminのパスワードを忘れちゃった人は、これ以上の作業が出来ません。
あきらめて、Windowsを再インストールする事を検討してくだされ!
13. コマンドプロンプト(C:\WINDOWS>_ )が出れば、ここまでの作業は成功です!!
では、山場の作業に入ります。
下(↓)の命令文を入力します。各行を入力した後、必ずEnter キーを押して、命令を
実行させます。16行にも及ぶコマンド入力ですが、一行ずつキチンと入力願います。
やっていることは、tmpというディレクトリ(フォルダ)を作り、現状、壊れてしまっている
レジストリファイルをtmpディレクトリに別名(~.bak)で退避させています。
その後、壊れたレジストリファイルをsystemフォルダから削除しています。
更に、repairディレクトリに格納されている初期のレジストリファイルをsystemフォルダに
コピーしています。
ここでは、Windowsが C:\Windows フォルダーにインストールされていることを前提に
しています。異なる場所にインストールしている場合は、C:\Windows を適切な
windows_folder に置き換えてコマンドを入力して下さい。
なお、「 \ 」はバックスラッシュと言いますが、日本語キーボードでは「¥」を入力するのと
同じ意味です。
なので、コマンドプロンプト画面でエンマークが出たとしても、慌てないように!
md tmp
copy c:\windows\system32\config\system c:\windows\tmp\system.bak
copy c:\windows\system32\config\software c:\windows\tmp\software.bak
copy c:\windows\system32\config\sam c:\windows\tmp\sam.bak
copy c:\windows\system32\config\security c:\windows\tmp\security.bak
copy c:\windows\system32\config\default c:\windows\tmp\default.bak
delete c:\windows\system32\config\system
delete c:\windows\system32\config\software
delete c:\windows\system32\config\sam
delete c:\windows\system32\config\security
delete c:\windows\system32\config\default
copy c:\windows\repair\system c:\windows\system32\config\system
copy c:\windows\repair\software c:\windows\system32\config\software
copy c:\windows\repair\sam c:\windows\system32\config\sam
copy c:\windows\repair\security c:\windows\system32\config\security
copy c:\windows\repair\default c:\windows\system32\config\default
14. 最後に 「exit」と入力し、Enterすると、PC再起動します。
→ 再起動中に、WindowsインストールCDとRAIDドライバFDを抜いてください。
抜かないと、PCは上記ディスクから起動をしようと試みますが、抜いておけば
内臓HDDにインストールされているOS(WinXP)から起動してくれる筈です。
見た目は、いつものXPが起動するように見えますが、レジストリはまったく別物です。
従って、OSの認証(アクティベーション)をしつこく求められる事でしょう。
ですが、このレジストリは仮のレジストリなので、認証をする必要は全くありません。
無視してWindowsが立ち上がるのを確認してください。
無事に起動したのでしょうか?ここまで来れば、全工程の半分はこなした事になります。
もうひと頑張りです。
◆ 第二段階の作業
【概要】 正常に起動出来ていたレジストリファイルを探し出し、tmpフォルダにコピーする。
15.XPをセーフモードで起動し、更に Administratorという絶対権限を持つアカウントで
ログインするように、PCを再起動する。
⇒ セーフモードで起動することにより、フォルダのカスタマイズをし易くします。
① 手順14で立ち上がっている状態を確認してください。
→ 画面が「ようこそ画面」であるとの前提で進めます。
② 左下の「終了オプション」をクリックし、再起動(R)をクリックしてください。
③ 画面が黒くなったのを見計らって、キーボードのF8キーを連打してください。
→ うまくいくと下記のような Windows拡張オプションメニュー 画面に入れます。
入れなかった場合は、もう一度再起動後F8キー連打でトライしてください。
「Windows 拡張オプション メニュー」
「オプションを選択してください:」
「セーフ モード」
「セーフ モードとネットワーク」
「セーフ モードとコマンドプロンプト」
「ブートのログ作成を有効にする」
(中略)
「上矢印キーと下矢印キーを使って項目を選択し、Enter キーを押してください。」
④ 矢印キーで「セーフ モード」を選択し、Enterキーを押します。
⑤ オペレーティング システムの選択画面になったら、
「Microsoft Windows XP Professional」を選んだ状態で、Enterキーを押します。
→ 時として、セーフモードが立ち上がるのに3分以上要するときがあります。
暗い画面のままでも、HDDのアクセスランプが点灯する場合は、我慢します。
⑥ 画面サイズがいつもより大きめな「ようこそ画面」が表示したら、
一番上に例の「Administrator」があるのでクリックし、パスワードを入力してログオン
してください。
なお、ここでもOSの認証(アクティベーション)は無視してください。
⑦ 画面中央に注意マーク付の下記のような警告ウィンドウが出ると思います。
「デスクトップ」
「Windowsはセーフ モードで実行されています。」
「Windowsのこの特殊な診断モードを使うと、ネットワークやハードウェアの (後略)」
(中略)
「(前略) 復元するばあいは、[いいえ] をクリックしてください。」
「はい(Y) いいえ(N)」
→ [はい(Y)] をクリックしてください。
16. エクスプローラーを起動します。
⇒ 左下スタートキーを右クリック→エクスプローラ(X)をクリック→エクスプローラ起動を確認
17. エクスプローラをフォルダオプションで設定する。
① メニューの[ツール(T)] → [フォルダ オプション(O)]
② [表示]タブクリックし、中段の詳細設定欄に注目する
③ [ファイルとフォルダの表示]の下の[すべてのファイルとフォルダーを表示する]に
チェックを入れる。
④ 詳細設定欄の一番下にある
[保護されたオペレーティングシステムファイルを表示しない(推奨)]のチェックを外す。
⑤ 警告マーク入りのウィンドウが表示されます。
「警告」
「保護されてるオペレーティングシステム (中略) 表示するように選択しました。」
「これらのファイルはWindowsを起動 (中略) 可能性があります。」
「これらのファイルを表示しますか?」
「はい(Y) いいえ(N)」
→ [はい(Y)]をクリックする。
⑥ XPをインストールしたドライブ(通常はCドライブ)の直下に位置するフォルダの
「System Volume Information」をクリックしてみる。
⇒ 幸運にも、フォルダーの中身が表示された方は、手順18にジャンプしてください。
(FAT32ファイルシステムでHDDをFormatしている場合は、セキュリティーの
概念がないので、該当フォルダにアクセスできるらしいです)
⇒ 下記のような警告ウィンドウが表示された方は、OKをクリックした後、
直下の手順⑦に移ってください。
(殆どの方は、この警告ウィンドウを見る事になるのではないでしょうか・・・)
「Documents and Settings」
「C:\System Volume Information にアクセスできません。」
「アクセスが拒否されました。」
「OK」
→ 仕方なく[OK]をクリックします。
⑦ エクスプローラのメニューの[ツール(T)] → [フォルダ オプション(O)]
→ [表示]タブ → [簡易ファイルの共有を使用する(推奨)]のチェックボックスを外す
→ [OK]をクリックします。
⇒ 元から上記チェックボックスが外れている方は、このまま手順⑧へ移ります。
⑧ [System Volume Information] フォルダを右クリックし、[プロパティ] をクリック。
⇒ [System Volume Information のプロパティー]ウィンドウが表示されます。
⑨ [セキュリティ] タブをクリックし、中段にある [追加]ボタン をクリックすると、
⇒ [ユーザーまたはグループの選択]ウィンドウが表示されます。
⑩ [詳細設定(A)]ボタンを押下すると[ユーザーまたはグループの選択]の別ウィンドウが
表示されるので、中段にある[今すぐ検索(N)]ボタンを押下します。
⇒ 下段に既存のユーザー名が展開されるので、その中にある[Administrator]を
選択した状態で、中段の[OK]ボタンを押下します。
⇒ 元の[ユーザーまたはグループの選択]ウィンドウの下段にも、前ウィンドウ同様
に [パソコン名¥Administrator] が表示されいるのを確認しつつ、[OK]を押す
⇒ [System Volume Information のプロパティー]ウィンドウの[セキュリティー]
タブに[Administrator]が表示されているのを確認して[OK]ボタンを押します。
⇒ 「System Volume Information」フォルダをクリックし、きちんと内容が表示さ
れる事を確認してください。
18. 「System Volume Information」フォルダの直下にあるサブフォルダーを調査します。
⇒ サブフォルダーは[_restore{87BD3667-3246-476B-923F-
F86E30B3E7F8}] のような形式の フォルダーが 2 つ(もしくは2つ以上)
存在しているはずです。
多分、これが今までバックアップしてきた復元ポイントを保存するフォルダーです。
⇒ それぞれのサブフォルダを右クリックし、[プロパティー(R)] を表示させてください。
注目すべきは、[全般]タブ に表示されている [作成日時:] です。
それぞれのサブフォルダの作成日時をきちんと把握してください。
⇒ 片方のフォルダの作成日時は、手順13~14を行った近々の日時になっている筈
です。このフォルダに入っている復元ポイントは使用しません。
⇒ もう片方のフォルダの作成日時は、WindowsXPをインストールした当時の日付に
なっている筈です。このフォルダに入っている復元ポイントを利用するのです。
19. 使用するサブフォルダ(例:_restore {英数小文字} )が決まったら、そのフォルダを
クリックします。
⇒ クリックすると RPx で始まるフォルダーが たくさんあるのではないでしょうか。
これこそが復元ポイントそのものらしいです。
⇒ RPx で始まるフォルダーの作成日時を見て、どの復元ポイントを利用するかを
自分自身で決めてください。
私の場合は、ムスメにPCを壊される直前の日時のRPxフォルダを使う事にしました。
20. 使用するRPxフォルダーを開き、Snapshot サブフォルダーがある事を確認します。
⇒ 該当の Snapshot フォルダーから、以下のファイルを C:\Windows\Tmp
フォルダーにコピーします。
作業はエクスプローラ上でコピー&ペーストで問題ありません。
_REGISTRY_USER_.DEFAULT
_REGISTRY_MACHINE_SECURITY
_REGISTRY_MACHINE_SOFTWARE
_REGISTRY_MACHINE_SYSTEM
_REGISTRY_MACHINE_SAM
21. C:\Windows\Tmp フォルダーに手順20でコピーしたファイルがある事を確認します。
⇒ 該当のファイルの名前をエクスプローラ上で次のように変更してください。
_REGISTRY_USER_.DEFAULT を DEFAULT に変更します。
_REGISTRY_MACHINE_SECURITY を SECURITY に変更します。
_REGISTRY_MACHINE_SOFTWARE を SOFTWARE に変更します。
_REGISTRY_MACHINE_SYSTEM を SYSTEM に変更します。
_REGISTRY_MACHINE_SAM を SAM に変更します。
さって、これですべての準備は整いました。あとは、最終段階に突入します!!
◆ 第三段階の作業
【概要】 仮のレジストリを削除して、正常なレジストリをsystemフォルダにコピーします。
22. 手順1~12を参考にして、回復コンソールを起動します。
23. コマンドプロンプトで、正常なレジストリをsystemフォルダにコピーします。
では、最終の山場の作業に入ります。
下(↓)の命令文を入力します。各行を入力した後、必ずEnter キーを押して、命令を
実行させます。10行にも及ぶコマンド入力ですが、一行ずつキチンと入力願います。
やっていることは、仮に利用したレジストリを削除し、tmpフォルダにある正常なレジストリ
をsystemフォルダにコピーしています。
ここでは、Windowsが C:\Windows フォルダーにインストールされていることを前提に
しています。異なる場所にインストールしている場合は、C:\Windows を適切な
windows_folder に置き換えてコマンドを入力して下さい。
なお、「 \ 」はバックスラッシュと言いますが、日本語キーボードでは「¥」を入力するのと
同じ意味です。
なので、コマンドプロンプト画面でエンマークが出たとしても、慌てないように!
del c:\windows\system32\config\sam
del c:\windows\system32\config\security
del c:\windows\system32\config\software
del c:\windows\system32\config\default
del c:\windows\system32\config\system
copy c:\windows\tmp\software c:\windows\system32\config\software
copy c:\windows\tmp\system c:\windows\system32\config\system
copy c:\windows\tmp\sam c:\windows\system32\config\sam
copy c:\windows\tmp\security c:\windows\system32\config\security
copy c:\windows\tmp\default c:\windows\system32\config\default
24.最後に 「exit」と入力し、Enterすると、回復コンソールが終了しPC再起動します。
→ 再起動中に、WindowsインストールCDとRAIDドライバFDを抜いてください。
抜かないと、PCは上記ディスクから起動をしようと試みますが、抜いておけば
内臓HDDにインストールされているOS(WinXP)から起動してくれる筈です。
レジストリは正常に稼動していた頃の物なので、正常に起動してくれると思います。
OSの認証(アクティベーション)を求められる事もない筈です。
いかがでしょうか?うまく修復できたでしょうか?皆様のご武運をお祈りいたします♪
以上、長文のお付き合い、大変ありがとうございました。![[黒ハート]](http://blog.so-net.ne.jp/_images_e/136.gif)
【追記(10/7/5)】
ブルースクリーンを復活させるには、上記のように複雑怪奇な操作が必要でした。
ですので、PCが正常に稼動しているうちに、復活操作を簡単にする仕込を導入してはいかがで
しょうか?! ご参考までに新記事のリンクを添付いたします。
⇒ブルースクリーンへの備え
どうして、うちの家族はオイラのパソコンを壊すのが得意なのでしょうか?
先日もVAIOを嫁が壊したばかりですが、先週の土曜日に事件はおきました。
今回は自作1号機(Pentium4 2.4GHz/WindowsXP-Pro)をムスメが壊したようです。
電源を入れても、起動途中にブルーバック画面になり、白抜きの文字で
STOP:c0000218 unknown Hard Error
unknown Hard Error
Beginning dump physical memory
Dumping physical memory to disk:* (*は数字)
って感じのメッセージで、再起動を繰り返すばかり。
ムスメ曰く : 「あたしは何にもやっていないよ!PCが勝手に壊れたんじゃない?」
でも、PCってのは、慣れた方はほとんど壊さず、慣れていない方が、突拍子も無い
使い方をして、破壊活動を行うもんです。
今回のムスメのテロ行為は、こんな具合でした。
① 中学校から帰ってきて、制服をその辺にぬぎ散らかす。
② お母ちゃんがいない事を確認すると、自作PC1号機に電源を入れる。
③ You Tubeでくだらないドラマを見る。
④ 眠くなったようで、適当にPCの電源を切る。
⑤ いそいそと昼寝をしに、床へ向かう。
文章にすると別にたわいも無い行動ですが、後で思えば、ここにヒントが隠されてました。
自作PC1号機を主に使用しているのは、あたしの嫁です。
PCがないと、ブログもかけないわ、ネット上のペットも世話できないわで、不満顔です。
オイラのノートPCで急場をしのごうとセットアップするも、
嫁曰く : 「ノートPCは非力だから、我慢ならないわ」
との事でした。
オイラ : 「はいはい、わかりましたよ。明日中には、なんとかしますよ」
とは言ったものの、最悪を考えると、Windowsの再インストールです。
こんなことをやったら、せっかくの日曜日がぱぁになっちまいます。
エラーコード c0000218 をネットで調べると、ピンとくる言葉がありました。
このエラーは、Windowsが終了時にレジストリの変更を行いますが、 HDDへのレジストリの書き戻しが終わる前に、Windowsがシャットダウン されてしまい、レジストリが破壊される。
こ、これです!!確かムスメは、一刻も早く昼寝をするために、PCのシャットダウン
を操作後、すぐにコンセントを引っこ抜いていました。
言い換えると、Windowsがきちんとシャットダウンする前に、電源供給を強制的に、
遮断してレジストリを破壊した可能性が高いのです。
まさにテロ行為そのものです。
って事は、PCを修理するためには、壊れてしまったレジストリを、正常に起動していた
時のレジストリに交換すれば良いのです。
やってやろうじゃありませんか!
具体的な作業は、マイクロソフトさんが公開している以下の文書の通りです。
(http://support.microsoft.com/kb/307545/ja)
んで、3~4時間をかけて、レジストリの修復を完了させ、
無事にXPを起動できるようになりました
この手の作業をしたのは数年ぶりなので、ちょっとした満足感も感じちゃいました。
でも、ムスメにはきちんとPCの取り扱いを指導しないといけないなぁ~~
と、心に誓うにょろぞうでした。
~*~*~*~*~*~*~*~*~*~*~*
以下は、具体的な作業をダラダラと書いてあるだけです。
お暇な方、もしくは、同じ境遇に遭遇している方だけどぞ
【注意事項】
1. 実行するには、中級以上のPCの経験が必要ではないかなぁ~と思います。
2. GUI(グラフィカル)の作業だけではなく、CUI(コマンド)での作業が必要となります。
3. メーカー製PCの場合は、当作業は禁止だそうです。MicorosoftさんのHPより。
→
※重要な訂正※ ・メーカ製PCの場合、c:\windows\repair\system が存在しない場合があります。 ・ファイル名の似たsystem.bakあるのですが、代用が効きません。 ・従いまして、当記事の修復作業はrepair\systemが存在するPCに限定いたします。 ・なお、HDDに物理的な不良がある場合は、本修復作業を行っても回復できません。
4. WindowsインストールCD、もしくは、Windows起動のFDが必須です。
→ メーカー製PCに付属の、リカバリーCDでは当作業はできません。
5. Adminstratorのパスワードを忘れてしまった人は作業ができません。
→ Windowsインストール時にご自分で入力したはずです。気合で思い出してください。
メーカー製PCの場合は、空白(何も入力してない)で作業が出来る事があります。
6. RAIDを組んだPCならば、予め、RAIDドライバのFDをご用意ください。
→ XPはRAIDドライバーを内蔵してません。Vistaは内蔵しているそうです。
7. 復元ポイントがまったく無いPCの場合は、本方法は適用できません。
→ 普通にPCを使っていれば、知らぬうちに復元ポイントが作成されています。
【作業環境】
・CPU : Intel Pentium 4 2.40GHz (Prescott)
・Memory : 1024MB
・HDD : Maxor 6Y080L0(80GB) × 2台
・RAID構成 : RAID1「ミラーリング」
・OS : Windows XP Professional 購入時SP1 その後 SP3適用済み
・MotherBoard : ASUS P4P800 Deluxe
・Chipset : Intel 865PE
・光学ドライブ類 : DVD-RWとFDD(フロッピー)有り
◆ 第一段階の作業
【概要】 取り敢えず、Windowsが起動できるようにする。
1. BIOSに入って、DVDドライブもしくはFDドライブの起動順序をHDDより前に設定します。
⇒ あえてBIOSの設定方法は詳細記載しませんでした。
BIOSの設定を自在に扱えない方は、この先の操作は厳しいと思い、
関所を作りました。
2. 光学ドライブに WindowsインストールCDを挿入し、コンピューターを起動します。
⇒ 以降の説明は、WindowsインストールCDを使った場合に限定させて下さい。
フロッピーの起動ディスクでも出来ないことは無いのですが、6枚にも分割した
FDを扱うのは面倒くさいです。
3. 黒画面に白抜き文字でCDからブートするかどうかの確認文が表示されるので、
キーボードの任意のキーを押下してください。
「Press any key to boot from CD・・・」
⇒ 任意のキーを押下します。
4. RAIDを組んでいるPCの場合は、Windows Setup画面の一番最初の画面下に
F6キーを押下するメッセージが出るので、すかさずF6キーを押下してください。
※ 手順4~8はRAIDを組んでいるPCの場合のみの手順です。
ですので、RAIDを組んでいない方は、手順9にジャンプしてくださ~い。
「Press F6 if you need to install a third party SCSI or RAID driver」
⇒ F6キーを押下します。
上記メッセージが表示されている時間は、極めて短時間ですので、F6キーに
指を乗せた状態で、メッセージを待つのが良いと思います。
5. ストレージデバイスを適用するかどうかの判断する画面になったら、
キーボードのSキーを押下します。
(RAIDを組んでいるPCの場合のみの手順)
「Setup could not determine the type of 中略 mass storage devices(s):」
「To specify additional SCSI 中略 strage device manufacturer,press S」
「S=Specify Additional Device」
⇒ Sキーを押下します。
6. サポートディスクを認識させる画面になったら、用意したRAIDドライバをFDDに差し込んで
Enterキーを押下してください。
(RAIDを組んでいるPCの場合のみの手順)
「Please insert the disk labeled Manufacturer 中略 Press ENTER when
ready」
⇒ RAIDのFDを差し込んだ後、Enterキーを押下します。
7. フロッピーに複数のドライバーを書き込んでいる場合は、狙いのドライバーを選んで
Enterキー押下します。
(RAIDを組んでいるPCの場合のみの手順)
⇒ 私の場合は、「VIA RAID Controller(WindowsXP)」を矢印キーで
選び、Enterキーを押下しました。
8. 選んだドライバーの確認及び更なるドライバーの適用追加画面が表示されたら、
Enterキーを押して、継続します。
(RAIDを組んでいるPCの場合のみの手順)
「Setup will load support for the following mass 後略」
「VIA RAID Controller(Windows XP)」 ← うちのPCの場合のみのコメントですね。
「If you do not have any device 中略 press ENTER.」
「Enter=Continue」
⇒ Enterキーを押下します。
9. セットアップ開始画面が表示されたら、Rキーを押して回復コンソールを起動します。
「セットアッププログラムのこの部分では、(後略)」
「インストール済みのWindowsXPを (中略) Rキーを押してください。」
「R=修復」
⇒ Rキーを押下します。
10. キーボードの種類を選択する画面になったら、半角全角キーを押してください。
「半角全角キー:106日本語キーボードの場合」
⇒ 半角/全角キーを押下します。
⇒ 更に、キーボードの確認画面が出るので、Yキーを押下してください。
11. 回復コンソールからアクセスするインストールを選択します。
「1: C:WINDOWS」
「どのWindowsインストールにログオンしますか?」
⇒ 通常はOSをひとつしかインストしていないので、「1」を入力してEnterします。
12. 次に、Administrator のパスワードを入力します。
⇒ Administrator のパスワードが空白の場合は、Enter キーを押すだけです。
Adminのパスワードを忘れちゃった人は、これ以上の作業が出来ません。
あきらめて、Windowsを再インストールする事を検討してくだされ!
13. コマンドプロンプト(C:\WINDOWS>_ )が出れば、ここまでの作業は成功です!!
では、山場の作業に入ります。
下(↓)の命令文を入力します。各行を入力した後、必ずEnter キーを押して、命令を
実行させます。16行にも及ぶコマンド入力ですが、一行ずつキチンと入力願います。
やっていることは、tmpというディレクトリ(フォルダ)を作り、現状、壊れてしまっている
レジストリファイルをtmpディレクトリに別名(~.bak)で退避させています。
その後、壊れたレジストリファイルをsystemフォルダから削除しています。
更に、repairディレクトリに格納されている初期のレジストリファイルをsystemフォルダに
コピーしています。
ここでは、Windowsが C:\Windows フォルダーにインストールされていることを前提に
しています。異なる場所にインストールしている場合は、C:\Windows を適切な
windows_folder に置き換えてコマンドを入力して下さい。
なお、「 \ 」はバックスラッシュと言いますが、日本語キーボードでは「¥」を入力するのと
同じ意味です。
なので、コマンドプロンプト画面でエンマークが出たとしても、慌てないように!
md tmp
copy c:\windows\system32\config\system c:\windows\tmp\system.bak
copy c:\windows\system32\config\software c:\windows\tmp\software.bak
copy c:\windows\system32\config\sam c:\windows\tmp\sam.bak
copy c:\windows\system32\config\security c:\windows\tmp\security.bak
copy c:\windows\system32\config\default c:\windows\tmp\default.bak
delete c:\windows\system32\config\system
delete c:\windows\system32\config\software
delete c:\windows\system32\config\sam
delete c:\windows\system32\config\security
delete c:\windows\system32\config\default
copy c:\windows\repair\system c:\windows\system32\config\system
copy c:\windows\repair\software c:\windows\system32\config\software
copy c:\windows\repair\sam c:\windows\system32\config\sam
copy c:\windows\repair\security c:\windows\system32\config\security
copy c:\windows\repair\default c:\windows\system32\config\default
14. 最後に 「exit」と入力し、Enterすると、PC再起動します。
→ 再起動中に、WindowsインストールCDとRAIDドライバFDを抜いてください。
抜かないと、PCは上記ディスクから起動をしようと試みますが、抜いておけば
内臓HDDにインストールされているOS(WinXP)から起動してくれる筈です。
見た目は、いつものXPが起動するように見えますが、レジストリはまったく別物です。
従って、OSの認証(アクティベーション)をしつこく求められる事でしょう。
ですが、このレジストリは仮のレジストリなので、認証をする必要は全くありません。
無視してWindowsが立ち上がるのを確認してください。
無事に起動したのでしょうか?ここまで来れば、全工程の半分はこなした事になります。
もうひと頑張りです。
◆ 第二段階の作業
【概要】 正常に起動出来ていたレジストリファイルを探し出し、tmpフォルダにコピーする。
15.XPをセーフモードで起動し、更に Administratorという絶対権限を持つアカウントで
ログインするように、PCを再起動する。
⇒ セーフモードで起動することにより、フォルダのカスタマイズをし易くします。
① 手順14で立ち上がっている状態を確認してください。
→ 画面が「ようこそ画面」であるとの前提で進めます。
② 左下の「終了オプション」をクリックし、再起動(R)をクリックしてください。
③ 画面が黒くなったのを見計らって、キーボードのF8キーを連打してください。
→ うまくいくと下記のような Windows拡張オプションメニュー 画面に入れます。
入れなかった場合は、もう一度再起動後F8キー連打でトライしてください。
「Windows 拡張オプション メニュー」
「オプションを選択してください:」
「セーフ モード」
「セーフ モードとネットワーク」
「セーフ モードとコマンドプロンプト」
「ブートのログ作成を有効にする」
(中略)
「上矢印キーと下矢印キーを使って項目を選択し、Enter キーを押してください。」
④ 矢印キーで「セーフ モード」を選択し、Enterキーを押します。
⑤ オペレーティング システムの選択画面になったら、
「Microsoft Windows XP Professional」を選んだ状態で、Enterキーを押します。
→ 時として、セーフモードが立ち上がるのに3分以上要するときがあります。
暗い画面のままでも、HDDのアクセスランプが点灯する場合は、我慢します。
⑥ 画面サイズがいつもより大きめな「ようこそ画面」が表示したら、
一番上に例の「Administrator」があるのでクリックし、パスワードを入力してログオン
してください。
なお、ここでもOSの認証(アクティベーション)は無視してください。
⑦ 画面中央に注意マーク付の下記のような警告ウィンドウが出ると思います。
「デスクトップ」
「Windowsはセーフ モードで実行されています。」
「Windowsのこの特殊な診断モードを使うと、ネットワークやハードウェアの (後略)」
(中略)
「(前略) 復元するばあいは、[いいえ] をクリックしてください。」
「はい(Y) いいえ(N)」
→ [はい(Y)] をクリックしてください。
16. エクスプローラーを起動します。
⇒ 左下スタートキーを右クリック→エクスプローラ(X)をクリック→エクスプローラ起動を確認
17. エクスプローラをフォルダオプションで設定する。
① メニューの[ツール(T)] → [フォルダ オプション(O)]
② [表示]タブクリックし、中段の詳細設定欄に注目する
③ [ファイルとフォルダの表示]の下の[すべてのファイルとフォルダーを表示する]に
チェックを入れる。
④ 詳細設定欄の一番下にある
[保護されたオペレーティングシステムファイルを表示しない(推奨)]のチェックを外す。
⑤ 警告マーク入りのウィンドウが表示されます。
「警告」
「保護されてるオペレーティングシステム (中略) 表示するように選択しました。」
「これらのファイルはWindowsを起動 (中略) 可能性があります。」
「これらのファイルを表示しますか?」
「はい(Y) いいえ(N)」
→ [はい(Y)]をクリックする。
⑥ XPをインストールしたドライブ(通常はCドライブ)の直下に位置するフォルダの
「System Volume Information」をクリックしてみる。
⇒ 幸運にも、フォルダーの中身が表示された方は、手順18にジャンプしてください。
(FAT32ファイルシステムでHDDをFormatしている場合は、セキュリティーの
概念がないので、該当フォルダにアクセスできるらしいです)
⇒ 下記のような警告ウィンドウが表示された方は、OKをクリックした後、
直下の手順⑦に移ってください。
(殆どの方は、この警告ウィンドウを見る事になるのではないでしょうか・・・)
「Documents and Settings」
「C:\System Volume Information にアクセスできません。」
「アクセスが拒否されました。」
「OK」
→ 仕方なく[OK]をクリックします。
⑦ エクスプローラのメニューの[ツール(T)] → [フォルダ オプション(O)]
→ [表示]タブ → [簡易ファイルの共有を使用する(推奨)]のチェックボックスを外す
→ [OK]をクリックします。
⇒ 元から上記チェックボックスが外れている方は、このまま手順⑧へ移ります。
⑧ [System Volume Information] フォルダを右クリックし、[プロパティ] をクリック。
⇒ [System Volume Information のプロパティー]ウィンドウが表示されます。
⑨ [セキュリティ] タブをクリックし、中段にある [追加]ボタン をクリックすると、
⇒ [ユーザーまたはグループの選択]ウィンドウが表示されます。
⑩ [詳細設定(A)]ボタンを押下すると[ユーザーまたはグループの選択]の別ウィンドウが
表示されるので、中段にある[今すぐ検索(N)]ボタンを押下します。
⇒ 下段に既存のユーザー名が展開されるので、その中にある[Administrator]を
選択した状態で、中段の[OK]ボタンを押下します。
⇒ 元の[ユーザーまたはグループの選択]ウィンドウの下段にも、前ウィンドウ同様
に [パソコン名¥Administrator] が表示されいるのを確認しつつ、[OK]を押す
⇒ [System Volume Information のプロパティー]ウィンドウの[セキュリティー]
タブに[Administrator]が表示されているのを確認して[OK]ボタンを押します。
⇒ 「System Volume Information」フォルダをクリックし、きちんと内容が表示さ
れる事を確認してください。
18. 「System Volume Information」フォルダの直下にあるサブフォルダーを調査します。
⇒ サブフォルダーは[_restore{87BD3667-3246-476B-923F-
F86E30B3E7F8}] のような形式の フォルダーが 2 つ(もしくは2つ以上)
存在しているはずです。
多分、これが今までバックアップしてきた復元ポイントを保存するフォルダーです。
⇒ それぞれのサブフォルダを右クリックし、[プロパティー(R)] を表示させてください。
注目すべきは、[全般]タブ に表示されている [作成日時:] です。
それぞれのサブフォルダの作成日時をきちんと把握してください。
⇒ 片方のフォルダの作成日時は、手順13~14を行った近々の日時になっている筈
です。このフォルダに入っている復元ポイントは使用しません。
⇒ もう片方のフォルダの作成日時は、WindowsXPをインストールした当時の日付に
なっている筈です。このフォルダに入っている復元ポイントを利用するのです。
19. 使用するサブフォルダ(例:_restore {英数小文字} )が決まったら、そのフォルダを
クリックします。
⇒ クリックすると RPx で始まるフォルダーが たくさんあるのではないでしょうか。
これこそが復元ポイントそのものらしいです。
⇒ RPx で始まるフォルダーの作成日時を見て、どの復元ポイントを利用するかを
自分自身で決めてください。
私の場合は、ムスメにPCを壊される直前の日時のRPxフォルダを使う事にしました。
20. 使用するRPxフォルダーを開き、Snapshot サブフォルダーがある事を確認します。
⇒ 該当の Snapshot フォルダーから、以下のファイルを C:\Windows\Tmp
フォルダーにコピーします。
作業はエクスプローラ上でコピー&ペーストで問題ありません。
_REGISTRY_USER_.DEFAULT
_REGISTRY_MACHINE_SECURITY
_REGISTRY_MACHINE_SOFTWARE
_REGISTRY_MACHINE_SYSTEM
_REGISTRY_MACHINE_SAM
21. C:\Windows\Tmp フォルダーに手順20でコピーしたファイルがある事を確認します。
⇒ 該当のファイルの名前をエクスプローラ上で次のように変更してください。
_REGISTRY_USER_.DEFAULT を DEFAULT に変更します。
_REGISTRY_MACHINE_SECURITY を SECURITY に変更します。
_REGISTRY_MACHINE_SOFTWARE を SOFTWARE に変更します。
_REGISTRY_MACHINE_SYSTEM を SYSTEM に変更します。
_REGISTRY_MACHINE_SAM を SAM に変更します。
さって、これですべての準備は整いました。あとは、最終段階に突入します!!
◆ 第三段階の作業
【概要】 仮のレジストリを削除して、正常なレジストリをsystemフォルダにコピーします。
22. 手順1~12を参考にして、回復コンソールを起動します。
23. コマンドプロンプトで、正常なレジストリをsystemフォルダにコピーします。
では、最終の山場の作業に入ります。
下(↓)の命令文を入力します。各行を入力した後、必ずEnter キーを押して、命令を
実行させます。10行にも及ぶコマンド入力ですが、一行ずつキチンと入力願います。
やっていることは、仮に利用したレジストリを削除し、tmpフォルダにある正常なレジストリ
をsystemフォルダにコピーしています。
ここでは、Windowsが C:\Windows フォルダーにインストールされていることを前提に
しています。異なる場所にインストールしている場合は、C:\Windows を適切な
windows_folder に置き換えてコマンドを入力して下さい。
なお、「 \ 」はバックスラッシュと言いますが、日本語キーボードでは「¥」を入力するのと
同じ意味です。
なので、コマンドプロンプト画面でエンマークが出たとしても、慌てないように!
del c:\windows\system32\config\sam
del c:\windows\system32\config\security
del c:\windows\system32\config\software
del c:\windows\system32\config\default
del c:\windows\system32\config\system
copy c:\windows\tmp\software c:\windows\system32\config\software
copy c:\windows\tmp\system c:\windows\system32\config\system
copy c:\windows\tmp\sam c:\windows\system32\config\sam
copy c:\windows\tmp\security c:\windows\system32\config\security
copy c:\windows\tmp\default c:\windows\system32\config\default
24.最後に 「exit」と入力し、Enterすると、回復コンソールが終了しPC再起動します。
→ 再起動中に、WindowsインストールCDとRAIDドライバFDを抜いてください。
抜かないと、PCは上記ディスクから起動をしようと試みますが、抜いておけば
内臓HDDにインストールされているOS(WinXP)から起動してくれる筈です。
レジストリは正常に稼動していた頃の物なので、正常に起動してくれると思います。
OSの認証(アクティベーション)を求められる事もない筈です。
いかがでしょうか?うまく修復できたでしょうか?皆様のご武運をお祈りいたします♪
以上、長文のお付き合い、大変ありがとうございました。
【追記(10/7/5)】
ブルースクリーンを復活させるには、上記のように複雑怪奇な操作が必要でした。
ですので、PCが正常に稼動しているうちに、復活操作を簡単にする仕込を導入してはいかがで
しょうか?! ご参考までに新記事のリンクを添付いたします。
⇒ブルースクリーンへの備え








あけましておめでとうございます。
年末年始ずっとハマッていました。
9割がた再インストールを覚悟していましたが、土壇場でこちらのサイトにヒットし、おかげさまで無事修復できました。
非常に助かりました。
ありがとうございました。
by GEN11 (2010-01-07 18:40)
GEN11様
あけましておめでとうございます。
お初にお目にかかります。
にょろぞうと申します。
書き込み&NICEを頂き、ありがとうございました(泣)
そして、こんなヘンピなブログまで足を運んで頂き、感謝です。
GEN11さんもC0000218をやっつけたとの事、
当方も自分のことのようにうれしく思います。
して、こんなうれしいコメントを頂けるのもブログ冥利につきます♪
今から、GENさんのブログにもお邪魔させていただきま~す
by にょろぞう (2010-01-08 23:07)
私も最近C0000218が発生。こちらのサイトの情報を参考に、復旧することができました。丁寧なインストラクションに本当に感謝しております。
私の場合、手順13のコマンドに出てくる
c:\windows\repair\system
というファイルが見つからず、ちょっと苦労しました。
途中諦めかけて、USB LINUXで逃げようかと思ったのですが、やっぱりWINDOWSで復旧するとうれしいですね。
本当にありがとうございました。
by hypocrite (2010-06-16 02:40)
hypocrite様
このような放置ブログにコメント頂き、うれしゅうございます。
しかも、systemファイルがrepairディレクトリに存在しない事を
ご指摘頂き、大変勉強になりました。
自宅のメーカ製PCをチェックしたところ、hypocriteさんの仰る通り
system.bakしか見当たらず、タイムスタンプも他ファイル(SAMとか)とは
異なっていて、使えそうにありませんね。
メーカ製のPCはOEM版(DSP版)のOSなので、こんな制限があるんですね
となると、System Volume Informationフォルダにある
_REGISTRY_MACHINE_SYSTEM等のファイル群を
直接system32\configフォルダにぶち込む方法が考えられますが、
HDDをセキュリティー管理されたNTFSでフォーマットしていると、権限が
無いため、はじかれますよね。。
hypocriteさんはどのようにクリアされたのでしょうか?
fat32だった??修復インストールしたとか??
宜しければ、hypocriteさんのブログに公開してほしいなぁ~ww
自分自身の記事を速やかに修正しつつ、今後のc0000218の対応策を
新記事にして公開する事でご苦労をおかけしたお詫びに代えさせて
いただく所存です。
今後もよろしくお願いいたします。 にょろぞう
by にょろぞう (2010-06-19 13:09)
にょろぞう様、
お返事ありがとうございます。
さらにお調べいただき、本当に頭が下がります。
OEM版のOSだからだったのですね~。
因みに、私の場合は、途方に暮れていましたので、ダメもとで、
バックアップファイルの拡張子を変更したような気がします
(が、確かではありません。たった2週間前のことなのに・・・)。
by hypocrite (2010-07-03 00:50)
初めまして!
親のPCにてC0000218が発症してしまい、
「物理メモリのエラーって…もしや破損か??」と不安がっていたところ、
こちらのご丁寧な説明にて無事復旧できました!
マイクロソフトの説明サイトは機械翻訳で目茶苦茶な日本語ですから本当に助かりました。
ありがとうございます!!
あと、にょろぞうさんはご存知なんでしょうが、
「プロンプト画面でのコマンド入力時、キーボードの上・下キーを押すと過去のコマンドがコピーできる」
という点を補足されていたら、
初めてコマンド入力される方々へとても役立つと思います。
あれだけの長いコマンドを一字一句間違えずに打ち込むのは相当の根気が要る作業でしょうから。(^^;)
ではでは~。
by 詠み人知らず (2011-12-02 18:27)