【问题标题】:Kill Several Processes In VB?在VB中杀死几个进程?
【发布时间】:2012-04-23 08:21:27
【问题描述】:

我目前在 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")

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

【问题讨论】:

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


    【解决方案1】:

    引用自 GetProcessByName 的 MSDN 文档:

    创建一个新流程组件数组并将它们与 共享指定进程的现有进程资源 名字。

    您不能将参数数组传递给它。相反,您可以使用GetProcesses 方法获取所有进程,遍历所有进程并检查其名称是否与您想要的名称之一匹配:

     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
    

    【讨论】:

    • 谢谢 :) 那行得通。但我想杀的不止两个吗? (同时我会自己处理)
    • NVM 最后一条评论,我对每个 p 都这样做了,因为 Process.GetProcesses() 如果 p.ProcessName = "calc" 或 p.ProcessName = "mspaint" 或 p.ProcessName = "pidgin"然后 p.Kill() End If Next
    猜你喜欢
    • 1970-01-01
    • 2014-05-22
    • 1970-01-01
    • 1970-01-01
    • 2018-02-12
    • 1970-01-01
    • 2010-12-08
    • 1970-01-01
    相关资源
    最近更新 更多