可能重复:
如何知道Process.Start()是否成功?
我的程序中有一个类似于监视程序(让我们称之为WD)的进程,这是另一个运行进程(让我们称之为A).我正在WD某个事件开始进程,让我们说一个键被按下了,我想用这个过程启动另一个进程,让我们调用它B.
问题是我想A在我知道该过程B成功启动之后关闭初始过程.我该怎么检查?
我正在启动进程WD并B使用Process.Start(argList)和ProcessInfo(argList)语法.
每个进程都是一个简单的C#控制台应用程序
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)