Re: Missing / corrupt Hal.dll

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance



Steve wrote:

I set the BIOS to boot from the CDROM, but I still get the message and the CDROM won't boot. I really don't want to reformat the hard drive.

Rock, you're right that it's a corrupt Boot.ini, since the last thing I did was to modify the Boot.ini to remove the 2nd version of Windows.

Can anyone tell me why the boot diskette I created on my main system won't let me see my C Drive on the bad machine? I can boot from the boot diskette, but not change to the C:. Suggestions?

Thanks, Steve

"Rock" wrote:


Steve wrote:


I had a backup machine that I inadvently installed 2 copies of Win Home XP on. I decided to clean things up, and now have a problem. I installed SP2, and removed the 2nd version based on an article I found in the Knowledge Base. Lastly, I edited the Boot.ini according to the instructions. When I reboot my machine I get the following error at the DOS prompt:
<Windows Root>\system32\hal.dll is missing or corrupt.


I made a boot diskette on my main machine and copied hal.dll onto it. I can boot from the diskette, but the C Drive isn't there (DOS won't let me change to it, nor can I copy the missing DLL).

Unfortunately, I don't remember enough about DOS to go beyond this step. Can anybody help me. Thanks, Steve

[Courtesy the late MVP Alex Nichol]

That message is rather misleading.  It happens because the boot.ini file
that tells the boot where to look for 'Windows' is damaged, so it is
looking for files in the wrong place - hal.dll just happens to be the
first one it looks for. Set the BIOS to boot CD before Hard Disk.  Boot
the XP CD and, instead of Setup, take the immediate R for Repair.
Assume any password requested is blank, and TAB over.

Use
Attrib -H -R -S C:\boot,ini
DEL C:\boot.ini
    to delete the bad one
BootCfg  /Rebuild

to search for Windows installations and make a new one.

--
Rock
MS MVP  Windows - Shell/User



Is the C: drive formatted in NTFS? If so Dos won't see it. Download the six diskette set from MS. That should allow you to enter the recovery console.


How to obtain Windows XP Setup boot disks
http://support.microsoft.com/kb/310994/en-us

How to install and use the Recovery Console in Windows XP
http://support.microsoft.com/kb/307654/en-us

--
Rock
MS MVP  Windows - Shell/User

.



Relevant Pages

  • Re: editing XP registry through DOS?
    ... > still occurs whenever windows boots up. ... > However I don't have this problem using DOS after I insert my floppy boot ... > change my settings to the registry from DOS? ... > and reboots to the Windows log in screen where I enter the password again ...
    (microsoft.public.windowsxp.hardware)
  • Re: editing XP registry through DOS?
    ... > still occurs whenever windows boots up. ... > However I don't have this problem using DOS after I insert my floppy boot ... > change my settings to the registry from DOS? ... > and reboots to the Windows log in screen where I enter the password again ...
    (microsoft.public.windowsxp.general)
  • Re: editing XP registry through DOS?
    ... > still occurs whenever windows boots up. ... > However I don't have this problem using DOS after I insert my floppy boot ... > change my settings to the registry from DOS? ... > and reboots to the Windows log in screen where I enter the password again ...
    (microsoft.public.windowsxp.customize)
  • Re: editing XP registry through DOS?
    ... > still occurs whenever windows boots up. ... > However I don't have this problem using DOS after I insert my floppy boot ... > change my settings to the registry from DOS? ... > and reboots to the Windows log in screen where I enter the password again ...
    (microsoft.public.windowsxp.perform_maintain)
  • Re: editing XP registry through DOS?
    ... > still occurs whenever windows boots up. ... > However I don't have this problem using DOS after I insert my floppy boot ... > change my settings to the registry from DOS? ... > and reboots to the Windows log in screen where I enter the password again ...
    (microsoft.public.windowsxp.work_remotely)