Missing HAL.DLL Error Corrupt Boot.INI file Quick Fix for missing Hal.dll error

If you have a crashed hard drive do not reformat your computer. You will lose all of your valuable information.

hal.dll errors…The Whole Story and a quick fix for Hal.dll

Yesterday at Fowler Computer Repair in NH we had a customer who had tried to install the service pack updates for Windows XP with Service Pack 2 (SP2). During installation there was a electrical disturbance and the computer rebooted without finishing the installation. When the computer rebooted it displayed an error message that looked similar to this.


Windows could not start because the following file is missing or corrupt:

file corrupt hal dll windows boot


He previously had SP1a that Came with his Dell Dimension 4600 Desktop Computer.

He tried on the phone for hours with Dell to get his computer back up and running but could not get into Windows and had very important business critical data files that needed to be retrieved from the hard drive.

2500+ pictures for his ebay business, as well as address book, outlook emails, and invoice data would be lost if he simply reinstalled windows without some data recovery first.

A technician from the Fowler Computer Repair Office in Rochester NH was sent to his house to assess the situation, determined that the hard drive was still spinning so there was hope. All of the data was recovered in just one day.

If you try the solution to the Hal.dll error below and can’t solve it yourself then Call Fowler Computer at 603-343-8331.

Click here for easy Data Recovery options

UPDATE: My phone plan does not reach Outside of the United States please email only shane@fowlercomputer.com I have had a couple calls from the UK and I am not able to return your calls so email me. shane@fowlercomputer.com

Windows XP- Missing HAL.DLL

Error Message: Cannot Find WindowsSystem32hal.dll


Get the Windows XP CD, doesn’t matter if it’s one to upgrade, or to install Windows, any of them work.

Let it start the setup process. Then, when it gives you the option, press “R” to go into the recovery console.

once in, it asks you to select which windows installation you want to go into. Just type “1” and hit enter.
For me, I just hit enter for the admin password, but if you have one, type it in and press enter.

You should now be in the C:WINDOWS directory. If not, navigate there I guess, although you should be there by default.
Next, type in the following command:

expand d:i386hal.dl_

(Replace D with the letter assigned to the CD drive that the Windows CD is in)
If it gives you an option to overwrite the file, type “Y” and hit enter. If it doesn’t, type in the command again, and it should ask you if you want to overwrite it.
Finally, type “exit”, and your PC should reboot normally. =D

Hal.dll might not be missing anymore. You’ll soon find out if you see the error or not.

That is the fix if the problem is actually the hal.dll file, it might also be the boot.ini file.

Click here for easy Data Recovery options

Another possible fix.

So far, this has been traced to an incorrect BOOT.INI file. To gain access to the Boot.ini:

Go to Start/Run and type in: msconfig. Then go to the Boot.ini Tab. Or…Right click the My Computer icon/Properties/
Advanced/Startup and Recovery/Settings/System Startup/Edit.

How to Edit the BOOT.INI File in Windows XP

This user had 1 hard drive, partitioned into C and D drives. His BOOT.INI file looked like this: (the erroneous lines are in “blue”)

[boot loader]
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)WINDOWS=”Microsoft Windows XP Professional” /fastdetect
multi(0)disk(0)rdisk(0)partition(1)WINNT=”Microsoft Windows 2000 Professional” /fastdetect

The 3 in the erroneous lines, above, points to the 3rd partition on the first physical hard disk. Since this user only had 2 partitions, this value was incorrect. Changing the value to 2, in both lines, allowed the user to complete Windows XP’s setup.

The corrected BOOT.INI looked like this:

[boot loader]
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)WINDOWS=”Microsoft Windows XP Professional” /fastdetect
multi(0)disk(0)rdisk(0)partition(1)WINNT=”Microsoft Windows 2000 Professional” /fastdetect

HAL – Hardware Abstraction Layer (hal.dll)

HAL is Microsoft’s abbreviation for the Hardware Abstraction Layer, the technology and drivers that let the Windows NT, 2000, and XP operating systems communicate with your PC’s hardware. HAL is one of several features–along with the NT file system (NTFS) that replaced the much less secure MS-DOS–that make NT-based operating systems more secure and reliable than Windows 95, 98, and Me.

HAL.dll prevents applications from directly accessing your PC’s system memory, CPU, or hardware devices (such as video and sound cards)–a method that can prevent many device conflicts and crashes. Unfortunately, HAL.dll sometimes also slows or stops DOS games and programs, which need to load their own memory managers or control hardware directly for better performance.

