VisualStudio: нет отладочного вывода
Я пытаюсь отлаживать приложение С#. Метод:
System.Diagnostics.Debug.WriteLine("something");
должен выполнить эту работу, но в окне "Выход" (установлено "debug" и все активированные опции) я не вижу ни одной строки, которую я пытаюсь написать. Есть идеи?
Благодаря
EDIT:
Я использую VS2008
Ответы
Ответ 1
В разделе "Опции-Параметры-Отладка-Общие", "Перенаправить все текст окна вывода" в окно "Немедленное окно" есть опция. Убедитесь, что отключено. Однако по умолчанию это не так, поэтому я сомневаюсь в вашей проблеме. Вы также можете просто проверить свое окно "Немедленное", чтобы увидеть, выводит ли он его.
Вы также можете попробовать сбросить все настройки среды. (Инструменты - Параметры импорта и экспорта - Reset все настройки.)
Ответ 2
Также стоит проверить - щелкните правой кнопкой мыши в окне вывода и убедитесь, что отмечен "Выход программы".
Ответ 3
Вы проверили, хотите ли вы компилировать в режиме отладки? Если вы выполните компиляцию в режиме Retail/Release, вы увидите это поведение.
Вы должны уметь видеть эту информацию на панели инструментов Visual Studio. Будет поле со списком, в котором будет указано Release или Debug. Если он говорит Release, переключитесь на Debug.
В определенных настройках профиля это комбинированное поле по умолчанию не будет отображаться. Вам нужно будет получить доступ к нему через страницу свойств проекта. Он будет на вкладке build/compile.
Ответ 4
Помимо приведенных выше предложений, взгляните на свойства проекта, щелкнув правой кнопкой мыши имя проекта и выбрав "Свойства". После этого нажмите на вкладку "Сборка", а затем кнопку "Дополнительно" в правом нижнем углу. Когда у вас появится окно "Дополнительно", посмотрите раздел "Выход" и параметр "Отладка информации". Когда вы находитесь в режиме отладки, это должно быть установлено на полный.
Ответ 5
Кроме того, убедитесь, что в окне "Выход" установлено "Отладка", вместо чего-то вроде "Build".
Вы должны увидеть, как он загружает все необходимые сборки в вывод "Debug".
Ответ 6
Вам нужно явно добавить систему Console
в качестве TraceListener
, чтобы выход отображался в консоли. Согласно документации Microsoft , этот код должен сделать трюк. Это код С#, но ссылка, которую я предоставил, содержит примеры для других языков .NET.
using System;
using System.Data;
using System.Diagnostics;
class Test
{
static void Main()
{
Debug.Listeners.Add(new TextWriterTraceListener(Console.Out));
Debug.AutoFlush = true;
Debug.Indent();
Debug.WriteLine("Entering Main");
Console.WriteLine("Hello World.");
Debug.WriteLine("Exiting Main");
Debug.Unindent();
}
}
Ответ 7
У меня была одна и та же проблема, отладка была показана, выбрав:
Отладка → Windows → Вывод
Однако мой вывод все еще отображается, поэтому я думаю, что vs скроет Debug, пока не будут записаны фактические данные.
Ответ 8
"Включить хостинг Visual Studio" в свойствах проекта → Debug решила проблему для меня.
Ответ 9
ЕСЛИ вы используете ярлыки, убедитесь, что вы нажимаете F5
для запуска режима отладки (не Ctr + F5).
F5 Запуск отладки
CTRL + F5 Запуск без отладки
Ответ 10
Я просто столкнулся с этой проблемой с Visual Studio 2010 и 2017, и это то, что я сделал, чтобы заставить его работать, и у меня нет объяснений, почему он теперь работает.
Что я сделал, чтобы заставить его работать.
Я создал новый проект Windows Form и добавил кнопку, которая при нажатии выполняется Console.WriteLine( "Тест" ). Я видел "Тест" в окне вывода. Затем я загрузил свой настоящий проект и добавил кнопку, чтобы выполнить Console.WriteLine( "Тест" ), и теперь он выпустил вывод. Другие операторы Console.WriteLine работали с этого момента.
Ответ 11
В моем проекте в Visual Studio 2017 выходные данные отображаются в непосредственном окне