日期:2014-05-18  浏览次数:20542 次

Process进程关闭问题
有如下代码
  Process process1 = new Process();
  process1.StartInfo.FileName = "ping";
  process1.StartInfo.UseShellExecute = false;
  process1.StartInfo.Arguments = ip;
  process1.StartInfo.RedirectStandardOutput = true;
  process1.Start();

  string msg = process1.StandardOutput.ReadToEnd(); // 得到返回值  
  process1.WaitForExit();
  process1.Close();
运行的时候是没有问题的,但我发现关闭程序后,该进程仍然运作,没有被关闭(尚有缓存没有关闭)。尝试过在代码后加process1.Kill(),但却出现“没有对象与其关联”的异常。请问各位高手有什么办法解决这个问题呢?

------解决方案--------------------
试着把 Process process1 = new Process(); 声明成窗体级的变量,这样的在窗体关闭的时候把process1进行关闭.
------解决方案--------------------
process1.Dispose();
------解决方案--------------------
process1.Kill();