現在、C#アプリを使用してCプログラムをコンパイルしています。gccが何かを出力する場合は、エラーが発生したことを意味します。このエラーを取得してユーザーに表示したいと思います。
現在、私はこれをやっています...
var proc = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = _cCompilerPath,
Arguments = " ./file.c",
UseShellExecute = false,
RedirectStandardOutput = true,
CreateNoWindow = true
}
};
proc.Start();
string message = string.Empty;
while (!proc.StandardOutput.EndOfStream)
{
string line = proc.StandardOutput.ReadLine();
message = string.Concat(message, line);
}
MessageBox.Show("OUTPUT :" + message);
ただし、プログラムにエラーが発生した場合でも、標準出力にリダイレクトされるものはなく、EndOfStreamは常にtrueを返します。