Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Перехват сообщений консоли


Автор: irji 13.7.2009, 09:28
Доброго дня!
Появилась необходимость написать на C# GUI обертку на консольное приложение написанное давно, не мной и на С++.

Нужно чтобы:
1) нажатем кнопки запускалось консольное приложение с задаными параметрами
2) в процессе выполнения программа пишет чем она занимается, необходимо по мере появления таких сообщений писать их в richtextbox который есть на форме
3) по завершению выполнения, чтобы окно консоли закрывалось

Как запускать нажатием кнопки консольное приложение, передавать в него параметры и закрывать окно консоли по завершении выполнения я разобрался, но вот вывод сообщений в richtextbox производиться только после завершения работы приложения, а нужно чтобы в процессе выполнения.

Как это можно сделать и можно ли вообще?

Автор: diadiavova 13.7.2009, 10:33
Обычно оболочки для консольных приложений работают немного по-другому. Приложение выполняет одну команду и закрывается с выводом данных. При этом окно консоли вообще не открывается. Для этого в ProcessStartInfo надо присвоить свойству UseShellExecute значение false/

Автор: 1stain 13.7.2009, 10:59
http://www.codeproject.com/KB/string/CommandLineHelper.aspx

Автор: irji 14.7.2009, 09:56
Цитата(1stain @ 13.7.2009,  10:59)
http://www.codeproject.com/KB/string/CommandLineHelper.aspx

Спасибо большое! То что нужно!  smile 

Автор: nerezus 14.7.2009, 12:24
А если программа работает в интерактивном режиме, т.е. по выводу части информации надо что-то в консоль писать?
Как тогда работать(сам алгоритм интересует, а не код)?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)