我正在制作Visual Studio包,在那里我启动devenv.exe并尝试构建其他解决方案。我需要实时获取构建输出,因此用户可以看到构建进度/输出,但我不知道如何做到这一点,如果它甚至是可能的。
我试过这样的方法:
string rebuildLog = string.Empty;
string logFileName = System.IO.Path.GetTempFileName();
System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo();
psi.FileName = @"devenv.exe";
psi.Arguments = "\"" + config.DmsPath + "\"" + @" /rebuild" + " Release|x64 " +" /out " + logFileName;
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo = psi;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.UseShellExecute = false;
process.Start();
while (!process.StandardOutput.EndOfStream)
{
string line = process.StandardOutput.ReadLine();
MessageBox.Show(line); // just to see if it works. It should go to log form
}
rebuildLog = GetRebuildLog(logFileName);
rebuildLog有输出。
接下来我可以尝试什么?
1条答案
按热度按时间ldioqlga1#
我发现answer.devenv.exe不写简单的控制台输出,所以我不得不更改
psi.FileName = @“devenv.exe”;到psi.FileName = @“devenv.com";而且成功了