程序开发中,经常需要限制主程序只能运行1个,通过通过判断进程是否已经存在运行的程序来处理
该代码可用写在 Program.cs 类中.
1.首先获取主程序的名称
string name = Process.GetCurrentProcess().MainModule.ModuleName;
2.获取该名称的进程
string pname = Path.GetFileNameWithoutExtension(name);
完成代码为:
string name = Process.GetCurrentProcess().MainModule.ModuleName;
string pname = Path.GetFileNameWithoutExtension(name);
Process[] myProcess = Process.GetProcessesByName(pname);
if (myProcess.Length > 1)
{
MessageBox.Show("本程序一次只能运行一个!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new fMain());
}