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

Windows
Vista 自动登录实现方法
winXP使用Windows Vista的屏幕保护(双系统)
vista MSI 2869错误解决方法
Vista SP2测试版的更新内容
IIS7.0 设置技巧 (如何支持asp?)
在Vista 预览PDF文件的方法介绍
微软已开放Vista SP2 Beta下载
自动登录XP系统(免密码免欢迎界面)
Vista 目前的窘境5大原因分析
xp 关机后自动重启
MSCONFIG 启动里面哪些是非法的项目?
Vista 快速清理通知区域的图标
关闭系统服务导致Windows XP系统无法识别移动硬盘
Windows XP SP3中启用支持NLA的远程桌面
Windows XP于今年4月14日退出“主流支持”阶段
Windows XP更新 添加对exFAT文件系统格式的支持
全面深入地认识Windows XP的激活问题
在XP和Vista上实现Windows 7的新功能
让Windows XP中顽固视频消声匿迹
简单三步修改 实现Windows XP自动登录

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


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