2
我有一個應用程序啓動並讀取控制檯進程的標準輸出。在該控制檯進程中,我調用了一些寫入控制檯的DLL文件..但我不想捕獲這些消息,我只想捕獲它們發送的輸出字符串。如何從控制檯進程只捕獲一行?
我試圖做:
verboseMethod(); //method writting things into the console
output = dllMethod(); //method returning what I want
Console.Clear();
Console.Out.Write(output)
我這樣做,所以我相信我讀的一切之前Console.Clear()執行:
exeProcess.BeginOutputReadLine();
string errString = exeProcess.StandardError.ReadToEnd();
你能給我這個選擇嗎?等到最後輸出消息給出或類似的東西?
編輯
我相信這樣的事情會幫助(如果存在的話)。我可以告訴控制檯不輸出重定向或不以某一點寫什麼,然後允許它來寫再次在代碼中的其他地方?像:
Console.CloseBuffer();
Console.OpenBuffer();
你可以做的是將輸出重定向到一個流,然後停止閱讀從流(「捕獲」),一旦你有你需要的東西。 – redtuna 2013-05-09 21:00:26