在VB中杀了几个进程?

时间:2012-04-11 02:16:10

标签: .net vb.net process kill kill-process

我目前在VS 2010中有以下内容

        Dim myProcess() As Process = System.Diagnostics.Process.GetProcessesByName("calc")

    For Each myKill As Process In myProcess
        myKill.Kill()

然而,我似乎无法让它杀死多个进程。 示例我已经尝试了

("calc",mspaint")
("calc,mspaint")
("calc"),("mspaint")

有什么想法吗? 感谢您的时间/支持

1 个答案:

答案 0 :(得分:2)

引自GetProcessByName的MSDN文档:

  

创建一个新的Process组件数组并将它们关联起来   所有共享指定进程的现有进程资源   名。

你不能向它传递一个参数数组。相反,你可以使用GetProcesses方法获取所有进程,遍历所有进程并检查它的名称是否与你想要的名称相匹配: / p>

 Dim procs = System.Diagnostics.Process.GetProcesses().Where((Function(p) p.ProcessName = "calc" Or p.ProcessName = "mspaint"))
            For Each p As Process In procs
                p.Kill()
            Next

非LINQ方式:

 For Each p As Process In Process.GetProcesses()
            If p.ProcessName = "calc" Or p.ProcessName = "mspaint" Then
                p.Kill()
            End If
        Next