There's actually a number of reasons why these annoying little DLL errors happen, but the most common, is caused when new programs are installed over all old ones and the old ones are not completely uninstalled 100%, causing registry pile ups and of course, getting a .DLL error messages.
Another reason, is damage that's been done by malware/spyware/adware programs, attaching themselves to your PC and wrecking havoc, deleting crucial DLL files from your PC.
The hal.dll file is created during install from 5 other dlls. HAL is the Hardware Abstraction Layer and it's the interface between the system drivers and the actual hardware.
Copying hal.dll will not resolve the problem.
A lot of times the file will be reported missing due to corruption of the boot sector or of the file system
Causes of the "missing or corrupt hal.dll" error include, naturally, a damaged hal.dll file or a hal.dll file that has been deleted or moved from its intended location.
Additional causes may include a damaged or missing boot.ini file or possibly a physically damaged HDD.
1. Restart the PC. The hal.dll error could be a fluke.
2. Check for proper boot order in BIOS. You might see the hal.dll error if the boot order in BIOS is first looking at a hard drive other than your main hard drive.
Note: If you've recently changed your boot order or recently flashed your BIOS, this may be what's causing your problem.
3. Run Windows XP System Restore from a command prompt. If this doesn't work or you're receiving the hal.dll error message before you're able to complete this process, move on to the next step.
4. Repair or replace the boot.ini file. This will work if the cause of the problem is actually Windows XP's boot.ini file and not the hal.dll file, which is often times the case.
5. Write a new partition boot sector to the Windows XP system partition. If the partition boot sector has become corrupt or isn't properly configured, you may receive the hal.dll error.
6. Restore the hal.dll file from the Windows XP CD. If the hal.dll file is truly the cause of the problem, restoring it from the original Windows XP CD may do the trick.
7. Perform a repair installation of Windows XP. This type of installation should replace any missing or corrupt files. Continue troubleshooting if this does not resolve the issue.
8. Perform a clean installation of Windows XP. This type of installation will completely remove Windows XP from your PC and install it again from scratch.
Note: While this will almost certainly resolve any hal.dll errors, it is a time consuming process due to the fact that all of your data must be backed up and then later restored.
Important: If you can't gain access to your files to back them up, understand that you will lose them all if you continue with a clean installation of Windows XP.
9. Replace the hard drive. Finally, if all else has failed, including the clean installation from the last step, you're most likely facing a hardware issue with your hard drive.
10. Perform a new installation of Windows XP after installing the new hard drive.
I have not tried it - but HERE
is a free program purporting to fix the error.
Thanks for using FixYa - a FixYa rating is appreciated for taking the time to answer your FREE question.