C# 从Process.start返回值

C# 从Process.start返回值,c#,vb.net,shellexecute,process.start,C#,Vb.net,Shellexecute,Process.start,Shellexecute如果成功,则返回大于32的值。如果函数失败,它将返回一个错误值,指示失败的原因。但是在Process.start的情况下,我没有任何这样的选择。我尝试使用Process.ExitCode,但它只有在进程关闭后才会返回值。但我想检查进程是否成功启动。另外,process.start中的shellexecute返回值的等效值是什么 但我想检查进程是否成功启动 从以下文件中: 返回值true表示新的进程资源已启动。如果StartInfo属性的FileName成员指定的进程资源已

Shellexecute
如果成功,则返回大于32的值。如果函数失败,它将返回一个错误值,指示失败的原因。但是在Process.start的情况下,我没有任何这样的选择。我尝试使用
Process.ExitCode
,但它只有在进程关闭后才会返回值。但我想检查进程是否成功启动。另外,process.start中的shellexecute返回值的等效值是什么

但我想检查进程是否成功启动

从以下文件中:

返回值true表示新的进程资源已启动。如果StartInfo属性的FileName成员指定的进程资源已在计算机上运行,则不会启动其他进程资源。相反,将重用正在运行的流程资源,并返回false

该布尔值并不表示发生了错误,只表示进程已在运行

如果发生真实错误,即异常,则可以捕获并使用属性获取要查找的错误代码


只能抛出另外两个异常;InvalidOperationException或ObjectDisposedException。这两种方法都不需要错误代码来诊断问题的原因。

Process.Start返回布尔值true如果启动正常,请参阅此处的MSDN链接