OutputDebugString не печатает информацию в Visual Studio 2010 - PullRequest
4 голосов
/ 24 февраля 2012

Я пытался заставить OutputDebugString работать безрезультатно. Мой код выглядит следующим образом:

int main(int argc, char* argv[])
{
    OutputDebugStringA("asd");
    getchar();
    return 0;
}

Когда я запускаю приложение без отладки, DebugView показывает asd, но когда я отлаживаю свое приложение (F5), оно не печатает мою строку в окне «Вывод» или «Промежуточное».

Я пробовал OutputDebugString с asd, но ничего не изменилось. В чем может быть проблема?

Ответы [ 2 ]

13 голосов
/ 24 февраля 2012

Вы должны завершить строку с "\ n", но это должно быть только косметическим делом.Я попробовал ваш код прямо сейчас, и я могу видеть строку asd в окне «Вывод» VS 2010 без каких-либо проблем.

Примечание: в контекстном меню панели «Вывод» (доступным при нажатии правой кнопки мыши) вы можетевыберите, какая информация должна отображаться на панели.Убедитесь, что вы включили «Вывод программы».Также убедитесь, что вы смотрите правильное окно («Вывод» или «Немедленно») в зависимости от настройки «Перенаправить весь текст окна вывода в окно« Немедленное окно »в меню« Инструменты / Параметры / Отладка / Общие ».

2 голосов
/ 17 января 2013

У нас была похожая проблема с отладкой в ​​смешанном режиме x64, поэтому, если вы используете 64-битную версию, проверьте страницу свойств отладки для основного запускаемого проекта.Тип отладчика должен быть установлен как «Смешанный», а не «Авто», чтобы видеть как исходные, так и управляемые выходные данные отладки.

См. здесь для получения дополнительной информации.

...