2008-11-04 1 views
2

Возможно ли на C# увидеть следы на отдельной консоли. Например, у меня есть приложение на основе окон, в котором есть инструкции trace, которые будут записывать текущее имя метода в консоль. Когда я запускаю это приложение, он должен автоматически открывать консоль и запускать трассировки. Это возможно?Как увидеть трассировку в отдельной консоли

ответ

3

Если вы установите тип проекта вашего оконного приложения на Консоль, он откроет окно консоли при его запуске.

+0

Но это может быть настроен во время выполнения. Я имею в виду, есть ли у меня возможность запустить приложение с некоторыми отладочными коммутаторами (скажем, Foo.exe -debug что-то вроде этого), чтобы он открыл новое окно терминала, которое может отслеживать сообщения журнала? –

2

Я думаю, что вы ищете класс TraceListener. (another link)

В .NET вы используете TraceListener для прослушивания собственного сообщения трассировки. А затем вы можете распечатать их в форме с текстовым полем или консольным окном.

Слушатели также могут быть настроены с помощью app.config, если моя память служит мне правильной. Это значит, что вы можете отлаживать развернутые приложения.

+0

Но если я использую ConsoleTracer для приложения Window, эффекта не будет, пока я не сделаю то, что сказал мне Джон, правильно? –

+0

Вам это нужно только в окне консоли? Пользовательское окно не будет делать? – chakrit

+0

Хм. Я хочу иметь эти следы на консоли. Я думаю, что будет лучше, если возможно –

1

Я бы рекомендовал dbgview.exe от Sysinternals. Он позволяет записывать вывод трассировки и сохранять его в файл (среди других функций).

Вы можете получить его от http://live.sysinternals.com