C#コマンドcmdを実行

  • 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, "");
        }
    }

おすすめ

転載: www.cnblogs.com/wyp1988/p/11388622.html