>>> Main Site >>> Main Menu >>> Windows >>>
MENU

hal.dll



One of the most typical problem with hal.dll file can occur after installation new operating system. But in fact the problem is that the amount of partitions has changed and because of this it is necessery to modify boot.ini file. If you have problem with hal.dll file after try to boot windows XP you see on the screen the text like this:

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

Windows root>\system32\hal.dll
Please re-install a copy of the above file

If you have linux go to console and log in as root and then write in console cfdisk and press enter (To exit programm use right and left arrows on keyboard and select quit:) My cfdisk screen looks like this:

 Name    Flags  Part Type FS Type    [Label] Size (MB)
 - - - - - - - - - - - - - - - - - - - - - - - - - - -
 hda1    Boot   Primary   NTFS       [^A]    10618.84
 hda5           Logical   NTFS                1488.78
 hda6           Logical   NTFS       [^A]    15414.18
 hda7           Logical   Linux ext3         14451.82
 hda8           Logical   Linux swap           649.80
 hda9           Logical   Linux ext3         15274.35
 hda10          Logical   Linux ext3         15002.92
 hda11          Logical   W95 FAT32           6975.04
 hda12          Logical   NTFS       [^A]    13382.54
 hda13          Logical   NTFS       [^A]    14566.98
 hda14          Logical   NTFS       [^A]    12206.32

When I deleted one partition and then I created 2 partitions hda10 and hda11 windows which is now on partition hda12 moved for one position

To fix problem with hal.dll open boot.ini file (it is in main directory (c:\boot.ini) and modify line which affects partitions which number has changed. Line which will be modify:

multi(0)disk(0)rdisk(0)partition(8)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

The only thing to do is to change partition(8) to partition(9) because this is how partition with windows moved. boot.ini file after modification in my configuration (I have 3 windows operating systems) looks like this:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(9)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(9)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

Of course every entry is in one line - so there are three lines in [operation systems] section

If you do not know how the partitions changed you can count them in cfdisk programm or in fstab file.

The last option when you really do not know on which partiton is your WIndows you can test it by modyfying boot.ini file like this:

[boot loader] timeout=30
default=multi(0)disk(0)rdisk(0)partition(9)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(9)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

multi(0)disk(0)rdisk(0)partition(10)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

multi(0)disk(0)rdisk(0)partition(11)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

And then test every position if it is possible to run from then Windows. On my hard disk this means that for posiotion 4 and 5 I will see on the screen that I do not have hal.dll file, so I can remove this lines.



13.03.2007

Please feel free to vote this article:

Vote this article:

No votes yet.

Valid XHTML 1.1 © Copyright 2007-2011