Eric Pouech : Various background processes must be launched detached from current console (if any).

Alexandre Julliard julliard at winehq.org
Wed Jan 16 13:47:43 CST 2013


Module: wine
Branch: master
Commit: d1ccbceb4dea9e25912108058d7c29e49709ec7d
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=d1ccbceb4dea9e25912108058d7c29e49709ec7d

Author: Eric Pouech <eric.pouech at orange.fr>
Date:   Mon Jan 14 21:20:06 2013 +0100

Various background processes must be launched detached from current console (if any).

---

 dlls/appwiz.cpl/addons.c     |    2 +-
 dlls/dinput/dinput_main.c    |    2 +-
 dlls/ieframe/intshcut.c      |    2 +-
 dlls/ole32/moniker.c         |    2 +-
 dlls/ole32/rpc.c             |    2 +-
 dlls/rpcrt4/rpc_epmap.c      |    2 +-
 dlls/shell32/shelllink.c     |    2 +-
 programs/wineboot/wineboot.c |    2 +-
 8 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/dlls/appwiz.cpl/addons.c b/dlls/appwiz.cpl/addons.c
index 4eb37c7..2a47b84 100644
--- a/dlls/appwiz.cpl/addons.c
+++ b/dlls/appwiz.cpl/addons.c
@@ -630,7 +630,7 @@ static void run_winebrowser(const WCHAR *url)
 
     memset(&si, 0, sizeof(si));
     si.cb = sizeof(si);
-    ret = CreateProcessW(app, args, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
+    ret = CreateProcessW(app, args, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si, &pi);
     heap_free(args);
     if (ret) {
         CloseHandle(pi.hThread);
diff --git a/dlls/dinput/dinput_main.c b/dlls/dinput/dinput_main.c
index c07b333..87041e4 100644
--- a/dlls/dinput/dinput_main.c
+++ b/dlls/dinput/dinput_main.c
@@ -656,7 +656,7 @@ static HRESULT WINAPI IDirectInputAImpl_RunControlPanel(LPDIRECTINPUT7A iface,
     if (!This->initialized)
         return DIERR_NOTINITIALIZED;
 
-    if (!CreateProcessW(NULL, control_exeW, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi))
+    if (!CreateProcessW(NULL, control_exeW, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si, &pi))
         return HRESULT_FROM_WIN32(GetLastError());
 
     return DI_OK;
diff --git a/dlls/ieframe/intshcut.c b/dlls/ieframe/intshcut.c
index 7107a0a..71373c7 100644
--- a/dlls/ieframe/intshcut.c
+++ b/dlls/ieframe/intshcut.c
@@ -108,7 +108,7 @@ static BOOL run_winemenubuilder( const WCHAR *args )
     si.cb = sizeof(si);
 
     Wow64DisableWow64FsRedirection( &redir );
-    ret = CreateProcessW( app, buffer, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );
+    ret = CreateProcessW( app, buffer, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si, &pi );
     Wow64RevertWow64FsRedirection( redir );
 
     heap_free( buffer );
diff --git a/dlls/ole32/moniker.c b/dlls/ole32/moniker.c
index 1d7f219..8d4e98f 100644
--- a/dlls/ole32/moniker.c
+++ b/dlls/ole32/moniker.c
@@ -146,7 +146,7 @@ static BOOL start_rpcss(void)
     strcatW( cmd, rpcss );
 
     Wow64DisableWow64FsRedirection( &redir );
-    rslt = CreateProcessW( cmd, cmd, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );
+    rslt = CreateProcessW( cmd, cmd, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si, &pi );
     Wow64RevertWow64FsRedirection( redir );
 
     if (rslt)
diff --git a/dlls/ole32/rpc.c b/dlls/ole32/rpc.c
index 9b57206..5c981bb 100644
--- a/dlls/ole32/rpc.c
+++ b/dlls/ole32/rpc.c
@@ -1680,7 +1680,7 @@ static HRESULT create_server(REFCLSID rclsid, HANDLE *process)
 
     /* FIXME: Win2003 supports a ServerExecutable value that is passed into
      * CreateProcess */
-    if (!CreateProcessW(NULL, command, NULL, NULL, FALSE, 0, NULL, NULL, &sinfo, &pinfo)) {
+    if (!CreateProcessW(NULL, command, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &sinfo, &pinfo)) {
         WARN("failed to run local server %s\n", debugstr_w(command));
         return HRESULT_FROM_WIN32(GetLastError());
     }
diff --git a/dlls/rpcrt4/rpc_epmap.c b/dlls/rpcrt4/rpc_epmap.c
index f079ff4..540c1c4 100644
--- a/dlls/rpcrt4/rpc_epmap.c
+++ b/dlls/rpcrt4/rpc_epmap.c
@@ -92,7 +92,7 @@ static BOOL start_rpcss(void)
     lstrcatW( cmd, rpcss );
 
     Wow64DisableWow64FsRedirection( &redir );
-    rslt = CreateProcessW( cmd, cmd, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );
+    rslt = CreateProcessW( cmd, cmd, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si, &pi );
     Wow64RevertWow64FsRedirection( redir );
 
     if (rslt)
diff --git a/dlls/shell32/shelllink.c b/dlls/shell32/shelllink.c
index e325e2e..e2889ba 100644
--- a/dlls/shell32/shelllink.c
+++ b/dlls/shell32/shelllink.c
@@ -439,7 +439,7 @@ BOOL run_winemenubuilder( const WCHAR *args )
     si.cb = sizeof(si);
 
     Wow64DisableWow64FsRedirection( &redir );
-    ret = CreateProcessW( app, buffer, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );
+    ret = CreateProcessW( app, buffer, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si, &pi );
     Wow64RevertWow64FsRedirection( redir );
 
     HeapFree( GetProcessHeap(), 0, buffer );
diff --git a/programs/wineboot/wineboot.c b/programs/wineboot/wineboot.c
index 0be773b..7b68747 100644
--- a/programs/wineboot/wineboot.c
+++ b/programs/wineboot/wineboot.c
@@ -851,7 +851,7 @@ static BOOL start_services_process(void)
     strcatW(path, services);
     ZeroMemory(&si, sizeof(si));
     si.cb = sizeof(si);
-    if (!CreateProcessW(path, path, NULL, NULL, TRUE, 0, NULL, NULL, &si, &pi))
+    if (!CreateProcessW(path, path, NULL, NULL, TRUE, DETACHED_PROCESS, NULL, NULL, &si, &pi))
     {
         WINE_ERR("Couldn't start services.exe: error %u\n", GetLastError());
         return FALSE;




More information about the wine-cvs mailing list