我怎样才能在后台启动一个进程?

我似乎无法在Google或StackOverflow上find答案。

如何在后台启动进程(在活动窗口后面)? 就像当进程启动时,它不会中断用户正在使用的当前应用程序。

这个过程不会在当前应用程序的前面popup,它只会启动。

这就是我正在使用的:

Process.Start(Chrome.exe); 

Chrome在启动时会在我的应用程序前popup。 我怎样才能让它在后台启动?

我也试过:

 psi = new ProcessStartInfo ("Chrome.exe"); psi.UseShellExecute = true; psi.WindowStyle = ProcessWindowStyle.Hidden; psi.WindowStyle = ProcessWindowStyle.Minimized; Process.Start(psi); 

但是从前一个没什么区别。

谢谢。

Solutions Collecting From Web of "我怎样才能在后台启动一个进程?"

尝试这个:

  Process p = new Process(); p.StartInfo = new ProcessStartInfo("Chrome.exe"); p.StartInfo.WorkingDirectory = @"C:\Program Files\Chrome"; p.StartInfo.CreateNoWindow = true; p.Start(); 

另外,如果这不起作用,请尝试添加

 p.StartInfo.UseShellExecute = false; 

下面的代码应该做你需要的:

 class Program { static void Main(string[] args) { var handle = Process.GetCurrentProcess().MainWindowHandle; Process.Start("Chrome.exe").WaitForInputIdle(); SetForegroundWindow(handle.ToInt32()); Console.ReadLine(); } [DllImport("User32.dll")] public static extern Int32 SetForegroundWindow(int hWnd); }