因此,我啓動了一堆進程來轉換某些音頻文件,並且我希望我的主程序等到所有這些進程完成後才執行。如何等到某個進程終止後再繼續執行 - C#
System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo stratInfo = new System.Diagnostics.ProcessStartInfo();
stratInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
DirectoryInfo di = new DirectoryInfo(@dir);
foreach (FileInfo fi in di.GetFiles())
{
stratInfo.FileName = "C:\\AudioExtract.exe";
stratInfo.Arguments = "-a \"" + dir + "\\" + fi.Name + "\"";
process.StartInfo = stratInfo;
process.Start();
}
foreach (Process clsProcess in Process.GetProcesses())
{
if (clsProcess.ProcessName.Contains("AudioExtract.exe"))
{
StatusLbl.Text = "Found!";
}
}
那是什麼,我必須看它是否正在運行,但我需要它來繼續更新getprocesses並檢查它是否仍在運行和IM不太清楚如何。
我的應用程序幾乎同時啓動許多不同的音頻文件的相同過程。我查看了註釋中的鏈接,它將設置一個事件處理程序,如果每次有一個進程退出時,我將如何處理許多相同的事件?
http://stackoverflow.com/questions/2/how-to-know-the-exe-run-by-my-applications-process-has-completed-its-4332123#4332123 – 2010-12-02 06:58:31
已更新我的帖子 – Dacto 2010-12-02 07:04:16