Question

Locked

XP boot problem - dll image error

By KKRipken ·
During boot into Windows, my system stalls and I get an error box. The caption on the box reads: "lsass.exe - Bad Image." And inside the box, "c:\windows\system32\cryptdll.dll is not a valid Windows image. Please check this against your installation diskette."

I read the "10 things you can do when Windows XP won't boot" post. But I can't find my original Windows XP CD, so the Recovery Console won't work; I can't boot into Safe Mode, so System Restore isn't an option; "Last known good configuration" just takes me into the same problem.

Some steps I've taken: I first used Knoppix (a fabulous tool) to back up all of my data, even though I think it was already backed up. I then moved the physical drive to another system. It found it and I ran antivirus (NOD32) and Spybot S&amp on it (nothing) and ran Chkdsk from both the command prompt and from Windows. No problems found. I put it back and it still won't boot to Windows.

Short of replacing Windows, do you have any suggestions?

Kelly

This conversation is currently closed to new comments.

5 total posts (Page 1 of 1)  
| Thread display: Collapse - | Expand +

All Answers

Collapse -

You are going to have to get a copy from somewhere, it is the only option.

Follow the instructions below carefully.

XP's Rebuild Command.

It usually takes a lot to stop XP in its tracks. Even in those rare cases when the operating system is badly damaged, you'll usually at least have the option of booting into the "Last Known Good" configuration, or to Safe Mode. But sometimes, especially after major hardware failures or part swaps (e.g. moving the operating system to a new hard drive), or after problems with dual- or multi-booting software, you may encounter seemingly intractable errors such as "Missing or corrupt HAL.DLL," "Invalid Boot.Ini," or "Windows could not start..."
These problems can seem hard to get past. For example, the first time I got a "Cannot find \Windows\System32\hal.dll" error message, I thought I'd be clever and replace the missing file via a simple Copy command from the Recovery Console. I booted the PC, switched to the \Windows\System32 folder, and there it was: The HAL.DLL was already there. It wasn't missing at all. Why couldn't the operating system find it?
I tried copying a fresh version of the file to \Windows\System32. No dice. I tried renaming it all uppercase and then all lowercase. Nothing. I put a copy in the root directory. No effect. I tried everything I could think of, but nothing worked.
Then--doh!--I stopped thrashing and did what I should have done initially: I dug into the Microsoft Knowledge Base and learned about XP's built-in Rebuild command. It can often easily fix "Missing HAL" and similar problems in just a minute or two. If you know about this command and how to use it, you can potentially save yourself hours and hours of manually reinstalling or rebuilding a failed operating system.
The Rebuild command--technically a software "switch" used with XP's Bootcfg tool--automatically searches a hard drive for valid startup information and files, letting you choose the correct ones. This has the effect of removing and repairing any references to whatever invalid, missing, or corrupt startup information was preventing normal booting.
As is true of so many technical topics, this one actually takes far longer to describe than to implement, so please don't be put off by any seeming complexity in this discussion. Once you know the process, it's actually quite straightforward and takes only a minute or two to run to completion.
For example, if you already have some knowledge of the commands involved, many "Missing or corrupt HAL.DLL," "Invalid Boot.Ini," or "Windows could not start..." problems can be fixed with these five shortcut steps:
Boot from your XP Setup CD and enter the Recovery Console
Run "Attrib -H -R -S" on the C:\Boot.ini file
Delete the C:\Boot.ini file
Run "Bootcfg /Rebuild"
Run Fixboot
It really can be as simple as that!
But the first few times you try this repair, it makes sense to use the slightly longer but more certain "official" method, as outlined by Microsoft in a number of separate Knowledge Base articles. To save you time, we'll concatenate the instructions here.
Enter The Recovery Console
The safest, surest way to resolve problems such as "Missing or corrupt HAL.DLL," "Invalid Boot.Ini," or "Windows could not start..." is to boot the PC from an XP Setup CD and use the pristine, uncorrupted files and tools there to effect repairs. The one catch is that if your setup CD is significantly older than your current Windows version, you may have file compatibility problems. For example, you can hit snags if you use an original or SP1 XP Setup CD to try to repair an XP SP2 installation. You'll get a message to the effect that the version you're trying to upgrade is newer than the version on the CD.
The solution here is to use a "slipstreamed":
http://lifehacker.com/386526/slipstream-service-pack-3-into-your-windows-xp-installation-cd
setup CD, which adds the newer files to your original setup CD. This kind of updated setup CD can be used on just about any XP installation. It's a good idea to have an up-to-date, slipstreamed setup CD available in any case, as it simplifies all future installs and CD-based repairs.
Once you have a startup CD with the same version of system files as the PC you're working on, configure your PC to boot from CD if it isn't already set up that way. (You may need to enter the BIOS setup tool to configure the PC to boot from the CD.)
Start your PC with the XP Setup CD in the drive. When you see the "Press any key to boot from CD..." prompt, do so and let the CD-based boot process begin.
When the Recovery Console option is offered ("Press R to start the Recovery Console"), do so. You may be asked which Windows installation to enter, in which case type the number of the Windows installation you wish to work on (usually "1").
When prompted, enter the Administrator's password for that Windows installation.
At the command prompt, type "Bootcfg /Rebuild" (without the quotes) and hit enter. Windows will then scan the hard drive, looking for valid Windows installs and startup information.
The exact verbiage will depend on your setup, but after a few moments you'll see a prompt that says something like:
Total Identified Windows Installs: 1
[1] C:\Windows
Add Installation To Boot List?
Assuming the information you see is correct, enter "Y" for yes, and Bootcfg will start the process of rebuilding the boot list to include the indicated Windows installation. Along the way, it will repair most "Missing or corrupt HAL.DLL," "Invalid Boot.Ini," "Windows could not start...," and similar errors.
After a moment, you'll be asked to "Enter Load Identifier." This is the name of the operating system that will appear in boot menus. For consistency with the standard nomenclature used by Microsoft, enter "Microsoft Windows XP Professional" or "Microsoft Windows XP Home Edition" without the quotes and hit enter.
Next you'll be asked to "Enter OS Load Options." For normal installations, enter "/Fastdetect" (without the quotes) and hit enter.
In most cases, that's all it will take. You can type "Exit" to leave the Recovery Console and reboot the PC, which should then start normally.
But if you wish, or in cases where you suspect a problem with the boot sectors on the hard drive (as with problems in a dual- or multi-boot system that's become unstable, or where a third-party boot manager may have run amok), you can run Fixboot from the command line (without any parameters) prior to exiting the Recovery Console. This will write a new partition boot sector to the default drive, undoing any changes caused by dual-, multi-, or third-party boot processes. (You can reactivate those alternate boot methods later if you wish, but running Fixboot now simplifies the boot process and removes nonessential boot variables, which in turn helps ensure that the repaired XP installation will have the best chance of successful booting.)
After running Fixboot, type "Exit" to leave the Recovery Console and reboot the PC, which should then start normally.
Additional Options
A version of Bootcfg can also be run from inside Windows. Type "Bootcfg /?" (minus the quotes) in the Start/Run line to see the commands available that way. Note that the /Rebuild command isn't available from inside Windows; you can only run that from within the Recovery Console. (That makes sense because you only need to totally rebuild the boot information when Windows won't start normally.)
A /List command is also available only from within Recovery Console. It simply lists the entries already in the boot list, which can be useful for checking or as a learning tool.
You can also see entries already in the boot list from within Windows. Right-click on My Computer, then select Properties/Advanced/Startup and Recovery/Settings. The entries are shown in the System Startup portion of the dialog, and you can directly edit the Boot.Ini file by clicking the Edit button there.
You can also view and edit the startup entries via the Msconfig tool. Enter "Msconfig" on the Start/Run line, and you'll see numerous options for modifying the Boot.Ini and related files. The XP help system explains each option pretty well.
But none of these "edit from within Windows" options is available when Windows won't boot, which is why the Recovery Console's little-known Bootcfg /Rebuild command is so important and useful. If you know about this command and how to use it, you can potentially save yourself literally hours and hours of manually reinstalling or rebuilding a failed operating system!

