Windows XP Login/Logon Problem

Recently I encountered a strange problem with Windows XP that screws up the logon process. I spent a whole night trying to figure out what the problem is a how to fix it, and I eventually prevailed. This whole experience had taught me something about troubleshooting computers, and I write this article to share my experience and also to help the people whose computers have this annoying problem.

I spend a lot of time in front of my computer these days, and it’s not just because I like to surf the net or play games; it’s also because I need the computer to complete my assignments. Many people need a computer in order to work and/or study, so it’s really inconvenient when computer troubles occur. I recently encountered such a problem that basically locked me out of my own computer, and I spent several hours trying to find a solution. After many trips up and down the stairs between my room and my mom’s computer and trying out several solutions posted online, I finally managed to find the best resolution to the problem. Even though the problem took time away from my studying, it was a valuable computer troubleshooting experience, as I managed to gain some new knowledge about computers. Of course, I wouldn’t want something like this to happen again though.

This particular problem I’ve encountered is a software problem. More specifically, it’s a Windows problem, which isn’t all that surprising to some people as Windows isn’t exactly known to be problem-free. It turned out to be just a tiny change in operating system, but the problem was serious enough prevent my computer from being used to do anything useful. Below is a list of the characteristics of the problem and the solutions I’ve found on the net. I’ll evaluate each solution (as I have tried many of them in the effort to fix my computer), and tell you which is the overall best solution.

Software Effected:
From what I could gather from the net, this problem seem to affect Microsoft Windows XP, and most of the people who have experienced this problem seem to have the Pro version. It might affect other versions of Windows as well.

Symptoms:
This problem occurs when a person try to logon into Windows. After inputting the password (and maybe username if the computer doesn’t use the Welcome screen) and pressing the login button, the login sound is played and the wallpaper might show up, but Windows then quickly logs out back to the login screen. It doesn’t matter which account the person is trying log into and the problem persists in Safe Mode.

Cause:
This annoying problem is caused by a change to a single value within the registry. For those of you who don’t know, the registry is a database within Windows that contains a lot of important information regarding software and other stuff regarding the system’s configuration. You can look at the registry and edit values by running the Registry Editor (Start–>Run, type in regedit and press OK). Unless you are an expert in Windows, do not mess around with the registry. As this problem indicates, screwing around with the registry has the potential to make your computer unusable. The particular value we want, called “Userinit”, is located in:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

The correct data for the value should be:

C:\WINDOWS\system32\userinit.exe

If Userinit contains anything but the data above, or if the Userinit value is missing, then the logon problem described above will occur. As you may have figured it out already, the Userinit value points Windows to a program in the system32 folder called “userinit.exe”, which is used initialize a user’s account during login. The wrong data within the value or the disappearance of this value will cause Windows to not use the program during login, so the account immediately logs out.

So now the question is what changed the Userinit value within the registry? There seem to be several possible culprits. Obviously, this change can be caused by some not so friendly software, like viruses or spyware. Another possible group of culprits is actually anti-spyware programs. Of course, there is always the possibility that the problem is caused by the corruption of the registry, which may be cause by a lot of other things.

Solutions:
If you search around the net, you will find many different solutions to the problem. After trying out most of the solutions, I found only one that worked perfectly for my case. I have gathered pretty much all the solutions on the net and listed them here. As you read on, you will find that some of the solutions only work under specific circumstances, and other solutions will work but produce somewhat undesirable “side effects”. In these solutions, it’s assumed that your Windows installation is on your C drive. If your Windows installation is no on the C drive, then replace the drive letter in the instructions to the appropriate drive. So without further ado, here is the list.

Solution 1:
This particular solution only works if the problem is caused by a certain version of the popular anti-spyware program Ad-Aware. In this case, the value of Userinit has been changed to:

C:\Windows\System32\wsaupdater.exe

The easiest way to solve this problem is by using the Recovery Console utility from Microsoft. You either need an XP install CD or have some sort of bootable XP setup floppy disk. The steps are as follows:

