Ok, so I'm going to be covering how to fix Windows XP, Vista and 7. Since there's so much to cover, we'll start with Windows XP, then Vista and so on.
There are so many things that can go wrong with Windows, between viruses, updates, power outages, and so fourth. It is good to know how to recover from some of these "oopsies."
Power Outages
Probably the most common reason that Windows stops booting, most people dont have UPS (or battery backups). Some people dont even bother to shut windows down correctly. This over time will cause some big problems with windows, and some software.
Usually there are some key error messages that usually occur after a power outage, or repeatedly turning the computer off improperly.
- Contant Reboots
- Windows Could not start because the following file is missing or corrupt: Hal.dll
- Windows Could not start because the following file is missing or corrupt: WINDOWS\SYSTEM32\CONFIG\SYSTEM
- Some random blue screen
Good thing is most of these can be fixed with a Windows XP installation disc. If you dont have one, you need one, but you can also use any bootable utility that allows you to run chkdsk or copy files. But, seriously, make it easy for me, get an XP disc so I don't have to make this so long that people just get the answer from google.
You know, we could waste 2 hours waiting for chkdsk to fix all of our problems, but not this time. Although I would strongly reccomend running chkdsk afterwards to ensure that no other data has been damaged. So let's get started.
Put your XP disc in a boot to it. If your computer doesn't boot to CD first you may need to press whichever button that gives you the Boot menu, this must be pressed before Windows starts to load, it usually is F12 on a lot, I've seen F11, F10, even a few that were F8 (once again not looking for Windows Boot Options, just to get to the Boot Device Menu), some are also Escape. I'd say most are going to be F12 or Esc.
Press any key to boot from CD....
Don't look for the "any" key either, just press any key on the keyboard. Please tell me you can handle this.
The next step only applies to like 5% of you people, so dont get confused and skip the next steps, only read this crap if the Windows CD doesn't find your drive.
If for some reason your computer has to have some special driver that requires a floppy, insert it, and press F6 when prompted, this way Windows knows to load a driver. Now if you have one of these retarded Dell computers that requires a driver but doesn't have a floppy drive, you might find yourself in a pickle. So I have a cure for that.
This is for Dell computers only. This is only if you boot to the Windows CD, and Windows does not detect your computers hard disk. You might get a message like this:
Windows was not able to detect any hard drives in this computer. Check cables blah blah blah Press F3 to quit.
Reboot. Press F2 to enter the BIOS. Use the arrow keys to go down to Disk Drives, something similar, I don't own a dell so sue me. Press enter to expand the tree and go down to SATA Operation, set it to IDE or Legacy. Save and Exit and go back to booting to your Windows CD and you'll find out that yes Windows now sees that you not only have a hard disk but you also have a windows installation, and don't do anything yet, follow my instructions when told to do so. Wait that didn't come out right...ah just listen to me.
For the rest you people with floppies, make sure you load the right driver, don't load an NT driver, and don't load a Server 2003 driver...THEY DONT USUALLY WORK, so load the one that is marked WinXP. Press S to specify the driver, choose XP, and then press enter.
Now for the rest of us normal people with normal computers.
When you get to the first screen that asks you to:
Press ENTER to set up a Windows Installation
Press R to Repair a Windows Installation
Press R, then you'll be asked which WIndows installation, most of us have only 1, so press 1. Then it will ask you for an administrator password. Usually there isn't one, if there is type it in. Press ENTER again.
Now we're at a C:\WINDOWS prompt.
Now depending on the error do the following:
If you're getting Windows could not start because the following file is missing or corrupt. C:\WINDOWS\SYSTEM32\HAL.DLL
Believe me, Hal is doing just fine. Most likely the BOOT.INI file is corrupt. In a nutshell the BOOT.INI file tells your computer where to find windows.
type this in:
bootcfg /rebuild
It will look for a Windows installtion and then ask you if you want to add it to the BOOT.INI file, of course you do. At this point type 'y' for Yes, and then it will ask for a load identifier type this:
Windows XP Home Edition
subsitute home for whichever edition you have, not really important, I just like to keep things normal.
Then it will ask you for OS load options, just type:
/fastdetect
press enter, and reboot, and if that was the problem then windows will reboot. If not, then try chkdsk, which those instruction will be down below.
If you're getting Windows could not start because the following file is missing or corrupt C:\WINDOWS\SYSTEM32\CONFIG\SYSTEM
This means that one of the registry hives are corrupt.
type this
cd "C:\SYSTEM VOLUME INFORMATION\"
cd resto~1
dir
DIR, will give you a directory listing, you will get something like:
RP101
RP100
RP099
RP098
choose the RP### that has the highest number. Oh I forgot to tell you what were actually doing. Because the registry is corrupt we're going to restore the registry file from the System Restore...manually. I mean if you could boot into windows you would just do system restore, but you can't.
so now you should be in this folder...or similar:
C:\SYSTEM VOLUME INFORMATION\resto~1\RP101
now type:
cd snapshot
dir
Now this will list all the files, particularly the registry files. There's a few.
REGISTRY_MACHINE_SOFTWARE
REGISTRY_MACHINE_SAM
REGISTRY_MACHINE_SECURITY
and so on...
so now we want to copy these files back into our WINDOWS folder. type this:
copy REGISTRY_MACHINE_SOFTWARE C:\WINDOWS\SYSTEM32\CONFIG\SYSTEM
and it will ask you are you sure, and yes we're sure. Do this for each registry file (hive), just change the name, the C:\WINDOWS\SYSTEM32\CONFIG\SYSTEM will remain the same. After you're done reboot and Windows should boot. If not, do chkdsk, and that's next.
If none of the above worked, or just wanted to take the easy way out. If you're sitting at the C: prompt just type:
chkdsk /r
press enter and find something to do for the next couple hours. Now Vista and 7 have different procedures on fixing these things, so if you tried this in Vista you're wasting your time, I mean you could, but not necessary because you'll get the same results.
Now keep in mind this is for the advanced user or someone who want to try things on thier own, and you are most welcome to comment or email me with your questions. However, do not hassle me. Personally I don't care if your computer doesn't boot, I'm not your personal IT guy, so if it's mission critical, call a tech that can get to you to take care of this.
Now if you have recently done updates, particularly Windows Updates and now windows wont boot. This probably wont be as painful as the above. You shouldn't need your Windows CD for this one. Press F8 at boot up and choose Safe Mode. Windows will usually boot into safe mode if the problem is software based (becasue windows doesn't load any software in safemode).
Once in safe mode, go to the Control Panel, go to add/remove programs, it will generate a list which usually takes a minute or two. Look for the little checkbox that says Show Updates. Check it off and scroll on down twoards the bottom. Should see Security Update KB303844 or whatever, look for the updates that have the most recent install date, and you can uninstall the update from there. Then reboot.
Or you can again take the easy way out. Or if this was software related, you can do System Restore. This might be necessary because some other software will not Uninstall from safe mode, so when you boot into safe mode choose no to start System Restore, and roll back to a date prior to installing the software or the update. Not all of these things work, even a repair install of windows doesn't solve all the problems. However the more you know about the software what files it adds, what driver files it adds to the system your chances of getting windows to run properly are always better.
Now if you just added a piece of hardware that is now causing windows not to boot, well we would of course want to take it out first. If you have installed the drivers or the software to go with it you'll want to remove it via safe mode. If windows has installed drivers automatically, then removing the hardware itself should correct the problem. Because I'm getting tired of typing, but mostly due to the fact that there is so much with hardware and software that trying to go in depth in certian things is pretty much futile, it's pointless to try to go over all the possibilities. But if you want to ask me a question send it to me.
This is why I call my blog Mike's Digital Hell, because it is hell. This is why the average person will never know enough, this is why I will always have a job, because there will always be computer problems, no matter how advanced, no matter how well something is made, there are always bugs, there are always hardware failures, viruses, malware, and so fourth.