在 c#,asp.net 中等待关闭的 cmd

本文关键字:cmd 等待 asp net | 更新日期: 2023-09-27 18:32:52

我正在通过 asp.net 在后台运行cmd。我想等待程序,直到关闭的cmd窗口?我怎样才能成功?

在 c#,asp.net 中等待关闭的 cmd

补充一下Emre Acar的答案,如果你自己用Process.Start()开始cmd,你可能会这样做:

var process = Process.Start(@"c:'windows'system32'cmd.exe");
process.WaitForExit();

而不是循环遍历所有打开的进程。由于您提到了asp.net,如果您在页面中启动该过程,则可能同时运行许多控制台(每页一个),并且每个页面只想等待它打开的控制台完成。

另请查看 WaitForExit 的文档。还有其他重载,您可能需要指定超时(这样您的页面就不会长时间等待......

我认为这会起作用。

foreach(Process cmdprocess in Process.GetProcessesByName("cmd"))
{
cmdprocess.WaitForExit();
}