pro.StartInfo.FileName = @"C:\Program Files (x86)\Mozilla Firefox\firefox.exe";
pro.StartInfo.Arguments = a;
pro.StartInfo.WindowStyle = ProcessWindowStyle.Minimized;
pro.Start();
我上面的代码启动了Firefox最小化。但Firefox实际上并没有最小化,而是作为普通窗口。我的代码有什么问题?我必须让线程睡眠100毫秒吗?
答案 0 :(得分:0)
试试这个:)
pro.StartInfo.FileName = @"C:\Program Files (x86)\Mozilla Firefox\firefox.exe";
pro.StartInfo.Arguments = a;
pro.UseShellExecute = true;
pro.StartInfo.WindowStyle = ProcessWindowStyle.Minimized;
pro.Start();
我认为这只有在firefox没有运行的情况下才有效。否则它仍会打开firefox,但不会最小化。如果您希望在进程已启动时最小化您自己的启动Firefox,则需要按照here所述处理ShowWindow
。
答案 1 :(得分:0)
要在不打开终端窗口的情况下启动进程,可以这样做:
ProcessStartInfo pro = new ProcessStartInfo();
pro.FileName = 'pathToFile'
pro.RedirectStandardInput = true;
pro.RedirectStandardOutput = false;
pro.Arguments = 'some arguments'
pro.UseShellExecute = false;
pro.CreateNoWindow = true; // <- imp. line