X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ca7731b7c89693a5bf60b2e259757ece780f8f1a..44c4a3348693414bace13852e50d926c1aa9f08b:/src/msw/utilsexc.cpp diff --git a/src/msw/utilsexc.cpp b/src/msw/utilsexc.cpp index 899eb80eed..aae349314d 100644 --- a/src/msw/utilsexc.cpp +++ b/src/msw/utilsexc.cpp @@ -10,7 +10,7 @@ ///////////////////////////////////////////////////////////////////////////// #ifdef __GNUG__ -#pragma implementation "utils.h" +#pragma implementation #endif // For compilers that support precompilation, includes "wx.h". @@ -26,6 +26,7 @@ #include "wx/app.h" #endif +#include "wx/log.h" #include "wx/msw/private.h" #include @@ -39,10 +40,6 @@ #ifdef __GNUWIN32__ #include #include -#ifndef __MINGW32__ -#include -#endif - #endif #ifdef __WIN32__ @@ -134,10 +131,8 @@ long wxExecute(const wxString& command, bool sync, wxProcess *handler) *argp++ = '\0'; #ifdef __GNUWIN32__ - result = ShellExecute((HWND) (wxTheApp->GetTopWindow() ? (HWND) wxTheApp->GetT -opWindow()->GetHWND() : NULL), - (const wchar_t) "open", (const wchar_t) cl, (const wchar_t) arg -p,i + result = ShellExecute((HWND) (wxTheApp->GetTopWindow() ? (HWND) wxTheApp->GetTopWindow()->GetHWND() : NULL), + (const wchar_t) "open", (const wchar_t) cl, (const wchar_t) argp, (const wchar_t) NULL, SW_SHOWNORMAL); #else result = ShellExecute( (HWND) (wxTheApp->GetTopWindow() ? wxTheApp->GetTopWindow()->GetHWND() : NULL), @@ -146,6 +141,8 @@ p,i if (((long)result) <= 32) { free(cl); + + wxLogSysError(_("Can't execute command '%s'"), command.c_str()); return 0; } @@ -202,3 +199,16 @@ p,i return(instanceID); #endif } + +long wxExecute(char **argv, bool sync, wxProcess *handler) +{ + wxString command = ""; + + while (*argv != NULL) { + command += *argv; + command += ' '; + argv++; + } + command.RemoveLast(); + return wxExecute(command, sync, handler); +}