Kirill K. Smirnov : shell32: Add support for SEE_MASK_NO_CONSOLE flag.
Alexandre Julliard
julliard at wine.codeweavers.com
Mon Jul 16 16:27:17 CDT 2007
Module: wine
Branch: master
Commit: 728bfd6d58472c86dd45a8627da016d2452e27f8
URL: http://source.winehq.org/git/wine.git/?a=commit;h=728bfd6d58472c86dd45a8627da016d2452e27f8
Author: Kirill K. Smirnov <lich at math.spbu.ru>
Date: Mon Jul 16 19:14:07 2007 +0400
shell32: Add support for SEE_MASK_NO_CONSOLE flag.
---
dlls/shell32/shlexec.c | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/dlls/shell32/shlexec.c b/dlls/shell32/shlexec.c
index 45f7621..3e2f623 100644
--- a/dlls/shell32/shlexec.c
+++ b/dlls/shell32/shlexec.c
@@ -305,6 +305,7 @@ static UINT_PTR SHELL_ExecuteW(const WCHAR *lpCmd, WCHAR *env, BOOL shWait,
UINT_PTR retval = SE_ERR_NOASSOC;
UINT gcdret = 0;
WCHAR curdir[MAX_PATH];
+ DWORD dwCreationFlags;
TRACE("Execute %s from directory %s\n", debugstr_w(lpCmd), debugstr_w(psei->lpDirectory));
/* ShellExecute specifies the command from psei->lpDirectory
@@ -317,7 +318,10 @@ static UINT_PTR SHELL_ExecuteW(const WCHAR *lpCmd, WCHAR *env, BOOL shWait,
startup.cb = sizeof(STARTUPINFOW);
startup.dwFlags = STARTF_USESHOWWINDOW;
startup.wShowWindow = psei->nShow;
- if (CreateProcessW(NULL, (LPWSTR)lpCmd, NULL, NULL, FALSE, CREATE_UNICODE_ENVIRONMENT, env,
+ dwCreationFlags = CREATE_UNICODE_ENVIRONMENT;
+ if (psei->fMask & SEE_MASK_NO_CONSOLE)
+ dwCreationFlags |= CREATE_NEW_CONSOLE;
+ if (CreateProcessW(NULL, (LPWSTR)lpCmd, NULL, NULL, FALSE, dwCreationFlags, env,
psei->lpDirectory && *psei->lpDirectory ? psei->lpDirectory : NULL,
&startup, &info))
{
@@ -1289,8 +1293,7 @@ BOOL SHELL_execute( LPSHELLEXECUTEINFOW sei, SHELL_ExecuteW32 execfunc )
static const DWORD unsupportedFlags =
SEE_MASK_INVOKEIDLIST | SEE_MASK_ICON | SEE_MASK_HOTKEY |
SEE_MASK_CONNECTNETDRV | SEE_MASK_FLAG_DDEWAIT | SEE_MASK_FLAG_NO_UI |
- SEE_MASK_UNICODE | SEE_MASK_NO_CONSOLE | SEE_MASK_ASYNCOK |
- SEE_MASK_HMONITOR;
+ SEE_MASK_UNICODE | SEE_MASK_ASYNCOK | SEE_MASK_HMONITOR;
WCHAR *wszApplicationName, wszParameters[1024], wszDir[MAX_PATH];
DWORD dwApplicationNameLen = MAX_PATH+2;
More information about the wine-cvs
mailing list