阿笨狗(jspadmin)网络日志

个人网络日志,网络、技术、思想、生活、札记……

« 中国载人航天工程总指挥常万全宣布,飞船进入预定轨道,神舟七号发射成功U盘破除XP管理员密码 »

"无法进入Windows?XP,提示hal.dll损坏或丢失"的解决办法

hal - hal.dll - DLL文件信息DLL 文件: hal 或者 hal.dllDLL 名称: Microsoft Windows Hardware Abstraction Layer DLL描述:hal.dll是Windows硬件提取层模块,该用于用于解决硬件的复杂性。属于: Microsoft Windows Operating System系统 DLL文件: 是常见错误: File Not Found, Missing File, Exception Errors关键词: 无法进入Windows?XP,提示hal.dll损坏或丢失问:现在无法启动 Windows XP 了,提示“因以下文件的损坏或丢失,Windows无法启动:\system32\hal.dll. 请重新安装以上文件的拷贝。”请问如何解决?答:该故障是由于hal.dll文件损坏或丢失引起的。解决的方法:插入 Windows XP的安装光盘,在“恢复控制台”下将光盘上i386目录中与你电脑硬件相匹配的HAL文件解压缩到Windows\system32中,并把文件名更改为hal.dll即可。HAL文件如下表所示,共分为7种,但目前的电脑通常都为“ACPI Uniprocessor PC”或“Advanced Configuration and Power Interface (ACPI) PC”,因此我们在替换时可以先尝试这两个。不同硬件配置的电脑,系统使用的HAL文件可能不同的,所以如果替换为与电脑不匹配的 HAL 文件,将可能导致系统无法启动。下面将介绍如何在“恢复控制台”下完成整个操作:假设 Windows XP 安装在C盘,F盘为光驱,系统的 HAL 文件属于“ACPI Uniprocessor PC”,那么进入“恢复控制台”后依次运行以下命令:Del C:\windows\system32\hal.dllexpand F:\i386\halaacpi.dl_ C:\windows\system32\hal.dllexit
计算机的描述文字及对应的 HAL 文件 [电脑启动时提示NTLDR文件丢失的原因及处理办法]
计算机的描述文字 对应的 HAL 文件
ACPI Multiprocessor PC halmacpi.dl_
ACPI Uniprocessor PC halaacpi.dl_
Advanced Configuration and Power Interface (ACPI) PC halacpi.dl_
MPS Multiprocessor PC halmps.dl_
MPS Uniprocessor PC halapic.dl_
Standard PC hal.dl_
Compaq SystemPro Multiprocessor or 100% Compatible halsp.dl_
计算机的描述文字及对应的 HAL 文件计算机的描述文字                                             对应的 HAL 文件ACPI Multiprocessor PC                                                 halmacpi.dl_ACPI Uniprocessor PC                                                     halaacpi.dl_Advanced Configuration and Power Interface (ACPI) PC      halacpi.dl_MPS Multiprocessor PC                                                    halmps.dl_MPS Uniprocessor PC                                                       halapic.dl_Standard PC                                                                     hal.dl_Compaq SystemPro Multiprocessor or 100% Compatible       halsp.dl_

今天公司的同事闲来无事,把 GhostXP_SP3电脑公司特别版_v9.0.iso 下下来了 刻盘然后装了 因为是戴尔的品牌机,所以有第一个分区是隐藏主分区。所以用光盘启动的时候,选择第一个(安装sp3到第一个主分区)就是不行,提示磁盘容量不 够。因为Ghost把第一个主分区指向了dell默认的隐藏分区上了,所以不够。用手动Ghost吧,ghost还原完,差不多快装好了,突然跳出来:system32\hal.dll损坏或丢失 又是因为在Boot.ini中xp的路径指向了默认的第一主分区。 所以xp报错了。[boot loader] timeout=3 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 /usepmtimer C:\GSLDR=超级 将multi(0)disk(0)rdisk(0)partition(1) 通通改为multi(0)disk(0)rdisk(0)partition(2) 保存就可以了。
上午装的系统,下午就病毒缠身,安装什么杀毒软件也无济于事。搞了好几天,重装了好几十遍,依然如此。这个时候,我就出场了,借了几张工具盘,看我如何应付?首先,使用DM分区,彻底搞废病毒。然后使用联想机器自带的winxp安装盘安装,重启黑屏半天居然提示找不到hal.dll。小问题,重新光驱启动,到控制台看看,可该死的联想自带系统盘居然没这个选项,借一张光盘,启动后在“恢复控制台”下将光盘上i386目录中的HAL文件提取出来放到Windows\system32中。操作步骤如下:
Del C:\windows\system32\hal.dllexpand X:\i386\halaacpi.dl_ C:\windows\system32\hal.dllexit
注意,这里假设C盘是你安装XP的盘,而X是光驱所在的盘。
重新启动,还是提示找不到,难道光盘坏了?用借来的光盘安装,依然如故。还是提示找不到,奇怪了。难道病毒搞鬼?看借来的盘里有PQ,把这个家伙启动,居然提示硬盘有错误。不可能啊,分区的时候也没提示错误啊。只好用DM再次重新分区。重复下来,还是如此,用借来刚盘的效率源扫了一下硬盘分区表,没问题啊。这个时候我想到了boot.int文件,是不是这个家伙把目录给指定错了?重新光盘启动,进入DOS环境,打开boot.int一看,果然,居然在本来是multi的位置,出来一个signiture。肯定不对,改成multi(0),保存不了,呵呵,哦,文件是只读的。于是把boot.ini的只读属性去掉,改完保存,重启。呵呵,WinXP进度条终于出现了。下面是我的操作步骤,用光驱启动到dos环境后的操作,全部在C盘根目录下。
attrib boot.ini -r -h 去掉只读和隐藏属性edit.boot.ini
改好后,按alt+F键保存boot.ini。仿照下面正常安装XP时的启动菜单改,我就仅仅改了multi那个位置。
[boot loader]timeout=30default=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
如果你觉得这个方法麻烦,我用的是雨林枫做的XP安装盘里的工具,看到里面有个win PE,或者类似的用光盘启动的系统,进入桌面后到C盘下更改boot.ini。如果这个你也觉得难,把这块硬盘挂到别的机器下,改一下就OK了。
搞定后,觉得还是有些不对劲,为什么那块出一串signiture呢?的呢?又使用KV3000查了一遍毒,没有。哎!只能这么疑惑着了。
下面是在软件星空论坛看到的关于hal.dll的一些信息。 Share

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Walle Build 100427

Auto Publisher Copyright 1999-2011 www.pifoo.com. Some Rights Reserved.
闽ICP备05035478号