我的程序中有一个类似于看门狗的进程(我们称之为它WD
),它是另一个正在运行的进程(我们称之为它A
)。我正在WD
某个事件中启动进程,假设按下了一个键,我想用这个进程启动另一个进程,我们称之为B
。
A
问题是我想在我知道该过程B
成功启动后关闭初始过程。我该如何检查?
我正在开始进程和WD
语法。B
Process.Start(argList)
ProcessInfo(argList)
每个进程都是一个简单的 C# 控制台应用程序。
我的程序中有一个类似于看门狗的进程(我们称之为它WD
),它是另一个正在运行的进程(我们称之为它A
)。我正在WD
某个事件中启动进程,假设按下了一个键,我想用这个进程启动另一个进程,我们称之为B
。
A
问题是我想在我知道该过程B
成功启动后关闭初始过程。我该如何检查?
我正在开始进程和WD
语法。B
Process.Start(argList)
ProcessInfo(argList)
每个进程都是一个简单的 C# 控制台应用程序。
Process.Start 返回一个布尔值(如果进程正确启动,则为true )检查此 MSDN链接以了解 Process.Start() 方法。
你的代码应该是这样的:
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
}
返回:如果进程资源已启动,则返回true ;如果没有启动新的进程资源(例如,如果重用现有进程),则为false 。
我假设您应该只检查Process.Start
. 如果是true
,您可以关闭当前进程。
根据您使用的重载,null
如果它也失败,则返回值可能是。