为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

C#
慕婉清6462132 2021-11-28 20:20:08
我使用 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 并只保留我打开的最后一个。如何保持 3 个 cmd 窗口打开并运行?
查看完整描述

2 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

你有:

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();


查看完整回答
反对 回复 2021-11-28
?
MYYA

TA贡献1868条经验 获得超4个赞

开始cmd使用选项/ K,而不是/ C?

/K 执行字符串指定的命令但保持不变


查看完整回答
反对 回复 2021-11-28
  • 2 回答
  • 0 关注
  • 451 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信