为什么WaitForExit在我的C#代码中不是可用的方法?

时间:2012-12-07 16:02:20

标签: c# methods process

下面的代码工作正常,但我需要添加WaitForExit方法。但它没有显示可用。我错过了什么?感谢。

ProcessStartInfo process = new ProcessStartInfo("cmd.exe", @"/C " + AppDomain.CurrentDomain.BaseDirectory + "Setupws.exe");
process.Verb = "runas";
process.WindowStyle = ProcessWindowStyle.Hidden;
Process.Start(process);

2 个答案:

答案 0 :(得分:5)

WaitForExit()是一个实例方法,它要求您创建Process的实例并运行它,而不是使用静态Process.Start()而不捕获Process返回值。

创建Process实例并在其上设置ProcessStartInfo后,您可以调用它的Start()实例方法,然后在实例上调用WaitForExit()

ProcessStartInfo info = new ProcessStartInfo();
//Set info properties...
Process process = new Process();
process.StartInfo = info;
//set other process properties...
process.Start();
process.WaitForExit();

答案 1 :(得分:4)

尝试:

    ProcessStartInfo process = new ProcessStartInfo("cmd.exe", @"/C " +          AppDomain.CurrentDomain.BaseDirectory + "Setupws.exe");
    process.Verb = "runas";
    process.WindowStyle = ProcessWindowStyle.Hidden;
    Process p = Process.Start(process);
    p.WaitForExit();