是否有其他方法可以从另一个进程来“ GetCommandLineArgs”?

时间:2019-06-29 20:37:22

标签: c# process arguments kill

我只是试图启动并杀死具有不同参数的同一程序的多个实例。启动不是问题,但是如何杀死带有特定参数的进程?

static void Start(string args)
        {
            var process = new Process
            {
                StartInfo = { FileName = "FileName", Arguments = args }
            };
            process.Start();
        }

这是我用args启动proc的方法

我试图以某种方式保留它,但是我没有成功。我已经在Google搜索了过去一个小时,但没有得到任何有用的结果。

谢谢。

1 个答案:

答案 0 :(得分:0)

使用Dictionary<string, Process>存储进程和参数:

static Dictionary<string, Process> processes = new Dictionary<string, Process>();

static void StartProcess(string args)
{
    var process = new Process
    {
        StartInfo = { FileName = "FileName", Arguments = args }
    };
    process.Start();
    processes.Add(args, process);
}

static void StopProcess(string args)
{
    var process = processes[args];
    process.Kill();
    process.Dispose();
    processes.Remove(args);
}