- CMDのプロキシなどのセット、オペレーティングシステムの構成を共有する環境変数情報
- その例外処理、リサイクルプロセスを注意してください
- 以下は、達成するための欠点は、文字列は、このようなCMDは、したがって、あなたはコマンドが返すデータが何であるかを、自分のフィルタリングを外出したい場合がありオープンなオペレーティング環境情報などの冗長データを、返さ
- 関係なく、コマンドが正常に終了コマンドを実行したかReadToEnd()メソッドを呼び出すとき、仮死状態にあるかどうかの
/// <summary>
///
/// </summary>
public class Cmd
{
/// <summary>
///
/// </summary>
/// <param name="cmd"></param>
public static string RunCmd(string cmd)
{
using (Process proc = new Process())
{
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.FileName = "cmd.exe";
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.RedirectStandardInput = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.Start();
proc.StandardInput.WriteLine(cmd);
proc.StandardInput.WriteLine("exit");
string outStr = proc.StandardOutput.ReadToEnd();
proc.Close();
return outStr;
}
}
/// <summary>
///
/// </summary>
/// <param name="programName"></param>
/// <param name="cmd"></param>
public static void RunProgram(string programName, string cmd)
{
using (Process proc = new Process())
{
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.FileName = programName;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.RedirectStandardInput = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.Start();
if (cmd.Length != 0)
{
proc.StandardInput.WriteLine(cmd);
}
proc.Close();
}
}
/// <summary>
///
/// </summary>
/// <param name="programName"></param>
public static void RunProgram(string programName)
{
RunProgram(programName, "");
}
}