Uzyskaj wartości z procesu StandardOutput
Próbuję uzyskać dane wyjściowe, aby pokazać aktualnie otwarte dokumenty na moim komputerze, ale wraca NULL bez względu na wszystko.
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);
Edytować:
Podczas dalszego przeglądu widzę, że otrzymuję problem dotyczący wyjątków. Podczas mojego uruchomienia diag otrzymuję: Proc.BasePriority jest wyjątkiem typu System.InvalidOperationException
Edytować:
Próbowano pobrać kod jako:
string val = proc.StandardOutput.ReadToEnd();
MessageBox.Show(val);
Również wartość NULL po powrocie, a Proc wciąż miał błędy nawet po proc.start () ;.