丢失Windowsroot\system32\hal.dll怎么办

发布网友 发布时间:2022-04-20 11:41

我来回答

2个回答

热心网友 时间:2023-08-07 00:28

system32\hal.dll

解决"systemroot\\system32\\hal.dll文件非法或该文件已损坏,系统无法启动"
当电脑重新启动进入WinXP时,系统提示:“systemroot\\system32\\hal.dll文件非法或该文件已损坏,系统无法启动”。可以利用将故障恢复控制台来修复损坏的文件。
插入xp安装盘重新启动电脑,选择故障恢复控制台。依提示进入Windows dos目录。
在DOS提示符下输入:expand x:\\i386\\driver.cab /f:hal.dll c:\\windows\\system32\\(x:为光驱盘符.再次利用expand 首先将halaacpi.dll拷贝至c:\\windows\\system32\\,并改名为hal.dll后重新启动电脑,再拷halacpi.dll(因为hal.dll的源文件名是halacpi.dll).改名(ren)后重启,restart即可

提示hal.dll丢失也可能是 C: 盘的 boot.ini 文件的问题
boot.ini设置的启动分区不正确当然就找不到hal.dll

我记得我有一次装了双系统
重装windows时发现
不知道怎么在C盘前加了个分区
结果就提示hal.dll丢失,
原因是以前的C盘已经成了现在的D盘,
windows 当然找不到boot.ini,所以提示错误
将前面的分区删除就好了

总之,提示hal.dll丢失,hal.dll损坏不见得就是hal.dll的问题
很有可能是启动设置不正确

如果是boot.ini 问题 那么如下进行

【方法一】
用WinPE用工盘引导系统编写新文件,这个从别的机器复制一个。
C:\boot.ini 是WINDOWS系统的启动配置文件,如果有多个操作系统它可以让你选择启动哪一个系统,也就是按F8出现的那个系统启动菜单。
由于你的boot.ini文件坏了,所以系统只能默认从C盘启动。

最简单的恢复办法,就是手工建立这样一个文件,内容如下:

[boot loader]
timeout=0
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

注意:boot.ini文件在C盘根目录,具有SHR三种属性,可以用DOS命令去掉相关属性后再修改,修改后再恢复该文件的相关属性。或者原文件丢失,手工建立后,加上这些属性,有助于保护文件。

去掉属性:attrib -s -h -r boot.ini
加上属性:attrib +s +h +r boot.ini

【方法二】
另外,可以在命令行状态下执行bootcfg.exe。执行bootcfg.exe /?命令以查看相关参数功能。
用XP光盘引导启动
进入故障恢复控制台
输入 bootcfg /rebuild
os加载项写 /noexecute=optin /fastdetect

【故障恢复控制台怎么进入】
1、 光盘中的故障恢复控制台
在安装完windows XP后,如还想使用光盘中的故障恢复控制台,可以将windows XP安装光盘放入光驱,通过光盘启动系统,在出现"恢复控制台"界面以后,按下键盘中的R健,接着在登录必要的文件之后就会出现故障恢复控制台窗口。
2、 安装故障恢复控制台到硬盘中
如常用到控制台,可在硬盘中安装该控制台,windowsXP,将安装光盘放入光驱,之后通过“开始---所有程序---附件---命令提示符”打开命令提示符窗口,键入“CD X:\i386”(X代表光驱盘符),命令进入安装光盘的i386目录下,再键入“winnt32/cmdcons”命令来安装该故障恢复控制台。该程序大约需要7MB的硬盘空间。运行的时候会弹出窗口,选择进行安装。在DOS环境下也可以安装,通过“Winnt/cmdcons”命令来实现。(只有在常规安装完成后才可以进行故障恢复控制台程序的安装)。
使用故障恢复控制台
重启计算机,在"启动"菜单中选择“Microsoft Windows XP Recovery Console”项回车,进入故障恢复控制台命令行窗口。

热心网友 时间:2023-08-07 00:28

我也遇到过。给以下资料你参考下:
提示hal.dll损坏或丢失,实际上该文件并不一定不存在,可以说,拷个文件回去system32里,根本是不可以解决的.出现这个错误的原因是boot.ini文件出错,导致引导不了机器从指定的路径启动,那样系统搜索其他的路径,而其他路径上是没有hal.dll文件的,就会提示这个错误.一般的解决办法是进入故障恢复控制台,用fixboot命令,如果这样修复不了boot.ini,就用bootcfg/add来重建boot.ini。
这个是由于C盘根目录下的boot.ini文件非法,导致默认从C:\Windows启动,但是又由于你的Windows
XP没有安装在C盘,所以系统提示找不到HAL.DLL文件。启动因而失败。解决方法是重新编辑Boot.ini文件。
1)、使用Win9X启动盘启动,使用EDIT.EXE命令编辑这个文件。启动EDIT.EXE以后只要按照正确的格式输入Boot.ini文件的内容,保存为Boot.ini文件即可。
2)、使用COPY
CON命令创建一个Boot.ini文件。在DOS下输入Copy
Con
C:\boot.ini以后回车。然后按照Boot.ini文件的格式输入,每输入一行敲一次回车键,当全部内容输入完毕以后,按CTRL+Z,屏幕上会看到^Z的提示。这个时候再敲一次回车,系统会提示1
file(s)
copied.这就表示创建成功了。
3)、使用故障恢复控制台里面的bootcfg命令。
4)、在别的电脑上创建好以后,拷贝到受损电脑的C盘根目录上覆盖源文件即可。
还有个办法,你用个u盘从别个那里拷一个
hal.dll文件,然后插在你的电脑上,再用一张系统安装盘放进光驱。在第一选择里,选择修复,就可以进入doc里了。然后从a:
b:
一直试下去,看到了u盘就要吧用
copy
hal.dll
c:\windows\system32\hal.dll
就可以了,
原理是在安装系统的时候,u盘也会被检测到,就可以用了。软盘也可以。但你应该不会有软驱
经过这样的修复后
如果问题仍在
那么可能是内存的故障

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com