반응형
C#에서 Process사용하여 외부 프로그램을 실행하는 간단한 예시 입니다.
일단 샘플 먼저
public static void Goto(string _url)
{
using (Process process = new Process())
{
process.StartInfo = new ProcessStartInfo();
process.StartInfo.FileName = "explorer";
process.StartInfo.Arguments = _url;
process.StartInfo.UseShellExecute = false;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.EnableRaisingEvents = true;
UnityEngine.Debug.Log($"{process.StartInfo.FileName} {process.StartInfo.Arguments}");
process.Start();
var err = process.StandardError.ReadLine();
if (!string.IsNullOrEmpty(err))
{
UnityEngine.Debug.LogError($"[Error] : {err}");
}
}
}
위 샘플은 url을 받아서 기본브라우저를 통해 웹페이지를 열어주는 간단한 예시 이구요
728x90
사실 뭐 하나하나 보기도 별거 없는 예시라.....
process.StartInfo.FileName에는 실행 될 프로그램의 이름이나 전체경로가 필요하구요
process.StartInfo.Arguments에 옵션값들을 넣어주면 됩니다.
process.StartInfo.CreateNoWindow = true로 cmd같이 실행되는 프로그램 보여주지 않을 수 도 있고
process.StartInfo.StandardOutput과 process.StartInfo.StandardError를 true로
redirection했기 때문에 실행중 발생한 log나 error도 가져와서 확인할 수 있습니다.
반응형
반응형
LIST
'IT > Unity3D' 카테고리의 다른 글
[Package Manager Window] Error while getting auth code: System.InvalidOperationException: Failed to call Unity ID to get auth code. 오류 해결 (0) | 2023.06.12 |
---|---|
OSX용 앱 빌드 시 외부 프로그램 포함하기 (0) | 2023.04.25 |
텍스쳐 용량 계산 (0) | 2023.04.21 |
Missing script 찾는방법 (0) | 2023.04.19 |
Windows Standalone 실행 경로 확인 (1) | 2023.04.18 |