杀死使用特定图像路径的进程

时间:2013-08-08 19:04:11

标签: c#

我需要找到一种方法来杀死使用某个图像路径的所有进程。我一直在发现,按名称杀死进程并不总是正确地杀死进程 - 因为它的开发人员无法从构建到构建保持相同的名称。

我已经做了一些挖掘,但未能找到解决方案。想知道这里是否有人可以指出我正确的方向。

3 个答案:

答案 0 :(得分:3)

Process.GetProcesses()
        .First(p => String.Compare(p.MainModule.FileName,filename,true)==0)
        .Kill();

答案 1 :(得分:2)

这会杀死在特定目录中运行的所有进程

System.Diagnostics.Process.GetProcesses()
.Where(p => Path.GetDirectoryName(p.MainModule.FileName).ToLower().Equals(path.ToLower())
.ToList().ForEach(p => p.Kill());

答案 2 :(得分:1)

我相信这就是你想要的

var imagePath = @"C:\applicationfolder";
var processes = Process.GetProcesses()
                .Where(p => p.MainModule.FileName.StartsWith(imagePath, true, CultureInfo.InvariantCulture));
foreach (var proc in processes)
{
    proc.Kill();
}