2012-04-03 6 views
0

私は、.NETで書かれた.EXEプログラム(コンソールアプリケーション)を持っています。実行されている.NETコンソールアプリケーションはプログラム的

  1. 私は入力
  2. 文字列として、または好ましくはストリームとして出力します提供すること
  3. を実行する必要があります。

現在、私はSystem.Diagnostics名前空間とProcessクラスを使用しています。 しかしdosentこの目的のためにDiagnostic名前空間を使用してはOKであるように見えます。

私はより効率的に同じことを行うことが可能な任意の方法はあります?。 リフレクションを使用してMain()メソッドを見つけて呼び出します。

答えて

3

Processクラスは正確に何をしたい行うための適切なツールです。 Diagnostic名前空間の名前を気にしないでください - ちょうどProcessクラスを使用します。

+0

thankxからこのスニペットする方法を見ることができます。私はまた、別のアプリケーションドメインでこのプロセスを実行する必要があります。この名前空間を使用して行うことができますか? –

+0

最初に:名前空間について忘れてください!次に、これを読んで、ネームスペースが何であるか、それがあなたにとってまったく重要でない理由を理解してください。http://msdn.microsoft.com/en-us/library/ms973231.aspx#assenamesp_topic5 –

+0

okと2番目の? –

0

完全に罰金。 System.Diagnosticsは単なる名前空間です。

の詳細情報が必要な場合は、あなたがモチベーションのためnavigate to this projectや文法のプロセスを処理するかVM found in here

   var startInfo = new ProcessStartInfo(FilePath) 
       { 
        WorkingDirectory = RootFolderPath, 
        Arguments = StartingArguments, 
        RedirectStandardOutput = true, 
        UseShellExecute = false, 
        CreateNoWindow = true 
       }; 
       ConsoleProcess = new Process {StartInfo = startInfo}; 

       ConsoleProcess.Start(); 
関連する問題