advapi32: The lpServiceStartName should default to LocalSystem for Win32 services.

This commit is contained in:
Mikolaj Zalewski 2007-09-26 11:45:51 -07:00 committed by Alexandre Julliard
parent cb92675953
commit 2ba324738d
2 changed files with 5 additions and 1 deletions

View File

@ -39,6 +39,7 @@
WINE_DEFAULT_DEBUG_CHANNEL(advapi);
static const WCHAR szLocalSystem[] = {'L','o','c','a','l','S','y','s','t','e','m',0};
static const WCHAR szServiceManagerKey[] = { 'S','y','s','t','e','m','\\',
'C','u','r','r','e','n','t','C','o','n','t','r','o','l','S','e','t','\\',
'S','e','r','v','i','c','e','s',0 };
@ -1342,6 +1343,9 @@ CreateServiceW( SC_HANDLE hSCManager, LPCWSTR lpServiceName,
return NULL;
}
if (!lpServiceStartName && (dwServiceType & SERVICE_WIN32))
lpServiceStartName = szLocalSystem;
/* StartType can only be a single value (if several values are mixed the result is probably not what was intended) */
if (dwStartType > SERVICE_DISABLED)
{

View File

@ -815,8 +815,8 @@ static void test_sequence(void)
todo_wine
{
ok(!memcmp(config->lpDependencies, dependencies, sizeof(dependencies)), "Wrong string\n");
ok(!strcmp(config->lpServiceStartName, localsystem), "Expected 'LocalSystem', got '%s'\n", config->lpServiceStartName);
}
ok(!strcmp(config->lpServiceStartName, localsystem), "Expected 'LocalSystem', got '%s'\n", config->lpServiceStartName);
ok(!strcmp(config->lpDisplayName, displayname), "Expected '%s', got '%s'\n", displayname, config->lpDisplayName);
SetLastError(0xdeadbeef);