# CMD 창 켜서 실행

using System.Diagnostics;

Process.Start("cmd.exe", command);

 

# 다른방법 (백그라운드 실행)

using System.Diagnostics;

public void RunCmd(string Command)
        {
            ProcessStartInfo cmd = new ProcessStartInfo();
            Process process = new Process();
            cmd.FileName = @"cmd";
            cmd.WindowStyle = ProcessWindowStyle.Hidden;             // cmd창이 숨겨지도록 하기
            cmd.CreateNoWindow = true;                               // cmd창을 띄우지 안도록 하기

            cmd.UseShellExecute = false;
            cmd.RedirectStandardOutput = true;        // cmd창에서 데이터를 가져오기
            cmd.RedirectStandardInput = true;          // cmd창으로 데이터 보내기
            cmd.RedirectStandardError = true;          // cmd창에서 오류 내용 가져오기

            process.EnableRaisingEvents = false;
            process.StartInfo = cmd;
            process.Start();
            process.StandardInput.Write(@Command + Environment.NewLine);
            // 명령어를 보낼때는 꼭 마무리를 해줘야 한다. 그래서 마지막에 NewLine가 필요하다
            process.StandardInput.Close();

            string result = process.StandardOutput.ReadToEnd();
            StringBuilder sb = new StringBuilder();
            //sb.Append("[Result Info]" + DateTime.Now + "\r\n");
            sb.Append(result);
            sb.Append("\r\n");            
            //textBox1.Text = sb.ToString();
            process.WaitForExit();
            process.Close();
            string ret = sb.ToString();
            Console.WriteLine("Command : " + Command); // 커맨드 확인.
            // Console.WriteLine("Command :" + Command + "\n" + "Return :" + ret);

        }

'프로그래밍 언어 > C#' 카테고리의 다른 글

[C#] Winform 모든 포커스 해제  (0) 2022.09.05
[C#] 웹페이지 값 가져오기  (0) 2022.09.05
[C#] Yes No 버튼 | 확인 버튼  (0) 2022.08.29
[C#] C#에서 Python 실행하기  (0) 2022.08.26
[C#] .ini 파일 읽기 쓰기  (0) 2022.08.22
[C#] GUI 연습 | MetroFramework 적용  (0) 2022.08.19
[C#] C# 연습  (0) 2022.06.21

+ Recent posts