System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.FileName = "CMD.exe";
startInfo.WorkingDirectory = @"D:\";
startInfo.UseShellExecute = false;
startInfo.RedirectStandardInput = true;
startInfo.RedirectStandardOutput = true;
startInfo.RedirectStandardError = true;
process.EnableRaisingEvents = false;
process.StartInfo = startInfo;
process.Start(); //프로세스 시작
process.StandardInput.Write("dir" + Environment.NewLine); //예를 들어 dir명령어를 입력
process.StandardInput.Close();
string result = process.StandardOutput.ReadToEnd(); //실행결과를 standard output으로 받아와 string값에 저장
string error = process.StandardError.ReadToEnd(); //오류유무를 standard output으로 받아와 string값에 저장
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("[ Result Info ]\r\n"); //출력
sb.Append(result);
sb.Append("\r\n");
sb.Append("[ Error Info ]\r\n");
sb.Append(error);
this.txtResult.Text = sb.ToString();
process.WaitForExit();
process.Close();