Have you already looked at this? userinit.exe problem gives rise to the revolving door syndrome.
I've posted in case anyway
Windows Log on and Log off immediately.
and the procedure;
Open Regedit
1. Navigate to
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
2. If there is a key named "OldUserinit", delete the "Userinit" key and rename the "OldUserinit" key to "Userinit".
maybe worth a look
3. The "Userinit" key should now say
"WINDOWS_PATH\system32\userinit.exe,"
"WINDOWS_PATH" is relative to where you have your windows installed.
Mine would be "C:\WINDOWS\system32\userinit.exe,"