プロセスの出力を文字列に読み込もうとしています。何らかの理由で、出力の途中にある 1 行が出力されているように見えます (つまり、画面に表示され、文字列には保存されません)。
string strOutput = "";
Process process = new Process();
process.StartInfo.FileName = "nslookup";
process.StartInfo.Arguments = "-type=mx uic.edu";
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.Start();
strOutput = process.StandardOutput.ReadToEnd();
process.WaitForExit();
Console.WriteLine("xxxxxxxxxxxxxxxxxxx");
Console.WriteLine(strOutput);
Console.WriteLine("yyyyyyyyyyyyyyyyyyy");
次のような出力が得られます。
Non-Authoritative answer:
xxxxxxxxxxxxxxxxxxxx
Server: aaa.myserver.com
Address: 111.222.111.222
uic.edu MX preference = 10, mail exchanger - ...
...
yyyyyyyyyyyyyyyyyyyy
コマンドラインからコマンドを実行すると、「アドレス: ...」の後に「権限のない回答:」が表示されます。
出力され、文字列の一部として保存されない理由を誰かが説明できますか? 私はおそらく明らかな何かを見逃していますが、私は困惑しています。
ありがとう