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

Windows
windows2003 IIS占用CPU资源100%的解决办法
Win2003 Server 远程桌面管理小窍门
NTFS与FAT32文件系统互换的简单的办法
卡巴斯基反病毒软件 v7.0.1.325 绿色版(Build 080709,支持 Windows Vista/2008)
远程修改Windows 2003机器名
32位操作系统不能认出超过4G内存的解决方法
windows系统安全模式的用途
远程管理Windows服务器的5个技巧
修改注册表加快Vista/2000/XP/2003关机速度
INTEL CPU系统双核补丁下载地址
Windows Server 2003 简体中文企业版下载
Win2003 SP2 企业安装版 Y1.0 [雨林木风]
Windows Server 2003 SP2 企业版 ISO 下载
svchost.exe占用CPU资源过高的解决办法
Windows 2003系统详细安装教程图解
巧设卡巴斯基 保障系统安全步骤
win2008官方简体中文正式版bt迅雷下载
win2008 IIS7安装教程
Vista下以真正的管理员登陆的设置方法
加快Vista文件复制速度的方法

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-16   浏览: 62 ::
收藏到网摘: 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即可
或者尝试进入安全模式,然后再提取文件相对应的文件