2011-12-04 9 views
0

このエラーは以前は発生していません。ここに私のコードです。ここでprocess_OutputDataReceivedのオーバーロードがデリゲートと一致しませんSystem.Diagnostics.DataReceivedEventHandler

 private Process process = null; 
    private void button5_Click(object sender, EventArgs e) 
    { 
     if (null != process) 
     { 
      process.Dispose(); 
     } 

     process = new Process(); 
     process.StartInfo.FileName = "world.exe"; 
     process.StartInfo.Arguments = ""; 
     process.StartInfo.UseShellExecute = false; 
     process.EnableRaisingEvents = true; 
     process.StartInfo.CreateNoWindow = true; 
     process.StartInfo.RedirectStandardOutput = true; 

     process.OutputDataReceived += new DataReceivedEventHandler(process_OutputDataReceived); 
     process.Exited += new EventHandler(process_Exited); 
     process.Start(); 
     process.BeginOutputReadLine(); 
    } 

    private void process_OutputDataReceived(object sender, DataReceivedEventArgs e) 
    { 
    } 

は、私がエラーになってるものです:私は書いたまで、上記の罰金です

  process.OutputDataReceived += new DataReceivedEventHandler(process_OutputDataReceived); 

を。

private void process_OutputDataReceived(object sender, DataReceivedEventArgs e) 
    { 
    } 

助けていただければ幸いです。これがどのようにそれ以上具体的であるかを知らないでください。

答えて

1

唯一考えられるのは、名前空間の競合があることです(環境内に、使用するクラスの名前と一致する他のクラスがあります)。

process.OutputDataReceived += new System.Diagnostics.DataReceivedEventHandler(process_OutputDataReceived); 

    private void process_OutputDataReceived(object sender, System.Diagnostics.DataReceivedEventArgs e) 
    { 
    } 
+0

おかげで芽:

は、明示的な名前空間宣言を使用してみてください。それは今働く。 ;) –

+0

優秀!このサイトでは、チェックボックスや上矢印をクリックして、解決した解決策の横にある上矢印をクリックして、質問を解決するのに役立ちますので、将来どのような回答が役立ったのかを知ることができます。 –

関連する問題