自定义MSBuild任务:如何在任务仍在运行时刷新VS2012输出窗口中的日志记录?

时间:2013-05-22 11:01:31

标签: c# visual-studio-2012 msbuild

我有一个自定义的MSBuild任务,需要一些时间才能完成。它使用Log.LogMessage()BuildEngine.LogMessageEvent()(同时尝试)输出进度。

我的问题是,在任务完成之前,所有输出都不会出现在VS2012输出窗口中,因此进度更新无效。我希望在任务运行时立即显示输出。

我发现各种线程解释为频繁调用Application.DoEvents(),但这似乎无法解决问题(可能它只适用于VS2010以及之前?)。

1 个答案:

答案 0 :(得分:1)

VS2012中的已知错误。

我们最终为VS2012 / 2013制作了一个VSPackage扩展(直接在窗格日志中输出)。

在VS2015中已修复。