[转载]真正解决hal.dll丢失问题(GHOST版XP)

真正遇到该文件丢失大部分问题其实在BOOT.INI文件上。
在安装XP的时候只有GHOST版的XP才会出现此类情况。为什么?
1.很多品牌机,包括笔记本在内,会有系统还原的功能。该系统还原的镜像会放在一个隐藏分区中,该分区很有可能是个主分区并且是第一个分区。从第二个分区开始才是C,D,E……,如果你使用GhostXP安装盘,如电脑公司特别版7.8等版本安装,恢复出来的boot.ini文件肯定与你的机子不匹配!这种方式安装系统,第一次自动重启是可以顺利进入系统的,再重启的话就会提示hal.dll丢失,这是因为boot.ini文件试图通过第一个硬盘的第一个分区引导系统,但由于隐藏分区的存在,我们安装的系统是在第二个分区(第一个分区不可见)!品牌机如果没有重新分区过硬盘,安装好Ghost系统后一定要手动修改boot.ini文件,否则会出错!

2.请大家看看GHOST版本的BOOT.INI的文件
[boot loader]   timeout=30   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" /fastdetect
相信很多人这个时候都明白了
当系统做好了前期的安装工作后,一重新启动就玩完。马上显示hal.dll丢失。因为BOOT.INI会认为那个做系统还原的隐藏分区是第一个分区,而不是C盘。
解决办法:
方法⑴ 彻底一点,也是最笨的方法,将其隐藏分区干掉,但不是那么容易,由于分区工具可能让你先删掉扩展分区后才能删主分区,所以……整个硬盘数据都会OVER
方法⑵ 在PE系统里对你的BOOT.INI进行修改将partition(1)都改成partition(2).不要只改一个哦!看清里面有两处partition(1)
于此大功告成。

3.是hal.dll文件的版本不对或者丢失;
由于不同的计算机对应不同的hal.dll文件,但是现在的ghost系统往往出现误判,导致hal.dll文件与实际不符。hal.dll文件和相应的计算机类型:acpi multiprocessor pc halmacpi.dl_ ; acpi uniprocessor pc halaacpi.dl_ ; advanced configuration and power interface(acpi)pc halacpi.dl_ ; mps multiprocessor pc halmaps.dl_ ; mps unitprocessor pc halapic.dl_ standard pc hal.dl_ ; compaq systempro multiprcessor or 100% compatible halsp.dl_。这个可以通过设备管理器的计算机项目可以看到,或者看hal.dll的版本信息。如果由于系统无法进入,无法知道究竟是那种类型。可以逐个测试,哪个能启动就是哪个^_^(笨办法)
解决办法:
(1)从其他机子上复制C:盘根目录下面的系统/隐藏文件,拷到出问题的机子上(可以通过DOS启动盘或者WinPE引导系统)这种方法适合由于断电,死机等异常关机造成的无法引导系统,这时只是引导区根目录下面的引导文件丢失,hal.dll文件并没有问题。
(2)插入XP安装盘重新启动电脑,选择故障恢复控制台。依提示进入winnt目录。
在DOS提示符下输入: expand x:\i386\driver.cab /f:hal.dll c:\windows\system32\(x:为光驱盘符.再次利用 expand 首先将halaacpi.dll拷贝至c:\winindows\system32\,并改名为hal.dll后重新启动电脑,再拷 halacpi.dll(因为hal.dll的源文件名是halacpi.dll).改名(ren)后重启,restart即可,或者尝试进入安全模式,然后再提取文件相对应的文件

 

 

来源:http://blog.163.com/zh_8859/blog/static/8014474201062155796/

 

原文地址:https://www.cnblogs.com/lizhishugen/p/2821242.html