等待进程退出

时间:2014-01-07 15:44:50

标签: c# .net c#-4.0

如何等待进程完成执行然后删除呢?

我使用Process.Start("process.exe");

开始这个过程

谢谢。

2 个答案:

答案 0 :(得分:2)

您可以执行以下操作:

Process proc = Process.Start("update.exe", "-s"); // extract in the silent mode
proc.WaitForExit();
File.Delete("update.exe");

答案 1 :(得分:0)

方法一: 只需检查SFX EXE-Thread是否仍在运行。快速的解决方案是

 process.WaitForExit();

方法二: 使用Rar并解压缩SFX并检查文件是否仍然定期访问(阻止)。

但我严格建议使用rar库。因此,您不依赖于特定的rar安装(根据操作系统可能会有所不同)

以下图书馆似乎符合您的需求:http://nunrar.codeplex.com/

图书馆不应该关心它是“真正的”rar还是sfx文件