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

问题描述 投票:0回答:2

我使用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厘米,并保持我打开的最后一个。

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

c# python cmd
2个回答
0
投票

你有:

runProg.StartInfo.Arguments = @"/c py " +botFilePath +" --config_path=" + configFilePath + " --config_index=username_" + index.ToString();

/ C执行命令然后终止

/ K执行命令但仍然存在

尝试使用/ K代替:

runProg.StartInfo.Arguments = @"/K py " +botFilePath +" --config_path=" + configFilePath + " --config_index=username_" + index.ToString();


0
投票

使用选项/ k而不是/ c启动cmd

/ K执行string指定的命令但仍然存在

© www.soinside.com 2019 - 2024. All rights reserved.