Как фильтровать выходные данные в Visual Studio 2012+?

у меня возникли проблемы с проверкой конкретных вещей в моем Debug.WriteLn вывод в Visual Studio 2015. (То же самое и в версии 2012 и 2013 годов.)

XCode и Eclipse включают в себя поле фильтра поверх

3 ответов


различные службы в VS пишут в окно вывода, поэтому есть встроенный фильтр на основе источника. Вы часто можете выбрать источник, такой как" Build Output"," Test discovery"," General"," Debug " и т. д.

"отладка".Вызовы записи перехватываются VS, и текст попадает в окно вывода, но нет встроенной фильтрации.

Я могу придумать 3 способа обойти это:

  1. использовать DbgView для перехвата отладки.Писать сообщения вместо пусть VS перехватит их. DbgView имеет очень мощные функции фильтрации и раскраски*
  2. попробовать это расширение это окрашивает вывод на основе регулярных выражений
  3. написать собственное расширение (это не так сложно!)

(*) Если вы идете по этому маршруту, обратите внимание, что отладка.Запись-это просто трассировка, и когда вы присоедините отладчик VS, он добавит себя в качестве списка трассировки. Же для DbgView. Но когда вы отсоедините его, он не удалит слушатель и сообщения будут потеряны.


Я использую этот метод:

откройте окно Debug-Output, просто щелкнув правой кнопкой мыши по окну.

enter image description here

вы можете проверить / Снимите в соответствии с вашими потребностями.


одна вещь, которую я только что нашел в VS 2017 (и я думаю, что это в других версиях тоже):

Tools | Options | Debugging | General > Redirect all Output Window text to the Immediate Window

Это дает вам только Debug.WriteX вывод в непосредственном окне и оставляет весь этот мусор в окне вывода, который вы можете оставить закрытым.

Я все еще могу пойти посмотреть на мусор в окне вывода, если мне нужно по какой-то причине; он не подавляется. Это просто не делает его непосредственным окно.

и я просто оставляю маленькое непосредственное окно пристыкованным внизу.

Я думаю, что это хорошо, потому что со всем мусором, выходящим в окне вывода, я действительно не обращал на вывод больше внимания, чем на соглашение об условиях использования (то есть, почти нет), поэтому ребенка выбрасывали с водой для ванны. Но теперь я на самом деле посмотреть некоторые выходные данные отладки программы, которые lo и вот, нужны внимание.

IMHO Microsoft должна расширить раскрывающееся окно окна вывода, чтобы включить все категории, которые FetFrumos указал в своем ответе, поэтому разработчики могут просто оставить его в "вывод программы". Я думаю, это было бы хорошим улучшением.