从命令行在后台运行程序

时间:2016-02-01 21:46:50

标签: c# cmd console-application

所以我有一个运行命令行进程然后关闭的控制台应用程序。对于该过程被调用的那一秒,我可以看到该过程的窗口弹出然后消失。

是否可以:

  • 在后台运行其他流程
  • 将其他进程最小化,使其仍显示在任务栏上,但不会显示在屏幕上。

目前我的代码:

var proc = new Process();
proc.StartInfo.FileName = "cmd.exe";
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.RedirectStandardInput = true;
proc.Start();

proc.StandardInput.WriteLine(@"Navigate to Correct Folder");
proc.StandardInput.WriteLine(@"Run Outside Program");

2 个答案:

答案 0 :(得分:0)

添加该行:

 proc.StartInfo.Arguments = " /c;

那一个:

proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

答案 1 :(得分:0)

我怀疑您实际上是在看到控制台应用程序的窗口,而不是您正在启动的进程。将输出类型更改为Windows应用程序。enter image description here

Here这是一个解决方案,可让您在需要时显示控制台,例如,如果出现问题并且您想提醒用户。