2006-04-24 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mono / metadata / process.h
index 922b121689cd4997d17a3ef75f784c7d4f59e74c..9848cdd5c3e44fd46d8fb62531598442de2aecae 100644 (file)
@@ -24,9 +24,26 @@ typedef struct
        guint32 tid;
        MonoArray *env_keys;
        MonoArray *env_values;
-       MonoBoolean use_shell;
 } MonoProcInfo;
 
+typedef struct
+{
+       MonoObject object;
+       MonoString *arguments;
+       gpointer error_dialog_parent_handle;
+       MonoString *filename;
+       MonoString *verb;
+       MonoString *working_directory;
+       MonoObject *envVars;
+       MonoBoolean create_no_window;
+       MonoBoolean error_dialog;
+       MonoBoolean redirect_standard_error;
+       MonoBoolean redirect_standard_input;
+       MonoBoolean redirect_standard_output;
+       MonoBoolean use_shell_execute;
+       guint32 window_style;
+} MonoProcessStartInfo;
+
 G_BEGIN_DECLS
 
 HANDLE ves_icall_System_Diagnostics_Process_GetProcess_internal (guint32 pid);
@@ -35,7 +52,8 @@ guint32 ves_icall_System_Diagnostics_Process_GetPid_internal (void);
 void ves_icall_System_Diagnostics_Process_Process_free_internal (MonoObject *this, HANDLE process);
 MonoArray *ves_icall_System_Diagnostics_Process_GetModules_internal (MonoObject *this);
 void ves_icall_System_Diagnostics_FileVersionInfo_GetVersionInfo_internal (MonoObject *this, MonoString *filename);
-MonoBoolean ves_icall_System_Diagnostics_Process_Start_internal (MonoString *cmd, MonoString *dirname, HANDLE stdin_handle, HANDLE stdout_handle, HANDLE stderr_handle, MonoProcInfo *process_handle);
+MonoBoolean ves_icall_System_Diagnostics_Process_ShellExecuteEx_internal (MonoProcessStartInfo *proc_start_info, MonoProcInfo *process_handle);
+MonoBoolean ves_icall_System_Diagnostics_Process_CreateProcess_internal (MonoProcessStartInfo *proc_start_info, HANDLE stdin_handle, HANDLE stdout_handle, HANDLE stderr_handle, MonoProcInfo *process_handle);
 MonoBoolean ves_icall_System_Diagnostics_Process_WaitForExit_internal (MonoObject *this, HANDLE process, gint32 ms);
 gint64 ves_icall_System_Diagnostics_Process_ExitTime_internal (HANDLE process);
 gint64 ves_icall_System_Diagnostics_Process_StartTime_internal (HANDLE process);