0. Depending on how your system is configured, there is a possibility that you might have to go into the BIOS of you motherboard and set your computer to boot from the CD/floppy drive first. For those who are not familiar with what BIOS is, the BIOS (Basic Input and Output System) is a piece of software built into most motherboard that configures a computer’s hardware settings. To enter the BIOS, you’ll probably have to press a certain key such as DEL or one of the function keys when the computer starts up. The computer usually tells you which key to press in the bottom of the boot screen. Once you are in, the boot device settings are usually listed under the “Advanced BIOS features” submenu, but this might not be the case for certain motherboards. Set your CD and/or floppy to boot before the primary hard drive, save your setting and the computer should automatically reboot.
1. Stick in your floppy or CD. You can stick in the floppy before you turn the computer on, but you’ll have to be quick with the CD as it has to be inside the drive before the computer gets to the point of booting the operation system. Boot from the CD and/or floppy.
2. You’ll eventually get to the “Welcome to Setup” screen with the blue background. There are several options there, but you should press R and start the Recovery Console.
3. After the console initializes, it’ll ask you about which Windows installation to work on and input the password of the Administrator account. You should input the appropriate values. If you didn’t set up a password for the Administrator account or you bought a brand name computer, just leave that field blank and press ENTER.
4. You should now see a command prompt and you should be in the Windows installation folder. Now input these lines of instructions into the prompt. Press ENTER after you type each line.

cd system32
copy userinit.exe wsaupdater.exe
exit

5. Remove the floppy and or CD from the computer and boot into Windows. You should be able to log on now. Log into an account with administrator privileges.
6. Go to Start–>Run. Type in regedit and press OK to start the Registry editor. You might want to backup your registry before doing this. Here is a link that will tell you how to backup the Windows registry. Using the folder pane on the left, navigate to the location below by expanding the folders:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

Find the Userinit value in the main pane, right click it and select modify. Now change this value to:

C:\WINDOWS\system32\userinit.exe

Close the Registry Editor.

7. Now go to My Computer, and then navigate to your windows installation folder. Go into the System32 folder and find and delete wsaupdater.exe. Now you are done.

This solution basically just copies userinit.exe into the file that the registry value is pointing to, which allows you to log into Windows. The problem with this solution is that is only works if the Userinit value has been changed to point to wsaupdater.exe. If the value is changed to point to something else or if the value itself is gone, this solution doesn’t work. For more info regarding Ad-Aware and this problem, please visit http://www.lavahelp.com/articles/v6/04/06/0901.html. This page also has links to sites that tell you how to make a XP setup floppy.

Solution 2:
The requirements for this solution is the same as solution one. Here are the steps:

1. Follow steps 1(or 0) to 3 in solution 1 to get the Recovery Console running.
2. At the Recovery Console, input these commands. Remember to press ENTER after each line.

md tmp
copy c:\windows\system32\config\system c:\windows\tmp\system.bak
copy c:\windows\system32\config\software c:\windows\tmp\software.bak
copy c:\windows\system32\config\sam c:\windows\tmp\sam.bak
copy c:\windows\system32\config\security c:\windows\tmp\security.bak
copy c:\windows\system32\config\default c:\windows\tmp\default.bak
delete c:\windows\system32\config\system
delete c:\windows\system32\config\software
delete c:\windows\system32\config\sam
delete c:\windows\system32\config\security
delete c:\windows\system32\config\default
copy c:\windows\repair\system c:\windows\system32\config\system
copy c:\windows\repair\software c:\windows\system32\config\software
copy c:\windows\repair\sam c:\windows\system32\config\sam
copy c:\windows\repair\security c:\windows\system32\config\security
copy c:\windows\repair\default c:\windows\system32\config\default
exit

Your computer will now reboot.

