经常使用的,获取进程判断程序是否已启动是使用 Process.GetProcessesByName ,如下做一个笔记,记录一下使用互斥体来判断。spa
“OnlyOne”是自定义的系统互斥体的名称(ID),它的做用域为系统级的,也就是说,其余的程序若也须要禁止重复启动,此名称不能重复!code
static class Program { /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { bool bCanRun = false; Mutex mutex = new Mutex(true, "OnlyOne", out bCanRun); if (!bCanRun) { MessageBox.Show("不可重复启动!"); return; } Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } }