我需要程序来提供批处理脚本的输出,而目前它只是打印
System.IO.StreamReader
它应该打印批处理脚本所说的
这只是与启动新进程有关的部分,声明了文件路径等变量,脚本本身运行但没有显示正确的输出
Process Uninstaller = new Process();
Uninstaller.StartInfo.FileName = Path.Combine(uninstalldirectory, BatchProcessFileName);
Uninstaller.StartInfo.UseShellExecute = false;
Uninstaller.StartInfo.CreateNoWindow = true;
Uninstaller.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
Uninstaller.StartInfo.RedirectStandardOutput = true;
Uninstaller.Start();
StreamReader ReadUninstallerOutput = Uninstaller.StandardOutput;
Uninstaller.Close();
string OutputEnd = ReadUninstallerOutput.ReadToEnd();
Console.WriteLine(ReadUninstallerOutput);
ReadUninstallerOutput.Close();
Console.WriteLine("Uninstallation Successful");
答案 0 :(得分:2)
那是因为你正在让控制台写ReadUninstallerOutput
,这是一个对象,而不是拥有你想要的数据的字符串,而且所有方法都在调用ToString
方法。类型。根据您的代码判断,您需要替换:
Console.WriteLine(ReadUninstallerOutput);
使用:
Console.WriteLine(OutputEnd);
答案 1 :(得分:1)
替换
Console.WriteLine(ReadUninstallerOutput);
与
Console.WriteLine(OutputEnd);