I've recently had my Windows XP installation seriously messed up because of a userinit.exe application error: "The application failed to initialize properly (0xc0000142). Click on OK to terminate the application." This seems to have been caused by some nasty malware. Luckily the tool described in this page about how to fix exe error worked. At any rate, here are the steps to take if you are getting a userinit application error:
1) Click Start > Run, type in regedit, press enter and navigate to HKLM\Software\Microsoft\Windows NT\Current Version\Winlogon. There should be a string named "Userinit". Make sure it points to userinit.exe in your Windows directory, in almost all cases it should be C:\Windows\system32\userinit.exe. If it does not, correct it. If that doesn't help, try to get a copy of a "good" userinit.exe from another computer and copy over it to your system. And if that doesn't work either...
2) Use a specialized tool like ErrorFix to attempt to repair the userinit.exe problem. It should work in most cases. Note however that tools like these will only fix the error, but not remove the cause. If it was caused by a virus, trojan or other malware then you should update your antivirus and scan your PC, or at least the Windows directory when booted in Safe Mode. If that fails also...
3) Use your Windows CD to repair the installation of your OS. This is the last resort to take since it will overwrite most of your Windows settings and the registry, so a lot of installed software will stop working. Still, this is a 100% surefire way to fix all Windows errors!
4) Use a good antivirus and an antispyware scanner to test your computer. Even if you use Windows Repair, some viruses might remain (only a full format will get rid of them, and who wants to do that unless absolutely necessary). I rather like the AntiVirus
and Spyware Doctor
software from PC Tools, but you might want to use ZoneAlarm Antivirus
or any other alternative. The important part is removing the virus from your system; remember that some antiviruses might detect certain malware while others won't find it.