在网上找到的,自己做了一定修改
//获取指定的进程名
System.Diagnostics.Process[] prProcesses =
System.Diagnostics.Process.GetProcessesByName(Application.ProductName);
//如果获取的进程名多于一个(本身也有一个嘛~)
if (prProcesses.Length > 1)
{
MessageBox.Show("已启动过了一个实例!");
//退出
return;
}