2011-10-03 111 views
0

我有一個用C編寫的.exe文件。它是一個命令行應用程序。我想給命令行,並通過C#應用程序在此應用程序中獲得相應的輸出。如何從C#調用C .exe文件?

如何調用該命令並從C#中獲取輸出?

+0

我不知道這個問題以前有多少次被問過。 http://stackoverflow.com/questions/2833171/call-exe-program-in-c – Raghu

回答

4

你可以使用Process.Start方法:

class Program 
{ 
    static void Main() 
    { 
     var psi = new ProcessStartInfo 
     { 
      FileName = @"c:\work\test.exe", 
      Arguments = @"param1 param2", 
      UseShellExecute = false, 
      RedirectStandardOutput = true, 
     }; 
     var process = Process.Start(psi); 
     if (process.WaitForExit((int)TimeSpan.FromSeconds(10).TotalMilliseconds)) 
     { 
      var result = process.StandardOutput.ReadToEnd(); 
      Console.WriteLine(result); 
     } 
    } 
} 
+0

感謝您的評論 – hmlasnk

1

您需要使用Process.Start method

您提供它與您的進程的名稱和任何命令行參數,它將運行可執行文件。

您可以捕獲您可以在C#應用程序中處理的任何輸出。