In trying to recover from a virus I have done the following....oh yeah this is XP Home Ed...
1. Virus was causing no access to highjackthis... and would turn off.
2. Wouldn't boot in safe mode so tried to repair the installation with XP cd.
3. Then would boot in safe mode and give me the error that "setup cannot finish in safe mode.
4. Installed a second xp install on a second hard drive. Cool at least I still see all my files.
5. Ran a virus scan and hopefully eliminated the virus.
6. Tried to go back to primary xp install and it says
"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."
7. Renamed the original hal.dll on C:windows\system32 and copied in a new version. This did not help the issue.
Any ideas on what to try next?
Cause
Causes of the "missing or corrupt hal.dll" error include, naturally, a damaged hal.dll 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 hard drive.
Resolution
Restart the PC. The hal.dll error could be a fluke.
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.
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.
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.
Note: If repairing the boot.ini does correct the hal.dll issue but the problem reappears after a reboot and you've recently installed Internet Explorer 8 in Windows XP, uninstall IE8. In this specific situation, IE8 could be the root cause of your hal.dll problem.