I tried this solution and it did let me get back into Windows. Unfortunately, pretty much all of my software settings were gone. Most of the installed program will not operate and I lost all but the Administrator account on the computer. I couldn’t even access the document folder for my original account. This is because this solution replaces the entire registry with a backup copy from the repair folder on your windows installation. However, the first few commands in this solution back up the original registry, so you should be able to put the original copy back into place. Since the registry contains pretty much all the software settings, replacing it will render most installed software inoperable and also lose all but the Administrator user accounts. I had to create a new account using my original user name in order to access my personal documents again. After a while, I decided to put the original registry back in place and try to find another solution, since reinstalling all my software is even more of a hassle. So my advice is to you is that you shouldn’t try this. Replacing an entire registry just because one value changed is definitely overkill.

Solution 3:
This “solution” is along the lines of solution 2, but it goes even further. This solution is to perform a Repair Install of Windows XP, which basically replaces all system files within Windows. You should only do this if you computer is really messed up. Needless to say, I don’t recommend this solution at all for this particular problem, but if you want to do a repair install, here’s how to do it. You’ll need a Windows XP installation CD in order to do this.

1. Pop your install CD in and boot from the CD. It will eventually get to the setup screen.
2. At this screen, press ENTER. Do not press R, since that will open the Recovery Console.
3. On the next screen, Press F8 to get past the license agreement.
4. On the screen after the license agreement, select the partition with the Windows XP installation that you want to repair and press R.
5. Windows will install, but instead of a fresh install, it will just replace the system files. Sit through the installation and eventually you’ll be able to get back into Windows.

I have not tried this “solution” myself, but I would imagine it would have a similar effect as solution 2. This would mean that all your software settings and even hardware drivers are probably gone. There is a much better solution to this login problem so you don’t need to go through all this.

Solution 4:
This solution is a bit different than the other solutions above. It involves using an offline Registry editor, which is a program that can edit the Windows registry without actually booting into Windows. The common way to get such a program is to make a BartPE CD. A BartPE CD is a CD with many software tools (including an offline registry editor) that can boot by itself into a Windows-like graphical interface. In order to make such a CD, you will need another computer with a CD-burner and software, and an internet connection. You’ll also need a blank CD and a Windows XP CD with at least Service Pack 1. If you have a Windows XP CD without the service packs, then search the net for “slipstream Windows XP” in order to make a installation CD with the required service packs. The particular BartPE build I used is the Ultimate Boot CD for Windows. Follow the instruction on their site in order to make the CD.

After making the CD, take it to the computer with the problem and then boot from this CD. The CD will eventually boot into a Windows-like graphic interface. After everything finishes loading, which takes a while, go to Start–>Programs–>Registry Tools–>RegEditPE. This will open up a registry editor that looks exactly the same as the one from Windows, and it will ask you for the location of the registry hives. All the registry hives are located in this folder:

C:\WINDOWS\system32\config

Point the editor to the right files (shouldn’t be too hard, just select the file with the same name as the hive that the editor is asking for) and you now ready to correct your registry. Now on the left pane, there should be folder called something like REMOTE_HKEY_LOCAL_MACHINE or something similar. Expand that and navigate to the following location:

SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
(Within REMOTE_HKEY_LOCAL_MACHINE)

Now find the Userinit value in the main (right) pane. This value will either contain the incorrect data or it might be missing/have its name changed. If the Userinit is there but with the wrong data inside, right click it and change the data to:

C:\WINDOWS\system32\userinit.exe

If the value is missing or had its name changed to something else, like Userini4, then right click on the white space of the right pane, highlight New, and the click on string value from the dropout menu that appears. Name the value Userinit and put the above as its data. Delete the old value that had its name changed if it’s there. Now reboot your computer, take the CD out and you should be able to log into Windows just fine.

Solution 4 is the overall best solution for this problem, and I was able to fix computer after following its instructions. This solution works for pretty much every circumstance for this problem and it doesn’t create any bad side effects. You’ll also gain a useful tool for troubleshooting computers at the end, which might come in handy in the future.

After going over all these possible courses of action, my advice to you is to use the last solution to make yourself the CD. If you are using Ad-Aware, then you should try solution 1 first and see if it works. Solutions 2 and 3 are not recommended for solving this particular problem, but they might be necessary for some other types of computer trouble. Hopefully, this article was of some help to you, and thank you for reading.

Leave a Reply

Your email address will not be published. Required fields are marked *