Как работать с консолью через MyApp? - PullRequest
0 голосов
/ 17 января 2011

Я пишу команду в cmd: alt text

Консоль возвращает ответ: alt text

Мне нужно то же самое только через myapp wpf:

alt text

1012 * ОТВЕТ *

System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = @"E:\1.exe";
p.Start();
string output = p.StandardOutput.ReadToEnd();
p.WaitForExit();

Ответы [ 2 ]

3 голосов
/ 17 января 2011
    Process myProcess = new Process();
    //All the process code here
    myProcess.Start();

    myProcess.StandardOutput.ReadToEnd();
0 голосов
/ 17 января 2011

вы можете сделать это с помощью системных вызовов.

using System.Diagnostics;

System.Diagnostics.Process.Start(@"path to file here");

здесь вы можете использовать все команды cmd, а также перенаправить выходные сообщения в ваше приложение.

для получения дополнительной информации см. это

using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    class MyProcess
    {
        // Opens the Internet Explorer application.
        void OpenApplication(string myFavoritesPath)
        {
            // Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe");

            // Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath);
        }

        // Opens urls and .html documents using Internet Explorer.
        void OpenWithArguments()
        {
            // url's are not considered documents. They can only be opened
            // by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com");

            // Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.htm");
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.asp");
        }

        // Uses the ProcessStartInfo class to start new processes,
        // both in a minimized mode.
        void OpenWithStartInfo()
        {
            ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
            startInfo.WindowStyle = ProcessWindowStyle.Minimized;

            Process.Start(startInfo);

            startInfo.Arguments = "www.northwindtraders.com";

            Process.Start(startInfo);
        }

        static void Main()
        {
            // Get the path that stores favorite links.
            string myFavoritesPath =
                Environment.GetFolderPath(Environment.SpecialFolder.Favorites);

            MyProcess myProcess = new MyProcess();

            myProcess.OpenApplication(myFavoritesPath);
            myProcess.OpenWithArguments();
            myProcess.OpenWithStartInfo();
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...