- Run UserInit program instead of running shell directly.

svn path=/trunk/; revision=12282
This commit is contained in:
Filip Navara 2004-12-22 01:22:08 +00:00
parent 9769f53baa
commit 7ea5ac8d87

View file

@ -1,4 +1,4 @@
/* $Id: winlogon.c,v 1.37 2004/11/20 16:46:05 weiden Exp $ /* $Id: winlogon.c,v 1.38 2004/12/22 01:22:08 navaraf Exp $
* *
* COPYRIGHT: See COPYING in the top level directory * COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel * PROJECT: ReactOS kernel
@ -364,7 +364,7 @@ static BOOL StartIntoGUI(VOID)
static PWCHAR static PWCHAR
GetShell (WCHAR *CommandLine) GetUserInit (WCHAR *CommandLine)
{ {
HKEY WinLogonKey; HKEY WinLogonKey;
BOOL GotCommandLine; BOOL GotCommandLine;
@ -377,7 +377,7 @@ GetShell (WCHAR *CommandLine)
{ {
Size = MAX_PATH; Size = MAX_PATH;
if (ERROR_SUCCESS == RegQueryValueEx(WinLogonKey, if (ERROR_SUCCESS == RegQueryValueEx(WinLogonKey,
L"Shell", L"UserInit",
NULL, NULL,
&Type, &Type,
(LPBYTE) Shell, (LPBYTE) Shell,
@ -399,8 +399,8 @@ GetShell (WCHAR *CommandLine)
if (! GotCommandLine) if (! GotCommandLine)
{ {
GetWindowsDirectory(CommandLine, MAX_PATH - 15); GetSystemDirectory(CommandLine, MAX_PATH - 15);
wcscat(CommandLine, L"\\explorer.exe"); wcscat(CommandLine, L"\\userinit.exe");
} }
return CommandLine; return CommandLine;
@ -479,7 +479,7 @@ DoLogonUser (PWCHAR Name,
Result = CreateProcessAsUserW (hToken, Result = CreateProcessAsUserW (hToken,
NULL, NULL,
GetShell (CommandLine), GetUserInit (CommandLine),
NULL, NULL,
NULL, NULL,
FALSE, FALSE,