常用的,获取进程判断程序是否已启动是使用 Process.GetProcessesByName ,以下作一个笔记,记录一下使用互斥体来判断。
“OnlyOne”是自定义的系统互斥体的名称(ID),它的作用域为系统级的,也就是说,其他的程序若也需要禁止重复启动,此名称不能重复!
static class Program { /// /// 应用程序的主入口点。 /// [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()); } }