C# - 如何检查进程是否成功启动

Sim*_*mon 5 c# process

可能重复:
如何知道Process.Start()是否成功?

我的程序中有一个类似于监视程序(让我们称之为WD)的进程,这是另一个运行进程(让我们称之为A).我正在WD某个事件开始进程,让我们说一个键被按下了,我想用这个过程启动另一个进程,让我们调用它B.

问题是我想A在我知道该过程B成功启动之后关闭初始过程.我该怎么检查?

我正在启动进程WDB使用Process.Start(argList)ProcessInfo(argList)语法.

每个进程都是一个简单的C#控制台应用程序

Osc*_*ley 7

Process.Start 返回一个布尔值(如果进程正确启动,则为true)检查Process.Start() 方法的此 MSDN链接

你的代码应该是这样的:

        Process B= new Process();

        try
        {
            B.StartInfo.UseShellExecute = false;
            B.StartInfo.FileName = "C:\\B.exe";
            B.StartInfo.CreateNoWindow = true;
            if (B.Start())
            {
              // Kill process A 
            }
            else
            {
               // Handle incorrect start of process B and do NOT stop A
            }

        }
        catch (Exception e)
        {
            // Handle exception and do NOT stop A
        }
Run Code Online (Sandbox Code Playgroud)