Winform和WPF检查应用是否重复打开

一、以App扩展方法检查进程名和进程ID的方式

 1 Public static T SetSingleProcess(this T app)Where T:Application
 2 {
 3   var process=Process.GetProcesses().Where(p=>p.ProcessNames==Process.GetCurrentProcess().ProcessName&&p.Id!=Process.GetCurrentProcess().Id) .FirstOrDefault();
 4   if(process!=null)
 5   {
 6     if(MessageBox.Show("应用已打开,是否关闭再打开?",“提示”,MessageboxButton.YesNo)==MessageBoxResult.Yes)
 7     {
 8       process.Kill();  
 9     }
10     else
11     {
12       app.ShutDown();  
13     }
14   }
15 }

 

posted @ 2023-07-11 20:40  follow_discoverer  阅读(132)  评论(0编辑  收藏  举报