C#

Process로 외부 프로세스 실행하기

DeFo 2020. 5. 31. 15:56
실행 환경
OS Windows 10 Pro    버전 1903(OS 빌드 18362.836)
Language C#
.NET .NET Framework 4
IDE Visual Studio Community 2017

 

 

Process 클래스는 프로세스에 대한 액세스를 제공하고 프로세스를 시작하고 중지할 수 있습니다.

  • System.Diagnostic Namespace 에서 제공합니다.
  • Start(), Kill(), Close(), CloseMainWindow() 로 프로세스를 실행, 종료할 수 있습니다.
  • Process 클래스의 StartInfo 속성(ProcessStartInfo 클래스)에서 프로세스 시작 시 사용되는 값들을 지정합니다.
    = StartInfo로 Process의 Start() 메서드에 전달할 속성을 설정합니다.
  • ProcessStartInfo 클래스의 Name 속성으로 실행할 응용 프로그램 설정합니다.
  • ProcessStartInfo 클래스의 Arguments 속성으로 실행 응용 프로그램에 전달할 매개변수를 지정합니다.

 

 

private void UseProcess()
	{
				
		Process p = new Process();
		p.StartInfo.FileName = "IExplore"; // "chrome"; // msedge or IExplore 등
		p.StartInfo.Arguments = "https://www.daum.net/"; // 
		p.Start();

		p.CloseMainWindow();
		p.Close();
	}

 

소스를 실행하면 Start 부분에서 아래와 같이 Explore를 실행하면서 매개변수로 넘겨준 daum 웹 페이지를 나타냅니다.

 

Process Start

 

StartInfo.FileName 에 특정 실행파일 경로를 적어주어 실행 시킬 수 있습니다.

ex) p.StartInfo.FileName = "C:\\Users\\...\\실행파일.exe";

 

 

Process 에는 아래와 같이 종료 삼대장이 있는데 차이점을 정확히 모르겠습니다.

 

Process CloseMainWindow()
Process Close()
Process Kill()

어떤 경우에 구분해서 써야 하는 걸까요?🤔

 

 

 

내용은 모두 개인 공부 기록 용이기에 부족한 부분이나 내용상 오류가 있을 수도 있습니다.
참고용으로 보시기 바랍니다.
혹 잘못된 내용이 있을 시 댓글 남겨주시면 수정하도록 하겠습니다.