Missing HAL.DLL

last night i was restarting my company’s server (sbs 2003) because i moved couple of big files around and a lot of going on with exchange server.  well, i restarted and 1hr after i could not login remotely.  this morning when i came in i saw this error message on my company’s server screen:

“Winows <<root>>\System32\Hal.dll missing or corrupt: Please re-install a copy of the above file.”

also could appear like:

“Windows could not start because the following file is missing or corrupt: \system32\hal.dll. Please re-install a copy of the above file.”
“Cannot find \Windows\System32\hal.dll”
“Cannot find hal.dll”

i was like, “Ok, easy fix.”  when i started researching about this problem things got a little bit hairy and ugly :(.  i spend half day trying to fix this problem and i finally got it fix.

first of all, i would like to explain to you what hal.dll does.  hal mean Hardware Abstraction Layer and it is responsable of loading the hardware and other drivers on the computer.  what causes this file to either be missed or corupt it could be hardware problems.  also, missing boot.ini or damage hard drive.

so in order for me to fix this i followed these two steps:
Option 1:

Boot from your CD and follow the directions to start Recovery Console. Then:

Attrib -H -R -S C:\Boot.ini
DEL C:\Boot.ini
BootCfg /Rebuild

Option 2:

Boot from your CD and follow the directions below to start Recovery Console.

Insert the Setup compact disc (CD) and restart the computer. If prompted, select any options required to boot from the CD.
When the text-based part of Setup begins, follow the prompts; choose the repair or recover option by pressing R.

If you have a dual-boot or multiple-boot system, choose the installation that you need to access from the Recovery Console.
When prompted, type the Administrator password. (if you didn’t create one try pressing enter).

At the system prompt, type Recovery Console commands; type help for a list of commands, or help commandname for help on a specific command.

Most likely you will need to expand the file from the CD. The command would be expand d:\i386\hal.dl_ c:\windows\system32\hal.dll. Substitute d: for the drive letter of your CD. Once you have expanded the file type “exit” to exit the Recovery Console and restart the computer.

Retrieved from http://kellys-korner-xp.com/xp_haldll_missing.htm

and it did not work at all.  so i decided to do some more research.  after an hour of research i found out that this problem is some thing that could corrupt my OS if is not done the right way.  so in order for me to fix this problem i decided to repair windows.  if you want to this step you are running the risks of loosing any special data if the setup installation gets corrupts.


  1. boot up your OS CD
  2. select install windows
  3. select reinstall windows
  4. then fill out the requested information and then your computer should be back and running like this never happened

if these steps are not well explained you could visit this site and perform those steps one by one at http://pcsupport.about.com/od/operatingsystems/ss/instxprepair1.htm.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.