C#-在C#winForm应用程序中打开多个cmd窗口

时间:2018-08-15 15:32:06

标签: c# python cmd

我使用C#制作python应用程序的GUI。我应该在cmd窗口中运行python应用程序,因为它具有向用户显示的输出。

我实际上是使用以下代码片段成功做到这一点的:

Process runProg = new Process();
runProg.StartInfo.FileName = @"C:\Windows\System32\cmd.exe";
runProg.StartInfo.Arguments = @"/c py " +botFilePath +" --config_path=" + configFilePath + " --config_index=username_" + index.ToString();
runProg.StartInfo.CreateNoWindow = true;
runProg.Start();
pIds[index] = System.Convert.ToInt32(runProg.Id.ToString());

但是,如果我用这段代码打开3个进程,它将正常工作,但过一会儿,它将关闭其中2个,并继续在其中一个上运行。因此它将关闭2 cmd,并保留我打开的最后一个cmd。

如何保持3个cmd窗口打开并运行?

2 个答案:

答案 0 :(得分:0)

cmd开始使用选项/ k而不是/ c?

  

/ K执行由字符串指定的命令,但仍保留

答案 1 :(得分:0)

您有:

"@

/ C执行命令然后终止

/ K执行命令但仍然存在

尝试改用/ K:

... --expression-attribute-values @" { \":d\": { \"S\": \"$date\" } } "@