With HAL.dll in the way, developers must rewrite or even abandon their older software in favor of newer, HAL-compatible versions. Microsoft has pressured hardware makers to provide or support technologies such as MMX, DirectX, and 3D graphics language OpenGL, all of which allow fast but indirect access to the advanced high-performance features of video, sound, and CPU hardware. Such access also makes for a better visual experience when using Windows for Web and productivity applications; improved graphics performance is evident all over Windows XP’s new user interface.

Tip: To see which HAL.dll is currently installed, open Device Manager, and expand the Computer branch. The entry that
appears in this branch corresponds to the currently installed HAL.

HAL.DLL is Missing – Updated by MVP Alex Nichol

Option 1:

Boot from your CD and follow the directions to start Recovery Console. If you cannot get into recovery console seek the advice of a professional.

Click here for easy Data Recovery options


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:i386hal.dl_ c:windowssystem32hal.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.

TIP: Recovering Windows XP using the Recovery Console


Shaun Gray (3/2005) states:

Let me review my experience / problem with hal.DLL with you all:

I Received a computer with win XP home sp2 that after uninstalling IML4, and Installing IML5, and rebooting. (IML being Imesh light)
Computer displayed windows rootsystem32hal.dll is missing or corrupt, please re-install.

NO MODES would boot from advanced boot options
Only bootable option was from CD
Repair console would not EDIT system from OEM XP HOME CD
FixMBR did not solve anything
Bootcfg /list, bootcfg /rebuild did not solve anything
Fixboot did not solve anything

Solution Option 1 wouldn’t work with multi attributes with out “|” in between them. ******
Solution Option 1 didn’t solve anything, except inadvertently adding a second OS to boot.ini
Solution Option 2 was unusable with OEM XP HOME SP2 CD.
Solution Opt 2 with XP PRO SP2 Integrated CD “Functioned”, but was “unable to expand file”


Final Solution:

Removed hard drive from system.
Added Hard drive to a 2nd WORKING XP PRO System. As Slave on Cable select.

***(all references to “D:” are the Slave Hard drive damaged windows)***

Booted system and enabled – Explorertoolsfolder options

Display contents of system folders.
Show Hidden Files and Folders.
UN-check Hide Protected OS Files.

Go to “D:” open Boot.ini in NOTEPAD, remove the Extra OS’s added with option 1.
Close and Save changes to Boot.ini

Go to “My Computer” Right click on “D:” select SEARCH “D:”

Search “All or Part of the File Name” = “hal”

Hal.dll may or may not be found in “D:WINDOWSSystem32” either way it’s no good.
A working copy of hal.dll WILL be found in “C:WINDOWSServicePackFilesi386”
COPY THAT FILE “D:WINDOWSServicePackFilesi386hal.dll”
And Paste it to “D:WINDOWSSystem32” folder; if it asks to overwrite say YES.

You may now un-do the changes made to Explorertoolsfolder options to RE-Hide files.
Shut Down the computer.

Remove the 2nd Drive and reinstall it to its own tower as Master.

You should Now be able to boot the computer up as if nothing ever happened.

With the exception that it will prompt you to reinstall some drivers, Just say YES and let it auto detect …THEY ARE ALREADY THERE. And will setup fine.

This “FIX” assumes that the computer in question HAS at ther very least service pack1, if not service pack 2.

If these patches have NOT been installed , I dont belive any such Reserve copy of hal.dll will wxist on the drive!

If these tips don’t work and you need your data…

Call Fowler Computer for

  • Data Recovery of lost files fast.
  • Custom Built Business and Gaming machines and upgrade parts.

  • Troubleshooting hardware/software

  • Virus/Spyware Problems

Call Today or Bookmark (CTRL+D) for future reference

1+(603) 343-8331

Keywords for search: missing hal.dll, solution for hal.dll file is corrupted, hal.dll error on dual boot,repair boot.ini under dos command line, manually fix hal.dll, fix boot error xp home edition, hal.dll file, vista hal.dll missing dual boot, fix boot.ini hal.dll, hal.dll missing solved, my hal.dll is corrupted

hal.dll vista hal.dll corrupt hal.dll wiki ntoskrnl.exe

About Shane G. Fowler

