您的位置:首页 > 编程语言 > C#

C#如何让同一个窗口只能打开一次和一个程序只能同时打开一个

2017-08-25 18:58 603 查看
1、C#如何让同一个窗口只能打开一次
public Form2()

{

InitializeComponent();

}

private static Form2 f2 = new Form2();

public static Form2 getf2()

{

if (f2.IsDisposed)

{

f2 = new Form2();

return f2;

}

else

{

return f2;

}

}

form1中的
private void button1_Click(object sender, EventArgs e)

{

Form2.getf2().Show();

Form2.getf2().Activate();
}
//=====创建互斥体法:=====

//bool blnIsRunning;

//Mutex mutexApp = new Mutex(false, Assembly.GetExecutingAssembly().FullName, out blnIsRunning);

//if (!blnIsRunning)

//{

// MessageBox.Show("程序已经运行!", "提示",

// MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

// return;

//}

2、一个程序只能运行一个

//=====判断进程法:(修改程序名字后依然能执行)=====

Process current = Process.GetCurrentProcess();

Process[] processes = Process.GetProcessesByName(current.ProcessName);

foreach (Process process in processes)

{

if (process.Id != current.Id)

{

if (process.MainModule.FileName

== current.MainModule.FileName)

{

MessageBox.Show("程序已经运行!", Application.ProductName,

MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

return;

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