2015-05-13 6 views
0

У меня есть программа, которая записывает отладочные сообщения и коды ошибок в консоли. Теперь я хочу добавить что-то вроде окна «Консоль просмотра», которое показывает материал, который был написан на вашей консоли. Есть ли возможность просто прочитать материал или просто создать статический класс Console и сохранить отладочные сообщения и поместить их в консоль по умолчанию. Я не хочу захватывать какие-либо пользовательские входы в консоли.читать вывод консоли в winforms

+0

Я бы сделал статический класс ведения журнала и сохранил там сообщения, а не играл с реальной консолью. –

+0

Вы должны использовать класс 'Trace', а не' Debug'. 'Debug.Writeline' (или любой другой' Debug.' удаляются, когда вы переходите в режим выпуска. Затем вы можете использовать прослушиватели трассировки для просмотра вывода или записи его в файл. –

+0

http://nlog-project.org/ https://logging.apache.org/log4net/ –

ответ

1

Всегда существует стандартный класс ведения журнала. Также обратите внимание, что в пределах System.Console вы можете перенаправить выходной поток с помощью Console.SetOut - таким образом вы можете использовать все стандартные методы Console, но получите их и сохраните их в своем собственном классе ведения журнала.

+0

В проекте, где все протоколирование выполняется через 'System.Console', это одно из решений, не нужно заменять все ваши вызовы:) ..... Или я неправильно понял – Sidewinder94

+0

no , вы поняли это правильно, я думал, что могу быть ленивым и использовать System.Console как класс ведения журнала ... – leAthlon

+0

Быть «ленивым» относительно использования класса ведения журнала также может быть полезным - нет ничего, кроме небольшого изменения конфигурации, если вы хотите иметь actua l (я бы рекомендовал во время отладки), вам не нужно воссоздавать все функциональные возможности, упакованные в консоль, и вы можете гарантировать, что любая дальнейшая разработка имеет меньше ссылок. – David

0

Я бы заменил все ваши выходы консоли некоторыми вызовами Logger.

Вы можете создать базовую один, который будет добавляться каждый выход в строку (это просто пример)

Вы просто должны отобразить эту строку в «Console» (пожалуйста, обратите внимание на кавычки :)) Окно для нашего пользователя, чтобы увидеть его.

Смежные вопросы