Csharp/C Sharp by API/System.Diagnostics/ProcessStartInfo — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Версия 18:31, 26 мая 2010
Содержание
new ProcessStartInfo()
<source lang="csharp"> using System.Diagnostics; class MainClass {
public static void Main() { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "notepad.exe"; startInfo.Arguments = "yourFile.cs"; Process.Start(startInfo); }
}
</source>
ProcessStartInfo.Arguments
<source lang="csharp"> using System.Diagnostics; public class StartingProcesses {
public static void Main() { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "notepad.exe"; startInfo.Arguments = "process.cs"; Process.Start(startInfo); }
}
</source>
ProcessStartInfo.ErrorDialog
<source lang="csharp"> using System; using System.Diagnostics; class MainClass {
public static void Main() { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "notepad.exe"; startInfo.Arguments = "file.txt"; startInfo.WorkingDirectory = @"C:\Temp"; startInfo.WindowStyle = ProcessWindowStyle.Maximized; startInfo.ErrorDialog = true; Process process; try { process = Process.Start(startInfo); Console.WriteLine("Waiting 30 seconds for process to finish."); if (process.WaitForExit(30000)) { Console.WriteLine("Process terminated."); } else { Console.WriteLine("Timed out waiting for process to end."); } } catch (Exception ex) { Console.WriteLine("Could not start process."); Console.WriteLine(ex); } }
}
</source>
ProcessStartInfo.FileName
<source lang="csharp"> using System.Diagnostics; public class StartingProcesses {
public static void Main() { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "notepad.exe"; startInfo.Arguments = "process.cs"; Process.Start(startInfo); }
}
</source>
ProcessStartInfo.RedirectStandardOutput
<source lang="csharp"> using System; using System.Diagnostics; public class RedirectingProcessOutput {
public static void Main() { Process p = new Process(); p.StartInfo.FileName = "cmd.exe"; p.StartInfo.Arguments = "/c dir *.cs"; p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardOutput = true; p.Start(); string output = p.StandardOutput.ReadToEnd(); Console.WriteLine("Output:"); Console.WriteLine(output); }
}
</source>
ProcessStartInfo.UseShellExecute
<source lang="csharp">
using System; using System.Diagnostics; public class RedirectingProcessOutput {
public static void Main() { Process p = new Process(); p.StartInfo.FileName = "cmd.exe"; p.StartInfo.Arguments = "/c dir *.cs"; p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardOutput = true; p.Start(); string output = p.StandardOutput.ReadToEnd(); Console.WriteLine("Output:"); Console.WriteLine(output); }
}
</source>
ProcessStartInfo.WindowStyle
<source lang="csharp"> using System; using System.Diagnostics; class MainClass {
public static void Main() { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "notepad.exe"; startInfo.Arguments = "file.txt"; startInfo.WorkingDirectory = @"C:\Temp"; startInfo.WindowStyle = ProcessWindowStyle.Maximized; startInfo.ErrorDialog = true; Process process; try { process = Process.Start(startInfo); Console.WriteLine("Waiting 30 seconds for process to finish."); if (process.WaitForExit(30000)) { Console.WriteLine("Process terminated."); } else { Console.WriteLine("Timed out waiting for process to end."); } } catch (Exception ex) { Console.WriteLine("Could not start process."); Console.WriteLine(ex); } }
}
</source>
ProcessStartInfo.WorkingDirectory
<source lang="csharp"> using System; using System.Diagnostics; class MainClass {
public static void Main() { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "notepad.exe"; startInfo.Arguments = "file.txt"; startInfo.WorkingDirectory = @"C:\Temp"; startInfo.WindowStyle = ProcessWindowStyle.Maximized; startInfo.ErrorDialog = true; Process process; try { process = Process.Start(startInfo); Console.WriteLine("Waiting 30 seconds for process to finish."); if (process.WaitForExit(30000)) { Console.WriteLine("Process terminated."); } else { Console.WriteLine("Timed out waiting for process to end."); } } catch (Exception ex) { Console.WriteLine("Could not start process."); Console.WriteLine(ex); } }
}
</source>