C # я могу добавить элемент управления командной строки для моего приложения - PullRequest
3 голосов
/ 21 октября 2010

Название говорит об этом.Я знаю, что могу использовать Process или ProcessStartInfo для запуска аргументов, но я имею в виду фактически добавление элемента управления командной строки в мое приложение (потому что я использую его очень часто, и было бы удобно, если бы оно уже было встроенным.* Есть ли способ сделать это, кроме написания пользовательского элемента управления? Если бы я не мог с этим жить, но это определенно помогло бы.

Ответы [ 3 ]

2 голосов
/ 21 октября 2010

Примерно так (не проверено):

ProccessInfo pi = new ProccessInfo("cmd.exe");
pi.RedirectStandardError=true;
pi.RedirectStandardInput=true;
pi.RedirectStandardOutput=true;
Process cmd = Process.Start(pi);
cmd.StandardInput.WriteLine("Dir");
textBox1.Text = cmd.StandardOutput.ReadToEnd();

Остерегайтесь взаимных блокировок, этот метод может блокировать!

Вы также можете использовать это решение с codeproject.com: http://www.codeproject.com/KB/miscctrl/commandprompt.aspx

0 голосов
/ 21 октября 2010

В чем проблема с выполнением Console.ReadLine () / Console.WriteLine () в цикле?Это наиболее эффективный способ, и вы полностью контролируете свои действия.

0 голосов
/ 21 октября 2010

См. этот вопрос и связанные с ним.Также, например, этот исходный код .

Вы можете запустить консоль рядом с окном вашего win-приложения, которым вы будете управлять, и можете выводить некоторые данные или получать данные от пользователя.

...