当前位置: 首页 > 图文教程 > 操作系统 > Windows > hal.dll 丢失的原因分析

Windows
Windows系统安装免输序列号的方法总结
巧妙解决Win XP系统网络访问难题
IE浏览器收藏夹使用技巧谈
“网上邻居”技巧一网打尽
让Win XP管理共享功能发挥作用
玩转Windows服务原来这样简单
五招解决WindowsXP启动后操作迟延的问题
快速重装Windows之移花接木大法
文件管理 八招改变磁盘杂乱状态
网络设置不求人 应用技巧问答对对碰
Window XP中快速锁定计算机两法
Windows XP SP2中实现双人终端登陆
轻松操作 XP系统中文输入法技巧
拒绝偷窥 让系统隐私高枕无忧
让网络工具与Win XP SP2和平相处
Windows资源管理器使用技巧
极度瘦身:打造200MB的XP安装盘
巧设权限管理公用电脑
Windows下更改文件扩展名六大终级技巧
电脑虚拟操作实用技巧六则

Windows 中的 hal.dll 丢失的原因分析


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-16   浏览: 179 ::
收藏到网摘: n/a

一客户机器远程不上 接显示器一看 提示 hal.dll丢失
上网一查
hal.dll是Windows硬件提取层模块,开机后,系统无法进入,出现错误提示:请重新安装以上文件的拷贝:windwos root\system32\hal.dll

出现这种情况,一般可能有两种原因:
1,boot.ini文件出了问题; 由于现在的一键还原,矮人DOS或者多系统,都会改变boot.ini文件的。解决的方法其实也很简单,在这种情况下,其实还是可以进入安全模式的。进入安全模式,把boot.ini恢复到正常(或者说之前)的状态,就OK了!
附注:还有可能你的是品牌机,很多品牌机都有一个隐藏的分区,如果你使用GhostXP安装盘,如电脑公司特别版7.8等版本安装,恢复出来的boot.ini文件肯定与你的机子不匹配!这种方式安装好才系统,第一次自动重启是可以顺利进入系统的,再重启的话就会提示hal.dll丢失,这是因为boot.ini文件试图通过第一个硬盘的第一个分区引导系统,但由于隐藏分区的存在,我们安装的系统是在第二个分区(第一个分区不可见)!品牌机如果没有重新分区过硬盘,安装好Ghost系统后一定要手动修改boot.ini文件,否则会出错!

一般的boot.ini通常是这样的:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS //rdisk(0)指第一块物理硬盘partition(1)指第一分区
[operating systems]
multi(0)disk(0)rdisk(0)partition(1) //rdisk(0)指第一块物理硬盘partition(1)指第一分区\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

对你的BOOT.INI进行修改将partition(1)都改成partition(2).不要只改一个哦!看清里面有两处partition(1)

2,是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即可
或者尝试进入安全模式,然后再提取文件相对应的文件