: 여기
http://msdn.microsoft.com/en-us/library/ms171471.aspx 당신이 시작할 수 있도록 코드의 비트입니다 :
public class SummaryLogger : Logger
{
int warningCount = 0;
int errorCount = 0;
public override void Initialize(IEventSource eventSource)
{
eventSource.WarningRaised += eventSource_WarningRaised;
eventSource.ErrorRaised += eventSource_ErrorRaised;
eventSource.BuildFinished += eventSource_BuildFinished;
}
void eventSource_WarningRaised(object sender, BuildWarningEventArgs e)
{
warningCount++;
Console.WriteLine("Warning: " + e.Message);
}
void eventSource_ErrorRaised(object sender, BuildErrorEventArgs e)
{
errorCount++;
Console.WriteLine("Error: " + e.Message);
}
void eventSource_BuildFinished(object sender, BuildFinishedEventArgs e)
{
Console.WriteLine("MSBuild Finished: " + errorCount + " errors | " + warningCount + " warnings.");
}
}
이 로거는 로그 경고, 오류 및 오류 및 경고의 양을 요약합니다. 시간과 프로젝트를위한 약간의 코드를 추가해야합니다. 그러면 원하는대로 바로 사용할 수 있습니다.
그것을 사용하려면, 당신은 추가 다음 PARAMS와의 MSBuild를 호출
/nologo /noconsolelogger /logger:pathTo/SummaryLogger.dll
나는 또한이 마녀 방법을 시도했는데 그것이 가능하지 않다고 생각합니다 ... 호기심에서 표준 출력에 어떤 문제가 있습니까? 나는이 문제가 빌드 문제를 디버깅하는 데 매우 유용하며 'cls'호출로 쉽게 지워질 수 있음을 확인했습니다. –
@NickNieslanik 솔루션의 표준 출력 크기가 커서 명령 프롬프트 버퍼가 수정되지 않고 당신은 전체 콘솔 출력, 복사 된 파일, 삭제 된 파일과 같은 출력을 많이 검토합니다. –
에 관심이 없습니다. 왜 File Logger를 사용하여 명령 프롬프트 버퍼 문제를 해결하지 않습니까? 이 문제 중 적어도 하나는 완화 될 것입니다. 파일 로거를 사용하여 "한 파일에 오류를 기록하고 다른 파일에 경고를, 세 번째 파일에는 일반 정보를 기록" –