我正在尝试获取输出以显示我机器上当前打开的文档,但无论如何它都会返回 NULL。
StringCollection values = new StringCollection();
var proc = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "openfiles.exe",
Arguments = "/query /FO CSV /v",
UseShellExecute = false,
RedirectStandardOutput = true,
CreateNoWindow = true
}
};
proc.Start();
while (!proc.StandardOutput.EndOfStream)
{
string line = proc.StandardOutput.ReadLine();
values.Add(line);
}
foreach (string sline in values)
MessageBox.Show(sline);
编辑:
在进一步审查期间,我发现我遇到了异常问题。在我的诊断运行期间,我得到以下信息: Proc.BasePriority thre 类型为 System.InvalidOperationException 的异常
编辑:
尝试将代码提取为:
string val = proc.StandardOutput.ReadToEnd();
MessageBox.Show(val);
返回时也是一个 NULL 值,即使在 proc.start(); 之后,Proc 仍然有错误。