Fowler Computer Repairs desktop and laptop computers in the Rochester NH, Wakefield NH area. We also offer Local Business Internet Marketing Services and Copywriting for SEO.
This entry was posted in amesbury ma, andover ma, boxford ma, computer backup, computer errors, Computer Help, computer repair, concord nh, danvers ma, Data Recovery, derry nh, dover nh, elliot me, essex ma, exeter nh, fix hal.dll, hal.dll, hampton nh, Hardware, haverhill ma, lawrence ma, manchester nh, methuen ma, newburyport ma, pelham nh, pittsfield nh, portsmouth nh, rochester nh, rye nh, salisbury ma, seabrook nh, stratham nh, toppsfield ma, Uncategorized, windham nh, wolfboro nh and tagged , , , , , , , , , , , , , , , , , . Bookmark the permalink.

9 Responses to Missing HAL.DLL Error Corrupt Boot.INI file Quick Fix for missing Hal.dll error

  1. john e says:

    how cn you go to my computer wnen the operating system can’t be installed? Need a work around for that!

  2. Anna says:

    Removing the original master drive and setting it as a slave drive in order to edit boot.ini is pure genius! I may end up doing the very same thing in order to solve my f-ed up NTLDR issue.

    …I have a sneaking suspicion that the Recovery Console method isn’t going to work for me 😦

  3. mouniesh says:

    this option was supported me well to ree cover my data with out formating the system.

  4. alex says:

    I took an image of my laptop c drive and attempted to restore it to a larger new empty drive. Each attempt I made failed because hal.dll was missing or corrupt according to windows.

    Manual checking revealed the file was present. However I was unable to repair the installation because recovery console demanded an administrator password. However I never set a password so after three incorrect password attempts my machine would reboot.

    This problem was solved by restoring an image of the entire drive and not just the active primary partition.

    The cause of the problem is likely to be the hidden recovery partition which is incorrectly handled by my disk imaging software ie. Acronis true image oem. To avoid the hal problems I think that the entire disc structure and file system relating to a recovered partition must be the same in the target location as in the source location.

    Now I have successfully restored the entire drive image I can manually reformat or adjust the secondary non active partitions to make use of the additional space on my new larger drive.

    With the disc structure now identical to that of the source drive I can go ahead and restore an image of the single partition I was trying to restore in the first place, without hal.dll issues.

    I cannot tell you how many hours of grief I had to endure to get to this solution, performing multiple image restorations at about 6 hours per attempt at best. I hope this info helps someone.



  5. Mona says:

    I used the solution which said ” expand hal.dll file or copy it ”
    but, The problem still exists 😦

    The problem started when I deleted the hidden folder ” RECYCLE ” which is under C drive

    RECYCLE come back 😦

  6. Randy says:

    Although I still have not resolved my original problem of not being able to boot into Windows XP Pro, one thing I did learn (after trying to correct a “missing or corrupt hal.dll file” is that when you check/edit your boot.ini file make sure that it points to the correct “Windows” folder. Every example I saw on the multitude of websites I have visited over the past 5 days has indicated that under “[boot loader]” the line for one partition, one OS typically is “default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS”. Similarly, the line under [operating systems] is “multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=”Microsoft Windows XP Professional” /fastdetect”. Using either bootcfg or manually changing boot.ini did not work for me (even after expanding hal.dll again, etc.). I finally read (yet another) technical article that described the various functions of the lines in boot.ini are realized that the “WINDOWS” in each of the boot.ini lines is actually the name of the system folder where it expects to find the OS and not just a generic term indicating that the system is WINDOWS. Well, my OS is an upgrade from Windows 2000 so the OS is installed in a folder named “WINNT”, not “WINDOWS”. So, I edited my boot.ini file so that the line after [boot loader] is “default=multi(0)disk(0)rdisk(0)partition(1)\WINNT” and the [operating system] is “multi(0)disk(0)rdisk(0)partition(1)\WINNT=Windows XP Professional” /fastdetect”. When I booted with this boot.ini the corrupt hal.dll error message went away.

    Unfortunately, this isn’t the only problem, but at least Windows tries to boot and I can try to get into Safe Mode rather than just hanging during the boot process. Maybe this is obvious to others, but it was never obvious in what I had been reading. Hope this helps someone . . .

  7. jeremy says:

    isnt the command “expand d:i386hal.dl_ c:\windows\system32\” ? because you want it to expand the hal.dll into the system32 folder

  8. dover nh says:

    Hi there, just became alert to your computer repair blog through Google, and found that it’s truly informative.

    I am going to watch out for your computer repair articles to learn new tips.. I will appreciate if you continue
    this in future. Lots of people will be benefited from your writing.


  9. Updated Computer Service Area
    Alton Barnstead Barrington Bow Conway Dover Farmington Middleton Milton
    Milton Mills New Durham Northwood Ossipee Rochester Rollinsford Somersworth Wakefield Wolfeboro

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s