我正在尝试找到一个应用程序的PID,我只知道有什么方法可以从GetProcessByName获取PID吗?
答案 0 :(得分:1)
Process.GetProcessesByName
返回一个Process
个对象数组,每个对象都有一个Id
属性,即PID。
Dim firefox = Process.GetProcessesByName("firefox")
For Each proc In firefox
Console.WriteLine("pid={0}", proc.Id)
Next
由于可以返回多个进程,因此您需要有一些方法来选择正确的进程。
答案 1 :(得分:0)
以下是一个不错的Linq
示例...将PROCESSNAMEHERE
替换为您的process
名称...变量proc
包含过程对象,您可以从那里执行什么都有它。此对象是它找到的任何进程的Array
...
Dim proc() As Process = Process.GetProcesses().Select(Function(p) p).Where(Function(n) n.ProcessName = "PROCESSNAMEHERE").ToArray
If proc IsNot Nothing AndAlso proc.Count > 0 Then
MessageBox.Show(String.Join(Environment.NewLine, From pr In proc.Select(Function(x) x.Id)))
End If