Process.start:如何获取输出?
我想从我的Mono / .NET应用程序运行一个外部命令行程序。例如,我想运行 。可能吗:
- 要获取命令行shell输出,并将其写在我的文本框中?
- 要获取数值以显示经过时间的进度条?
回答:
适当地创建Process
对象集时StartInfo
:
var proc = new Process {
StartInfo = new ProcessStartInfo
{
FileName = "program.exe",
Arguments = "command line arguments to your executable",
UseShellExecute = false,
RedirectStandardOutput = true,
CreateNoWindow = true
}
};
然后开始该过程并从中读取:
proc.Start();while (!proc.StandardOutput.EndOfStream)
{
string line = proc.StandardOutput.ReadLine();
// do something with line
}
您可以使用int.Parse()
或int.TryParse()
将字符串转换为数字值。如果读取的字符串中包含无效的数字字符,则可能必须先进行一些字符串操作。
以上是 Process.start:如何获取输出? 的全部内容, 来源链接: utcz.com/qa/426038.html