Pobieranie informacji o procesie

0

Witam próbuje zrobić program który wyszukuje dany proces i przekierowuje jego wyjscie na Console
napisałem coś takiego:

ProcessStartInfo pi

            Process[] runningProcs = Process.GetProcesses(".");
            foreach (Process p in runningProcs)
            {
                string info = string.Format("-> PID: {0}\tName: {1}", p.Id, p.ProcessName);
                Console.WriteLine(info);
                if (p.ProcessName == "mojProgram")
                {
                    pi = new ProcessStartInfo(p.ProcessName);
                    pi.UseShellExecute = false;
                    pi.ErrorDialog = false;
                    pi.RedirectStandardOutput = true;

                    StreamReader sr = p.StandardOutput; //tu wyrzuca blad
                                       
                    sr.Close();
                    String line;
                    while ((line = sr.ReadLine()) != null)
                    {
                        Console.WriteLine("Read line: {0}", line);
                    }
                    break;
                }
            }
            Console.ReadLine();

Wyrzuca mi bład ze proces nie zostal przekierowany
Czy ktos wie co robie nie tak?

0

zdaje sie ze to przekierowanie mozna zrobic na jeszcze nie uruchomionym procesie, nastepnie go uruchomic i w tedy lapac output

luknij to http://stackoverflow.com/questions/2095826/c-redirect-standard-output-of-a-process-that-is-already-running

1 użytkowników online, w tym zalogowanych: 0, gości: 1