windows root\system32\hal.dll丢失或损坏,进不了Ubuntu

来源:百度知道 编辑:UC知道 时间:2024/05/11 19:46:27
动后发现,不能进入Ubuntu,提示C:\windows\system32\hal.dll损坏。

于是尝试进入WindowsXP,发现可以进入。查看C:\windows\system32\hal.dll,存在,从ghost文件中提取该文件覆盖。

重启后,发现仍然不能进入Ubuntu系统,仍提示提示C:\windows\system32\hal.dll损坏。

看来并非C:\windows\system32\hal.dll损坏。

boot.ini文件是:

[boot loader]
timeout=15
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
C:\GHLDR=一键GHOST v2008.08.08 奥运版
c:\wubildr.mbr="Ubuntu"

我的情况跟下面这个情况一样,但是答案我看不懂,具体该怎么操作啊
http://zhidao.baidu.com/question/53749013.html

启动后发现,不能进入Ubuntu,提示C:\windows\system32\hal.dll损坏。

于是尝试进入WindowsXP,发现可以进入。查看C:\windows\system32\hal.dll,存在,从ghost文件中提取该文件覆盖。

重启后,发现仍然不能进入Ubuntu系统,仍提示提示C:\windows\system32\hal.dll损坏。

看来并非C:\windows\system32\hal.dll损坏。

通过一番检查发现是boot.ini文件中有

c:\grldr="Ubuntu"

C:\GHLDR="一键还原"

其中grldr和GHLDR是两个通过XP系统引导功能来引导Grub的文件。检查发现是grldr文件丢失。添加grldr文件后,发现Ubuntu可以正常进入。

至此问题解决

提示hal.dll损坏或丢失,实际上该文件并不一定不存在,可以说,拷个文件回去system32里,根本是不可以解决的.出现这个错误的原因是boot.ini文件出错,导致引导不了机器从指定的路径启动,那样系统搜索其他的路径,而其他路径上是没有hal.dll文件的,就会提示这个错误.一般的解决办法是进入故障恢复控制台,用fixboot命令,假如这样修复不了boot.ini,就用bootcfg/add来重建boot.ini。

这个是由于C盘根目录下的boot.ini文件非法,导致默认从C:\Windows启动,但是又由于你的Windows XP没有安装在C盘,所以系统提示找不到HAL.DLL文件。启动因而失败。解决方法是重新编辑Boot.ini文件。

1)、使用启动盘(现在有很多XP安装盘自带多重启动系统,能启动进入DOS就OK了)启动启动,使用EDIT.EXE命令编辑这个文件。启动EDIT.EXE以后只要按照正确的格式输入Boot.ini文件的内容,保存