Please post back if you have any more problems or questions.

Collapse -

A couple additional questions

by KKRipken In reply to You are going to have to ...

Thanks so much for the detailed answer. Some additional questions:

1. Can I use any XP CD to enter the Recovery Console? In other words, not use the same one for which I have a license but use a friend's and then just recover my copy and not install?

2. I just bought a new Windows XP Pro SP3 CD for installation to a MAC, using Parallels. Assuming the answer is yes to Item 1 above, can I use that one to run Recovery Console, even though the system on which it's running (the bad one) is SP2?

3. Another user suggested using the new CD (or a friend's) and then entering my License #, which I think I have. Do you know it that will work?

Collapse -

Answers

by IC-IT In reply to A couple additional quest ...

1. Yes
2. Yes
3. Maybe, it would have to be the same product number.

Enter the RC and try this first.
copy c:\windows\system32\dllcache\cryptdll.dll c:\windows\system32
If an error; (like file not found).

copy c:\windows\servicepackfiles\i386\dllcache\cryptdll.dll
c:\windows\system32
If still an error;Use Your CD Drive Letter if not D

expand \i386\cryptdll.dl_ c:\windows\system32

Collapse -

Remember one thing, that if you put in a code...

Whether it will be yours or not it could lock you out or even still refuse to let you go any further, but i doubt it, i have not tried that as yet but it should work. Just get/buy a copy for yourself that way you stay independent and you will always have your copy if you need it.

Please post back if you have any more problems or questions.

Collapse -

I have had the same issue....

by ---TK--- In reply to XP boot problem - dll ima ...

I have came across the same issue.... I own a Valid XP license, but I lost the CD... So I used my Friends XP CD (same version), ran the CD and when it prompted me for my serial, I used my serial. And I was able to reinstall XP that way...
Looks like the quickest way to get you back up and running is a fresh install...
Great Job with using Knoppix! If linux doesnt bother you... You could try Ubuntu 8.04 its a stable version... and easy to use.

Back to Hardware Forum
5 total posts (Page 1 of 1)  

Related Discussions

Related Forums