2005年11月08日

WindowsXPがブルースクリーンで起動しない

東京に暮らす娘が使っているPCが、突然、起動しなくなった。職場より借りている新品PCなのに…。
WindowsXPがブルースクリーンになり、Stop 0xC0000218のエラーメッセージがでるとのこと。

C0000218はWindows2000がリリースされた当初から発生が確認されているエラーであり、にもかかわらず今にいたるまで完全な解決策が編み出されていないというWindows最凶クラスのエラーです。この原因不明の凶悪なエラー症状から、「死のエラー」という別称で呼ばれて」いるらしい。

Microsoftのページに「レジストリの破損により Windows XP を起動できなくなった場合の回復方法」が載っているが、あまりにも難しすぎる。

BartPEを使えば、素人でも何とかなるのでないか。

こんなバッチファイル(BartPE上で動かします。)を作ってみましたが、WindowsXPは無事復活できるでしょうか?
明後日、CD-Rが届く予定です。

【Windows復旧.bat】
------------
@echo off
echo レジストリの破損により起動できなくなったWindows XPを回復するため、
echo システム復元ポイントに保存された最新のレジストリファイルを
echo 既存のレジストリファイルに上書きコピーします.
echo.
echo 無担保・無保証ですので、ご自分の責任でお使いください.
echo          xxx@nifty.com 2005/11/08
echo.
echo 中止する場合は、Ctrl+Cを押してください.
pause
if not exist c:\tmp_reg md c:\tmp_reg
del /q c:\tmp_reg\*.*
for /r "C:\System Volume Information" %%F in (_REGISTRY_USER_.DEFAULT) do call sub.bat "%%F" c:\tmp_reg
for /r "C:\System Volume Information" %%F in (_REGISTRY_MACHINE_SECURITY) do call sub.bat "%%F" c:\tmp_reg
for /r "C:\System Volume Information" %%F in (_REGISTRY_MACHINE_SOFTWARE) do call sub.bat "%%F" c:\tmp_reg
for /r "C:\System Volume Information" %%F in (_REGISTRY_MACHINE_SYSTEM) do call sub.bat "%%F" c:\tmp_reg
for /r "C:\System Volume Information" %%F in (_REGISTRY_MACHINE_SAM) do call sub.bat "%%F" c:\tmp_reg
ren c:\tmp_reg\_REGISTRY_USER_.DEFAULT DEFAULT
ren c:\tmp_reg\_REGISTRY_MACHINE_SECURITY SECURITY
ren c:\tmp_reg\_REGISTRY_MACHINE_SOFTWARE SOFTWARE
ren c:\tmp_reg\_REGISTRY_MACHINE_SYSTEM SYSTEM
ren c:\tmp_reg\_REGISTRY_MACHINE_SAM SAM
cls
dir c:\tmp_reg
echo.
echo 上記5ファイルを既存のレジストリファイルに上書きコピーします。
echo.
echo 中止する場合は、Ctrl+Cを押してください.
pause
copy c:\tmp_reg\DEFAULT c:\windows\system32\config\default
copy c:\tmp_reg\SECURITY c:\windows\system32\config\security
copy c:\tmp_reg\SOFTWARE c:\windows\system32\config\software
copy c:\tmp_reg\SYSTEM c:\windows\system32\config\system
copy c:\tmp_reg\SAM c:\windows\system32\config\sam
rmdir /s /q c:\tmp_reg
echo.
echo コピーが終了しました.
echo BartPEを終了し、CD-ROMを取り出してから、パソコンを再起動してみてください.
pause
------------

【sub.bat】
------------
if exist %1 xcopy %1 %2 /d
------------

この記事へのトラックバックURL

http://trackback.blogsys.jp/livedoor/k.haga/50207386
この記事へのコメント
電話でのやり取りなので、詳しい状況がつかめませんでしたが、レジストリ復元だけではうまく行かず、chkdsk c: /r をかけたりしている内に、無事、WindowsXPが復旧しました。
Posted by PCサポート芳賀工房 at 2005年11月11日 01:32