Я пытаюсь отправить сообщение отладки с функцией OutputDebugString. Я использую эту функцию в моем проекте DLL, и я получаю это сообщение в DebugView. Я также использую эту функцию в своем проекте консольного приложения (то же решение), но я не могу получать сообщения. Все сообщения появляются в DebugView, кроме консольного приложения. Это даже не кажется простым OutputDebugStringA("debug");
или же OutputDebugString(L"debug");
коды. Что это может вызвать?
Одна из проблем заключается в том, заходите ли вы в окно вывода VS или в инструмент DebugView здесь: https://technet.microsoft.com/en-us/sysinternals/bb896647?f=255&MSPPError = -2147217396. Они разные.
Если вы используете представление «Отладка», а не отладку своего приложения, просто запустите его, используя «запуск без отладки (Ctrl + F5)».
Если вы используете окно вывода VS и другие приложения, выводимые как обычно, эта проблема возникает только у конкретного консольного приложения, я не думаю, что это связано с инструментом отладчика, мы могли бы подумать о самом проекте или настройках VS.
(1) Пожалуйста, установите точку останова в строке кода «OutputDebugString (L« debug »);», а затем отладьте свое приложение, используя «F5», после того, как точка останова была достигнута, нажмите «Step Into (F11)», а затем перейдите на страницу Ваше окно вывода отладки. Возможно, конкретный строчный код не был вызван в вашу сторону.
(2) Поскольку в одном решении есть разные проекты, установите это консольное приложение в качестве начального проекта. Или вы можете просто создать единственное решение для этого проекта, отладить его снова. По крайней мере, мы могли бы знать, влияют ли другие проекты на это конкретное консольное приложение.
(3) Просто протестируйте его в другой VS IDE, убедитесь, что это не проблема VS IDE. Я просто использую настройки VS по умолчанию на моей стороне, это работает хорошо.
Ссылка:
https://blogs.msdn.microsoft.com/reiley/2011/07/29/a-debugging-approach-to-outputdebugstring/
Других решений пока нет …