首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异步C#/XAML如何等待批处理文件完成“等待myProcess.StandardInput.WriteLineAsync("LongRunning.bat");”“

异步C#/XAML如何等待批处理文件完成“等待myProcess.StandardInput.WriteLineAsync("LongRunning.bat");”“
EN

Stack Overflow用户
提问于 2022-10-12 16:43:13
回答 1查看 35关注 0票数 2

异步C#/XAML/WinUI-3如何等待批处理文件的完成.

在我的应用程序中,我运行一个长时间运行的批处理文件。该批处理文件从因特网下载数据,下载时间为5-10分钟。

下面所观察到的代码行为只是等待WriteLine完成,然后在批处理文件继续在后台运行时继续前进。我想等到批处理文件完成,因为下载数据是第一步,在处理数据之前是必需的。有办法做到这一点吗?

代码语言:javascript
复制
"await myProcess.StandardInput.WriteLineAsync("LongRunning.bat");"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-12 16:49:54

这就是我在不了解您的具体应用程序和用例的情况下所做的事情。请注意,WaitForExitAsync需要.NET 5或更高版本。

代码语言:javascript
复制
var processInfo = new ProcessStartInfo("cmd.exe", "/c LongRunning.bat");
processInfo.CreateNoWindow = true;
processInfo.UseShellExecute = false;
var process = Process.Start(processInfo);
await process.WaitForExitAsync();
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74045341

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档