]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/utilsexc.cpp
1. Pause()/Resume() implemented for wxMSW
[wxWidgets.git] / src / msw / utilsexc.cpp
index 899eb80eed306b4b79decc6025cf9d4a99776038..aae349314dc22cf48e2d3c28f0b527491fee3c7e 100644 (file)
@@ -10,7 +10,7 @@
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
-#pragma implementation "utils.h"
+#pragma implementation
 #endif
 
 // For compilers that support precompilation, includes "wx.h".
 #endif
 
 // For compilers that support precompilation, includes "wx.h".
@@ -26,6 +26,7 @@
 #include "wx/app.h"
 #endif
 
 #include "wx/app.h"
 #endif
 
+#include "wx/log.h"
 #include "wx/msw/private.h"
 #include <windows.h>
 
 #include "wx/msw/private.h"
 #include <windows.h>
 
 #ifdef __GNUWIN32__
 #include <sys/unistd.h>
 #include <sys/stat.h>
 #ifdef __GNUWIN32__
 #include <sys/unistd.h>
 #include <sys/stat.h>
-#ifndef __MINGW32__
-#include <std.h>
-#endif
-
 #endif
 
 #ifdef __WIN32__
 #endif
 
 #ifdef __WIN32__
@@ -134,10 +131,8 @@ long wxExecute(const wxString& command, bool sync, wxProcess *handler)
     *argp++ = '\0';
 
 #ifdef __GNUWIN32__
     *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),
      (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);
 
   if (((long)result) <= 32) {
    free(cl);
+
+   wxLogSysError(_("Can't execute command '%s'"), command.c_str());
    return 0;
   }
 
    return 0;
   }
 
@@ -202,3 +199,16 @@ p,i
   return(instanceID);
 #endif
 }
   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);
+}