结束属于应用程序的进程.

linamong 2011-02-17 03:53:31
就是说例如 1.exe 运行了多个实例,如何在1.exe中关闭属于这个应用程序的所有进程?
遍历1.exe会误结束同名进程...

可以遍历判断进程同名,再判断进程路径是否一样,一样就结束.

不过这里要问的是 还有没有其他的方法.
...全文
159 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
拿凤姐抵债 2011-02-17
  • 打赏
  • 举报
回复
不错。
linamong 2011-02-17
  • 打赏
  • 举报
回复
已解决 留方法给后来人

/// <summary>
/// //关闭除自身外其他本应用程序的进程.
/// </summary>
/// <returns></returns>
public static Process GetRunningInstance()
{
Process current = Process.GetCurrentProcess();
Process[] processes = Process.GetProcessesByName(current.ProcessName); //遍历正在有相同名字运行的例程
foreach (Process process in processes)
{ //忽略现有的例程
if (process.Id != current.Id)
//确保例程从EXE文件运行
if (System.Reflection.Assembly.GetExecutingAssembly().Location.Replace("/", "\\") == current.MainModule.FileName)
//返回另一个例程实例
process.Kill();
}
return null;
}

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