system\hal.dll エラー解決方法

Linuxのアンインストール後、Windows XP で hal.dll が見付からないエラーが発生してしまいました。
以前遭遇したときは Windows XP 起動ディスクを用いて fixmbr, fixboot をして修復したのですが、Windows XP の起動ディスクが物理的に読み取り不能になってしまったので、どうしたものかと調べてみたら、起動ディスク無しで修復できました。手順は次の通り。

  1. KNOPPIXを焼いておく
  2. KNOPPIXでブート
  3. ブート領域(MBR)が壊れたHDDを右クリックして、「書き取り可能」にする(HDDのファイルシステムFAT32でなく、NTFSだとこの作業が必要みたい)
  4. 対象HDDを開き、ルートにある boot.ini を開いて編集
  5. ブートパーティションを正しく編集・保存して、PC再起動
  6. Windows XP が起動すればOK