我是个问题。
我使用 c# 通过 powershell 脚本获取进程名称。但是,我没有得到价值,因为进程名称包含空格。
如何使用 c# 在 powershell 中获取包含空格的值?
我是个问题。
我使用 c# 通过 powershell 脚本获取进程名称。但是,我没有得到价值,因为进程名称包含空格。
如何使用 c# 在 powershell 中获取包含空格的值?
您不需要 PowerShell 来获取进程。
此示例行为您提供 ID 为 21952 的所有进程的 ID/名称(尽管我怀疑您不会有 ID 为 21952 的进程)。
var processes = System.Diagnostics.Process.GetProcesses().Where(p => p.Id == 21952).ToDictionary(p => p.Id, p => p.ProcessName);
要删除该过滤器:
var processes = System.Diagnostics.Process.GetProcesses().ToDictionary(p => p.Id, p => p.ProcessName);
您可以直接在 C# 中执行以下操作
using System.Diagnostics;
...
int pid = 21952;
Process localById = Process.GetProcessById(pid);
Console.WriteLine($"Process name for pid {pid}: '{localById.ProcessName}' '{localById.MainModule.FileName}'");