Partially implement CreateProcessAsUser.
authorSteven Edwards <steven_ed4153@yahoo.com>
Wed, 13 Apr 2005 11:02:59 +0000 (11:02 +0000)
committerAlexandre Julliard <julliard@winehq.org>
Wed, 13 Apr 2005 11:02:59 +0000 (11:02 +0000)
dlls/advapi32/security.c

index 715a1551bb463c045c395fc3fd182f32fe6b2ad9..506f6805b8c56581586f44add9cd6f202eb08baf 100644 (file)
@@ -3047,11 +3047,27 @@ BOOL WINAPI CreateProcessAsUserW(
         LPSTARTUPINFOW lpStartupInfo,
         LPPROCESS_INFORMATION lpProcessInformation )
 {
-    FIXME("%p %s %s %p %p %d 0x%08lx %p %s %p %p - stub\n", hToken, debugstr_w(lpApplicationName),
-          debugstr_w(lpCommandLine), lpProcessAttributes, lpThreadAttributes, bInheritHandles,
-          dwCreationFlags, lpEnvironment, debugstr_w(lpCurrentDirectory), lpStartupInfo, lpProcessInformation);
+    FIXME("%p %s %s %p %p %d 0x%08lx %p %s %p %p - semi- stub\n", hToken, 
+          debugstr_w(lpApplicationName), debugstr_w(lpCommandLine), lpProcessAttributes,
+          lpThreadAttributes, bInheritHandles, dwCreationFlags, lpEnvironment, 
+          debugstr_w(lpCurrentDirectory), lpStartupInfo, lpProcessInformation);
+
+    /* We should create the process with a suspended main thread */
+    if (!CreateProcessW (lpApplicationName,
+                         lpCommandLine,
+                         lpProcessAttributes,
+                         lpThreadAttributes,
+                         bInheritHandles,
+                         dwCreationFlags, /* CREATE_SUSPENDED */
+                         lpEnvironment,
+                         lpCurrentDirectory,
+                         lpStartupInfo,
+                         lpProcessInformation))
+    {
+      return FALSE;
+    }
 
-    return FALSE;
+    return TRUE;
 }
 
 /******************************************************************************