安装linux成功,但启动windows时出现hal.dll文件找不到windows无法启动了怎么办啊?

安装linux成功,但启动windows时出现hal.dll文件找不到windows无法启动了怎么办啊?

我把linux安装成功了,但windows无法启动了,步骤:
安装镜像放在你的XP下的ntfs盘区的根目录下f盘,然后从该镜像里提取两个安装引导
文件--vmlinuz 和i nitrd.img(在安装镜像里的isolinux文件夹里的),把这两个文件复制到安装镜像所在的盘
的根目录下。接下来就是用GRUB引导redflag 6.0的安装镜像了!其实GRUB里的东东,我们只要有 grldl(我
在后面提供了下载地址)这个文件就行了,然后我们自己动手写一个menu.lst(这个是GRUB的引导列表!)
  title Redflag 6 desktop
       root(hd0,6)
  kernel (hd0,6)/vmlinuz
  initrd (hd0,6)/initrd.img ramdisk_size=8192
  把上面的代码粘贴到记事本里,然后保存为menu.lst就可以了,一定要保存到你的安装镜像所在的盘的根
目录下。
  本文提到的GRUB中安装红旗 6.0所需要的文件下载grldl 右键迅雷下载
  最后,我们要做的就是在XP的BOOT。INI中添加GRUB的引导的选项了,这个很简单了,你只需要打开你
xp或2k中的boot。ini,然后在其中加入一句就可以了,下面的是我的boot.ini,以供参考!
  [boot loader]
  timeout=4
  default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
  [operating systems]
  multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP" /noexecute=optin /fastdetect
  c:\grldr="grub for redflag 6"

之后linux安装成功,但windows提示找不到hal.dll文件,无法启动。请问各位大虾怎么回事呢?要怎么解决呢?
好像安装LINUX都没影响到WINDOWS啊
我在戴尔d630机子上就这种情况呢,正版xp系统,看来要重装了
我已经解决了这个问题,因为c盘一般都在硬盘第一个分区,而这台电脑c盘在第二个分区,在写boot 时写成partition(1)\WINDOWS 而实际应该是partition(2)\WINDOWS 所以。。。。
不过学到了很多东西