Log.LogMessage appears quickly in VS2013 output window

I have the following C # code in a custom MSBuild task:

 Log.LogMessage(MessageImportance.High, string.Format("Downloading ROOT v{0}", Version));
 // Do the download
 WebClient webClient = new WebClient();
 webClient.DownloadFile(url, filePath);



can really take a long time. Long enough that if someone doesn't know what's going on, they might be tempted to kill the assembly. Hence the log message I will give in the line earlier.

When running my build using MSBUILD, this works as expected. The console displays "Loading ROOT v5.34.20" and then pauses for a few minutes while loading.

However, when run in VS2013, the output window remains blank until the build completes. Then the correct log lines appear (in the correct order). It looks like the MSBUILD output is buffered before being sent to the VS2013 output window.

Is there a way to change this behavior? I would like to create a flash so the user knows why their build seems to be paused ...


source to share

All Articles