我已经开始了一个过程: Dim getUdpate as ProcessgetUpdate = New ProcessgetUpdate.StartInfo.FileName = "C:\UTIL\GETBTCH.BAT"getUpdate.StartInfo.WindowStyle = ProcessWindowStyle.HiddengetUpdate.StartInfo.UseShellExecute = FalsegetUp
Dim getUdpate as Process getUpdate = New Process getUpdate.StartInfo.FileName = "C:\UTIL\GETBTCH.BAT" getUpdate.StartInfo.WindowStyle = ProcessWindowStyle.Hidden getUpdate.StartInfo.UseShellExecute = False getUpdate.StartInfo.WorkingDirectory = "C:\UTIL\" getUpdate.Start() getUpdate.Close()
然后,我想运行另一个进程,但我想首先检查getUpdate进程是否已经完成.
如何检查流程是否已完成?
我已经尝试查看进程ID,但它只显示cmd.exe,并且有很多cmd.exe作为进程ID,所以我不能只是去阻止所有这些.
您可以检查该流程的 HasExited属性.如果进程已结束,它将返回true,如果进程仍在运行,则返回false.在getUpdate Process对象上调用Close()之前,需要先检查一下.所以getProcess必须保持开放,直到procsses退出.