C#
단일 프로세스 실행
이쥬우
2022. 11. 30. 17:23
728x90
실행파일을 여러 번 실행하면 여러 개의 다른 프로세스들이 생성되는데, 만약 해당 머신에서 오직 한 프로세스만 실행되도록 하길 원한다면, 일반적으로 사용되는 한 방법으로 Mutex를 사용할 수 있다.
static class Program
{
[STAThread]
static void Main()
{
try
{
using (new Mutex(true, Application.ProductName, out var isNew))
{
if (isNew)
{
try
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new FrmMain());
}
catch (Exception ex) {}
}
else
{
MsgBox.Inform(Messages.RunningProgram);
Application.Exit();
}
}
}
catch (Exception e) {}
finally
{
// 프로그램 종료
}
}
}
또 다른 예제는 여기
728x90